์œ ๋‹ˆํ‹ฐ์—์„œ ๋‚ด๊ฐ€ ๊ฒช์€ ๋ฌธ์ œ์™€ ํ•ด๊ฒฐ๋ฐฉ๋ฒ•, ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•œ ๊ธฐ๋Šฅ์ด๋‚˜ ํ•จ์ˆ˜ ๊ฐ™์€๊ฑธ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ ์–ด๋ณด๋ ค๊ณ  ํ•จ

๋ฌผ๋ก  ๋‚ด๊ฐ€ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•์ด๋ผ ์ •๋‹ต์€ ์•„๋‹ ์ˆ˜ ์žˆ์Œ

์˜ค๋ฅ˜๋„ ์žˆ์„ ์ˆ˜ ์žˆ๊ณ 


์ผ๋‹จ์€ ์ƒ๊ฐ๋‚˜๋Š”๊ฒƒ๋“ค๋งŒ ์ ๊ณ  ์ƒ๊ฐ๋‚˜๋Š”๊ฒŒ ์žˆ์œผ๋ฉด ๋‚˜์ค‘์— ๋” ์—…๋ฐ์ดํŠธ ํ•  ์ˆ˜๋„?



1. ํƒ€์ผ๋งต ์‚ฌ์ด์— ๊ฑธ๋ฆฌ๋Š” ์˜ค๋ธŒ์ ํŠธ


์ผ๋‹จ 2d ํ”Œ๋žซํฌ๋จธ๋กœ ์ œ์ž‘์„ ํ•˜๋‹ค๋ณด๋ฉด ํƒ€์ผ๋งต์„ ๋งŽ์ด ์“ฐ๊ฒŒ ๋˜๊ณ 

์ฒ˜์Œ์—๋Š” ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ํƒ€์ผ๋งต์œ„์—์„œ ๊ฑธ๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธธ๊ฑฐ์ž„


๊ทธ๊ฒŒ ๋ชจ๋“  ํƒ€์ผ ํ•˜๋‚˜ํ•˜๋‚˜์— ๋„ค๋ชจ ์ฝœ๋ผ์ด๋”๊ฐ€ ์ƒ๊ฒจ์„œ ๊ทธ ์‚ฌ์ด์— ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๊ฑธ๋ฆฌ๋Š”๊ฑฐ์ž„


๊ทธ๋•Œ๋Š” ํƒ€์ผ๋งต ์ฝœ๋ผ์ด๋”์— used by composite๋ฅผ ์ฒดํฌํ•˜๊ณ  composite collider ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด


ํƒ€์ผ๋“ค์˜ ์ฝœ๋ผ์ด๋”๊ฐ€ ํ•˜๋‚˜๋กœ ๋งค๋ˆํ•˜๊ฒŒ ํ•ฉ์ณ์ง€๋ฉด์„œ ๋ผ์ž„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•จ


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



2. ํƒ€์ผ๋งต์„ ๋šซ์–ด๋ฒ„๋ฆฌ๋Š” ์˜ค๋ธŒ์ ํŠธ


๋น ๋ฅด๊ฒŒ ์ด๋™ํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋Š” ํƒ€์ผ๋งต์„ ๋šซ๊ณ  ์•ˆ์— ๋“ค์–ด๊ฐ€๋ฒ„๋ฆฌ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ž์ฃผ ๋ฐœ์ƒํ•จ


๊ทธ๋Ÿฌ๋ฉด ๋ฌด์‹ํ•˜๊ฒŒ ์—ฐ์‚ฐ์„ ๋” ์ž์ฃผํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅ


๋ฆฌ์ง€๋“œ๋ฐ”๋””์—์„œ collision detection์„ continuous๋กœ ํ•˜๋ฉด ์ปดํ“จํ„ฐ๊ฐ€ ๋ฌผ๋ฆฌ ๊ณ„์‚ฐ ๋นผ๋จน๋‹ค๊ฐ€ ์‹ค์ˆ˜ํ•˜๋Š” ์ผ์„ ์—†์•จ ์ˆ˜ ์žˆ์Œ

๊ทธ๋Ÿฐ๋ฐ ์ง„์งœ ๋น ๋ฅด๊ฒŒ ์›€์ง์ด๋Š” ๋ฌผ์ฒด ์•„๋‹ˆ๋ฉด ๊ทธ๋ƒฅ discrete๋กœ ๋†”๋‘๋Š”๊ฒŒ ์ตœ์ ํ™”์— ์ข‹์„๊ฑฐ์ž„


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


์ถ”๊ฐ€๋กœ ์›€์ง์ž„์ด ๋Š๊ธฐ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ผ ๋•Œ interpolate๋ฅผ ์„ค์ •ํ•˜๋ฉด ํ•ด๊ฒฐ๋จ


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


3. ์ˆœ๊ฐ„์ด๋™


์ขŒํ‘œ๋ฅผ ์ง€์ •ํ•˜๊ณ  ๊ทธ๊ณณ์œผ๋กœ ์ˆœ๊ฐ„์ด๋™ ํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ๋„ ๋„์ฐฉ ์œ„์น˜์—์„œ ํƒ€์ผ๋งต์ด๋ž‘ ์กฐ๊ธˆ์ด๋ผ๋„ ๊ฒน์น˜๋ฉด ๊ทธ๋Œ€๋กœ ๋นจ๋ ค๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ์Œ


์˜ค๋ธŒ์ ํŠธ ๊ฐ ๋์ ์—์„œ ๋ชฉํ‘œ ๋ฐฉํ–ฅ์œผ๋กœ ๋ ˆ์ด์บ์ŠคํŠธ๋ฅผ ์˜๊ณ  ๋ฒฝ์— ๋ง‰ํžˆ๊ธฐ ์ „๊นŒ์ง€ ๊ฐ€์žฅ ์งง๊ฒŒ ๋‚˜์•„๊ฐ„ ๊ธธ์ด๋งŒํผ๋งŒ ์ด๋™ํ•˜๋Š” ๋ฐฉ์‹์„ ์“ฐ๋ฉด ๋ ๋“ฏ? ์•„๋งˆ๋„


์›๋ž˜ 10์˜ ๊ฑฐ๋ฆฌ๋งŒํผ ์ˆœ๊ฐ„์ด๋™ํ•˜๋ ค ํ–ˆ๋Š”๋ฐ 3๋ฒˆ ๊ผญ์ง“์ ์—์„œ ์œ ๋ ˆ์ด์บ์ŠคํŠธ๊ฐ€ 7๋งŒํผ๋งŒ ๋‚˜์•„๊ฐ”์œผ๋ฉด 7์˜ ๊ฑฐ๋ฆฌ๋งŒํผ๋งŒ ์ด๋™ํ•œ๋‹ค๊ฑฐ๋‚˜



4. ํ†ต๊ณผ๋˜๋Š” ๋ฐœํŒ


์•„๋ž˜์—์„œ๋Š” ์ž์œ ๋กญ๊ฒŒ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์ง€๋งŒ ์œ„์—์„œ๋Š” ๋‚ด๋ ค๊ฐ€๋Š” ํ‚ค๋ฅผ ๋ˆŒ๋Ÿฌ์•ผ ๋‚ด๋ ค๊ฐˆ ์ˆ˜ ์žˆ๋Š” ํƒ€์ผ์ž„


๋‚˜๋Š” ํƒ€์ผ๋งต ์˜ค๋ธŒ์ ํŠธ๋ฅผ ๋ฐœํŒ์šฉ์œผ๋กœ ๋ถ„๋ฆฌํ•ด์„œ ๋งŒ๋“ค์Œ

๊ธฐ๋ณธ์ ์œผ๋กœ used by effector ์ฒดํฌ ํ›„ platform effector๋ฅผ ๋„ฃ์—ˆ์Œ


use one way์— surface arc๋ฅผ 180๋„๋กœ ํ•ด์„œ ์œ„์ชฝ ์˜ค๋ธŒ์ ํŠธ๋Š” ํ†ต๊ณผ๊ฐ€ ์•ˆ๋˜๋„๋ก (170์ •๋„ ์ดํ•˜๋กœ ํ•˜๋ฉด ์˜†์ชฝ์—์„œ๋„ ํ†ต๊ณผ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์„๋“ฏ?)


a15714ab041eb360be3335625683746f0053442bd6a7e989d63c67f39f1dcd6e5e642adca136675ee8804f33cc


๊ทธ๋ฆฌ๊ณ  ์”ฌ์•ˆ์— ๋ฐœํŒ ํƒ€์ผ๋งต ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ฐพ์•„์„œ surface arc ๊ฐ’์„ 0์œผ๋กœ ์ž ์‹œ ์ˆ˜์ •ํ•˜๋ฉด ๊ทธ ์‹œ๊ฐ„๋™์•ˆ ํ†ต๊ณผ๊ฐ€ ๋จ


a15714ab041eb360be3335625683746f0053442bd6a7e989d63c67f89c16cd6e83fed39c45dbaf97634cb6ea1d9b


๊ทธ๋Ÿฐ๋ฐ ์—ฌ๊ธฐ์„œ ์‹œ๊ฐ„์ด ์ง€๋‚ฌ๋Š”๋ฐ๋„ ์˜ค๋ธŒ์ ํŠธ๊ฐ€ ๋ฐœํŒ์ด๋ž‘ ๊ฒน์ณ์ ธ ์žˆ์œผ๋ฉด ๋˜ 2๋ฒˆ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ์–ด์„œ

a15714ab041eb360be3335625683746f0053442bd6a7e989d53562f39e11cd6e19c37b6b105e9f3217976dc795


์ด๋ ‡๊ฒŒ ๊ฒน์น˜๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ๊ฒน์ณ์ง„ ์ƒํƒœ๊ฐ€ ๋๋‚˜๊ธฐ ์ „๊นŒ์ง€๋Š” ๋ฐœํŒ ํ†ต๊ณผ ์ƒํƒœ๊ฐ€ ํ’€๋ฆฌ์ง€ ์•Š๋„๋ก ํ•  ์ˆ˜ ์žˆ์Œ




์ผ๋‹จ ์—ฐ์Šต๊ฒธ ๋Œ€์ถฉ ํ•œ๋ฒˆ ์จ๋ดค๋Š”๋ฐ ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋„์›€์ด ์ข€ ๋ ๊นŒ