📚 Docs

Moduri de Autobuze: Faza 2

Pregătirea fazei 2 a modurilor de autobuze în Proton Bus Simulator

Acest document este o schiță. Va dura ceva timp pentru a deveni mai cuprinzător. Vă rugăm să aveți răbdare, amintiți-vă că acesta este un proiect indie realizat în timpul liber. Cel mai bun mod de a înțelege cum sunt făcute modurile este să explorați modurile de exemplu. Majoritatea modurilor noastre au 3D-ul deschis pentru editare și analiză. Ele vor fi postate pe site: www.busmods.com

Faza 2 a sistemului de moduri de autobuze aduce mai multe animații, care anterior erau disponibile doar pe autobuzele native. Majoritatea lucrurilor necesită doar plasarea unor piese noi cu nume specifice în 3D. Alte câteva proprietăți și comenzi au fost adăugate. Cele mai semnificative sunt explicate în acest document, în timp ce cele mai simple pot fi explorate direct în modurile de exemplu.

Pentru a continua cu acest ghid, trebuie să știți deja cum să convertiți modurile în faza 1, altfel s-ar putea să nu înțelegeți lucrurile. Dacă începeți de la zero, vă rugăm să consultați tutorialele pentru faza 1: http://blog.protonbus.com.br/2018/09/primeira-fase-do-sistema-de-mods-de.html

Cu excepția cazului în care este indicat altfel (uși, sunete, lumini etc.), majoritatea setărilor se fac în fișierul principal al autobuzului.

Versiunea și Ecranul de Selecție al Modului

[mod]
name=MiBRTS
busModVersion=2
preview=preview.png

Schimbați elementul busModVersion la 2. Acest lucru va fi util în viitor, când faza 3 va suporta lucruri noi... Jocul actual va citi acest lucru pentru a emite un avertisment jucătorilor că modul nu este suportat (acest lucru se va întâmpla deja dacă testați cu un 3 sau 5 sau orice număr mai mare acolo).

Elementul preview indică o imagine care să apară pe ecranul de selecție. Imaginea se află în folderul de bază al autobuzului (baseDir), nu în textures. Dacă acest element este omis, jocul va căuta automat o imagine numită preview.png.

Preferați să utilizați raportul de aspect 16:9 în imagine, cum ar fi 1280x720 sau jumătate, pentru a nu deveni un fișier mare: 640x360.


Standard Shader

[config]
useStandardShader=1
  • 0 = dezactivat
  • 1 = activat

Această opțiune forțează utilizarea shaderului curent al Unity, Standard Shader. Interiorul autobuzului poate părea puțin mai frumos, dar poate fi mai greu pe telefoanele mobile. Este o opțiune care poate fi eliminată dacă devine grea. Lăsând-o la 0 sau omițând-o, rămâne standardul anterior (shaderul Legacy/Diffuse) cu culori mai spălăcite și fără strălucire/specular.

Deoarece este o opțiune experimentală, nu este încă posibil să modificați parametrii metallic, specular etc., aceștia vor rămâne la standardul 0.5.


Cameră pentru Marșarier

[reverseCamera]
posX=0
posY=3.22161
posZ=-6.11213
rotX=30
rotY=180
rotZ=0

Comandă similară cu oglinda, dar în acest caz este o cameră orientată spre spate, poziționată undeva în partea din spate a autobuzului. Poate fi ușor rotită în jos pe axa x. Rețineți rotația de 180 de grade pe axa verticală (Y în Unity, Z în Blender), pentru a fi orientată spre spate.

Monitorul camerei de marșarier este practic un plan, poziționat acolo unde se află ecranul. Acesta va rămâne dezactivat în joc, apărând doar când sunteți în marșarier. Trebuie să aibă un fundal sub el, pentru a nu exista o gaură cât timp nu sunteți în marșarier. Planul trebuie să fie puțin deasupra fundalului, pentru a evita pâlpâirea (tradiționalul Z-fighting în jocuri).

Piesa ecranului trebuie să se numească: _reverse_camera_screen_

Trebuie să fie mapată pe întreaga textură în UV, dar nu trebuie să aibă material sau textură asociată. Spre deosebire de oglinzi, nu folosiți oglindirea pe x în mapare, deoarece camera nu generează o imagine inversată.


Fum de Eșapament

[posSmoke1]
enabled=1
posX=-1.0966
posY=3.08716
posZ=-6.1505
rotX=0
rotY=0
rotZ=0
multiplier=0.5
colorR=0.2
colorG=0.2
colorB=0.2
colorA=0.1

Fum

Controlul eșapamentului a primit parametrii noi: multiplier este un multiplicator de intensitate, pentru a emite mai multe sau mai puține particule. Nu exagerați cu valoarea în sus, deoarece poate fi greu pentru jucători. Punând 0.5 emite jumătate din cât ar emite, punând 2 emite dublu, 1.2 puțin mai mult, etc. Continuați să testați, dar nu folosiți numere foarte mari precum 5, 10 etc.

Acolo, în secțiunea specialTextures puteți defini textura fumului care va fi utilizată în parametrul particleSystemSmoke1.

[specialTextures]
particleSystemSmoke1=ParticleCloudWhite.png

Culori în Diverse Configurații

Câteva comenzi noi acceptă personalizarea culorii. Motorul folosește culori în format RGBA cu valori de la 0 (null) la 1 (culoare completă).

Exemple:

colorR=1
colorG=0
colorB=0
colorA=1

Culoarea de mai sus devine roșie. Dacă lăsați G la 1 și R și B la 0, devine verde. Dacă lăsați B la 1 și R și G la 0, devine albastru. De acolo puteți amesteca valorile pentru a ajunge la culoarea dorită.


Camere de Comandă

Când apăsați C sau faceți clic pe pictograma camerei de comandă pe Android, jocul schimbă vizualizarea focalizată pe zonele tabloului de bord unde jucătorul poate face clic pe butoane.

Aceste poziții ale camerei sunt identificate prin comanda command_camera_ urmată de un număr incremental pentru fiecare poziție.

[command_camera_1]
posX=-0.174367
posY=1.76852
posZ=5.27041
rotX=-62.1665d
rotY=-13.3138
rotZ=-0.000039

[command_camera_2]
posX=-0.344243
posY=1.85677
posZ=5.22591
rotX=-66.1773
rotY=-15.7203
rotZ=-0.00003

Pot exista nelimitate astfel de camere (folosiți command_camera_3, etc). Durează destul de mult configurarea lor, veți avea nevoie de multă răbdare. Este un lucru opțional, dar de dorit.


Aer Condiționat

Sistemul de aer condiționat are setări împrăștiate în mai multe fișiere. Controlul aerului condiționat este poziționat în fișierul principal al autobuzului.

[air_conditioner]
enabled=1
posX=-0.761969
posY=2.74968
posZ=5.72929
rotX=-18
rotY=0
rotZ=0
scaleX=0.0025
scaleY=0.0025
scaleZ=1

[air_conditioner_screen_on]
colorR=0
colorG=1
colorB=0
colorA=1

[air_conditioner_screen_off]
colorR=0
colorG=0.25
colorB=0
colorA=0.75

Evidențiat este enabled=1. Dacă este lăsat la 0, va fi dezactivat. Ultimele două definesc culoarea punctelor ecranului. Spre deosebire de ecranul camerei de marșarier, acesta nu are nevoie de un plan, sistemul îl generează dinamic.

Lumină Aer

Deasupra butoanelor pentru aer pornit și ventilator forțat, luați încă două coordonate pentru mici luminițe care vor fi aprinse când aceste butoane sunt activate. Aceste lumini vor fi definite în fișierul luminilor (lights), astfel:

[air_conditioner_on_1]
posX=-0.683482
posY=2.77392
posZ=5.72009
rotX=-18.6
scaleX=0.01
scaleY=0.01
scaleZ=0.01
picture=Z_LuzAr.png

[air_conditioner_fan_1]
posX=-0.651946
posY=2.77392
posZ=5.72009
rotX=-18.6
scaleX=0.01
scaleY=0.01
scaleZ=0.01
picture=Z_LuzAr.png

Lumină Aer 2

  • air_conditioner_on_1: Lumină pentru butonul de aer pornit.
  • air_conditioner_fan_1: Lumină pentru butonul de ventilator forțat.

Sunetul Aerului Condiționat

În fișierul de sunete (sounds):

[airConditioningSlow]
file=sounds/airConditioningSlow.wav
...
[airConditioningFast]
file=sounds/airConditioningFast.wav
...

Piese în 3D

  • _airconditioner_button1_: buton pornit/oprit
  • _airconditioner_button2_: buton ventilator forțat
  • _airconditioner_down_: buton pentru scăderea temperaturii
  • _airconditioner_up_: buton pentru creșterea temperaturii

Reflexii

Reflexiile în Proton sunt definite în fișierul de configurare (.bus), unde modificați parametrii metallic și glossiness.

//reflexii laterale
[ref001]
metallic=0.4
glossiness=0.8

//reflexii mască
[ref002]
metallic=1
glossiness=1

Reflexie

Numele pieselor care vor utiliza respectivele reflexii trebuie să aibă identificatorul lor folosind _, de exemplu, _ref001_. Ex: _ref001_skin001_caroserie.


Geamuri cu Reflexii

Dacă doriți să utilizați reflexii pe geamuri, definiți geamurile astfel (există o limită de zece momentan):

[glass001]
enabled=1
shininess=0.9
specColorR=0.3
specColorG=0.3
specColorB=0.3
specColorA=0
refColorR=0.2
refColorG=0.2
refColorB=0.2
refColorA=0

Geam

Apoi numiți piesa în 3D cu numele _glass001_ etc. Dacă lăsați enabled=0, geamul pierde reflexia, revenind la utilizarea vechiului mod.

IMPORTANT: pe piesele de sticlă cu ploaie, nu utilizați reflexia! Trebuie utilizată doar pe geamurile normale. Geamurile cu ploaie trebuie să folosească _transparent_.


Multiplex

Unele autobuze moderne au un panou electronic cu butoane soft (Multiplex).

Multiplex

Texturile sunt definite acolo în secțiunea specialTextures:

[specialTextures]
multiplexOff=MultiTextura.png
multiplexOn=MultiTextura.png
multiplexActive=MultiTextura_ON.png

Cutia de Viteze

Pentru a ușura lucrurile, este posibil să plasați ambele piese pentru manual și automat, iar jocul va schimba afișajul în funcție de selecția jucătorului. Doar numiți piesele cu numele corespunzătoare.

În cazul transmisiei automate, acele Scania care au 123DNR nu sunt suportate, cea activă va fi 3.


Luminile Ușilor

Lumină Ușă

Căutați și explorați modurile de exemplu pentru a înțelege, vă rugăm.


Alte Subiecte

  • Ștergătoare: Animații îmbunătățite.
  • Optimizatori: Piese ascunse.
  • Semne Derulante: Suport de bază.
  • Animații On/Off: _anim001_on, _click001_on.
  • Audio: EVITAȚI AUDIO MP3! Folosiți WAV.
  • Texturi: Evitați texturile mai mari de 2048px.
  • Pasageri: Păstrați toate căile pasagerilor în același fișier .3ds pentru a evita erorile.