Windsystem
3 verfasser
Seite 1 von 1
Windsystem
Das neue Windsystem arbeitet ganz ähnlich wie das von Clonk 4. Beispiel:
- Status 0
- Beschleunigungsphase beginnt (durch hohe Wahrscheinlichkeit) - System wählt Windrichtung (positiv / negativ) und addiert alle 5 Frames 0-1 zur Windstärke. Zusätzlich wird ein Punkt auf der Ma mittels RandomX(-mapsize,mapsize) etc. gewählt. )
- Bei Windstärke > 100 / < -100 schaltet das System auf Status 0 zurück.
- Abbremsphase beginnt (blabla) - Windstärke wird auf 0 zurückgefahren
- Status 0
Im Ganzen spielt noch etwas wenig Zufall mit, glotzt man aber nicht die ganze Zeit das Windrad an bzw. baut eben ganz viele nebeneinander, fällt es einem nicht auf.
Die Windstärke wird in der 31ten globalen Variable gespeichert, die "Windposition" darunter. Das Regelobjekt "wind" muss noch für jedes Szenario dann als Regel eben erstellt werden. Find ich ganz gut, schließlich hat man so dann auch die Kontrolle darüber.
Das Windrad dreht übrigens mit windstärke / 10 Grad jeden Frame. Kann man ja bei Bedarf noch verschnellern. Mittels Distance() wird die Entfernung zum "Windpunkt" gemessen und die Rotationsgeschwindigkeit des Rades entsprechend angepasst.
Mittels LocalSound() wird dann ein Windsound um den "Windpunkt" abgespielt. Was ich noch zur Soundsteuerung in der Engine gut fände: Jede Soundwiedergabe hat auch eine ID. Und mittels meinetwegen StopSound() kann man das dann stoppen. Wäre dann sehr viel einfacher, anständige Loop-Sounds hinzubekommen
- Status 0
- Beschleunigungsphase beginnt (durch hohe Wahrscheinlichkeit) - System wählt Windrichtung (positiv / negativ) und addiert alle 5 Frames 0-1 zur Windstärke. Zusätzlich wird ein Punkt auf der Ma mittels RandomX(-mapsize,mapsize) etc. gewählt. )
- Bei Windstärke > 100 / < -100 schaltet das System auf Status 0 zurück.
- Abbremsphase beginnt (blabla) - Windstärke wird auf 0 zurückgefahren
- Status 0
Im Ganzen spielt noch etwas wenig Zufall mit, glotzt man aber nicht die ganze Zeit das Windrad an bzw. baut eben ganz viele nebeneinander, fällt es einem nicht auf.
Die Windstärke wird in der 31ten globalen Variable gespeichert, die "Windposition" darunter. Das Regelobjekt "wind" muss noch für jedes Szenario dann als Regel eben erstellt werden. Find ich ganz gut, schließlich hat man so dann auch die Kontrolle darüber.
Das Windrad dreht übrigens mit windstärke / 10 Grad jeden Frame. Kann man ja bei Bedarf noch verschnellern. Mittels Distance() wird die Entfernung zum "Windpunkt" gemessen und die Rotationsgeschwindigkeit des Rades entsprechend angepasst.
Mittels LocalSound() wird dann ein Windsound um den "Windpunkt" abgespielt. Was ich noch zur Soundsteuerung in der Engine gut fände: Jede Soundwiedergabe hat auch eine ID. Und mittels meinetwegen StopSound() kann man das dann stoppen. Wäre dann sehr viel einfacher, anständige Loop-Sounds hinzubekommen
Re: Windsystem
Ist leider noch nicht im SVN drin ,ich bastel noch dran rum. Hab meine acc-daten vergessen :/
Re: Windsystem
Ok.
So. Ich committe mal, allerdings hat das System zZ noch das Problem, dass das 3D-Positionierungszeug für "3D-Wind" nicht richtig funktioniert. Daher dreht das Windrad erstmal nach dem Clonk 4-System (also ohne Beeinflussung durch "Windposition").
Die Engine scheint 3D-Sounds auch nicht zu positionieren. Besser gesagt, der Wind-Sound wird nicht an der "Windposition" abgespielt, sondern global :/.
So. Ich committe mal, allerdings hat das System zZ noch das Problem, dass das 3D-Positionierungszeug für "3D-Wind" nicht richtig funktioniert. Daher dreht das Windrad erstmal nach dem Clonk 4-System (also ohne Beeinflussung durch "Windposition").
Die Engine scheint 3D-Sounds auch nicht zu positionieren. Besser gesagt, der Wind-Sound wird nicht an der "Windposition" abgespielt, sondern global :/.
Re: Windsystem
kleiner Hinweis: gwX nutzt für die Zeichencodierung den Ansi-Standard. Der Edirane hat aber irgendein Unicode-Zeugs drin.
Carli- Admin
- Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09
Seite 1 von 1
Befugnisse in diesem Forum
Sie können in diesem Forum nicht antworten
|
|