viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cec82fa11d02831da48f5f7e7e334e6e7e5eac8fbdc62f964908968b82c0849b2ca9763299738e4b1e7bf933dca5d88168ad0e11778c808564aabd4

์šฐ์„  ์ง€๊ธˆ ํ•˜๊ณ  ์‹ถ์€๊ฑด ์ด๋Ÿฐ๊ฑฐ์ž„


3D๊ฒŒ์ž„์ด์ง€๋งŒ


์ €๋Ÿฐ 2D์ด๋ฏธ์ง€๊ฐ€ ์นด๋ฉ”๋ผ๋ฅผ ๋ญ ์–ด์บ ๋Œ๋ฆฌ๋“  ๋ฐฐ๊ฒฝ์— ๊น”๋ฆฌ๋„๋ก ํ• ๊ฑฐ์ž„


์ด ๋ถ€๋ถ„ ๊ตฌํ˜„์€ ํ–ˆ์Œ


void vert(float4 pos : POSITION, out float4 outUV : TEXCOORD0, out float4 outPos : SV_POSITION)

{

outPos = UnityObjectToClipPos(pos ) ;

outUV = ComputeScreenPos(outPos );

}


float4 _MainTex_TexelSize;

fixed4 frag(float4 uv : TEXCOORD0) : SV_Target

{

fixed4 col = tex2Dproj(_MainTex, uv);

return col;

}


๊ตฌ๊ธ€๋งํ•ด์„œ ์ฐพ์€ย ์Šค์นด์ด๋ฐ•์Šค์‰์ด๋”์ธ๋ฐ 2D์ด๋ฏธ์ง€๋ฅผ ๊ณ ๋Œ€๋กœ ์Šค์นด์ด๋ฐ•์Šค์— ๋„์›Œ์คŒ

viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cec82fa11d02831da48f5f7e7e334e6e7e5eac8fbdc62f964908968b82c0849b2ca970e479f34e52e16cac95c9f30c39b630164c39c18b7100410


์ด๋Ÿฐ์‹์œผ๋กœ ์นด๋ฉ”๋ผ๋ฅผ ์–ด๋–ป๊ฒŒ ๋Œ๋ ค๋„ ๊ณ„์† ์ด ๋ฐฐ๊ฒฝ์œผ๋กœ ๊ณ ์ •


๋งˆ์น˜ย  ์นด๋ฉ”๋ผ ์ตœ๋Œ€๊ฑฐ๋ฆฌ์— ์žˆ๋Š”ย 2d ์Šคํ”„๋ผ์ดํŠธ ์ด๋ฏธ์ง€๊ฐ€ ์นด๋ฉ”๋ผ๊ฐ€ ์›€์ง์—ฌ๋„ ๊ณ„์† ๋”ฐ๋ผ์˜ค๋Š”๊ฑฐ๋ž‘ ๊ฐ™์€ ๊ฑฐ๋ผ๊ณ  ๋ณด๋ฉด๋จ


๊ทผ๋ฐ ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š”๋ฐย 


์นด๋ฉ”๋ผ viewport rect๋ฅผ ๊ฑด๋“œ๋ ค์•ผํ•˜๋Š”๋ฐ ์ด๋Ÿฌ๋ฉด ๋”ฑ rect์— ๋งž๊ฒŒ ์ž˜๋ฆฌ๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ


๊ทธ ๋น„์œจ๋กœ ์ด๋ฏธ์ง€๊ฐ€ ์ถ•์†Œ๋จ



viewimage.php?id=2abcdd23dad63db0&no=24b0d769e1d32ca73cec82fa11d02831da48f5f7e7e334e6e7e5eac8fbdc62f964908968b82c0849b2ca9763299738e4b1e7bf933dca5d8847d9d2b3477bc35e534dc62c

์ €๋ ‡๊ฒŒ ๊ฒ€์€ ๋ฐ•์Šค ์ •๋„๋กœ viewport๋ฅผ ์ค„์˜€์œผ๋ฉด ์ € ์•ˆ์— ์žˆ๋Š” ๊ฑฐ๋งŒ ๋‚˜์˜ค๋ฉด ์ข‹๊ฒ ๋Š”๋ฐ ์‚ฌ์ง„์ด ์ € ์‚ฌ์ด์ฆˆ๋กœ ์ถ•์†Œ๋˜์„œ ๋‚˜์˜ด


๊ทธ๋ž˜์„œ ์‰์ด๋”์—์„œ ๋ฒกํ„ฐ๋ฅผ ๋ฐ›์•„์„œ ์ € ์ด๋ฏธ์ง€๋ฅผ ์ž๋ฅด๋ฉด ๋˜์ง€ ์•Š์„๊นŒํ•ด์„œ ์ฐพ์•„๋ณด๋Š”๋ฐ ์ž˜ ๋ชป์ฐพ๊ฒ ๋‹ค๋ผ๊ณ 


ํ˜น์‹œ ๋ฐฉ๋ฒ•์„ ์•„์‹œ๋Š” ๋ถ„?