Recent posts

Unreal ๋งคํฌ๋กœ

April 27 2022

์–ธ๋ฆฌ์–ผ์— ๋งคํฌ๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ์–ธ๋ฆฌ์–ผ C++ ์ฝ”๋“œ๋Š” Unreal Header Tool, UHT Preprocessor๋ผ ๋ถˆ๋ฆฌ๋Š” ์ปค์Šคํ…€ RTTI๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค ์ด๋Ÿฐ ๋งคํฌ๋กœ๊ฐ€ ๋‹ฌ๋ฆฐ ์ฝ”๋“œ๋Š” ์ผ๋ฐ˜์ ์ธ C++ ๋งคํฌ๋กœ์™€ ๋‹ฌ๋ฆฌ ๋” ๋‚ฎ์€ ๋ ˆ๋ฒจ์—์„œ ์ž‘๋™ํ•˜๋ฉฐ ๊ด€๋ฆฌ๋œ๋‹ค ์ด ๋งคํฌ๋กœ๋“ค์€ RTTI, Reflection ๋“ฑ ์ž‘๋™์„ ์œ„ํ•ด ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค

Return Value Optimization

April 06 2022

์ž„์‹œ ๊ฐ’ ํ• ๋‹น ์ธ์ž C++ ์—์„œ๋Š” ์ž„์‹œ๊ฐ’์„ const reference์™€ rvalue reference, ๊ทธ๋ฆฌ๊ณ  ๊ฐ’์œผ๋กœ์„œ์˜ ํ•จ์ˆ˜ ์ธ์ž๋กœ ๋ฐ›๋„๋ก ํ—ˆ์šฉํ•œ๋‹ค non-const reference ์ธ์ž๋ฅผ ๋ฐ›๋Š” ํ•จ์ˆ˜๋Š” ํ•จ์ˆ˜ ์‹คํ–‰ ์ค‘ ์ธ์ž๋ฅผ ์ˆ˜์ •ํ•˜๊ณ ์„œ ๋ณ€๊ฒฝ๋œ ์ƒํƒœ๋กœ ๋‹ค์‹œ caller๋กœ ๋Œ์•„๊ฐ€๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•œ๋‹ค

Cache

March 12 2022

์บ์‹œ Cache CPU๊ฐ€ ๋น ๋ฅธ ์†๋„๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ๋ฉ”๋ชจ๋ฆฌ Locality of Reference ์›๋ฆฌ์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ ์ €์žฅ์†Œ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ ๊ฐ€์ ธ์™€ ๋ณด๊ด€

32bit vs. 64bit

March 12 2022

CPU์˜ ์ฐจ์ด ๋ ˆ์ง€์Šคํ„ฐ์˜ bit ํญ ์ฐจ์ด ๋ ˆ์ง€์Šคํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ 16bit์ด๋ฉด 16bit CPU ๋ ˆ์ง€์Šคํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ 64bit์ด๋ฉด 64bit CPU

Affine Space

March 12 2022

๋ฒกํ„ฐ์˜ ํ•œ๊ณ„ ์–ด๋–ค ๋ฌผ์ฒด๋ฅผ ํ™”๋ฉด์— ํ‘œํ˜„ํ•˜๋ ค๋ฉด ๋ฒกํ„ฐ๋งŒ์œผ๋กœ๋Š” ๋ถ€์กฑ ๋ฒกํ„ฐ๋Š” ํฌ๊ธฐ์™€ ๋ฐฉํ–ฅ ์„ฑ๋ถ„๋งŒ์„ ๊ฐ€์ง ์œ„์น˜ ์ •๋ณด๊ฐ€ ํ•„์š” ์œ„์น˜๋Š” ๋ฌด์—‡์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š”๊ฐ€? ์  point

Stack Overflow

March 01 2022

๋ฐœ์ƒ ์ด์œ  Stack ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ๋Š” ์Šค๋ ˆ๋“œ๊ฐ€ ์ดˆ๊ธฐํ™”๋  ๋•Œ ๊ณ ์ •๋œ ํฌ๊ธฐ๋กœ ๊ฒฐ์ • ์‚ฌ์šฉ๋Ÿ‰์„ ์ดˆ๊ณผํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์†Œํ”„ํŠธ์›จ์–ด๋Š” undefined behavior ์•ผ๊ธฐ Stack ์˜์—ญ์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ง€์ •๋œ ๋ฒ”์œ„๋ฅผ ๋„˜์–ด๊ฐˆ ๋•Œ ๋ฐœ์ƒ ํ•œ ํ•จ์ˆ˜์—์„œ ๋„ˆ๋ฌด ํฐ ์ง€์—ญ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ ํ•จ์ˆ˜๋ฅผ ์žฌ๊ท€์ ์œผ๋กœ ๋ฌดํ•œ์ •...

Runtime Type Information

March 01 2022

RTTI๋ž€ C++ ์ปดํŒŒ์ผ๋Ÿฌ ๋‚ด์— ์žˆ๋Š” ๊ฐ์ฒด์˜ ํƒ€์ž… ์ •๋ณด๋ฅผ ์•Œ์•„๋‚ด๋Š” ๊ธฐ๋Šฅ ๋Ÿฐํƒ€์ž„์—์„œ ํฌ์ธํ„ฐ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ฐ์ฒด์˜ ํƒ€์ž…์„ ์•Œ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋ฐฉ๋ฒ• ๊ฐ์ฒด์˜ ํƒ€์ž…์„ ๋Ÿฐํƒ€์ž„์—์„œ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉ ๋ฉ”๋ชจ๋ฆฌ ์ƒ์ฃผ ๊ฐ์ฒด์— ํƒ€์ž… ์ •๋ณด ์ถ”๊ฐ€ ๋Ÿฐํƒ€์ž„์—์„œ ๊ฐ์ฒด์˜ ์บ์ŠคํŒ…์ด ์œ ํšจํ•œ์ง€ ์•Œ์•„๋‚ด๊ธฐ ์œ„ํ•ด, ๊ฐ์ฒด๋ฅผ ํŠน์ • ํƒ€์ž…์œผ๋กœ ๊ฒฐ์ •ํ•œ...

๋ฉ”๋ชจ๋ฆฌ ๋ฐ CPU ๋ถ€์กฑ ํ˜„์ƒ

February 18 2022

๋ฉ”๋ชจ๋ฆฌ(RAM) ์ ์œ ์œจ์˜ ์ƒ์Šนํ•˜๋ฉด? ๋ฉ”์ธ ๋“œ๋ผ์ด๋ธŒ์— ๊ฐ€์ƒ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ์„ค์ • ํ•ด๋‹น ์˜์—ญ์„ ๋ฉ”๋ชจ๋ฆฌ์ฒ˜๋Ÿผ ์‚ฌ์šฉ ๋‚ฎ์€ ๋‹จ๊ณ„์— ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์žกํž์ˆ˜๋ก ์—‘์„ธ์Šค ์†๋„๊ฐ€ ๋А๋ ค์ง ์ด ๊ฐ™์€ ์ด์œ ๋กœ RAM ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋งŽ์„์ˆ˜๋ก ์ข‹๋‹ค๋Š” ๊ฒƒ

Terrain Analysis & Propagation

February 15 2022

Influence Mapping ์˜ํ–ฅ๋„ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆ˜์น˜๋ฅผ 2d grid์— ๋ถ„์‚ฐ์‹œ์ผœ ๋†“์€ ์ถ”์ƒ ๋””์ž์ธ

Linear Transformation (2)

February 02 2022

ํฌ๊ธฐ ๋ณ€ํ™˜ ๋ฒกํ„ฐ์˜ ํฌ๊ธฐ์™€ ๋ฐฉํ–ฅ ์ค‘ ํฌ๊ธฐ๋งŒ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ ๊ฐ ์„ฑ๋ถ„์— ๊ฐ ๊ณ„์ˆ˜๋งŒํผ์˜ ํฌ๊ธฐ๋ฅผ ๊ณฑํ•ด ์–‘์„ ๋ฐ”๊ฟˆ