์–ธ๋ฆฌ์–ผ์—์„œ ๋ฐฐ์นญ(Batching)์„ ์‚ฌ์šฉํ•  ๋•Œ ์ฃผ์˜ํ•ด์•ผ ํ•  ์ 

2024. 6. 23. 15:47

 

๋ฐฐ์นญ(Batching)์€ ๋“œ๋กœ์šฐ ์ฝœ ์ˆ˜๋ฅผ ์ค„์—ฌ์„œ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์ค‘์š”ํ•œ ๊ธฐ๋ฒ•์ด์ง€๋งŒ,

์‚ฌ์šฉ ์‹œ ๋ช‡ ๊ฐ€์ง€ ๊ณ ๋ คํ•ด์•ผ ํ•  ์‚ฌํ•ญ๋“ค์ด ์žˆ๋‹ค. ( •๏ธ ห•๏ธก  )

 

 

๋จธํ„ฐ๋ฆฌ์–ผ ์ผ๊ด€์„ฑ ์œ ์ง€

๋งŒ์•ฝ ๋‹ค๋ฅธ ์˜ค๋ธŒ์ ํŠธ๋“ค์ด ๋‹ค๋ฅธ ๋จธํ„ฐ๋ฆฌ์–ผ์„ ์‚ฌ์šฉํ•˜๋ฉด, ๋ณ„๋„์˜ ๋“œ๋กœ์šฐ ์ฝœ์ด ํ•„์š”ํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ ๋ฐฐ์นญ์˜ ์ด์ ์„ ์žƒ๋Š”๋‹ค.

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๊ฐ€๋Šฅํ•œ ํ•œ ๋™์ผํ•œ ๋จธํ„ฐ๋ฆฌ์–ผ์„ ์‚ฌ์šฉํ•˜๋„๋ก ๋””์ž์ธํ•˜๊ณ , (๋„ˆ๋ฌด ๋‹น์—ฐํ•จ)

ํ•„์š”ํ•  ๊ฒฝ์šฐ ๋จธํ„ฐ๋ฆฌ์–ผ์„ ํ†ตํ•ฉํ•œ๋‹ค.

UStaticMeshComponent* MeshComp1 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("MeshComp1"));
MeshComp1->SetStaticMesh(MyMesh);
MeshComp1->SetMaterial(0, MyMaterial);

UStaticMeshComponent* MeshComp2 = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("MeshComp2"));
MeshComp2->SetStaticMesh(MyMesh);
MeshComp2->SetMaterial(0, MyMaterial);

 

 

๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ ์ฆ๊ฐ€

์—ฌ๋Ÿฌ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ํ•˜๋‚˜๋กœ ๋ฌถ๋‹ค ๋ณด๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ์ฆ๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

ํŠนํžˆ, ํฐ ๋ฐฐ์น˜ ๊ทธ๋ฃน์„ ๋งŒ๋“ค๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์ด ํฌ๊ฒŒ ๋Š˜์–ด๋‚  ์ˆ˜ ์žˆ๋‹ค. 

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋ฐฐ์น˜ ๊ทธ๋ฃน์˜ ํฌ๊ธฐ๋ฅผ ์ ์ ˆํ•˜๊ฒŒ ์„ค์ •ํ•˜๊ณ , ํ•„์š”์— ๋”ฐ๋ผ์„œ ๋™์ ์œผ๋กœ ๋ฐฐ์น˜๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.

 

 

๋™์  ์˜ค๋ธŒ์ ํŠธ ๋ฐฐ์นญ์˜ ์–ด๋ ค์›€

๋ฐฐ์นญ์€ ์ •์  ์˜ค๋ธŒ์ ํŠธ์—๋Š” ํšจ๊ณผ์ ์ด์ง€๋งŒ, ๋™์  ์˜ค๋ธŒ์ ํŠธ(์›€์ง์ด๋Š” ์˜ค๋ธŒ์ ํŠธ)๋ฅผ ๋ฐฐ์นญํ•˜๋Š” ๊ฒƒ์€ ์–ด๋ ต๋‹ค.

๋™์  ์˜ค๋ธŒ์ ํŠธ์˜ ์œ„์น˜๋‚˜ ์ƒํƒœ๊ฐ€ ๋ณ€ํ•˜๋ฉด ๋ฐฐ์น˜๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๊ฐ€๋Šฅํ•œ ํ•œ ์ •์  ์˜ค๋ธŒ์ ํŠธ์— ๋ฐฐ์นญ์„ ์ ์šฉํ•œ๋‹ค. 

 

 

๋ฐฐ์นญํ•œ ์˜ค๋ธŒ์ ํŠธ์˜ ๋ณ€ํ˜•

๋ฐฐ์นญํ•œ ์˜ค๋ธŒ์ ํŠธ๋“ค์€ ๋™์ผํ•œ ๋ณ€ํ™˜ ํ–‰๋ ฌ(Transform Matrix)์„ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ฐœ๋ณ„์ ์œผ๋กœ ๋ณ€ํ˜•ํ•  ์ˆ˜ ์—†๋‹ค.

์ด๋Š” ๋ฐฐ์นญ๋œ ์˜ค๋ธŒ์ ํŠธ๋“ค์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์›€์ง์ด๊ฑฐ๋‚˜ ํšŒ์ „์‹œํ‚ค๊ธฐ ์–ด๋ ต๊ฒŒ ๋งŒ๋“ ๋‹ค.

 

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๋ณ€ํ˜•์ด ํ•„์š”ํ•œ ์˜ค๋ธŒ์ ํŠธ๋“ค์€ ๋ฐฐ์นญํ•˜์ง€ ์•Š๊ณ  ๊ณ„๋ณ„์ ์œผ๋กœ ๊ด€๋ฆฌํ•œ๋‹ค. 

 

 

์™œ ๋จธํ„ฐ๋ฆฌ์–ผ์ด ๋งŽ์œผ๋ฉด ๋“œ๋กœ์šฐ ์ฝœ์ด ์ฆ๊ฐ€ํ•˜๋Š”์ง€?

์ถ”๊ฐ€๋กœ ์จ๋†“์ž๋ฉด, ๊ฐ ๋“œ๋กœ์šฐ ์ฝœ์€ ์˜ค๋ธŒ์ ํŠธ์˜ ๋ Œ๋”๋ง ์„ค์ •์ด ๋™์ผํ•  ๋•Œ๋งŒ ๋ฌถ์„ ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, ๋™์ผํ•œ ๋จธํ„ฐ๋ฆฌ์–ผ์„ ์‚ฌ์šฉํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋“ค์€ ํ•˜๋‚˜์˜ ๋“œ๋กœ์šฐ ์ฝœ๋กœ ๋ฌถ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ๋‹ค๋ฅธ ๋จธํ„ฐ๋ฆฌ์–ผ์„ ์‚ฌ์šฉํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋“ค์€ ๋ณ„๋„์˜ ๋“œ๋กœ์šฐ ์ฝœ์ด ํ•„์š”ํ•˜๋‹ค.

 

 

 

 


์ฐธ๊ณ  ์ถœ์ฒ˜;

Text generated by ChatGPT, June 23, 2024, OpenAI, https://chat.openai.com/