Provisions & Co. English็ฎ€ไฝ“ไธญๆ–‡็น้ซ”ไธญๆ–‡ๆ—ฅๆœฌ่ชžํ•œ๊ตญ์–ด

Provisions & Co. โ€” ํŽธ์ง‘๊ธฐ ๋ ˆํผ๋Ÿฐ์Šค

ํŽธ์ง‘๊ธฐ์˜ ๋ชจ๋“  ์„ค์ •์„ ํŒจ๋„๋ณ„๋กœ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ํŽธ์ง‘๊ธฐ ์‚ฌ์šฉ๋ฒ•์€ **ํŽธ์ง‘๊ธฐ ์•ˆ๋‚ด์„œ**๋ฅผ, ํ”Œ๋ ˆ์ด ๋ฐฉ๋ฒ•์€ **ํ”Œ๋ ˆ์ด์–ด ์„ค๋ช…์„œ**๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

์ด ํŽ˜์ด์ง€๋ฅผ ์ฝ๋Š” ๋ฒ•. ํ•„๋“œ ์ด๋ฆ„์€ ํŽธ์ง‘๊ธฐ์— ํ‘œ์‹œ๋˜๋Š” ๊ทธ๋Œ€๋กœ ์ ์—ˆ์Šต๋‹ˆ๋‹ค. ํ‚ค ์—ด์€ ๊ณ ๊ธ‰ ์ œ์ž‘์ž๋ฅผ ์œ„ํ•ด ๊ทธ ์„ค์ •์ด ์ฃผ๋ฐฉ ํŒŒ์ผ ์•ˆ์—์„œ ๊ฐ–๋Š” ์ด๋ฆ„์„ ๋ณด์—ฌ ์ค๋‹ˆ๋‹ค. ํ•„๋“œ์— ๋”ฐ๋กœ ์ ํ˜€ ์žˆ์ง€ ์•Š๋‹ค๋ฉด, ๋น„์›Œ ๋‘๊ฑฐ๋‚˜ 0์œผ๋กœ ๋‘๋ฉด ๊ธฐ๋ณธ ์”ฌ์˜ ๊ฐ’์ด๋‚˜ ๊ฒŒ์ž„ ์ž์ฒด์˜ ๊ฐ’์ด ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.


๋ชฉ์ฐจ

  1. ๋ ˆ๋ฒจ ์นด๋“œ
  2. ๊ณ ๊ธ‰ ์นด๋“œ
  3. ํŽ˜์ด์ฆˆ ์นด๋“œ
  4. ๋ ˆ์‹œํ”ผ, ๊ตฌ์„ฑ, ์‚ฌ์šฉ์ž ์ง€์ • ์ฝ˜ํ…์ธ 
  5. ๋ฌผ์ฒด โ€” ๋ชจ๋“  ๋ฌผ์ฒด์— ์žˆ๋Š” ํ•„๋“œ
  6. ๋ฌผ์ฒด โ€” ์ฃผ๋ฐฉ ์Šคํ…Œ์ด์…˜
  7. ๋ฌผ์ฒด โ€” ์กฐ๋ฆฌ
  8. ๋ฌผ์ฒด โ€” ๊ธฐ๊ณ„, ์Šค์œ„์น˜, ์žฅ์น˜
  9. ๋ฌผ์ฒด โ€” ๋งˆ์ปค
  10. ๋ฌผ์ฒด โ€” ๋ ˆ๋ฒจ ์•„ํŠธ, ์žฅ์‹, 3D ๋ชจ๋ธ
  11. ๋ฐ”๋‹ฅ, ๋ฒฝ, ๋ฐœํŒ
  12. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ
  13. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ์š”๋ฆฌ
  14. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ๊ธฐ๊ณ„
  15. ์ŠคํŠœ๋””์˜ค โ€” ์”ฌ๊ณผ 3D ๋ชจ๋ธ
  16. ํŽธ์ง‘๊ธฐ ํ•„๋“œ๊ฐ€ ์—†๋Š” ์„ค์ •

1. ๋ ˆ๋ฒจ ์นด๋“œ

๋ ˆ๋ฒจ ์นด๋“œ(์˜ค๋ฅธ์ชฝ ์—ด, ์•„๋ฌด๊ฒƒ๋„ ์„ ํƒํ•˜์ง€ ์•Š์•˜์„ ๋•Œ)์—๋Š” ์ฃผ๋ฐฉ ์ „์ฒด์— ์ ์šฉ๋˜๋Š” ์„ค์ •์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
๋ชจ๋“œ ํ˜‘๋™ (Co-op) โ€” ์ผ๋ฐ˜์ ์ธ ๊ณต์šฉ ์ฃผ๋ฐฉ. ๋Œ€์ „ (2ํŒ€) โ€” ๋นจ๊ฐ•(ํ”Œ๋ ˆ์ด์–ด 1, 3, 5) ๋Œ€ ํŒŒ๋ž‘(2, 4, 6)์œผ๋กœ, ๊ฐ ํŒ€์€ ์ž๊ธฐ ์„œ๋น™๋Œ€์—์„œ ์ ์ˆ˜๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค(์„œ๋น™๋Œ€์˜ ํŒ€์œผ๋กœ ์ •ํ•ฉ๋‹ˆ๋‹ค). ๋Œ€์ „ ์ฃผ๋ฐฉ์€ ๋Œ€์ „์šฉ ๊ธฐ๋ณธ ์”ฌ์„ ์จ์•ผ ํ•ฉ๋‹ˆ๋‹ค. mode
๊ธฐ๋ณธ ์”ฌ ์ด ์ฃผ๋ฐฉ์˜ ๋ฐ”ํƒ•์ด ๋˜๋Š” ๊ธฐ๋ณธ ์ฃผ๋ฐฉ. ๊ทธ ๋ฐฐ์น˜๋ฅผ ์ง€์šฐ๊ณ  ๊ทธ ์œ„์— ๋‚ด ์ฃผ๋ฐฉ์„ ์ง“์Šต๋‹ˆ๋‹ค. ๋ฐ”๊พธ์ง€ ์•Š๋Š” ํ•œ ํ•˜๋Š˜, ์กฐ๋ช…, ๋ฐ”๋‹ฅ์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜๋ฅผ ๊ณ ๋ฅด๋ฉด ๊ทธ ์ฃผ๋ฐฉ์˜ ๋ผ์šด๋“œ ์‹œ๊ฐ„, ๋ณ„ ๊ธฐ์ค€ ์ ์ˆ˜, ์…ฐํ”„ ์Šคํฐ, ์นด๋ฉ”๋ผ๋ฅผ ์ฑ„์šฐ๊ณ (๋‚ด๊ฐ€ ์ •ํ•˜์ง€ ์•Š์€ ๊ณณ๋งŒ), ์žฅ์‹ ํŒ”๋ ˆํŠธ์— ๊ทธ ์†Œํ’ˆ๋“ค์„ ๋ณด์—ฌ ์ค๋‹ˆ๋‹ค. ์ž๋™์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฒซ ๊ธฐ๋ณธ ์ฃผ๋ฐฉ์„ ์”๋‹ˆ๋‹ค. *(์‚ฌ์šฉ์ž ์ง€์ • ์ด๋ฆ„โ€ฆ)*์œผ๋กœ ์”ฌ ์ด๋ฆ„์„ ์ง์ ‘ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. baseScene
์”ฌ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์”ฌ ์œ„์— ์ง“์Šต๋‹ˆ๋‹ค โ€” ๊ทธ ์”ฌ์˜ ์žฅ์‹, ๋ฐ”๋‹ฅ, ๋ฒฝ, ๋ฐฐ๊ฒฝ์ด ๋‚ด ์ฃผ๋ฐฉ ์•„๋ž˜์— ๋ถˆ๋Ÿฌ์™€์ง‘๋‹ˆ๋‹ค. ์”ฌ์„ ๊ณ ๋ฅด๋ฉด ๊ธฐ๋ณธ ์”ฌ๋„ ๊ทธ์— ๋งž๊ฒŒ ์ •ํ•ด์ง‘๋‹ˆ๋‹ค. scene
๊ธฐ์กด ๋ฐฐ์น˜ ์ง€์šฐ๊ธฐ ๋‚ด ๊ฒƒ์„ ์ง“๊ธฐ ์ „์— ๊ธฐ๋ณธ ์”ฌ ์ž์ฒด์˜ ์กฐ๋ฆฌ๋Œ€์™€ ์Šคํ…Œ์ด์…˜์„ ์ง€์›๋‹ˆ๋‹ค(๊ธฐ๋ณธ์œผ๋กœ ์ผœ์ง). ๋„๋ฉด = ๋‚ด ๋ฌผ์ฒด๊ฐ€ ๊ธฐ๋ณธ ์ฃผ๋ฐฉ์— ๋”ํ•ด์ง‘๋‹ˆ๋‹ค. clearLayout
๋А์Šจํ•œ ์ฃผ๋ฐฉ ๋ชจ๋“  ์žฌ๋ฃŒ ์ƒ์ž, ์กฐ๋ฆฌ๋Œ€, ์Šคํ…Œ์ด์…˜์ด ๊ณ ์ •๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค: ๊ฑธ์–ด๊ฐ€ ๋ถ€๋”ชํžˆ๋ฉด ๋ฐ€๋ฆฌ๊ณ , ๋ฐœ์ฐจ๊ธฐ๋กœ ๋ฏธ๋„๋Ÿฌ์ง€๋ฉฐ, ๋ถ€๋”ชํžˆ๋Š” ๊ฒƒ์„ ๋ฐ€์–ด๋ƒ…๋‹ˆ๋‹ค. ์›๋ž˜ ์›€์ง์ด๋Š” ๊ฒƒ(ํ› ๊ถˆ ์ˆ˜๋ ˆ, ๋ฐœํŒ, ๋Œ€ํฌ)์€ ๊ทธ๋Œ€๋กœ์ž…๋‹ˆ๋‹ค. looseKitchen
์ง€ํ˜• ํฌ๊ธฐ ๊ธฐ๋ณธ ์”ฌ ์œ„์— ํฌ๊ณ  ๊นจ๋—ํ•œ ๊ฒฝ๊ธฐ์žฅ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค: ๊ฐ’์€ ํ™•๋ณดํ•  ๊ฑธ์„ ์ˆ˜ ์žˆ๋Š” ๋ฐ”๋‹ฅ ๋„ˆ๋น„์˜ ์ ˆ๋ฐ˜(์›”๋“œ ๋‹จ์œ„)์ž…๋‹ˆ๋‹ค(30 โ‰ˆ 60 ร— 60 ์˜์—ญ). ๊ฒฝ๊ธฐ์žฅ ์•ˆ์— ์žˆ๋Š” ๊ธฐ๋ณธ ์”ฌ์˜ ์žฅ์‹๊ณผ ๋ชจ๋“  ๋ฒฝ์ด ์‚ฌ๋ผ์ง€๋ฏ€๋กœ โ€” ์ง์ ‘ ๋ฒฝ์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”. ๊ธฐ์กด ๋ฐฐ์น˜ ์ง€์šฐ๊ธฐ๋ฅผ ์ผญ๋‹ˆ๋‹ค. arena
๋ฐ”๋‹ฅ ๋ฐ”๋‹ฅ์˜ ๋ชจ์–‘: ๊ธฐ๋ณธ(๊ธฐ๋ณธ ์”ฌ์˜ ๋ฐ”๋‹ฅ), ๋‹จ์ƒ‰, ์ž๋™ (๊นจ๋—ํ•œ ์ƒ‰ ์ถ”์ถœ), ๋‚ด์žฅ ํŒจํ„ด(ํƒ€์ผ, ๋„๋นค์ง€, ์ฒดํฌ๋ฌด๋Šฌ, ๊ฒฉ์ž, ์ ๋ฌด๋Šฌ), ๊ฒŒ์ž„ ๋ฐ”๋‹ฅ(๋‹ค๋ฅธ ์ฃผ๋ฐฉ์˜ ๋ฐ”๋‹ฅ ํ…์Šค์ฒ˜), ์‚ฌ์šฉ์ž ์ง€์ • ์ด๋ฏธ์ง€(PNG ์—…๋กœ๋“œ โ€” ๋กœ๊ทธ์ธ ํ•„์š”), ๊ณ ๊ธ‰ (์ง์ ‘ ์ง€์ •). ํŒจํ„ด์ด๋‚˜ ์ด๋ฏธ์ง€๋ฅผ ์“ฐ๋ฉด ๊ทธ๊ฒƒ์„ ๋ฌผ๋“ค์ด๋Š” ์ƒ‰์ƒ๊ณผ ํƒ€์ผ ํฌ๊ธฐ(๋ฐ˜๋ณต ํ•œ ๋ฒˆ๋‹น ์›”๋“œ ๋‹จ์œ„, 0 = ์•ฝ 4)๋„ ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฐ”๋‹ฅ์€ ํ”Œ๋ ˆ์ด ์˜์—ญ ์ „์ฒด๋ฅผ ๋ฎ์Šต๋‹ˆ๋‹ค. floorTint, floorTexture, floorTileSize
๋ ˆ๋ฒจ ์‹œ๊ฐ„ (์ดˆ) ๋ผ์šด๋“œ ๊ธธ์ด. time
์ฃผ๋ฌธ ๊ฐ„๊ฒฉ (์ดˆ) ์ƒˆ ์ฃผ๋ฌธ ์‚ฌ์ด์˜ ์ดˆ(๋‚ฎ์„์ˆ˜๋ก ์–ด๋ ค์›€. ๊ฒŒ์ž„์€ ๋ณดํ†ต ์•ฝ 15). orderInterval
์ฃผ๋ฌธ ์ œํ•œ ์‹œ๊ฐ„ (์ดˆ) ์ฃผ๋ฌธ์ด ์‹œ๊ฐ„ ์ดˆ๊ณผ๋˜๊ธฐ ์ „๊นŒ์ง€ ๋‚จ์•„ ์žˆ๋Š” ์ดˆ(๊ฒŒ์ž„์€ ๋ณดํ†ต ์•ฝ 100). ์š”๋ฆฌ๋งˆ๋‹ค ๋ ˆ์‹œํ”ผ์—์„œ ๋”ฐ๋กœ ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. orderLifetime
๋ฒ„๋„ˆ ๊ต๋Œ€ (์ดˆ) ๊ต๋Œ€ ๊ทธ๋ฃน์— ์†ํ•œ ํ› ๊ถˆ ๋ฐ”๋‹ฅ ๋ฒ„๋„ˆ์šฉ: ๋ถˆ์ด ์ฒ˜์Œ ์˜ฎ๊ฒจ๊ฐ€๊ธฐ๊นŒ์ง€์˜ ์ดˆ, ๊ทธ๋‹ค์Œ ์˜ฎ๊ฒจ๊ฐ€๋Š” ๊ฐ„๊ฒฉ(0 = ๊ฒŒ์ž„์˜ 30๊ณผ 20). burnerFirstSec, burnerSwapSec
ํŒŒ๋„ ์†๋„ ํ•ด๋ณ€ ์ฃผ๋ฐฉ์˜ ์›€์ง์ด๋Š” ๋ฐ”๋‹ค ์†๋„: 0.5๋Š” ๋” ์ž”์ž”ํ•˜๊ฒŒ, 2๋Š” ๋” ๊ฑฐ์น ๊ฒŒ, ์Œ์ˆ˜ ๊ฐ’์€ ๋ฌผ์„ ๋ฉˆ์ถฅ๋‹ˆ๋‹ค. waveSpeed
ํ•˜๋Š˜ ์ƒ‰ ์ฃผ๋ฐฉ ๋’ค์˜ ์ƒ‰. ํ•˜๋Š˜์ด ์ œ๊ฑฐ๋˜๋Š” ๋นˆ ์”ฌ์ด๋‚˜ ๋…๋ฆฝ ์”ฌ์—์„œ ๊ฐ€์žฅ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. skyColor
๋ฐฐ๊ฒฝ ํ…Œ๋งˆ ํ•˜๋Š˜ ์ƒ‰๊ณผ ์–ด์šธ๋ฆฌ๋Š” ๋ฐ”๋‹ฅ ์ƒ‰์„ ํ•œ ๋ฒˆ์— ์ •ํ•˜๋Š” ๋น ๋ฅธ ํ”„๋ฆฌ์…‹: ๋นˆ ๊ณต๊ฐ„, ๋ฌผ, ํ•˜๋Š˜, ๋ชจ๋ž˜, ์™ธ๊ณ„ ์ ์•ก. ๊ทธ๋‹ค์Œ ์„ธ๋ถ€ ์กฐ์ •ํ•˜์„ธ์š”. โ€”
๋ ˆ๋ฒจ ์Œ์•… ๋‚˜๋งŒ์˜ ๋ฐฐ๊ฒฝ ์Œ์•…: ์ตœ๋Œ€ 6๋ถ„(10 MB)์˜ MP3, OGG, WAV, FLAC ๋˜๋Š” M4A ํŒŒ์ผ์„ ๊ณ ๋ฆ…๋‹ˆ๋‹ค. Ogg Vorbis๊ฐ€ ์•„๋‹Œ ํŒŒ์ผ์€ ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ณ€ํ™˜๋˜๊ณ , ๊น”๋”ํ•˜๊ฒŒ ๋ฐ˜๋ณต๋˜๋„๋ก ์•ž๋’ค์˜ ๋ฌด์Œ์„ ์ž˜๋ผ ๋ƒ…๋‹ˆ๋‹ค. **โ–ถ**๋Š” ๋ฏธ๋ฆฌ ๋“ฃ๊ธฐ, **โœ•**๋Š” ๊ธฐ๋ณธ ์”ฌ์˜ ์Œ์•…์œผ๋กœ ๋˜๋Œ๋ฆฌ๊ธฐ, **๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌโ€ฆ**๋Š” ๋‹ค๋ฅธ ์ œ์ž‘์ž๊ฐ€ ์—…๋กœ๋“œํ•œ ๊ณก์„ ์“ธ ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ž๋™์œผ๋กœ ๋‚ด๋ ค๋ฐ›์Šต๋‹ˆ๋‹ค. ๋ฒ ํƒ€ ๊ธฐ๊ฐ„์—๋Š” ์—…๋กœ๋“œ์— ๊ถŒํ•œ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. music
์Œ์•… ์ง€์ • ๊ณ ๊ธ‰: ์›์‹œ ์Œ์•… ์ฐธ์กฐ โ€” ์—…๋กœ๋“œํ•œ ๊ณก์ด๋‚˜ ๊ฒŒ์ž„ ์‚ฌ์šด๋“œ. music
์นด๋ฉ”๋ผ ํ”ผ์น˜ ยฐ ์นด๋ฉ”๋ผ์˜ ์•„๋ž˜์ชฝ ๊ธฐ์šธ๊ธฐ, 0โ€“89(๊ธฐ๋ณธ ์ฃผ๋ฐฉ์€ ์•ฝ 35โ€“55๋ฅผ ์“ฐ๋ฉฐ, 89๋Š” ๊ฑฐ์˜ ์œ„์—์„œ ๋‚ด๋ ค๋‹ค๋ณด๋Š” ์‹œ์ ). camPitch
์นด๋ฉ”๋ผ ์š” ยฐ ์ฃผ๋ฐฉ์„ ์ค‘์‹ฌ์œผ๋กœ ํ•œ ์นด๋ฉ”๋ผ ํšŒ์ „, 0โ€“359(180์ด๋ฉด ๋ฐ˜๋Œ€์ชฝ์—์„œ ๋ด…๋‹ˆ๋‹ค). camYaw
์นด๋ฉ”๋ผ ์คŒ (์ตœ์†Œ / ์ตœ๋Œ€) ์นด๋ฉ”๋ผ๋Š” ๋ชจ๋“  ์…ฐํ”„๊ฐ€ ํ™”๋ฉด์— ๋“ค์–ด์˜ค๋„๋ก ์ด ๊ฑฐ๋ฆฌ ์‚ฌ์ด์—์„œ ์›€์ง์ž…๋‹ˆ๋‹ค. ๋‘ ๊ฐ’์ด ๊ฐ™์œผ๋ฉด ๊ฑฐ๋ฆฌ๊ฐ€ ๊ณ ์ •๋ฉ๋‹ˆ๋‹ค. camMin, camMax
๋ณ„ ์ ์ˆ˜ ๋ณ„ 1โ€“3์˜ ์ ์ˆ˜(์„ธ ๊ฐœ ๋ชจ๋‘, ์˜ค๋ฆ„์ฐจ์ˆœ)์™€ ์„ ํƒ ์‚ฌํ•ญ์ธ ๋ณ„ 4. ๋„ค ๋ฒˆ์งธ ๊ธฐ์ค€์ด ์žˆ์œผ๋ฉด ๋ชจ๋‘๊ฐ€ ๋„ค ๋ฒˆ์งธ ๋ณ„์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. **์ž๋™ โœจ**์€ ์ฃผ๋ฐฉ์˜ ์š”๋ฆฌ, ๋ผ์šด๋“œ ์‹œ๊ฐ„, ์ฃผ๋ฌธ ์†๋„๋กœ ๊ธฐ์ค€์„ ์ถ”์ •ํ•ฉ๋‹ˆ๋‹ค. stars
+ ์ธ์›๋ณ„ ์žฌ์ •์˜ ํŠน์ • ํ”Œ๋ ˆ์ด์–ด ์ˆ˜(1โ€“6)์— ๋Œ€ํ•œ ๋ณ„๋„์˜ ๋ณ„ ๊ธฐ์ค€, ๊ทธ๋ฆฌ๊ณ  ์„ ํƒ์ ์œผ๋กœ ๊ทธ ์ธ์›์˜ ์‹œ๊ฐ„, ์ฃผ๋ฌธ ๊ฐ„๊ฒฉ(๊ฐ„๊ฒฉ ์ดˆ), ์ฃผ๋ฌธ ์ œํ•œ ์‹œ๊ฐ„(์ง€์† ์ดˆ), ์ ‘์‹œ ๋ฐ˜๋‚ฉ ์‹œ๊ฐ„(์ ‘์‹œ ์ดˆ). ์ค„์ด ์—†๋Š” ์ธ์› ์ˆ˜๋Š” ๋ฐ”๋กœ ์œ„์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ค„์„, ๊ทธ๋‹ค์Œ ๊ธฐ๋ณธ๊ฐ’์„ ์”๋‹ˆ๋‹ค. starScores
์ฐพ๊ธฐ ๊ฒŒ์ž„ ์—์…‹์„ ์ฐพ๋Š” ์ œ์ž‘์ž์šฉ: ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„ํ•œ ํ‚ค์›Œ๋“œ. ์ฃผ๋ฐฉ์ด ์‹œ์ž‘๋  ๋•Œ ๊ฒŒ์ž„ ๋กœ๊ทธ์— ์ผ์น˜ํ•˜๋Š” ๋ชจ๋“  ์—์…‹์ด ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. find

2. ๊ณ ๊ธ‰ ์นด๋“œ

๊ณ ๊ธ‰ ์นด๋“œ(์ ‘ํ˜€ ์žˆ์œผ๋ฉฐ, ๋ช‡ ๊ฐœ๊ฐ€ ์„ค์ •๋˜์—ˆ๋Š”์ง€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค)์—๋Š” ๋œ ํ”ํ•œ ์ฃผ๋ฐฉ ์ „์ฒด ์„ค์ •์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฃน ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ฃผ๋ฌธ ์ตœ์†Œ ์ฃผ๋ฌธ ์ˆ˜ ๋ ˆ์ผ์— ํ•ญ์ƒ ์œ ์ง€๋˜๋Š” ์ฃผ๋ฌธ ์ˆ˜(๊ฒŒ์ž„์€ 2๊ฐœ). minOrders
์ฃผ๋ฌธ ์ตœ๋Œ€ ์ฃผ๋ฌธ ์ˆ˜ ๋ ˆ์ผ์— ๋™์‹œ์— ์˜ฌ๋ผ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ฃผ๋ฌธ ์ˆ˜(๊ฒŒ์ž„์€ 5๊ฐœ). maxOrders
์ฃผ๋ฌธ ์ ‘์‹œ ๋ฐ˜๋‚ฉ (์ดˆ) ์„œ๋น™ํ•œ ์š”๋ฆฌ์˜ ์ ‘์‹œ๊ฐ€ ๋Œ์•„์˜ค๊ธฐ๊นŒ์ง€์˜ ์ดˆ. plateReturnTime
๋ฌผ๋ฆฌ ์›€์ง์ด๋Š” ๋ฐ”๋‹ฅ ํƒ€๊ธฐ ์…ฐํ”„์™€ ์•„์ดํ…œ์ด ์›€์ง์ด๋Š” ํ‘œ๋ฉด์— ์‹ค๋ ค ๊ฐ€๋Š”์ง€: ๊ธฐ๋ณธ ์”ฌ, ์ผฌ, ๋”. ์›€์ง์ด๋Š” ๋ฐœํŒ ์ฃผ๋ฐฉ์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. dynamicParenting
๋ฌผ๋ฆฌ ์ถ”๋ฝ ํšจ๊ณผ ์…ฐํ”„๊ฐ€ ๋–จ์–ด์งˆ ๋•Œ ๋ณด์ด๋Š” ํšจ๊ณผ(๊ฒŒ์ž„ ํŒŒํ‹ฐํด ํ”„๋ฆฌํŒน, ์˜ˆ: ๋ฌผ๋ณด๋ผ). deathEffect
๋ฌผ๋ฆฌ ๋ฐœํŒ ๊ณ„์† ์›€์ง์ด๊ธฐ ์›€์ง์ด๋Š” ๋ฐœํŒ์ด๋‚˜ ๋—๋ชฉ ๊ธฐ๋ณธ ์”ฌ์—์„œ, ์…ฐํ”„๊ฐ€ ํƒˆ ์ˆ˜ ์žˆ๋„๋ก ์”ฌ ์ž์ฒด์˜ ๋ฐœํŒ์„ ๊ณ„์† ์›€์ง์ด๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. keepMotion
์กฐ๋ช… ์ฃผ๋ณ€๊ด‘ ์ „์ฒด์ ์ธ ๋น› ์ƒ‰: ๋‹จ์ƒ‰(#rrggbb), ๋˜๋Š” trilight:#sky,#equator,#ground, ๋˜๋Š” skybox. ambient
์กฐ๋ช… ์ฃผ๋ณ€๊ด‘ ์„ธ๊ธฐ ์ฃผ๋ณ€๊ด‘์˜ ๋ฐ๊ธฐ. ambientIntensity
์กฐ๋ช… ์•ˆ๊ฐœ key=value ์Œ์œผ๋กœ ์ง€์ •ํ•˜๋Š” ๊ฑฐ๋ฆฌ ์•ˆ๊ฐœ: color, mode(linear, exp, exp2), start์™€ end(linear) ๋˜๋Š” density(exp) โ€” ์˜ˆ: color=#8899aa;mode=linear;start=10;end=60. off๋Š” ๊ธฐ๋ณธ ์”ฌ์˜ ์•ˆ๊ฐœ๋ฅผ ์—†์•ฑ๋‹ˆ๋‹ค. fog
์กฐ๋ช… ํ•˜๋Š˜ ๋จธํ‹ฐ๋ฆฌ์–ผ ์…ฐ์ด๋”์™€ ๊ทธ ๊ฐ’์œผ๋กœ ์ง€์ •ํ•˜๋Š” ํ•˜๋Š˜ ๋จธํ‹ฐ๋ฆฌ์–ผ. skybox
์˜ค๋””์˜ค ํ™˜๊ฒฝ์Œ ๋ฐ˜๋ณต ๊ฒŒ์ž„์˜ ์‚ฌ์šด๋“œ ๋ฒˆํ˜ธ๋กœ ์ง€์ •ํ•˜๋Š” ๋ฐ˜๋ณต ๋ฐฐ๊ฒฝ์Œ(์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„). ambience
์˜ค๋””์˜ค ์‚ฌ์šด๋“œ ์„ธํŠธ ํ™˜๊ฒฝ์Œ์„ ๊ฐ€์ ธ์˜ค๋Š” ์ถ”๊ฐ€ ๊ฒŒ์ž„ ์‚ฌ์šด๋“œ ์„ธํŠธ. audioDirs
์—์…‹ ์ถ”๊ฐ€ ๋ ˆ๋ฒจ ์—์…‹์„ ๋ถˆ๋Ÿฌ์˜ฌ ๋‹ค๋ฅธ ๊ฒŒ์ž„ ์ฃผ๋ฐฉ. ๊ทธ ์†Œํ’ˆ์„ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. donors
์—์…‹ ์ถ”๊ฐ€ ๋ฒˆ๋“ค ์ด๋ฆ„์œผ๋กœ ์ง€์ •ํ•ด ๋ถˆ๋Ÿฌ์˜ฌ ์ถ”๊ฐ€ ๊ฒŒ์ž„ ์—์…‹ ๋ฒˆ๋“ค. bundles
์”ฌ ๋…๋ฆฝ ๋ ˆ๋ฒจ ๊ธฐ๋ณธ ์”ฌ์˜ ์ฃผ๋ฐฉ๊ณผ ๋ฐฐ๊ฒฝ์„ ์ „๋ถ€ ์ง€์›๋‹ˆ๋‹ค. ๋‚ด ์ฃผ๋ฐฉ์ด ์ž์ฒด ๋ฐ”๋‹ฅ, ๋ฒฝ, ์•„ํŠธ, ์กฐ๋ช…์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. standalone
์”ฌ ๋นˆ ์”ฌ ๊ฒŒ์ž„ ์ž์ฒด๋ฅผ ์ œ์™ธํ•˜๊ณ  ๊ธฐ๋ณธ ์”ฌ์˜ ์•„๋ฌด๊ฒƒ๋„ ๋‚จ๊ธฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค โ€” ์•„ํŠธ, ๋ฒฝ, ์ถ”๋ฝ ๊ตฌ์—ญ, ์†Œ๋ฆฌ, ์กฐ๋ช… ๋ชจ๋‘ ์—†์Œ(์กฐ๋ช…์ด ์—†๋Š” ์ฃผ๋ฐฉ์—๋Š” ๊ธฐ๋ณธ ํƒœ์–‘๊ด‘์ด ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค). ๋…๋ฆฝ ๋ ˆ๋ฒจ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. emptyScene
์”ฌ ๊ฒฉ์ž ์›์  ์นธ 0,0์˜ ์›”๋“œ ์œ„์น˜. gridOrigin
์”ฌ ๊ฒฉ์ž ํฌ๊ธฐ ์นธ ๋‹จ์œ„ ๊ฒฉ์ž์˜ ์ ˆ๋ฐ˜ ํฌ๊ธฐ(x,y,z). gridHalf
์”ฌ ์นธ ํฌ๊ธฐ ์นธ ํ•˜๋‚˜๋‹น ์›”๋“œ ๋‹จ์œ„(๊ฒŒ์ž„์€ 1.2๋ฅผ ์”๋‹ˆ๋‹ค). gridCell

์ฃผ๋ฐฉ์„ ๋‹ค๋ฅธ ๋ชจ๋“œ์˜ ๋ ˆ๋ฒจ์—์„œ ๋ณ€ํ™˜ํ–ˆ๋‹ค๋ฉด, ์นด๋“œ์— โ€ฆ์—์„œ ๋ณ€ํ™˜๋จ โ€” ์ œ์ž‘: ์ œ์ž‘์ž๋„ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.


3. ํŽ˜์ด์ฆˆ ์นด๋“œ

ํŽ˜์ด์ฆˆ๋Š” ๋ผ์šด๋“œ ์ค‘์— ์ฃผ๋ฐฉ์„ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. + ํŽ˜์ด์ฆˆ ์ถ”๊ฐ€๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‘ ๊ฐœ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
ํŽธ์ง‘ ์ค‘ ๋ฌผ์ฒด๋ฅผ ๋ฐฐ์น˜ํ•  ํŽ˜์ด์ฆˆ. ๋ชจ๋“  ํŽ˜์ด์ฆˆ = ๋ผ์šด๋“œ ๋‚ด๋‚ด ๋‚จ์•„ ์žˆ๋Š” ๋ฌผ์ฒด(์„œ๋น™๋Œ€, ์ ‘์‹œ ๋ฐ˜๋‚ฉ๋Œ€, ํ•จ๊ป˜ ์“ฐ๋Š” ์กฐ๋ฆฌ๋Œ€). โ€”
ํŽ˜์ด์ฆˆ n(์ด๋ฆ„) ํŽ˜์ด์ฆˆ๊ฐ€ ์‹œ์ž‘๋  ๋•Œ ํ™”๋ฉด์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค(์„ ํƒ ์‚ฌํ•ญ, ์ตœ๋Œ€ 40์ž). phases[].name
์ง€์† (์ดˆ) ํŽ˜์ด์ฆˆ๊ฐ€ ์ด์–ด์ง€๋Š” ์‹œ๊ฐ„(๋ผ์šด๋“œ ์‹œ๊ฐ„ ๊ธฐ์ค€, ๊ฒŒ์ž„๊ณผ ํ•จ๊ป˜ ์ผ์‹œ ์ •์ง€๋ฉ๋‹ˆ๋‹ค). ๋งˆ์ง€๋ง‰ ํŽ˜์ด์ฆˆ๋Š” ๋ผ์šด๋“œ๊ฐ€ ๋๋‚  ๋•Œ๊นŒ์ง€ ์ด์–ด์ง‘๋‹ˆ๋‹ค. phases[].duration
์ฃผ๋ฌธ ์ด ํŽ˜์ด์ฆˆ ๋™์•ˆ ์ฃผ๋ฌธ๋˜๋Š” ์š”๋ฆฌ. ์•„๋ฌด๊ฒƒ๋„ ์ฒดํฌํ•˜์ง€ ์•Š์œผ๋ฉด = ์ฃผ๋ฐฉ์˜ ๋ชจ๋“  ์š”๋ฆฌ. phases[].orders
โœ• ํŽ˜์ด์ฆˆ์™€ ๊ทธ ํŽ˜์ด์ฆˆ์—๋งŒ ์žˆ๋Š” ๋ฌผ์ฒด๋ฅผ ์ง€์›๋‹ˆ๋‹ค. โ€”
+ ํŽ˜์ด์ฆˆ ์ถ”๊ฐ€ ๋งจ ๋์— ํŽ˜์ด์ฆˆ๋ฅผ ํ•˜๋‚˜ ๋” ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. โ€”

ํŽ˜์ด์ฆˆ๊ฐ€ ๋ฐ”๋€” ๋•Œ ์ผ์–ด๋‚˜๋Š” ์ผ์€ ํŽธ์ง‘๊ธฐ ์•ˆ๋‚ด์„œ์™€ ํ”Œ๋ ˆ์ด์–ด ์„ค๋ช…์„œ์— ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํŽ˜์ด์ฆˆ์—๋Š” ์„œ๋น™๋Œ€์™€ ์ ‘์‹œ ๋ฐ˜๋‚ฉ๋Œ€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.


4. ๋ ˆ์‹œํ”ผ, ๊ตฌ์„ฑ, ์‚ฌ์šฉ์ž ์ง€์ • ์ฝ˜ํ…์ธ 

๋ ˆ์‹œํ”ผ

๋ชฉ๋ก์—๋Š” ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ์š”๋ฆฌ๊ฐ€ ๋จผ์ €, ๊ทธ๋‹ค์Œ ๋‹ค๋ฅธ ์ œ์ž‘์ž์˜ ๊ณต๊ฐœ ์š”๋ฆฌ, ๊ทธ๋‹ค์Œ ๋ชจ๋“  ๊ธฐ๋ณธ ๋ ˆ์‹œํ”ผ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. **๋ ˆ์‹œํ”ผ ๊ฒ€์ƒ‰โ€ฆ**์œผ๋กœ ํ•„ํ„ฐ๋งํ•˜๊ณ , ์ „์ฒด์™€ ์—†์Œ์œผ๋กœ ๋ชจ๋“  ๊ธฐ๋ณธ ๋ ˆ์‹œํ”ผ๋ฅผ ์ฒดํฌํ•˜๊ฑฐ๋‚˜ ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ฒดํฌ ์ƒ์ž ์ฃผ๋ฐฉ์ด ์ด ์š”๋ฆฌ๋ฅผ ์ฃผ๋ฌธํ• ์ง€. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‚˜ ๊ณต๊ฐœ ์š”๋ฆฌ๋Š” ์ฒดํฌํ•˜๋ฉด (๊ทธ ์žฌ๋ฃŒ์™€ ํ•จ๊ป˜) ์ฃผ๋ฐฉ์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. recipes[]
์ด๋ฆ„ ํด๋ฆญํ•˜๋ฉด ๊ทธ ์š”๋ฆฌ์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์„ ๊ทธ๋ฆฌ๋“œ์—์„œ ๊ฐ•์กฐ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. โ€”
์ ์ˆ˜ ์„œ๋น™ํ–ˆ์„ ๋•Œ ์–ป๋Š” ์ ์ˆ˜. score
์ œํ•œ ์ด ์š”๋ฆฌ ์ž์ฒด์˜ ์ฃผ๋ฌธ ์ œํ•œ ์‹œ๊ฐ„(์ดˆ)(0 = ์ฃผ๋ฐฉ์˜ ๊ฐ’). lifetime

๊ตฌ์„ฑ

์ฒดํฌํ•œ ์š”๋ฆฌ์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ โ€” ์žฌ๋ฃŒ ์ƒ์ž, ์กฐ๋ฆฌ๊ธฐ, ์กฐ๋ฆฌ ๋„๊ตฌ, ๋””์ŠคํŽœ์„œ, ์„œ๋น™ ์„ธํŠธ(์„œ๋น™๋Œ€, ์ ‘์‹œ ๋”๋ฏธ, ์‹ฑํฌ๋Œ€, ์ ‘์‹œ ๋ฐ˜๋‚ฉ๋Œ€, ๋˜๋Š” ์œ ๋ฆฌ์ž”/๋จธ๊ทธ์ž”/์Ÿ๋ฐ˜์šฉ ๋Œ€์‘ ๋ฌผ์ฒด) โ€” ์˜ ์ฒดํฌ๋ฆฌ์ŠคํŠธ๋กœ, ๋ฐฐ์น˜ํ• ์ˆ˜๋ก ์ฒดํฌ๋ฉ๋‹ˆ๋‹ค. ์—†๋Š” ํ•ญ๋ชฉ์„ ํด๋ฆญํ•˜๋ฉด ํŒ”๋ ˆํŠธ์—์„œ ๊ทธ๊ฒƒ์ด ์„ ํƒ๋ฉ๋‹ˆ๋‹ค. ์—†๋Š” ํ•ญ๋ชฉ์€ ๊ตฌ์„ฑ: โ€ฆ์ด(๊ฐ€) ์—†์Šต๋‹ˆ๋‹ค ๊ฒฝ๊ณ ๋กœ๋„ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž ์ง€์ • ์ฝ˜ํ…์ธ 

์ŠคํŠœ๋””์˜ค๋กœ ๊ฐ€๋Š” ๋ฐ”๋กœ๊ฐ€๊ธฐ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ ์ƒ์ž๋Š” ์‹์žฌ๋ฃŒ ์ƒ์ž ํŒ”๋ ˆํŠธ ๋งจ ์œ„์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.


5. ๋ฌผ์ฒด โ€” ๋ชจ๋“  ๋ฌผ์ฒด์— ์žˆ๋Š” ํ•„๋“œ

๋ฌผ์ฒด๋ฅผ ์„ ํƒํ•˜๋ฉด ์„ค์ •์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ฌผ์ฒด์—์„œ ์ด ์ค„๋“ค์ด ๋จผ์ € ๋‚˜์˜ต๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
ํ•ญ๋ชฉ, ์นธ ๋ฌด์—‡์ด๊ณ  ์–ด๋””์— ์žˆ๋Š”์ง€(2์นธ์งœ๋ฆฌ ์Šคํ…Œ์ด์…˜์€ 2์นธ ์ฐจ์ง€). โ€”
์‹ค์ œ ํฌ๊ธฐ ๊ฒŒ์ž„ ๋ชจ๋ธ์—์„œ ์ธก์ •ํ•œ ํฌ๊ธฐ(์ฐธ๊ณ ์šฉ). โ€”
id ๋ฌผ์ฒด์˜ ์ด๋ฆ„. ๋‹ค๋ฅธ ๋ฌผ์ฒด๊ฐ€ ์ด ์ด๋ฆ„์œผ๋กœ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค(๋ฐ˜๋‚ฉ๋Œ€, ๋ฒ„ํŠผ ๋Œ€์ƒ, ๋Œ€ํฌ, ๊ทธ๋ฃนโ€ฆ). ๊ณ ์œ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. id
ํšŒ์ „ ํšŒ์ „: 0, 90, 180 ๋˜๋Š” 270(๋˜๋Š” R / Shift+R์„ ๋ˆ„๋ฅด์„ธ์š”). rot
๋†’์ด y ์ง€๋ฉด์œผ๋กœ๋ถ€ํ„ฐ์˜ ๋†’์ด. ๊ธฐ๋ณธ ์”ฌ์˜ ๋ฐ”๋‹ฅ ๋†’์ด์— ๋งž์ถ˜ ๋น ๋ฅธ ๋ฒ„ํŠผ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. y
๋ณต์ œ, ๋ฌผ์ฒด ์‚ญ์ œ ํ•œ ์นธ ์˜†์— ๋ณต์‚ฌํ•˜๊ฑฐ๋‚˜(Ctrl+D) ์ง€์›๋‹ˆ๋‹ค. โ€”

์ž์„ธ์™€ ์™ธํ˜•

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
ํšŒ์ „ ยฐ ์ž„์˜ ๊ฐ๋„์˜ ํšŒ์ „. rot
๊ทธ๋ฃน ๊ทธ๋ฃน์— ๋„ฃ์Šต๋‹ˆ๋‹ค: ๊ทธ๋Ÿฌ๋ฉด ๋ฌผ์ฒด๊ฐ€ ๊ทธ๋ฃน๊ณผ ํ•จ๊ป˜ ์›€์ง์ž…๋‹ˆ๋‹ค. parent
๊ธฐ์šธ๊ธฐ x ยฐ / ๊ธฐ์šธ๊ธฐ z ยฐ ์•ž๋’ค ๋˜๋Š” ์ขŒ์šฐ๋กœ ๊ธฐ์šธ์ž…๋‹ˆ๋‹ค. ๋ฐฐ๊ฒฝ์šฉ์ž…๋‹ˆ๋‹ค โ€” ์Šคํ…Œ์ด์…˜์€ ๋˜‘๋ฐ”๋กœ ๋‘์„ธ์š”. rotX, rotZ
๋ฐฐ์œจ x / y / z ๋Š˜์ด๊ธฐ(1 = ๋ณดํ†ต, ์Œ์ˆ˜๋Š” ๋’ค์ง‘๊ธฐ). ๋ฐฐ๊ฒฝ์šฉ์ด๋ฉฐ, ๋Š˜์ธ ์Šคํ…Œ์ด์…˜๋„ ์›๋ž˜ ์นธ๋งŒ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค. sx, sy, sz
์ˆจ๊ธด ์ฑ„ ์‹œ์ž‘ ๋งŒ๋“ค์–ด์ง€์ง€๋งŒ ์‹œ์ž‘ํ•  ๋•Œ๋Š” ๊บผ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šค์œ„์น˜๊ฐ€ ์ผœ๋Š” ๋ฌผ์ฒด์— ์”๋‹ˆ๋‹ค. hidden
๋จธํ‹ฐ๋ฆฌ์–ผ ๋จธํ‹ฐ๋ฆฌ์–ผ์„ ๊ฒŒ์ž„ ๋จธํ‹ฐ๋ฆฌ์–ผ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. material
์‚ฌ์šฉ์ž ์™ธํ˜• ์…ฐ์ด๋”, ํ…์Šค์ฒ˜, ์ƒ‰์œผ๋กœ ๋งŒ๋“  ๋จธํ‹ฐ๋ฆฌ์–ผ(๋จธํ‹ฐ๋ฆฌ์–ผ๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค). matSpec
๋ณ€ํ˜• ํŠน์ • ๋ชจ๋ธ์— ๋Œ€ํ•œ ์•Œ๋ ค์ง„ ์กฐ์ •(๋ฐฐ๊ฒฝ๋ง‰ ์ˆจ๊ธฐ๊ธฐ, ๋žจํ”„ ์–ด๋‘ก๊ฒŒ ํ•˜๊ธฐโ€ฆ). variant
์ธ์Šคํ„ด์Šค ์ด๋ฆ„ ์”ฌ ์•ˆ์—์„œ์˜ ์ด๋ฆ„. ์ผ๋ถ€ ๋ณ€ํ˜•์€ ์ด ์ด๋ฆ„์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. pname
์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ฒŒ์ž„ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ปจํŠธ๋กค๋Ÿฌ. ์˜ˆ: ๊ด€์ค‘ ์ธํ˜•์„ ๊ฐ€๋งŒํžˆ ์„œ ์žˆ๊ฒŒ ํ•˜๊ฑฐ๋‚˜ ํ™˜ํ˜ธํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. animator

์ถœ๋ ์ž„ & ํ”๋“ค๋ฆผ

๋– ๋‹ค๋‹˜์„ ์ผœ๋ฉด ๋ฌผ์ฒด๊ฐ€ ์–ผ์Œ ์กฐ๊ฐ์ฒ˜๋Ÿผ ๋ถ€๋“œ๋Ÿฝ๊ฒŒ ์ถœ๋ ์ด๊ณ  ํ”๋“ค๋ฆฌ๋ฉฐ, ๋ชจ๋“  ํ”Œ๋ ˆ์ด์–ด์—๊ฒŒ ๋˜‘๊ฐ™์ด ๋ณด์ž…๋‹ˆ๋‹ค. ์ถœ๋ ์ž„ ๋†’์ด, ์ถœ๋ ์ž„ ์†๋„, ํ”๋“ค๋ฆผ ยฐ, ํ”๋“ค๋ฆผ ์†๋„, ํ‘œ๋ฅ˜, ํ‘œ๋ฅ˜ ์†๋„ x/z, ๋ฌด์ž‘์œ„์„ฑ์œผ๋กœ ์„ธ๋ถ€ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค(ํ‚ค float). ์กฐ๋ช…๊ณผ ์ถ”๋ฝ ๊ตฌ์—ญ์—์„œ๋Š” ์“ธ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ๊ฒŒ์ž„ ์Šคํฌ๋ฆฝํŠธ

๊ณ ๊ธ‰ ์ œ์ž‘์ž์™€ ๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ์„ ์œ„ํ•œ ์ ‘์ด์‹ ํ…์ŠคํŠธ ์ƒ์ž ๋‘ ๊ฐœ์ž…๋‹ˆ๋‹ค: ์• ๋‹ˆ๋ฉ”์ด์…˜(์Šค์œ„์น˜๋‚˜ ์Šคํฌ๋ฆฝํŠธ๋กœ ์ž‘๋™ํ•˜๋Š” ์ƒํƒœ, ์ „ํ™˜, ํด๋ฆฝ โ€” ํ‚ค anim)๊ณผ ๊ฒŒ์ž„ ์Šคํฌ๋ฆฝํŠธ(์ด ๋ฌผ์ฒด์— ๋ถ™์€ ๊ฒŒ์ž„ ์ž์ฒด ํŠธ๋ฆฌ๊ฑฐ ๊ตฌ์„ฑ ์š”์†Œ โ€” ํ‚ค scripts). ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ํ…์ŠคํŠธ๋Š” ์•„๋ฌด๊ฒƒ๋„ ๋ฐ”๊พธ์ง€ ์•Š๊ณ  ๊ฑฐ๋ถ€๋ฉ๋‹ˆ๋‹ค.

ํŽ˜์ด์ฆˆ

ํŽ˜์ด์ฆˆ๊ฐ€ ๋‘ ๊ฐœ ์ด์ƒ์ผ ๋•Œ: ๋ฌผ์ฒด๊ฐ€ ์–ด๋А ํŽ˜์ด์ฆˆ์— ์žˆ๋Š”์ง€(์ „์ฒด, ๋˜๋Š” ๋ฒˆํ˜ธ ์ƒ์ž). ๊ฐ™์€ ํŽ˜์ด์ฆˆ์— ํ•จ๊ป˜ ์žˆ์ง€ ์•Š๋Š” ๋‘ ๋ฌผ์ฒด๋Š” ํ•œ ์นธ์„ ํ•จ๊ป˜ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‚ค inPhases.

์ด๋™

์žฌ๋ฃŒ ์ƒ์ž, ์กฐ๋ฆฌ๋Œ€, ์Šคํ…Œ์ด์…˜์ด ๋ผ์šด๋“œ ์ค‘์— ์นธ ์‚ฌ์ด๋ฅผ ์˜ค๊ฐ€๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์•„์ดํ…œ(ํ”„๋ผ์ดํŒฌ, ์ ‘์‹œ), ๋งˆ์ปค, ์žฅ์‹, ๋Œ€ํฌ, ๋ฐ”๋‹ฅ ๋ฒ„๋„ˆ์—๋Š” ์“ธ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
๊ทธ๋ฆฌ๋“œ์—์„œ ์ •์ง€์  ๊ณ ๋ฅด๊ธฐ / ๏ผ‹ ์ •์ง€์  ์ถ”๊ฐ€ / โœ“ ์„ ํƒ ์™„๋ฃŒ ์นธ์„ ํด๋ฆญํ•ด ์ •์ง€์ ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ์ฒด ์ž์‹ ์˜ ์นธ์ด ์ถœ๋ฐœ์ ์ž…๋‹ˆ๋‹ค. ์ •์ง€์  ์นฉ์„ ํด๋ฆญํ•˜๋ฉด ์ง€์›Œ์ง‘๋‹ˆ๋‹ค. ์ด๋™ ์ค‘์ง€๋Š” ๋ชจ๋“  ์›€์ง์ž„์„ ์ง€์›๋‹ˆ๋‹ค. moveStops
๊ฐ„๊ฒฉ (์ดˆ) ์ถœ๋ฐœ ์‚ฌ์ด์˜ ์ดˆ. ๋‚จ๋Š” ์‹œ๊ฐ„ ๋™์•ˆ์€ ๊ฐ ์ •์ง€์ ์—์„œ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ๋น„์šฐ๋ฉด = ๊ณ„์† ์›€์ง์ž…๋‹ˆ๋‹ค. moveEvery
์†๋„ ์ดˆ๋‹น ๋ฏธํ„ฐ(ํ•œ ์นธ์€ 1.2 m, ๋น„์šฐ๋ฉด = 3). moveSpeed
์ฒซ ์ถœ๋ฐœ ์ถ”๊ฐ€ ์ง€์—ฐ (์ดˆ) ์ฒซ ์ด๋™ ์ „์— ๋” ๊ธฐ๋‹ค๋ฆฌ๋Š” ์‹œ๊ฐ„. moveDelay
๊ฒฝ๋กœ ์™•๋ณต, ์ถœ๋ฐœ์ ์œผ๋กœ ๋Œ์•„์™€ ๋ฐ˜๋ณต(์ •์ง€์  ๋‘ ๊ฐœ ์ด์ƒ), ๋˜๋Š” ํ•œ ๋ฒˆ ์ด๋™ ํ›„ ์ •์ง€. moveMode

์œ„์— ๋†“์ธ ๊ฒƒ์€ ๋ชจ๋‘ ํ•จ๊ป˜ ์‹ค๋ ค ๊ฐ€๊ณ , ๊ธธ์„ ๋ง‰๋Š” ์…ฐํ”„๋Š” ๋ฐ€๋ ค๋‚ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์กฐ๋ฆฌ๋Œ€๋Š” ๊ทธ๋ƒฅ ํ†ต๊ณผํ•˜๋ฏ€๋กœ ๊ฒฝ๋กœ๋ฅผ ๋น„์›Œ ๋‘์„ธ์š”. ํ˜ธ์ŠคํŠธ๊ฐ€ ์›€์ง์ด๋ฉฐ ๋ชจ๋‘๊ฐ€ ๊ฐ™์€ ์›€์ง์ž„์„ ๋ด…๋‹ˆ๋‹ค.


6. ๋ฌผ์ฒด โ€” ์ฃผ๋ฐฉ ์Šคํ…Œ์ด์…˜

๋ฌผ์ฒด ์ถ”๊ฐ€ ํ•„๋“œ
์„œ๋น™๋Œ€(2์นธ) ๋ฐ˜๋‚ฉ๋Œ€ โ€” ๋”๋Ÿฌ์šด ์ ‘์‹œ๊ฐ€ ๋Œ์•„๊ฐˆ ์ ‘์‹œ, ์œ ๋ฆฌ์ž”, ์Ÿ๋ฐ˜ ๋ฐ˜๋‚ฉ๋Œ€(ํ•˜๋‚˜ ์ด์ƒ ์ฒดํฌ, ์—†์œผ๋ฉด = ์ž๋™). ํŒ€(๋Œ€์ „ ์ „์šฉ) โ€” ๋นจ๊ฐ• ๋˜๋Š” ํŒŒ๋ž‘. ํ‚ค plateReturnId, team.
์ ‘์‹œ ๋ฐ˜๋‚ฉ๋Œ€ ๊นจ๋—ํ•˜๊ฒŒ ๋ฐ˜๋‚ฉ โ€” ์ ‘์‹œ๊ฐ€ ๊นจ๋—ํ•œ ์ƒํƒœ๋กœ ๋Œ์•„์˜ค๋ฏ€๋กœ ์„ค๊ฑฐ์ง€๊ฐ€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค(returnClean). ๋”๋Ÿฌ์šด ๋”๋ฏธ / ๊นจ๋—ํ•œ ๋”๋ฏธ โ€” ๋Œ€์‹  ๋‚ด์ค„ ๋‹ค๋ฅธ ๋”๋ฏธ, ์˜ˆ: ๋จธ๊ทธ์ž”(stackDirty, stackClean).
์œ ๋ฆฌ์ž” / ์Ÿ๋ฐ˜ / ๋จธ๊ทธ์ž” ๋ฐ˜๋‚ฉ๋Œ€ ๊ณตํ†ต ํ•„๋“œ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.
์‹ฑํฌ๋Œ€(์ ‘์‹œ, ์œ ๋ฆฌ์ž”, ์Ÿ๋ฐ˜, ๋จธ๊ทธ์ž” โ€” 2์นธ, ๊นจ๋—ํ•œ ๊ฒƒ์€ ๊ฑด์กฐ๋Œ€์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค) ์ ‘์‹œ๋‹น ์„ธ์ฒ™ (์ดˆ) โ€” ํ•˜๋‚˜๋ฅผ ์”ป๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์ดˆ(0 = ๊ฒŒ์ž„์˜ 2). ํ‚ค washTime.
์ ‘์‹œ ๋”๋ฏธ ์ ‘์‹œ ์ˆ˜ โ€” ์‹œ์ž‘ํ•  ๋•Œ์˜ ๊นจ๋—ํ•œ ์ ‘์‹œ ์ˆ˜(ํŽธ์ง‘๊ธฐ๋Š” 8์„ ์ œ์•ˆ, ๋น„์šฐ๋ฉด = 4). ํ‚ค plateCount.
์œ ๋ฆฌ์ž” / ์Ÿ๋ฐ˜ / ๋จธ๊ทธ์ž” ๋”๋ฏธ ๊ณตํ†ต ํ•„๋“œ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.
์กฐ๋ฆฌ๋Œ€, ๋„๋งˆ, ์“ฐ๋ ˆ๊ธฐํ†ต ๊ณตํ†ต ํ•„๋“œ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.
์žฌ๋ฃŒ ์ƒ์ž ๊ณตํ†ต ํ•„๋“œ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ ์ƒ์ž์—๋Š” ๋‚ด ์žฌ๋ฃŒ๊ฐ€ ๋“ค์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

7. ๋ฌผ์ฒด โ€” ์กฐ๋ฆฌ

์กฐ๋ฆฌ๊ธฐ

ํ™”๊ตฌ, ์˜ค๋ธ, ๋ชจ๋‹ฅ๋ถˆ, ๋ฏน์„œ ๋ฐ›์นจ, ๋ธ”๋ Œ๋” ๋ฐ›์นจ, ๋ฐ”๋‹ฅ ๋ฒ„๋„ˆ์—๋Š” ์กฐ๋ฆฌ ์‹œ๊ฐ„ ์„ค์ •์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์™„์„ฑ๊นŒ์ง€ (์ดˆ) ์Œ์‹์ด ์ต๊ฑฐ๋‚˜ ์„ž์ด๊ธฐ๊นŒ์ง€์˜ ์ดˆ(0 = ๊ฒŒ์ž„์˜ ์‹œ๊ฐ„). ์กฐ๋ฆฌ๊ธฐ์— ์„ค์ •ํ•˜๋ฉด ๊ทธ ์œ„์—์„œ ์กฐ๋ฆฌ๋˜๋Š” ๋ชจ๋“  ๊ฒƒ์— ์ ์šฉ๋˜๋ฉฐ ์กฐ๋ฆฌ ๋„๊ตฌ ์ž์ฒด์˜ ์„ค์ •๋ณด๋‹ค ์šฐ์„ ํ•ฉ๋‹ˆ๋‹ค โ€” ๊ทธ๋ž˜์„œ ๋น ๋ฅธ ํ™”๊ตฌ์™€ ๋А๋ฆฐ ํ™”๊ตฌ๋ฅผ ๋”ฐ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. cookTime
ํƒ€๊ธฐ๊นŒ์ง€ (์ดˆ) + ์•ˆ ํ•จ ์™„์„ฑ๋œ ๋’ค ํƒ€๊ฑฐ๋‚˜ ์ง€๋‚˜์น˜๊ฒŒ ์„ž์ด๊ธฐ๊นŒ์ง€์˜ ์ดˆ(0 = ๊ฒŒ์ž„์ฒ˜๋Ÿผ ์กฐ๋ฆฌ ์‹œ๊ฐ„๊ณผ ๊ฐ™์Œ). ์•ˆ ํ•จ = ์ ˆ๋Œ€ ํƒ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. burnTime

ํŠ€๊น€๋Œ€, ๋ฐ”๋น„ํ ๊ทธ๋ฆด, **ํ™”๋• (๊ฐ€์—ด)**์€ ๊ฒŒ์ž„์˜ ์‹œ๊ฐ„์„ ์”๋‹ˆ๋‹ค.

์กฐ๋ฆฌ ๋„๊ตฌ

๋ƒ„๋น„, ํ”„๋ผ์ดํŒฌ, ์ฐœ๊ธฐ, ์ผ€์ดํฌ ํ‹€, ์˜ค๋ธ ํŠธ๋ ˆ์ด, ์˜ค๋ธ ๋ƒ„๋น„, ๋กœ์ŠคํŠธ ํŠธ๋ ˆ์ด, ํŠ€๊น€ ๋ฐ”๊ตฌ๋‹ˆ, ์ผ€๋ฐฅ ๊ผฌ์น˜, ์ฒ ํŒ, ๊ตฝ๊ธฐ ํฌํฌ, ํ› ๊ถˆ, ๋ฏน์„œ ๋ณผ, ๋ธ”๋ Œ๋” ์šฉ๊ธฐ์—๋Š” (์œ„์™€ ๊ฐ™์€) ์กฐ๋ฆฌ ์‹œ๊ฐ„ ์„ค์ •๊ณผ ๋‹ค์Œ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์šฉ๋Ÿ‰ ๋“ค์–ด๊ฐ€๋Š” ์žฌ๋ฃŒ ์ˆ˜(+ ์Šฌ๋กฏ). 1 = ์žฌ๋ฃŒ ํ•˜๋‚˜๋งŒ ์กฐ๋ฆฌ. capacity
ํ—ˆ์šฉ ํ•ญ๋ชฉ๋งŒ ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ์ œํ•œํ•ฉ๋‹ˆ๋‹ค: ์žฌ๋ฃŒ(์–‘ํŒŒ, ํ† ๋งˆํ† โ€ฆ) ๋˜๋Š” ์•ž์„œ ์กฐ๋ฆฌํ•œ ์š”๋ฆฌ๋ฅผ ๋œปํ•˜๋Š” recipe:<dish>. ๋น„์šฐ๋ฉด = ์›๋ž˜ ๋ฐ›๋Š” ๋ชจ๋“  ๊ฒƒ. ์›๋ž˜ ๋ฐ›์ง€ ์•Š๋Š” ์žฌ๋ฃŒ๋„ ๋ฐ›์•„๋“ค์—ฌ์ง‘๋‹ˆ๋‹ค. allowed

์กฐ๋ฆฌ ๋„๊ตฌ๋Š” ๋งž๋Š” ์กฐ๋ฆฌ๊ธฐ์˜ ์นธ ์œ„์— ๋†“์œผ์„ธ์š”(ํ™”๊ตฌ ์œ„์— ๋ƒ„๋น„). ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋”ฐ๋กœ ๋–จ์–ด์ง„ ์ฑ„ ์‹œ์ž‘ํ•˜๋ฉฐ ํŽธ์ง‘๊ธฐ๊ฐ€ ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค. ํ’€๋ฌด, ์„ํƒ„ ์–‘๋™์ด, ์†Œํ™”๊ธฐ, ํฌ๋ฆผ ๋ถ„์‚ฌ๊ธฐ๋Š” ๋„๊ตฌ์ด๋ฏ€๋กœ ์šฉ๋Ÿ‰ ํ•„๋“œ๋Š” ํšจ๊ณผ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฐ”๋‹ฅ ๋ฒ„๋„ˆ์™€ ํ› ๊ถˆ

๊ต๋Œ€ ๊ทธ๋ฃน โ€” 0 = ํ•ญ์ƒ ์ผœ์ง. ๋ฒ„๋„ˆ์— ๊ทธ๋ฃน 1, 2โ€ฆ๋ฅผ ์ฃผ๋ฉด ๋ฒˆ๊ฐˆ์•„ ์ผœ์ง‘๋‹ˆ๋‹ค: ๊ทธ๋ฃน 1์ด ๋จผ์ € ์ผœ์ง€๊ณ , ๋ ˆ๋ฒจ ์นด๋“œ์˜ ํƒ€์ด๋จธ (๋ฒ„๋„ˆ ๊ต๋Œ€)์— ๋”ฐ๋ผ ๋‹ค์Œ ๊ทธ๋ฃน์œผ๋กœ ๋ถˆ์ด ์˜ฎ๊ฒจ๊ฐ‘๋‹ˆ๋‹ค. ํ› ๊ถˆ๋Š” ๋ฒ„๋„ˆ ์นธ ์œ„์— ๋‘์„ธ์š”. ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ์ผœ์ง„ ๋ฒ„๋„ˆ๋กœ ๋ฐ€์–ด ์˜ฎ๊น๋‹ˆ๋‹ค. ํ‚ค burnerGroup.


8. ๋ฌผ์ฒด โ€” ๊ธฐ๊ณ„, ์Šค์œ„์น˜, ์žฅ์น˜

์ปจ๋ฒ ์ด์–ด ๋ฒจํŠธ

๋ฒจํŠธ ์†๋„(ํ‚ค conveySpeed, ๋น„์šฐ๋ฉด = ๊ฒŒ์ž„์˜ ๊ฐ’)์™€ ๋ฐฉํ–ฅ โ€” ์˜ค๋ฅธ์ชฝ ๋˜๋Š” ์™ผ์ชฝ(conveyDir). ์ด์›ƒํ•œ ์นธ์— ๊ฐ™์€ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฒจํŠธ๋ฅผ ์ด์–ด ๋†“๊ณ , ํšŒ์ „์‹œ์ผœ ๋ฐฉํ–ฅ์„ ๋งž์ถ”๊ณ , ๋์— ์กฐ๋ฆฌ๋Œ€๋ฅผ ๋‘์„ธ์š”.

์žฌ๋ฃŒ ํˆฌ์ž…๊ธฐ

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ƒ์„ฑ ์•„์ดํ…œ ๋ฒจํŠธ์— ๋–จ์–ด๋œจ๋ฆด ์žฌ๋ฃŒ๋ฅผ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค(์ฒดํฌํ•œ ์ˆœ์„œ๊ฐ€ ์ƒ์„ฑ ์ˆœ์„œ์ž…๋‹ˆ๋‹ค). ๋น„์šฐ๋ฉด = ์•„๋ฌด๊ฒƒ๋„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. spawnItems
๊ฐ„๊ฒฉ (์ดˆ) ๋–จ์–ด๋œจ๋ฆฌ๋Š” ๊ฐ„๊ฒฉ(์ดˆ). spawnInterval
์ˆœ์„œ๋Œ€๋กœ (์•„๋‹ˆ๋ฉด ๋ฌด์ž‘์œ„) ์•„์ดํ…œ์„ ์ˆœ์„œ๋Œ€๋กœ ๋Œ๋ฆฌ๊ฑฐ๋‚˜, ๋ฌด์ž‘์œ„๋กœ ๊ณ ๋ฆ…๋‹ˆ๋‹ค. spawnInOrder
์‹œ์ž‘ํ•  ๋•Œ ์ƒ์„ฑ ๋ผ์šด๋“œ๊ฐ€ ์‹œ์ž‘๋  ๋•Œ ์ฒซ ์•„์ดํ…œ์„ ๋–จ์–ด๋œจ๋ฆฝ๋‹ˆ๋‹ค. spawnAtStart

์ปจ๋ฒ ์ด์–ด ๋ฒจํŠธ๋ฅผ ํ–ฅํ•˜๋„๋ก ํšŒ์ „์‹œํ‚ค์„ธ์š”. ์•„์ดํ…œ์€ ์•ž์ชฝ ๋ฒจํŠธ ์นธ์— ๋–จ์–ด์ง‘๋‹ˆ๋‹ค.

๋ฒ„ํŠผ๊ณผ ์Šค์œ„์น˜

๋ฒ„ํŠผ, ๋ฐ”๋‹ฅ ์Šค์œ„์น˜, ๋ˆ„๋ฆ„ ๋ฒ„ํŠผ(๊ทธ๋ฆฌ๊ณ  ๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ์˜ ์Šค์œ„์น˜):

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์›€์ง์ด๋Š” ๋Œ€์ƒ ์ด ๋ฒ„ํŠผ์ด ์กฐ์ข…ํ•˜๋Š” ๋ฌผ์ฒด(ํ•˜๋‚˜ ์ด์ƒ ์ฒดํฌ). ํ•œ ๋ฒˆ ๋ˆ„๋ฅด๋ฉด ๋ชจ๋‘๊ฐ€ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. triggerTargetId
๋ณด๋‚ด๊ธฐ ๋Œ€์ƒ์ด ๋ฐ›๋Š” ํŠธ๋ฆฌ๊ฑฐ. ๋น„์›Œ ๋‘๋ฉด ์ „ํ™˜๊ธฐ๋ฅผ ์ž๋™์œผ๋กœ ์•Œ์•„๋ƒ…๋‹ˆ๋‹ค. ์›€์ง์ด๋Š” ๋ฐœํŒ์„ ์ž‘๋™์‹œํ‚ค๋ ค๋ฉด ๋ฐœํŒ์˜ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํŠธ๋ฆฌ๊ฑฐ๋กœ ์ •ํ•˜์„ธ์š”. triggerSend
๊บผ์ง„ ์ฑ„ ์‹œ์ž‘ ๋ฌด์–ธ๊ฐ€๊ฐ€ ๋‹ค์‹œ ์ผœ ์ค„ ๋•Œ๊นŒ์ง€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. startDisabled
์• ๋‹ˆ๋ฉ”์ด์…˜ ๋Œ€์ƒ / ์• ๋‹ˆ๋ฉ”์ด์…˜ ํŠธ๋ฆฌ๊ฑฐ ์ด ๋ฒ„ํŠผ์ด ์ง์ ‘ ์ž‘๋™์‹œํ‚ค๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋ฌผ์ฒด์™€ ๊ทธ ํŠธ๋ฆฌ๊ฑฐ. animatorTriggerId, animatorTrigger
ํ™œ์„ฑ ์™ธํ˜• / ๋น„ํ™œ์„ฑ ์™ธํ˜• ์ผœ์กŒ์„ ๋•Œ์™€ ๊บผ์กŒ์„ ๋•Œ ๋ฒ„ํŠผ์˜ ๊ฒŒ์ž„ ๋จธํ‹ฐ๋ฆฌ์–ผ. buttonMaterialOn, buttonMaterialOff

์••๋ ฅํŒ(๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ์—์„œ)์€ ๋ฐŸ์„ ๋•Œ์™€ ๋‚ด๋ ค์˜ฌ ๋•Œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค: ์ผฌ: ๋ณด๋‚ด๊ธฐ, ๋”: ๋ณด๋‚ด๊ธฐ, ๊ทธ๋ฆฌ๊ณ  ์ผฌ: ์• ๋‹ˆ๋ฉ”์ด์…˜ / ๋”: ์• ๋‹ˆ๋ฉ”์ด์…˜(triggerSendExit, animatorTriggerExit).

๋Œ€ํฌ

์ˆœ๊ฐ„์ด๋™๊ธฐ

(๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ์—์„œ.) ์ถœ๊ตฌ โ€” ์…ฐํ”„๊ฐ€ ๋‚˜์˜ค๋Š” ์ˆœ๊ฐ„์ด๋™๊ธฐ(portalExitId). ์ƒ‰์ƒ โ€” ํฌํ„ธ์˜ ์ƒ‰(portalColor). ์–‘๋ฉด โ€” ์–ด๋А ์ชฝ์—์„œ๋“  ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค(portalDoubleSided).

์กฐ์ข… ๋‹จ๋ง๊ธฐ

์กฐ์ข… ๋Œ€์ƒ โ€” ์…ฐํ”„๊ฐ€ ์ด ๋‹จ๋ง๊ธฐ์—์„œ ์กฐ์ข…ํ•˜๋Š” ์›€์ง์ด๋Š” ๋ฌผ์ฒด(PilotMovement ๊ฒŒ์ž„ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ‚ค pilotTargetId).

๊ทธ ๋ฐ–์˜ ๊ธฐ๊ณ„

์กฐ๋ฏธ๋ฃŒ ๊ธฐ๊ณ„์™€ ์Œ๋ฃŒ ๊ธฐ๊ณ„, ์„ํƒ„ ๋””์ŠคํŽœ์„œ, ์žฅ์ž‘ ์ƒ์ž, ํ™”์—ผ ๋ฐฉ์‚ฌ๊ธฐ, ๊ทธ๋ฆฌ๊ณ  ๋‚ด ์‚ฌ์šฉ์ž ์ง€์ • ๊ธฐ๊ณ„์—๋Š” ๊ณตํ†ต ํ•„๋“œ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.


9. ๋ฌผ์ฒด โ€” ๋งˆ์ปค

๋งˆ์ปค ํ•„๋“œ
์…ฐํ”„ ์Šคํฐ ํ”Œ๋ ˆ์ด์–ด #(1โ€“7) โ€” ์—ฌ๊ธฐ์„œ ์‹œ์ž‘ํ•˜๋Š” ํ”Œ๋ ˆ์ด์–ด. ๊ฒŒ์ž„์€ ์Šคํฐ 1โ€ฆํ”Œ๋ ˆ์ด์–ด ์ˆ˜๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์“ฐ๋ฉฐ, ๋‚จ๋Š” ์Šคํฐ์€ ๋ถ€ํ™œ ์ง€์ ์ด ๋ฉ๋‹ˆ๋‹ค. ์ƒ‰: 1 ํŒŒ๋ž‘, 2 ๋นจ๊ฐ•, 3 ์ดˆ๋ก, 4 ๋…ธ๋ž‘, 5 ๋ณด๋ผ, 6 ์ฃผํ™ฉ, 7 ๋ถ„ํ™. ๋‘ ์Šคํฐ์˜ ๋ฒˆํ˜ธ๊ฐ€ ๊ฐ™์œผ๋ฉด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. (ํ‚ค spawns.)
์นด๋ฉ”๋ผ ๋Œ€์ƒ ์นด๋ฉ”๋ผ๊ฐ€ ๋น„์ถ”๋Š” ์นธ โ€” ์˜ฎ๊ธฐ๋ฉด ๋‹ค์‹œ ์กฐ์ค€๋ฉ๋‹ˆ๋‹ค. ์นด๋ฉ”๋ผ ํ”ผ์น˜ ยฐ, ์นด๋ฉ”๋ผ ์š” ยฐ, ์คŒ ์ตœ์†Œ, ์คŒ ์ตœ๋Œ€๋„ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค(๋ ˆ๋ฒจ ์นด๋“œ์™€ ๊ฐ™์Œ). ํ•˜๋‚˜๋งŒ ์“ฐ์ž…๋‹ˆ๋‹ค. (ํ‚ค camTarget.)

10. ๋ฌผ์ฒด โ€” ๋ ˆ๋ฒจ ์•„ํŠธ, ์žฅ์‹, 3D ๋ชจ๋ธ

์ด๊ฒƒ๋“ค์€ ์žฅ์‹ ํŒ”๋ ˆํŠธ์—์„œ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.

์กฐ๋ช…

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ข…๋ฅ˜ ํฌ์ธํŠธ(์ „๊ตฌ), ์Šคํฟ(์›๋ฟ”), ๋ฐฉํ–ฅ์„ฑ(ํ–‡๋น› โ€” ๋ฐฉํ–ฅ๋งŒ ์ค‘์š”), ์˜์—ญ(๋ฒ ์ดํฌ ์ „์šฉ). lightType
์ƒ‰์ƒ ๋น›์˜ ์ƒ‰. lightColor
๋ฐ๊ธฐ ์„ธ๊ธฐ(๋น„์šฐ๋ฉด = 1, 0 = ์Šค์œ„์น˜๊ฐ€ ๋ฐ”๊ฟ€ ๋•Œ๊นŒ์ง€ ์–ด๋‘ ). intensity
๋ฒ”์œ„ ๋น›์ด ๋‹ฟ๋Š” ๊ฑฐ๋ฆฌ(์›”๋“œ ๋‹จ์œ„, ๋น„์šฐ๋ฉด = 10). range
์›๋ฟ” ยฐ ์Šคํฟ ์กฐ๋ช…์˜ ํญ(๋น„์šฐ๋ฉด = 30). spotAngle
๊ทธ๋ฆผ์ž ์—†์Œ, ์„ ๋ช…, ๋ถ€๋“œ๋Ÿฌ์›€(๋ถ€๋“œ๋Ÿฌ์›€์ด ๊ฐ€์žฅ ๋ฌด๊ฒ์Šต๋‹ˆ๋‹ค). shadows
๊ทธ๋ฆผ์ž ์„ธ๋ถ€ ์กฐ์ • ์–ด๋‘ก๊ธฐ, ๋ฐ”์ด์–ด์Šค, ๋…ธ๋ฉ€ ๋ฐ”์ด์–ด์Šค, ๊ทผ๊ฑฐ๋ฆฌ โ€” ์„ธ๋ถ€ ์กฐ์ •. ๊ธฐ๋ณธ๊ฐ’์„ ์“ฐ๋ ค๋ฉด ๋น„์›Œ ๋‘์„ธ์š”. shadowParams

์ž์ฒด ์กฐ๋ช…์„ ๋ฐฐ์น˜ํ•œ ๋…๋ฆฝ ์ฃผ๋ฐฉ์—์„œ๋Š” ๊ธฐ๋ณธ ์”ฌ์˜ ์กฐ๋ช…์ด ๊บผ์ง‘๋‹ˆ๋‹ค.

์ถ”๋ฝ ๊ตฌ์—ญ

์…ฐํ”„์™€ ์•„์ดํ…œ์ด ๋“ค์–ด๊ฐ€๋ฉด ๋‹ค์‹œ ๋‚˜ํƒ€๋‚˜๋Š”(๋ฆฌ์Šคํฐ) ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. ๋ชจ์–‘(์ƒ์ž ๋˜๋Š” ๊ตฌ), ๋ฐฉ์‹ โ€” ์–ด๋–ค ์ฃฝ์Œ์ด ์žฌ์ƒ๋˜๋Š”์ง€ (์ถ”๋ฝ, ์ถฉ๋Œ, ์ต์‚ฌ, ์น˜์ž„), ๊ทธ๋ฆฌ๊ณ  ํฌ๊ธฐ x / y / z(๊ตฌ๋Š” ํฌ๊ธฐ x๋ฅผ ๋ฐ˜์ง€๋ฆ„์œผ๋กœ ์”๋‹ˆ๋‹ค). ํ‚ค shape, respawn, sx, sy, sz. ๋…๋ฆฝ ์ฃผ๋ฐฉ์— ์ถ”๋ฝ ๊ตฌ์—ญ์„ ๋ฐฐ์น˜ํ•˜๋ฉด ๊ธฐ๋ณธ ์”ฌ์˜ ์ถ”๋ฝ ๊ตฌ์—ญ์ด ๊บผ์ง‘๋‹ˆ๋‹ค.

ํ‘œ๋ฉด

์ถฉ๋Œ ์—†์ด ์•„ํŠธ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค โ€” ๋ฐ”๋‹ฅ, ๋Ÿฌ๊ทธ, ํŒ, ๋‹จ์ˆœํ•œ ๋„ํ˜•์šฉ์ž…๋‹ˆ๋‹ค. ์–‘์‹(ํ‰๋ฉด ํŒจ๋„, ํ‰๋ฉด, ์ƒ์ž, ๊ณต, ์›๊ธฐ๋‘ฅ, ์บก์А), ์™ธํ˜• โ€” ๋จธํ‹ฐ๋ฆฌ์–ผ, ์˜ˆ: shader=Legacy Shaders/Diffuse;_Color=#ffffff(matSpec), ๊ทธ๋ฆฌ๊ณ  ์„ ํƒ์ ์œผ๋กœ ๊ฒŒ์ž„ ๋ชจ๋ธ โ€” ๋„ํ˜• ๋Œ€์‹  ๊ฒŒ์ž„ ๋ชจ๋ธ์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค(gameMesh). ํฌ๊ธฐ๋Š” ์ž์„ธ์™€ ์™ธํ˜•์˜ ๋ฐฐ์œจ ํ•„๋“œ๋กœ ์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฃน

๋‹ค๋ฅธ ๋ฌผ์ฒด๋“ค์ด (๊ทธ๋ฃน ํ•„๋“œ๋กœ) ๋“ค์–ด์˜ฌ ์ˆ˜ ์žˆ๋Š” ๋นˆ ๋ฌผ์ฒด์ž…๋‹ˆ๋‹ค: ๊ทธ๋ฃน ์•ˆ์˜ ๋ชจ๋“  ๊ฒƒ์ด ํ•จ๊ป˜ ์›€์ง์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ถœ๋ ์ž„ & ํ”๋“ค๋ฆผ, ์›€์ง์ด๋Š” ๋ฌผ์ฒด, ์• ๋‹ˆ๋ฉ”์ด์…˜๊ณผ ํ•จ๊ป˜ ์”๋‹ˆ๋‹ค. ์…ฐํ”„ ๋”ฐ๋ผ๊ฐ€๊ธฐ(์…ฐํ”„: P1โ€“P4)๋Š” ๊ทธ๋ฃน์ด ๊ทธ ์…ฐํ”„๋ฅผ ๋”ฐ๋ผ๋‹ค๋‹ˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ: ๋จธ๋ฆฌ ๋žจํ”„(followChef).

๋‹จ๋‹จํ•œ ์ƒ์ž

(๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ์—์„œ.) ๋ฌผ๋ฆฌ๊ฐ€ ์žˆ๋Š” ์ƒ์ž: ์ผ๋ฐ˜, ๋ฐ”๋‹ฅ (๊ฑธ์„ ์ˆ˜ ์žˆ์Œ) ๋˜๋Š” ๋ฒฝ(layer).

์žฅ์‹ (์”ฌ ์†Œํ’ˆ)

๊ธฐ๋ณธ ์”ฌ์˜ ์†Œํ’ˆ(๋˜๋Š” ๋‹ค๋ฅธ ์”ฌ ๋ณด๊ธฐ๋กœ ๋‹ค๋ฅธ ์ฃผ๋ฐฉ์˜ ์†Œํ’ˆ). 1์ธต์—์„œ๋Š” ์›๋ž˜ ๋†’์ด๋ฅผ ์œ ์ง€ํ•˜๋ฉฐ, ์ž์„ธ์™€ ์™ธํ˜•, ์ถœ๋ ์ž„ & ํ”๋“ค๋ฆผ, ์• ๋‹ˆ๋ฉ”์ด์…˜, ํŽ˜์ด์ฆˆ ํ•„๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚ด 3D ๋ชจ๋ธ

**๏ผ‹ 3D ๋ชจ๋ธ (.obj)**๋กœ ์—…๋กœ๋“œํ•œ ๋ชจ๋ธ:

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
๋ฉ”์‹œ ํฌ๊ธฐ ๋ชจ๋ธ์˜ ๊ฐ€์žฅ ๊ธด ๋ณ€์„ ๋”ฐ๋ผ ์žฐ ํฌ๊ธฐ(๋ฏธํ„ฐ)(0 โ‰ˆ 1). meshScale
๊ณ ์ฒด ์…ฐํ”„์™€ ๋˜์ง„ ์•„์ดํ…œ์ด ํ†ต๊ณผํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์ฝœ๋ผ์ด๋”๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. solid
์ƒ‰์กฐ ํ…์Šค์ฒ˜๊ฐ€ ์—†๋Š” ๋ชจ๋ธ์— ์“ฐ๋Š” ๋‹จ์ƒ‰. meshColour

๋ชจ๋ธ์„ ๋‚ด๋ ค๋ฐ›์ง€ ๋ชปํ•œ ํ”Œ๋ ˆ์ด์–ด์—๊ฒŒ๋Š” ๊ทธ ์ž๋ฆฌ์— ์•„๋ฌด๊ฒƒ๋„ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.


11. ๋ฐ”๋‹ฅ, ๋ฒฝ, ๋ฐœํŒ

๋ฐ”๋‹ฅ ์˜์—ญ

๋ฐ”๋‹ฅ ๋ ˆ์ด์–ด์—์„œ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค. ๊ฐ ์˜์—ญ์€ ์…ฐํ”„๊ฐ€ ๊ฑธ์„ ์ˆ˜ ์žˆ๋Š” ํŠน์ • ๋†’์ด(๋ฐ”๋‹ฅ ๋†’์ด y)์˜ ์‚ฌ๊ฐํ˜• ์นธ ๋ฌถ์Œ์ด๋ฉฐ, ์˜์—ญ ์‚ฌ์ด์˜ ๋นˆํ‹ˆ์€ ๊ตฌ๋ฉ์ž…๋‹ˆ๋‹ค. ์ข…๋ฅ˜๊ฐ€ ๋ฐ”๋‹ฅ์ด๋ฉด ํ‰ํ‰ํ•˜๊ณ , ๊ฒฝ์‚ฌ๋กœ / ๊ณ„๋‹จ์ด๋ฉด ๋‚ฎ์€ ์ชฝ y์—์„œ ๋†’์€ ์ชฝ y๊นŒ์ง€ ์˜ค๋ฅด๋Š” ๋ฐฉํ–ฅ(+x, โˆ’x, +z, โˆ’z, ๋˜๋Š” ๋“œ๋ž˜๊ทธ ๋ฐฉํ–ฅ์„ ๋”ฐ๋ฅด๋Š” ์ž๋™)์œผ๋กœ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค. ํ‚ค: floors[]์— x0, z0, x1, z1, y, ๊ฒฝ์‚ฌ๋กœ๋Š” ์ถ”๊ฐ€๋กœ kind, y2, dir.

์˜์—ญ์—๋Š” ๊ณ ์œ ํ•œ ๋ชจ์–‘๋„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค โ€” ๊ธฐ๋ณธ ์”ฌ์˜ ๋ฐ”๋‹ฅ ๋Œ€์‹  ์˜์—ญ์— ์ž…ํžˆ๋Š” ํ…์Šค์ฒ˜์ž…๋‹ˆ๋‹ค(matSpec, texTile ์›”๋“œ ๋‹จ์œ„๋งˆ๋‹ค ๋ฐ˜๋ณต). ์•„์ง ์ด๋ฅผ ์œ„ํ•œ ํ•„๋“œ๋Š” ์—†์ง€๋งŒ, ์ด๊ฒƒ์„ ์“ฐ๋Š” ์ฃผ๋ฐฉ(๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ ํฌํ•จ)์€ ํŽธ์ง‘ํ•ด๋„ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

๋ฒฝ

์ฝœ๋ผ์ด๋” ๋ ˆ์ด์–ด์—์„œ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค: ์…ฐํ”„์™€ ์•„์ดํ…œ์„ ๋ง‰๋Š”, ๋ฒฝ ๋†’์ด๊ฐ€ ์žˆ๋Š” ๋ณด์ด์ง€ ์•Š๋Š” ๋‹จ๋‹จํ•œ ์ƒ์ž์ž…๋‹ˆ๋‹ค. ํ‚ค colliders[](x0, z0, x1, z1, y, h).

์›€์ง์ด๋Š” ๋ฐœํŒ

๋ฐœํŒ ๋ ˆ์ด์–ด์—์„œ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค: ๏ผ‹ ์ƒˆ ๋ฐœํŒ, ์นธ์„ ํด๋ฆญํ•ด ๊ฒฝ๋กœ ์ง€์ •, โœ“ ๊ฒฝ๋กœ ์™„๋ฃŒ(์ง€์  ๋‘ ๊ฐœ ์ด์ƒ).

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์†๋„ (๋‹จ์œ„/์ดˆ) ์ดˆ๋‹น ์›”๋“œ ๋‹จ์œ„๋กœ ๋‚˜ํƒ€๋‚ธ ์ด๋™ ์†๋„. speed
๋„ˆ๋น„ / ๊นŠ์ด (์นธ) ๋ฐœํŒ์˜ ํฌ๊ธฐ(๊ธฐ๋ณธ 2 ร— 2). w, d
๋จธ๋ฌด๋ฆ„ (์ดˆ) ๊ฐ ์ง€์ ์—์„œ ๋ฉˆ์ถ”๋Š” ์‹œ๊ฐ„. dwell
์‹œ์ž‘ ์ง€์—ฐ (์ดˆ) ์ฒซ ์ด๋™ ์ „์— ์ถœ๋ฐœ์ ์—์„œ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์‹œ๊ฐ„. startDelay
๋ฐ˜๋ณต (์ˆœํ™˜ ๊ฒฝ๋กœ) ๊ฒฝ๋กœ๋ฅผ ์ˆœํ™˜ ๊ฒฝ๋กœ๋กœ ๋•๋‹ˆ๋‹ค(๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์™•๋ณตํ•ฉ๋‹ˆ๋‹ค). loop
1ํšŒ (ํ•œ ๋ฒˆ ์ด๋™ ํ›„ ์ •์ง€) ๊ฒฝ๋กœ๋ฅผ ํ•œ ๋ฒˆ ์ง€๋‚˜๊ฐ„ ๋’ค ๋ฉˆ์ถฅ๋‹ˆ๋‹ค. once
id ๋ฐœํŒ์˜ ์ด๋ฆ„. ์Šค์œ„์น˜๊ฐ€ ์กฐ์ข…ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. id
์ƒ‰์ƒ ํŒ์˜ ์ƒ‰. colour
์Šค์œ„์น˜ ID (์ž‘๋™ ์กฐ๊ฑด) ๋ฐœํŒ์„ ์ถœ๋ฐœ์‹œํ‚ค๋Š” ๋ฒ„ํŠผ: ๋ฒ„ํŠผ์ด ๋ˆŒ๋ฆด ๋•Œ๊นŒ์ง€ ์ถœ๋ฐœ์ ์—์„œ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. trigger
์กฐ์ข… ์Šคํ‹ฑ ID ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๋ฐœํŒ์„ ์กฐ์ข…ํ•˜๋Š” ๋ฐ ์“ฐ๋Š” ์กฐ์ข… ์Šคํ‹ฑ. stick

๋ฐœํŒ์€ ๊ณต์œ  ์‹œ๊ณ„์— ๋งž์ถฐ ์›€์ง์ด๋ฏ€๋กœ ๋ชจ๋“  ํ”Œ๋ ˆ์ด์–ด๊ฐ€ ๊ฐ™์€ ์›€์ง์ž„์„ ๋ด…๋‹ˆ๋‹ค. ์…ฐํ”„๊ฐ€ ์‹ค๋ ค ๊ฐ€๋„๋ก ๊ณ ๊ธ‰ ์นด๋“œ์—์„œ ์›€์ง์ด๋Š” ๋ฐ”๋‹ฅ ํƒ€๊ธฐ๋ฅผ ์ผœ์„ธ์š”.


12. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ

+ ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ ์ถ”๊ฐ€ ๋˜๋Š” **โœŽ**๋ฅผ ๋ˆ„๋ฅด๋ฉด ์žฌ๋ฃŒ ์–‘์‹์ด ์—ด๋ฆฝ๋‹ˆ๋‹ค.

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ด๋ฆ„ ์žฌ๋ฃŒ์˜ ์ด๋ฆ„(ํ•„์ˆ˜). name
์™ธํ˜• / ํƒœ๊ทธ ์žฌ๋ฃŒ๋ฅผ ๋ฌ˜์‚ฌํ•˜๋Š” ๋‹จ์–ด(๋ชจ์–‘, ์ƒ‰, ํ‘œ๋ฉด). AI ์ƒ์„ฑ์— ์“ฐ์ž…๋‹ˆ๋‹ค. โ€”
โœจ AI๋กœ ์ƒ์„ฑ ์žฌ๋ฃŒ์˜ ์„ค์ •, 2D ๊ทธ๋ฆผ, 3D ๋ชจ๋ธ ์ดˆ์•ˆ์„ ๋งŒ๋“ค์–ด ๊ฒ€ํ†  ํŒจ๋„์— ๋ณด์—ฌ ์ค๋‹ˆ๋‹ค. ๊ฐ ๋ถ€๋ถ„์„ โ†ป ๋‹ค์‹œ ๋งŒ๋“ค๊ธฐํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝ ์ทจ์†Œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. AI ์ด์šฉ ๊ถŒํ•œ์ด๋‚˜ ๋‚ด ํ‚ค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค(์•ˆ๋‚ด์„œ). โ€”
3D ๋ชจ๋ธ(์ƒ์„ฑ๊ธฐ) ์ด๋ฏธ์ง€โ†’3D(๊ทธ๋ฆผ์—์„œ) ๋˜๋Š” ํ…์ŠคํŠธโ†’3D(์ด๋ฆ„์—์„œ). โ€”
๊ธฐ๋ณธ ๋™์ž‘ ์ฐ ์ˆ˜ ์žˆ์Œ(์‚ฌ์šฉ ์ „์— ์ฐ๊ธฐ), ๋‚ ๊ฒƒ(์ฐ์ง€ ์•Š์Œ) ๋˜๋Š” ์กฐ๋ฆฌ ๊ฐ€๋Šฅ(์ฐ์ง€ ์•Š๊ณ  ๋ƒ„๋น„๋‚˜ ํ”„๋ผ์ดํŒฌ์—์„œ ์กฐ๋ฆฌ). kind
์กฐ๋ฆฌ ๋ฐฉ๋ฒ• ์กฐ๋ฆฌ ๊ฐ€๋Šฅํ•œ ์žฌ๋ฃŒ์šฉ: ๋“์ด๊ธฐ, ๋ณถ๊ธฐ ๋˜๋Š” ๊ตฝ๊ธฐ. cookMethod
ํ…œํ”Œ๋ฆฟ ๋ฐ”ํƒ•์ด ๋˜๋Š” ๊ธฐ๋ณธ ์žฌ๋ฃŒ. ์ฃผ๋ฐฉ์—์„œ ๊ทธ ์žฌ๋ฃŒ์ฒ˜๋Ÿผ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค. template
๋‚ ๊ฒƒ ์ƒ‰ / ์ฌ ๊ฒƒ ์ƒ‰ ๋‚ ๊ฒƒ๊ณผ ์ฌ ๊ฒƒ์˜ ์ƒ‰์กฐ. colour, choppedColour
2D ๋‚ ๊ฒƒ / ์ฌ ๊ฒƒ ์•„์ด์ฝ˜ ์žฌ๋ฃŒ ์ƒ์ž์™€ ๋“ค๊ณ  ์žˆ์„ ๋•Œ์˜ ๊ทธ๋ฆผ. icon, choppedIcon
2D ํ”Œ๋ ˆ์ดํŒ… ์ฃผ๋ฌธ์„œ์˜ ๊ทธ๋ฆผ. dishIcon
2D ์กฐ๋ฆฌ๋จ ์กฐ๋ฆฌ ๊ฐ€๋Šฅํ•œ ์žฌ๋ฃŒ์šฉ: ์กฐ๋ฆฌ๋œ ๊ทธ๋ฆผ. cookedIcon
3D ๋ชจ๋ธ (.obj) ๋‚ ๊ฒƒ ์žฌ๋ฃŒ์— ์“ฐ๋Š” ๋‚ด ๋ชจ๋ธ. meshKey
3D ํ…์Šค์ฒ˜ ์•„ํ‹€๋ผ์Šค (.png) ๋ชจ๋ธ์˜ ํ…์Šค์ฒ˜. texKey
์ €์žฅ / ์ €์žฅ ํ›„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๊ฒŒ์‹œ / ์ทจ์†Œ ๋‚ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ €์žฅํ•˜๊ฑฐ๋‚˜, ๋‹ค๋ฅธ ์ œ์ž‘์ž๋„ ์“ธ ์ˆ˜ ์žˆ๋„๋ก ๊ฒŒ์‹œ๊นŒ์ง€ ํ•ฉ๋‹ˆ๋‹ค. โ€”

์—…๋กœ๋“œ์—๋Š” ๋กœ๊ทธ์ธ์ด ํ•„์š”ํ•˜๋ฉฐ ๋ฒ ํƒ€ ๊ธฐ๊ฐ„์—๋Š” ๊ถŒํ•œ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์žฌ๋ฃŒ ๋ชฉ๋ก์—์„œ ์žฌ๋ฃŒ ์˜†์˜ ์ˆซ์ž๋Š” ์„œ๋น™ ์ ์ˆ˜์ž…๋‹ˆ๋‹ค.


13. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ์š”๋ฆฌ

๊ฐ„๋‹จํ•œ ์–‘์‹

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ด๋ฆ„ ์š”๋ฆฌ์˜ ์ด๋ฆ„(ํ•„์ˆ˜). name
์กฐ๋ฆฌ ์กฐํ•ฉ (์กฐ๋ฆฌ ์•ˆ ํ•จ), ๋˜๋Š” ์กฐ๋ฆฌ ๋ฐฉ์‹: ๋“์ด๊ธฐ, ๋ณถ๊ธฐ, ๊ตฝ๊ธฐ, ๋กœ์ŠคํŠธ, ์ฐŒ๊ธฐ, ํŠ€๊ธฐ๊ธฐ, ์ฒ ํŒ, ๊ตฝ๊ธฐ(ํ† ์ŠคํŠธ), ๊ผฌ์น˜, ์ผ€์ดํฌ ๊ตฝ๊ธฐ, ํ› ๊ถˆ, ์„ž๊ธฐ, ๊ฐˆ๊ธฐ. cook
๊ทธ๋ฆ‡ ์ ‘์‹œ, ๋จธ๊ทธ์ž”, ์œ ๋ฆฌ์ž” ๋˜๋Š” ์Ÿ๋ฐ˜์— ๋‹ด์•„ ์„œ๋น™ํ•ฉ๋‹ˆ๋‹ค. vessel
์ฃผ๋ฌธ๋จ ์ฒดํฌ ํ•ด์ œ = ์ ˆ๋Œ€ ์ฃผ๋ฌธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์š”๋ฆฌ๋‚˜ ์กฐ๋ฆฌ ๋„๊ตฌ์— ๋„ฃ๊ธฐ ์œ„ํ•ด์„œ๋งŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. matchOnly
๊ตฌ์„ฑ ์š”์†Œ ์žฌ๋ฃŒ์™€ ๊ฐ ์žฌ๋ฃŒ์˜ ์†์งˆ ๋ฐฉ์‹: ์ฌ ๊ฒƒ, ๋‚ ๊ฒƒ, ์ตํžŒ ๊ฒƒ ๋˜๋Š” ์™„์ „ํžˆ ์†์งˆ๋จ. + ๊ตฌ์„ฑ ์š”์†Œ๋กœ ํ•˜๋‚˜ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ingredients
๋Œ€์ฒด ๊ฐ€๋Šฅ ์„œ๋กœ ๋Œ€์‹ ํ•  ์ˆ˜ ์žˆ๋Š” ์žฌ๋ฃŒ ๋ฌถ์Œ, ์˜ˆ: lychee|mango, papaya|guava. interchange
โœจ AI ์ถ”์ฒœ ์กฐ๋ฆฌ ๋ฐฉ๋ฒ•, ๊ตฌ์„ฑ ์š”์†Œ, ๋Œ€์ฒด ๊ฐ€๋Šฅ ๋ฌถ์Œ, ์ ์ˆ˜๋ฅผ ์ฑ„์›๋‹ˆ๋‹ค(AI ์ด์šฉ ๊ถŒํ•œ ํ•„์š”). โ€”

๋…ธ๋“œ ๊ทธ๋ž˜ํ”„ ๊ตฌ์„ฑ๊ธฐ

๏ผ‹ ์š”๋ฆฌ ๊ตฌ์„ฑ(๋˜๋Š” โœŽ ํŽธ์ง‘)์„ ๋ˆ„๋ฅด๋ฉด ๊ทธ๋ž˜ํ”„๊ฐ€ ์—ด๋ฆฝ๋‹ˆ๋‹ค.

์š”๋ฆฌ ์ด๋ฏธ์ง€์™€ 3D ๋ชจ๋ธ

โœจ Workers AI ๋˜๋Š” ๐Ÿ–ฅ ๋‚ด ComfyUI๋กœ ํ”Œ๋ ˆ์ดํŒ… ๊ทธ๋ฆผ์„ ์ƒ์„ฑํ•˜๊ณ , **๐ŸงŠ 3D ๋ชจ๋ธ ์ƒ์„ฑ (๋กœ์ปฌ)**์œผ๋กœ ๊ทธ ๊ทธ๋ฆผ์—์„œ ๋ชจ๋ธ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๋˜๋Š” ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ, ๋ชจ๋ธ ์—…๋กœ๋“œ (.obj), **ํ…์Šค์ฒ˜ ์—…๋กœ๋“œ (.png)**๋ฅผ ์“ฐ์„ธ์š”. ํ”Œ๋ ˆ์ดํŒ… ์ƒ‰์€ ํ…์Šค์ฒ˜๊ฐ€ ์—†๋Š” ๋ชจ๋ธ์— ์“ฐ๋Š” ๋‹จ์ƒ‰์ž…๋‹ˆ๋‹ค(์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ทธ๋ฆผ์—์„œ ์ž๋™์œผ๋กœ ๊ณ ๋ฆ…๋‹ˆ๋‹ค). ๊ทธ๋ฆผ์ด ์—†์œผ๋ฉด ์ฃผ๋ฌธ์„œ์— ์ฒซ ๋ฒˆ์งธ ์žฌ๋ฃŒ๊ฐ€ ํ‘œ์‹œ๋˜๊ณ , ๋ชจ๋ธ์ด ์—†์œผ๋ฉด ์ ‘์‹œ๊ฐ€ ๊ธฐ๋ณธ ๋ชจ์Šต์„ ๋นŒ๋ ค ์˜ต๋‹ˆ๋‹ค. ํ‚ค dishIcon, platedMesh, platedTexKey, colour.

๊ฒŒ์ž„ ์—์…‹

๊ณ ๊ธ‰: ์—…๋กœ๋“œ ๋Œ€์‹  ๊ฒŒ์ž„ ์ž์ฒด์˜ ๊ทธ๋ฆผ๊ณผ ๋ชจ๋ธ์„ bundle|path ํ˜•์‹์œผ๋กœ ์ง€์ •ํ•ด ์”๋‹ˆ๋‹ค โ€” ์ฃผ๋ฌธ์„œ ์•„์ด์ฝ˜, ํ”Œ๋ ˆ์ดํŒ… ๋ชจ๋ธ, ์„œ๋น™ ๋‹จ๊ณ„, ์กฐ๋ฆฌ ๋‹จ๊ณ„, ์กฐ๋ฆฌ ๋‹จ๊ณ„ ์•„์ด์ฝ˜, ์„ž๊ธฐ ๋‹จ๊ณ„ ์•„์ด์ฝ˜.

์š”๋ฆฌ ๋ชฉ๋ก์—์„œ

์ˆซ์ž๋Š” ์š”๋ฆฌ์˜ ์ ์ˆ˜์ž…๋‹ˆ๋‹ค. โœŽ ํŽธ์ง‘์€ ๊ตฌ์„ฑ๊ธฐ๋ฅผ, ์–‘์‹์€ ๊ฐ„๋‹จํ•œ ์–‘์‹์„ ์—ด๊ณ , **โคด**๋Š” ๊ณต๊ฐœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๊ฒŒ์‹œํ•˜๊ณ , **โœ•**๋Š” ์ด ์ฃผ๋ฐฉ์—์„œ ์ œ๊ฑฐํ•˜๋ฉฐ(๋‚ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—๋Š” ๋‚จ์Šต๋‹ˆ๋‹ค), **๐Ÿ—‘**๋Š” ๋‚ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ œ๊ฑฐํ•˜๊ณ , + ๋งต / ์ถ”๊ฐ€๋Š” ์ด ์ฃผ๋ฐฉ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.


14. ์ŠคํŠœ๋””์˜ค โ€” ์‚ฌ์šฉ์ž ์ง€์ • ๊ธฐ๊ณ„

ํ•„๋“œ ํ•˜๋Š” ์ผ ํ‚ค
์ด๋ฆ„ ๊ธฐ๊ณ„์˜ ์ด๋ฆ„. name
์œ ํ˜• ์ˆ˜๋™ ๋ถ„์‡„๊ธฐ โ€” ์…ฐํ”„๊ฐ€ ๋ˆ„๋ฅด๊ณ  ์žˆ๋‹ค๊ฐ€ ๋ฒ”์œ„ ์•ˆ์—์„œ ๋—๋‹ˆ๋‹ค. ์กฐ๋ฆฌ๊ธฐ โ€” ์žฌ๋ฃŒ๋ฅผ ๋„ฃ์œผ๋ฉด ์‹œ๊ฐ„์ด ์ง€๋‚˜๋ฉด์„œ ์กฐ๋ฆฌ๋ฉ๋‹ˆ๋‹ค. archetype
์ž…๋ ฅ / ์ถœ๋ ฅ ๋“ค์–ด๊ฐ€๋Š” ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ(์ฐ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ)์™€ ๋‚˜์˜ค๋Š” ๊ฒƒ. inputs, output
๋ถ„์‡„ ์ •๋„ (1-10) ๋ถ„์‡„๊ธฐ: ๋ชฉํ‘œ ๋ฒ”์œ„์˜ ์ค‘์‹ฌ. grindLevel
ํ—ˆ์šฉ ์˜ค์ฐจ (ยฑ) ๋ถ„์‡„๊ธฐ: ๋ฒ”์œ„์˜ ํญ(0 = ์ •ํ™•ํžˆ). grindTolerance
๋‹จ๊ณ„ ์ˆ˜ ๋ถ„์‡„๊ธฐ: ์ง„ํ–‰ ๋ง‰๋Œ€์˜ ๋‹จ๊ณ„(4โ€“40). stages
์‹คํŒจ ์ถœ๋ ฅ ๋ถ„์‡„๊ธฐ: ๋ฒ”์œ„ ๋ฐ–์—์„œ ๋—์„ ๋•Œ ๋‚˜์˜ค๋Š” ๊ฒƒ. wrongOutput
์กฐ๋ฆฌ ์‹œ๊ฐ„ (์ดˆ) ์กฐ๋ฆฌ๊ธฐ: ์กฐ๋ฆฌ์— ๊ฑธ๋ฆฌ๋Š” ์ดˆ. time

์ž…๋ ฅ ์žฌ๋ฃŒ์™€ ์ถœ๋ ฅ ์žฌ๋ฃŒ๋ฅผ ๋จผ์ € ๋งŒ๋“œ์„ธ์š”. ์ €์žฅํ•œ ๋’ค ๏ผ‹ ๋งต์„ ๋ˆ„๋ฅด๋ฉด ๊ธฐ๊ณ„๊ฐ€ ์ฃผ๋ฐฉ์— ์ถ”๊ฐ€๋˜๋ฉฐ, ๊ธฐ๊ณ„ ํŒ”๋ ˆํŠธ์—์„œ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.


15. ์ŠคํŠœ๋””์˜ค โ€” ์”ฌ๊ณผ 3D ๋ชจ๋ธ


16. ํŽธ์ง‘๊ธฐ ํ•„๋“œ๊ฐ€ ์—†๋Š” ์„ค์ •

์ผ๋ถ€ ์„ค์ •์€ ์ฃผ๋ฐฉ ํ˜•์‹์—๋Š” ์žˆ์ง€๋งŒ ์•„์ง ํŽธ์ง‘๊ธฐ์— ํ•„๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด ์„ค์ •์„ ์“ฐ๋Š” ์ฃผ๋ฐฉ โ€” ๋Œ€๊ฐœ ๋ณ€ํ™˜๋œ ์ฃผ๋ฐฉ โ€” ์€ ํŽธ์ง‘ํ•˜๊ณ  ๋‹ค์‹œ ๊ฒŒ์‹œํ•ด๋„ ๊ทธ ์„ค์ •์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๋ฐ”๋‹ฅ ์˜์—ญ์˜ ๊ณ ์œ ํ•œ ๋ชจ์–‘(matSpec, texTile), ๋ณด์ด๋Š” ๋ฐ”๋‹ฅ์ด ์—†๋Š” ๋ฐ”๋‹ฅ ์˜์—ญ (tile: "off"), ์•„ํŠธ ๋ฐฐ๊ฒฝ๋ง‰(background), ๋Œ€์ฒด ๋ ˆ์‹œํ”ผ ๋ชฉ๋ก(recipeListType, recipeListBundle, recipeListPath), ์กฐ๋ฆฌ ๋‹จ๊ณ„๋ณ„ ์š”๋ฆฌ ๋ชจ๋ธ(stageMeshes), ์‚ฌ์šฉ์ž ์ง€์ • ์žฌ๋ฃŒ์˜ ์กฐ๋ฆฌ๋œ ์ƒ‰(cookedColour), ๋” ๋งŽ์€ ๊ธฐ๊ณ„ ์œ ํ˜•, ๋ฐœํŒ ๋ชจ๋ธ (mesh), ์žฌ๋ฃŒ ํˆฌ์ž…๊ธฐ ๊ฐ€์ค‘์น˜(spawnWeights), ๋‹จ๋‹จํ•œ ์ƒ์ž์˜ ์ฝœ๋ผ์ด๋” ๋ชจ์–‘์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.