๐Ÿ“š Docs

๋งต ๋ชจ๋“œ: 2๋‹จ๊ณ„

v252๋กœ ์—…๋ฐ์ดํŠธ๋จ - 2020๋…„ 4์›” Marcos Elias ์ž‘์„ฑ

์†Œ๊ฐœ

Proton Bus ๋งต ๋ชจ๋”ฉ ์‹œ์Šคํ…œ์˜ 2๋‹จ๊ณ„์—์„œ๋Š” ์Šน๊ฐ, ๊ตํ†ต ๋ฐ ๊ธฐํƒ€ ๋” ๋งŽ์€ ๊ฒƒ์„ ๊ฒŒ์ž„์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ์ด๊ฒƒ์€ ๊ฒŒ์ž„์„ ๋‹ค๋ฅธ ์ฐจ์›์œผ๋กœ ๋Œ์–ด์˜ฌ๋ฆฌ๋ฉฐ, ๋ง ๊ทธ๋Œ€๋กœ ์ด ๊ธฐ๋Šฅ ์ „ํ›„๋กœ Proton์„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ์˜ ์ƒˆ๋กœ์šด ๊ฒŒ์ž„๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค!

๊ฒฝ๊ณ : ์‹œ๊ฐ„ ์ œ์•ฝ์œผ๋กœ ์ธํ•ด ๋ณ€ํ™˜ ๋ฐ ํŽธ์ง‘ ๊ณผ์ •์—์„œ ๊ฐœ๋ณ„ ์ง€์›์„ ์ œ๊ณตํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ง์ ‘ ์‹œ๋„ํ•ด ๋ณด๊ณ , ๋‹ค๋ฅธ ๋งต์ด ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค์–ด์กŒ๋Š”์ง€ ํ™•์ธํ•˜๊ณ , ํŒŒ์ผ ๊ตฌ์กฐ๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ํ•ด๊ฒฐ์ฑ…์ด ๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๊ณ  ๋‹ค๋ฅธ ๋ชจ๋“œ ์ œ์ž‘์ž๋“ค๋„ ๋„์™€์ค„ ์ˆ˜ ์žˆ๋„๋ก Facebook ๊ฒŒ์ž„ ๊ทธ๋ฃน์— ์งˆ๋ฌธ๊ณผ ๊ด€๋ จ ๋ฌธ์ œ๋ฅผ ๊ฒŒ์‹œํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜์‹ญ์‹œ์˜ค.

์•„์ง ๊ตฌ๋…ํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ์ œ์ž‘์ž์˜ ์ฑ„๋„์— ๊ฐ€์ž…ํ•˜์„ธ์š”: www.youtube.com/marquinhosxp. ์ผ๋ถ€ ๋น„๋””์˜ค์™€ ํŠœํ† ๋ฆฌ์–ผ์ด ๊ทธ๊ณณ์— ๊ฒŒ์‹œ๋ฉ๋‹ˆ๋‹ค.

๊ณต์‹ PBSU Facebook ํŽ˜์ด์ง€: https://www.facebook.com/protonbusoficial ๊ทธ๋ฆฌ๊ณ  PBSR: https://www.facebook.com/protonbusrod.oficial/

Facebook ๊ทธ๋ฃน

๋ชจ๋“œ ์ œ์ž‘์ž๋ฅผ ์œ„ํ•œ ๋…์  ๊ทธ๋ฃน: https://www.facebook.com/groups/pbsmods/ ๋‹จ์ˆœํ•œ ํ”Œ๋ ˆ์ด์–ด๋ผ๋ฉด ์ฃผ์ œ์—์„œ ๋ฒ—์–ด๋‚œ ๊ฒŒ์‹œ๋ฌผ๋กœ ํ˜ผ์žกํ•˜๊ฒŒ ํ•˜์ง€ ์•Š๋„๋ก(์‚ญ์ œ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค) ๊ฐ€์ž…์„ ํ”ผํ•ด ์ฃผ์‹ญ์‹œ์˜ค!

์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๊ทธ๋ฃน: ์—ฌ๊ธฐ์—์„œ๋Š” ํ”Œ๋ ˆ์ด์–ด์˜ ๊ด€์ ์—์„œ ์Šคํฌ๋ฆฐ์ƒท, ํŒ, ๋น„๋””์˜ค, ๋‹ค์–‘ํ•œ ํŠœํ† ๋ฆฌ์–ผ ๋“ฑ์„ ์ž์œ ๋กญ๊ฒŒ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

๋ชจ๋“œ์šฉ ํ…์Šค์ฒ˜๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ์‚ฌ์ดํŠธ ํŒ: http://www.textures.com


1๋‹จ๊ณ„ ๊ด€๋ จ ์ฐธ๊ณ  ์‚ฌํ•ญ

2๋‹จ๊ณ„์—์„œ ๋งต์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— 1๋‹จ๊ณ„์˜ ๊ธฐ๋ณธ ๋ ˆ๋ฒจ ์ œ์ž‘์„ ๋งˆ์Šคํ„ฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•„์ง ์ต์ˆ™ํ•˜์ง€ ์•Š๋”๋ผ๋„ ๊ฑฑ์ •ํ•˜์ง€ ๋งˆ์„ธ์š”. ์˜ˆ์ œ ๋งต๊ณผ ํ•จ๊ป˜ ์ด ๊ฐ€์ด๋“œ๋ฅผ ๋”ฐ๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ํฐ ์š”๊ตฌ ์‚ฌํ•ญ์€ ๋งต์„ ๋‚ด๋ณด๋‚ด๋Š” ๋ฐ ์‚ฌ์šฉํ•  Blender์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ง€์‹์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋งต์— ๋Œ€ํ•œ 1๋‹จ๊ณ„ ๊ด€๋ จ ์ด์ „ ๋ฌธ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค: http://blog.protonbus.com.br/2019/09/experimental-mods-de-mapas-no-pbs.html

๋ฒ„์Šค์— ๋Œ€ํ•œ ๋ฌธ์„œ: http://blog.protonbus.com.br/2018/09/primeira-fase-do-sistema-de-mods-de.html

ํ•ญ์ƒ ์ตœ์‹  ๋ฒ„์ „์˜ ๊ฒŒ์ž„์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค! ์ด์ „ ๋ฒ„์ „์€ ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์œผ๋ฉฐ ๋ฒ ํƒ€๋Š” ์ง€์†์ ์œผ๋กœ ๋ฐœ์ „ํ•˜๊ณ  ์žˆ์œผ๋ฏ€๋กœ ํ•ญ์ƒ ์ตœ์‹  ๋ฒ„์ „์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค. ์‹œ๋‚ด ๋ฒ„์Šค๋Š” http://pbsu.busmods.com, ๊ณ ์† ๋ฒ„์Šค๋Š” http://pbsr.busmods.com์—์„œ ์ตœ์‹  ๋นŒ๋“œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ Blender 2.79๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ’๊ฒฝ์„ ์ œ์ž‘ํ•˜๊ณ  ๋ชจ๋ธ์„ 3ds ํ˜•์‹์œผ๋กœ ๋‚ด๋ณด๋‚ด๋ฉฐ Proton Bus ์‹œ์Šคํ…œ์šฉ ํด๋” ๋ฐ ํŒŒ์ผ ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์ค‘์š”: BLENDER 2.79๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”! ํ˜„์žฌ ๊ฒŒ์ž„ ํ˜•์‹์— ํ•„์š”ํ•œ ๋‚ด๋ณด๋‚ด๊ธฐ ๋„๊ตฌ๋Š” Blender 2.8์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ์ค‘๋‹จ๋œ ๊ฒƒ์œผ๋กœ ๋ณด์ด๋ฉฐ ํ˜„์žฌ๊นŒ์ง€ ์•„๋ฌด๋„ ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋ฏธ๋ž˜์— ๋‹ค์‹œ ์ž‘๋™ํ• ์ง€ ๋ˆ„๊ฐ€ ์•Œ๊ฒ ์Šต๋‹ˆ๊นŒ, ์ผ๋ถ€ ์‚ฌ๋žŒ๋“ค์ด ์‹œ๋„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—์„œ Blender 2.79๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: https://download.blender.org/release/Blender2.79/ ์ตœ์‹  ๋ฒ„์ „์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๋ฆ„์— "b"๊ฐ€ ์žˆ๋Š” ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ํ”Œ๋žซํผ์€ ๋ฌด๊ด€ํ•˜๋ฉฐ ์‹œ์Šคํ…œ(Windows, Linux ๋˜๋Š” Mac) ๋ฐ ์•„ํ‚คํ…์ฒ˜(32 ๋˜๋Š” 64๋น„ํŠธ)์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

์ด๋ฏธ 2.8์—์„œ ๋งต์„ ์‹œ์ž‘ํ–ˆ๋‹ค๋ฉด 2.79์—์„œ ์—ด ์ˆ˜ ์žˆ๋Š” ์ค‘๊ฐ„ ํ˜•์‹์œผ๋กœ ๋‚ด๋ณด๋‚ธ ๋‹ค์Œ ๊ฑฐ๊ธฐ์—์„œ ๊ฒŒ์ž„์šฉ์œผ๋กœ ๋‚ด๋ณด๋‚ด๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ค‘์š”: PROTON์šฉ 3DS ๋‚ด๋ณด๋‚ด๊ธฐ ๋„๊ตฌ๋ฅผ ์ˆ˜์ •ํ•˜์„ธ์š”! Blender์˜ ๊ธฐ๋ณธ 3ds ๋‚ด๋ณด๋‚ด๊ธฐ ๋„๊ตฌ๋Š” ๊ฐ์ฒด ๋ฐ ํ…์Šค์ฒ˜ ์ด๋ฆ„์„ 12์ž๋กœ ์ž๋ฆ…๋‹ˆ๋‹ค. ์ผ๋ถ€ ๋ถ€ํ’ˆ ๋ฐ/๋˜๋Š” ํ…์Šค์ฒ˜ ์ด๋ฆ„์˜ ์˜ค๋ฅ˜๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ฐ˜์ ์œผ๋กœ ๊ทธ ์ด์ƒ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์œ„ํ•ด ์ˆ˜์ •๋œ Blender ํ”Œ๋Ÿฌ๊ทธ์ธ ๋‹ค์šด๋กœ๋“œ(Blender 2.79์šฉ ํŒŒ์ผ): http://proton.viamep.com/coisas/export_3ds_protonbus_blender279.zip

ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ณ€๊ฒฝ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ํŠœํ† ๋ฆฌ์–ผ: https://youtu.be/0EokFmSjGdA

์ด๊ฒƒ์„ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๋Œ€์‹  ์›ํ•˜๋Š” ๊ฒฝ์šฐ Blender์˜ scripts\addons\io_scene_3ds ํด๋”์— ์žˆ๋Š” export_3ds.py ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค. [:12]๋ฅผ ์ฐพ์•„ 12๋ฅผ 999์™€ ๊ฐ™์€ ํ›จ์”ฌ ๋” ํฐ ์ˆซ์ž๋กœ ๋ฐ”๊พธ์‹ญ์‹œ์˜ค. ๋ฌธ์ž ์ œํ•œ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์—†์œผ๋ฉด ๊ฒŒ์ž„์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ๊ฐ€ ์‹คํŒจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒ: BLENDER๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ๋•Œ ์—ฌ๋Ÿฌ ๋ฒ„์ „์„ ๋™์‹œ์— ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ZIP ํ˜•์‹์˜ "PORTABLE" ๋ฒ„์ „์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๋งต ๋ชจ๋“œ ํŒŒ์ผ ๊ตฌ์กฐ

Proton์˜ ๋งต์€ ์—ฌ๋Ÿฌ txt ํŒŒ์ผ(์ผ๋ฐ˜ ํ…์ŠคํŠธ)๊ณผ ์ผ๋ถ€ ํด๋”๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ํ•„์ˆ˜์ ์ธ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋Š” ๋งต ์ •์˜ txt์™€ ํด๋”์ด๋ฉฐ, ๋‘˜ ๋‹ค ๊ฒŒ์ž„์˜ mods ํด๋” ์•ˆ์— ์žˆ๋Š” maps ํด๋” ์•ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค.

PC์˜ ๊ตฌ์กฐ ์˜ˆ:

ํด๋” ๊ตฌ์กฐ

๋งต ์ •์˜ txt๋Š” .map.txt๋กœ ๋๋‚˜์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: Estrada Longa.map.txt). ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค!

์ค‘์š”: ๋ชจ๋“œ ํŒŒ์ผ ์ด๋ฆ„์— ์ ˆ๋Œ€ ์•…์„ผํŠธ, ์„ธ๋””์œ  ๋˜๋Š” ํŠน์ˆ˜ ๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค!

์ด txt ์•ˆ์—๋Š” ๊ธฐ๋ณธ ๊ตฌ์กฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:

[map]
baseDir=Estrada Longe 
; ๋งต์˜ ๊ธฐ๋ณธ ํด๋”, .map.txt์™€ ํ•จ๊ป˜ maps์— ์žˆ์Šต๋‹ˆ๋‹ค.

modelsDir=Rota 1 
; ๋ชจ๋ธ ํด๋”, tiles ํด๋” ์•ˆ์— ์žˆ์Šต๋‹ˆ๋‹ค.

textures=textures 
; ํ…์Šค์ฒ˜ ํด๋”

mapModVersion=2 
; 2๋‹จ๊ณ„์—์„œ๋Š” ์ˆซ์ž 2๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”!

preview=preview.png 
; ์„ ํƒ ํ™”๋ฉด ์ด๋ฏธ์ง€(16:9, ์˜ˆ: 640x360)

๋งต์˜ ๊ธฐ๋ณธ ํด๋” ์•ˆ์—๋Š” ๋‹ค๋ฅธ ํด๋”๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

๊ธฐ๋ณธ ํด๋”

  • dest: ํ‘œ์ง€ํŒ๊ณผ ๋ฒˆํ˜ธํŒ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  • skins: ๋งต ๋ฒ„์Šค ์Šคํ‚จ์„ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค(skins/0/pbc ๋‚ด๋ถ€).
  • textures: ํ…์Šค์ฒ˜๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. JPG๋ฅผ ํ”ผํ•˜๊ณ  PNG๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”!
  • tiles: ๋ฐ˜๋“œ์‹œ ์ด ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์•ˆ์—๋Š” ๋ชจ๋ธ ํด๋”(modelsDir)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ค‘์š”: PROTON BUS ๋งต ๋ชจ๋“œ๋Š” ์™„์ „ํžˆ ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค! ๋„ˆ๋ฌด ๋ฌด๊ฑฐ์šฐ๋ฉด ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ๊ธด ๋…ธ์„ ์„ ์—ฌ๋Ÿฌ ๊ฐœ ๋งŒ๋“ค๋ ค๋ฉด ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋ˆ„์‹ญ์‹œ์˜ค.

modelsDir์— ์ •์˜๋œ ํด๋” ์•ˆ์—๋Š” ๋‚ด๋ณด๋‚ธ .3ds ํŒŒ์ผ๊ณผ ๊ตฌ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค:

Tiles ํด๋”

๋ชจ๋ธ ํด๋”์˜ ๋‚ด๋ถ€ ๊ตฌ์กฐ:

๋ชจ๋ธ ํ•˜์œ„ ํด๋”

  • aipeople: ๋ณดํ–‰์ž ์„ค์ •.
  • aitrains: ๊ธฐ์ฐจ ์„ค์ •.
  • aivehicles: ๊ตํ†ต ์„ค์ •.
  • busstops: ๋ฒ„์Šค ์ •๋ฅ˜์žฅ ์„ค์ •.
  • entrypoints.txt: ๊ณ ๊ธ‰ ์ง„์ž…์  ์„ค์ •.
  • entrypoints_list.txt: ์ง„์ž…์ ์˜ ๊ฐ„๋‹จํ•œ ๋ชฉ๋ก.

์ค‘์š”: ๋ชจ๋“œ๋Š” ๋ณดํ˜ธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค! ๊ธฐ์ˆ ์ ์œผ๋กœ ์–ด๋–ค ๊ฒŒ์ž„๋„ ๋ณดํ˜ธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ชจ๋“œ๊ฐ€ ํŽธ์ง‘๋˜๊ฑฐ๋‚˜ ์œ ์ถœ๋˜์ง€ ์•Š๊ฒŒ ํ•˜๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์€ ๋ฐฐํฌํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.


์ง„์ž…์  ๊ตฌ์„ฑ

์ง„์ž…์ ์€ ๊ฒŒ์ž„ ์‹œ์ž‘ ์‹œ ๋ฒ„์Šค๊ฐ€ ๋‚˜ํƒ€๋‚˜๋Š” ์œ„์น˜๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: 351F-10 TP, Garagem Central).

์ค‘์š”: ์ด๋Ÿฌํ•œ ์ด๋ฆ„์— ์ ˆ๋Œ€ ์•…์„ผํŠธ๋‚˜ ํŠน์ˆ˜ ๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค! ์Šฌ๋ž˜์‹œ๋„ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

entrypoints_list.txt

๊ฐ„๋‹จํ•œ ๋ชฉ๋ก, ์ค„๋‹น ํ•˜๋‚˜์˜ ์ด๋ฆ„.

์ง„์ž…์  ๋ชฉ๋ก

entrypoints.txt

๋งต์—์„œ์˜ ์œ„์น˜์™€ ๋ฌผ๋ฆฌ์  ํšŒ์ „์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

์ง„์ž…์  ๊ตฌ์„ฑ

๊ธฐ์–ตํ•˜์„ธ์š”: Blender์—์„œ Y๋Š” ์•ž/๋’ค์ด๊ณ  Z๋Š” ๋†’์ด์ž…๋‹ˆ๋‹ค. Unity(๊ฒŒ์ž„)์—์„œ Y๋Š” ๋†’์ด์ด๊ณ  Z๋Š” ์•ž/๋’ค์ž…๋‹ˆ๋‹ค. ์ขŒํ‘œ๋ฅผ ๋ณต์‚ฌํ•  ๋•Œ Y์™€ Z๋ฅผ ๋ฐ˜์ „์‹œํ‚ค์‹ญ์‹œ์˜ค!

์ขŒํ‘œ๋ฅผ ์•Œ์•„๋‚ด๋ ค๋ฉด Blender์—์„œ Empty ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค:

Blender์˜ Empty

ํ‘œ์ง€ํŒ ๋ฐ ๋ชฉ์ ์ง€

dest ํด๋”์— txt์— ์ •์˜๋œ entrypoints์™€ ์ •ํ™•ํžˆ ๋™์ผํ•œ ์ด๋ฆ„์˜ ํด๋”๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

Dest ํด๋”

๊ฐ ๋ชฉ์ ์ง€ ํด๋” ์•ˆ์—๋Š” ์ด๋ฏธ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:

๋ชฉ์ ์ง€ ์ด๋ฏธ์ง€

์ค‘์š”: ๋ชจ๋ฐ”์ผ์šฉ์œผ๋กœ 2048ํ”ฝ์…€๋ณด๋‹ค ํฐ ์ด๋ฏธ์ง€๋Š” ํ”ผํ•˜์‹ญ์‹œ์˜ค!

ํ‘œ์ง€ํŒ์— ์ œ์•ˆ๋˜๋Š” ํŒŒ์ผ ์ด๋ฆ„:

  • 1.png, 2.png, 3.png (์ „์ž ํ‘œ์ง€ํŒ 1024x128)
  • capelinhaDigital.png, capelinhaPVC.png (256x128)
  • lonaDestino.png, lonaLinha.png (๋กค๋ฐด๋“œ ํ‘œ์ง€ํŒ)
  • placa1.png, placa2.png, placa3.png (์ธก๋ฉด ๋ฐ ์ „๋ฉด ๋ฒˆํ˜ธํŒ)

์Šน๊ฐ ๊ตฌ์„ฑ

๊ฐ ์ •๋ฅ˜์žฅ์€ 3D์—์„œ ๊ณ ์œ ํ•œ ์ด๋ฆ„์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: zzPonto1).

Blender(3D)์—์„œ

์ •๋ฅ˜์žฅ์€ ๋‹ค์Œ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:

  1. ์ •๋ฅ˜์žฅ์ด๋ฆ„_trigger๋ผ๋Š” ์ด๋ฆ„์˜ ๋ณด์ด์ง€ ์•Š๋Š” ํ๋ธŒ(ํŠธ๋ฆฌ๊ฑฐ).
  2. ์Šน๊ฐ ์œ„์น˜๋ฅผ ์œ„ํ•œ ์ž‘์€ ๊ฐ์ฒด(ํ‰๋ฉด/ํ๋ธŒ), ์ •๋ฅ˜์žฅ์ด๋ฆ„.000, ์ •๋ฅ˜์žฅ์ด๋ฆ„.001 ๋“ฑ์œผ๋กœ ๋ถˆ๋ฆฝ๋‹ˆ๋‹ค.

Blender์˜ ์ •๋ฅ˜์žฅ

ํŒ: ํด๋ฆฌ๊ณค์„ ์ ˆ์•ฝํ•˜๊ธฐ ์œ„ํ•ด ์Šน๊ฐ์—๊ฒŒ ๊ฐ„๋‹จํ•œ ํ‰๋ฉด์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

์˜ฌ๋ฐ”๋ฅธ ํŠธ๋ฆฌ๊ฑฐ:

์˜ฌ๋ฐ”๋ฅธ ํŠธ๋ฆฌ๊ฑฐ

์ž˜ ๋ฐฐ์น˜๋œ ํŠธ๋ฆฌ๊ฑฐ์˜ ์˜ˆ:

ํŠธ๋ฆฌ๊ฑฐ ์˜ˆ์‹œ

์ž˜๋ชป ๋ฐฐ์น˜๋œ ํŠธ๋ฆฌ๊ฑฐ์˜ ์˜ˆ(์•ˆ ๋ฉ๋‹ˆ๋‹ค!):

์ž˜๋ชป๋œ ํŠธ๋ฆฌ๊ฑฐ

๊ฒน์นจ(์•ˆ ๋ฉ๋‹ˆ๋‹ค!):

๊ฒน์น˜๋Š” ํŠธ๋ฆฌ๊ฑฐ

๋ฐ˜๋Œ€ํŽธ ์ •๋ฅ˜์žฅ์—์„œ ์˜ฌ๋ฐ”๋ฆ„:

๋ฐ˜๋Œ€ํŽธ ์ •๋ฅ˜์žฅ

๋””๋ฒ„๊ทธ ๋ชจ๋“œ์—์„œ ์‹œ๊ฐํ™”:

๋””๋ฒ„๊ทธ ๋ชจ๋“œ

.txt ํŒŒ์ผ(busstops)์—์„œ

busstops ํด๋”์— ์ •๋ฅ˜์žฅ๊ณผ ๋™์ผํ•œ ์ด๋ฆ„์˜ txt๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

Busstop Txt

[busstop]
name=๊ด‘์žฅ ์ •๋ฅ˜์žฅ
isLeft=0
paxAmount=15

[from_3d]
readFrom3D=1
prefix=zzPonto1
maxPathsToCheck=30
defPaxRotY=90
  • prefix: 3D์—์„œ ์‚ฌ์šฉ๋œ ์ด๋ฆ„(.000 ์ด์ „)๊ณผ ์ •ํ™•ํžˆ ์ผ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • defPaxRotY: ๊ธฐ๋ณธ ์Šน๊ฐ ํšŒ์ „(0, 90, 180, -90 ํ…Œ์ŠคํŠธ).

๋ณดํ–‰์ž ๊ตฌ์„ฑ

์ •๋ฅ˜์žฅ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค: ๊ฒฝ๋กœ(path)๋ฅผ ์ •์˜ํ•˜๋Š” ์ผ๋ จ์˜ ๊ฐ์ฒด. ์˜ˆ: xxCalcada1.000, xxCalcada1.001 ๋“ฑ.

๋ณดํ–‰์ž ๊ฒฝ๋กœ Blender ๋ณดํ–‰์ž

aipeople ํด๋”์— txt๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค:

๋ณดํ–‰์ž Txt

[automatic_setup]
enabled=1
loop=0
reverse=0

[defaults]
isSpawner=1
spawnInterval=5
allowBicycle=0
  • loop=1: ๋งˆ์ง€๋ง‰ ์ง€์ ์ด ์ฒซ ๋ฒˆ์งธ ์ง€์ ์— ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค(์›ํ˜•).
  • loop=0: ๊ฒฝ๋กœ๊ฐ€ ๋งˆ์ง€๋ง‰ ์ง€์ ์—์„œ ๋๋‚ฉ๋‹ˆ๋‹ค(์„ ํ˜•).

๊ตํ†ต ์ฐจ๋Ÿ‰ ๊ตฌ์„ฑ

๋ณดํ–‰์ž์™€ ๋˜‘๊ฐ™์Šต๋‹ˆ๋‹ค! aivehicles ํด๋”.

๊ตํ†ต Txt

  • isBusSpawner=1: ๋ฒ„์Šค๊ฐ€ ๋‚˜ํƒ€๋‚˜๊ฒŒ ํ•˜๋ ค๋ฉด.
  • spawnInterval: ๊ตํ†ต๋Ÿ‰์„ ์ค„์ด๋ ค๋ฉด ๋Š˜๋ฆฌ์‹ญ์‹œ์˜ค.
  • speedMultiplier: ์†๋„๋ฅผ ๋ณ€๊ฒฝํ•˜์‹ญ์‹œ์˜ค(์˜ˆ: 0.5 ์ ˆ๋ฐ˜, 2 ๋‘ ๋ฐฐ).

๋งต ๋ฒ„์Šค ์Šคํ‚จ ๊ตฌ์„ฑ

์Šคํ‚จ(PNG)์„ skins/0/pbc์— ๋„ฃ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์ž„์ด ๋ฌด์ž‘์œ„๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. PBC ์Šคํ‚จ ๋ฒ ์ด์Šค: http://omsi.viamep.com/proton/base-skins-pbc-protonbussimulator.zip


๊ธฐ์ฐจ ๊ตฌ์„ฑ

๊ฐ™์€ ๋กœ์ง, aitrains ํด๋”. ๊ถŒ์žฅ ์‚ฌํ•ญ: defaults์—์„œ isSpawner=0์œผ๋กœ ํ•˜๊ณ  ๊ฐ„๊ฒฉ์„ ๋‘๊ณ  ์ˆ˜๋™ ์Šคํฌ๋„ˆ๋ฅผ ์ •์˜ํ•˜์‹ญ์‹œ์˜ค.

๊ธฐ์ฐจ Txt

  • randomTimeToWaitAtStart=1: ๋ฌด์ž‘์œ„ ์‹œ๊ฐ„์— ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  • spawnTimeInterval: ๊ธฐ์ฐจ ๊ฐ„ ๊ฐ„๊ฒฉ(์˜ˆ: 120์ดˆ).

์ค‘์š”: ๊ธฐ์ฐจ๋Š” ๋ฉˆ์ถ”์ง€ ์•Š์Šต๋‹ˆ๋‹ค! ๋ชจ๋“  ๊ฒƒ์„ ์น˜๊ณ  ์ง€๋‚˜๊ฐ‘๋‹ˆ๋‹ค. ๊ฑด๋„๋ชฉ์„ ๋งŒ๋“ค์ง€ ๋งˆ์‹ญ์‹œ์˜ค.


3D ๋ชจ๋ธ์˜ ํŠน์ˆ˜ ๋ช…๋ น ๋ฐ ์ด๋ฆ„

  • ํˆฌ๋ช…๋„: ๊ฐ์ฒด ์ด๋ฆ„์— _transparent_๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค(์˜ˆ: grade_transparent_).
  • ์ถฉ๋Œ์ฒด: ์ž๋™ ์ถฉ๋Œ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋ ค๋ฉด _gencol_์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค(๊ฑฐ๋ฆฌ, ๋ณด๋„). ์ ๋‹นํžˆ ์‚ฌ์šฉํ•˜์„ธ์š”!
  • ๋ณด์ด์ง€ ์•Š๋Š” ์ถฉ๋Œ์ฒด: _gencol_invisible_์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค(์˜ˆ: barreira_gencol_invisible_).
  • ๋ฐœ๊ด‘: ํ•ญ์ƒ ์ผœ์ ธ ์žˆ๋Š” ๊ฐ์ฒด์—๋Š” _emissive_๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
  • ์ €์† ๊ตฌ์—ญ: ํ„ฐ๋ฏธ๋„์šฉ ๊ฐ์ฒด _low_speed_zone_(๋ถˆ๋งŒ ์ œ๊ธฐ ๋ฐฉ์ง€).

Low Speed Zone

  • ๊ฐ•์ œ ์ข…๋ฃŒ: ์ข…์  ๊ทผ์ฒ˜์˜ ๊ฐ์ฒด _force_exit_.

Force Exit

  • ์ถ”๊ฐ€ ์„ธ๋ถ€ ์ •๋ณด: 3DS ํŒŒ์ผ์„ _det1.3ds๋กœ ๋๋‚ด์‹ญ์‹œ์˜ค(์˜ˆ: arvores_det1.3ds). ์‚ฌ์šฉ์ž๊ฐ€ "์ถ”๊ฐ€ ์„ธ๋ถ€ ์ •๋ณด"๋ฅผ ํ™œ์„ฑํ™”ํ•œ ๊ฒฝ์šฐ์—๋งŒ ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

๋ฐ˜์ง์ด๋Š” ํ…์Šค์ฒ˜ ๊ตฌ์„ฑ

๋ฐ”๋‹ฅ์—์„œ ํ…์Šค์ฒ˜๊ฐ€ ๊นœ๋ฐ•์ด๋Š” ๊ฒƒ(z-fighting/flickering)์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ํ…์Šค์ฒ˜ ์˜†์— .config.txt ํŒŒ์ผ์„ ๋งŒ๋“œ์‹ญ์‹œ์˜ค. ์˜ˆ: asfalto.png.config.txt.

Config Txt


์ถ”๊ฐ€ - ์ตœ์ ํ™” ํŒ

  • ์ž‘์€ ํ…์Šค์ฒ˜: ๋ฐ˜๋ณต๋˜๋Š” ํ…์Šค์ฒ˜์—๋Š” 256x256 ๋˜๋Š” 512x512๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
  • ์ตœ๋Œ€ 2048px: ๋ชจ๋ฐ”์ผ์šฉ์œผ๋กœ 2048px๋ณด๋‹ค ํฐ ํ…์Šค์ฒ˜๋ฅผ ์ ˆ๋Œ€ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค!

ํ…์Šค์ฒ˜ ๊ฒฝ๊ณ 

  • ์ถฉ๋Œ์ฒด: ๋ณต์žกํ•œ ์ถฉ๋Œ์ฒด๋ฅผ ํ”ผํ•˜์‹ญ์‹œ์˜ค. ๋ฐ”๋‹ฅ๊ณผ ์ฃผ ๋ฒฝ์—๋งŒ _gencol_์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
  • ์žฌ์งˆ: ๋™์ผํ•œ ๊ฐ์ฒด์— ๋งŽ์€ ์žฌ์งˆ์„ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.
  • ๊ฐ์ฒด ๊ฒฐํ•ฉ: ๋“œ๋กœ์šฐ ํ˜ธ์ถœ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋™์ผํ•œ ์žฌ์งˆ์„ ๊ฐ€์ง„ ๊ฐ€๊นŒ์šด ๋‚˜๋ฌด๋ฅผ ๊ฒฐํ•ฉํ•˜์‹ญ์‹œ์˜ค.

์ง€๊ธˆ์€ ์—ฌ๊ธฐ๊นŒ์ง€์ž…๋‹ˆ๋‹ค! ์ฆ๊ฑฐ์šด ์‹œ๊ฐ„ ๋ณด๋‚ด์„ธ์š”!