ConrolValue vs. Sound Controller


Abonniere unseren Kanal auf WhatsApp (klicke hier zum abonnieren).
  • Hallo zusammen,


    ich versuche mich gerade an einigen Soundprojekten und hänge fest: Ich möchte der BR101 die Sprachausgabe "Schließvorgang eingeleitet" verpassen, natürlich soll diese nur beim Türschließvorgang ausgelöst werden.


    Nun wirds interessant: Die RS DevDocs, Kap. 8.01 schreiben


    Zitat

    All rolling stock will also inherit any controllers of the AnimationTime_ type as described in the Turntable section above and also any ‘controls’ which have been set up in the Engine Blueprint.


    Genau das scheint möglicherweise nicht grundsätzlich so zu sein. Fürs Türschließgeräusch auf der Lok ist der "DoorsOpenClose"-Controller zuständig, der in der br101.bin auch existiert:


    Code
    <cControlContainerBlueprint-cControlValue d:id="52330776">
       						 <ControlName d:type="cDeltaString">DoorsOpenClose</ControlName>
       						 <DefaultValue d:type="sFloat32">0.000000</DefaultValue>
       						 <MinimumValue d:type="sFloat32">0.000000</MinimumValue>
       						 <MaximumValue d:type="sFloat32">1.000000</MaximumValue>
       						 <BriefDescription d:type="cDeltaString">Open/Close Passenger Doors</BriefDescription>
       						 <DetailedDescription d:type="cDeltaString">Open/Close Passenger Doors</DetailedDescription>
       						 <ApplyToConsist d:type="cDeltaString">eTrue</ApplyToConsist>
       						 <InterfaceElements/>
       					 </cControlContainerBlueprint-cControlValue>


    Dennoch ertönt das schon im Railworks-Defaultsound der BR101 eingebaute "Door Close Beep" (Triggered OneShot mit "DoorsOpenClose", ValueDecreasePast, 0.990000) nicht.


    Nun stellt sich die Frage: Wo ist das Problem? Ich sehe zwei Möglichkeiten:


    - einerseits könnte der Soundcontroller vom ControlValue des Engine Blueprints abgeleitet sein und existieren, allerdings nicht ordentlich ausgelöst werden.
    - die andere Möglichkeit ist, dass der Soundcontroller garnicht erst erstellt wurde.


    Ich habe bereits probiert, dem ControlValue verschiedene Interface-Elemente zu verpassen, auch ohne Erfolg.
    Eine andere Strategie wäre, zusätzliche ControlValues "DoorsOpenCloseLeft" und "DoorsOpenCloseRight" einzuführen, wie sie bei Wagen für jede Türseite existieren. Das allein reicht aber auch nicht aus. Hier müsste man vermutlich noch "Dummyanimationen" für Türen ins 3d-Modell der Lok einbauen, was mir nach etwas Studium der .ban und .GeoPcDx nicht ohne die Quellfiles möglich scheint...


    Wer kann hier weiterhelfen oder hat noch eine Idee, um den Soundtrigger nutzbar zu machen? Ich bin für jede Hilfe dankbar!


    Viele Grüße,
    Benjamin

  • Unqualifizierte Meinung von mir, weil ich mich mit sowas bislang noch überhaupt nicht beschäftigt habe, aber mir springt da ganz spontan was ins Auge:
    <DefaultValue d:type="sFloat32">0.000000</DefaultValue>
    Standard Einstellung = 0


    mal ausprobiert was passiert wenn du aus der Null ne Eins machst? Jedenfalls wenn sich der Wert auf die Sounds an sich bezieht und nicht eine Statusabfrage für offene oder geschlossene Türen ist (auf = 1, zu = 0 oder so).
    Ansonsten auf einen der Experten aus dem Lokbau warten ;)

  • Ich bin da vor langer Zeit schon einmal über dieses Door Close Beep gestolpert und habe da auch keinen Ansatzpunkt gefunden.
    Möglicherweise fehlt da vielleicht die Rückmeldung vom Waggon.


    Man könnte aber mal den RW Sound Guru Richard Armstrong fragen (Englischkenntnisse vorausgesetzt) ob er sich die Sache mal ansehen könnte. Bzw. ob er nicht einen Tipp hätte, wie man zusätzliche Sounds einbauen kann.


    Kontakt ist über die Webseite möglich; Armstrong Powerhouse


    Gruß, Jim

  • Hallo zusammen,


    soviel vorweg: Ich hab es geschafft!


    Zaunpfahl: Der Defaultwert ist vor allem der Startwert, wenn die Simulation gestartet wird und sollte am Soundgeschehen nicht viel ändern.


    ***


    Nun aber der Reihe nach: Ich hab via Script rausgefunden, dass der Soundcontroller durchaus existiert - aber nur nicht verändert wird. Der Weg zum Ziel führt auch über Scripte: In den Standard IR/IC-Wagen wird im Wagenscript des ersten Wagens im Zug der Zustand beider Türen ausgwertet und per "SendConsistMessage" dann an die Lok weitergeleitet. Im dortigen Script wird der Wert empfangen und entsprechend im CabSound gesetzt. So kommt jetzt auch die Ansage "Schließvorgang eingeleitet" zum richtigen Zeitpunkt :) Hat zwar den Nachteil, dass die Ansage nur funktioniert, wenn der erste Wagen im Zug über das entsprechende Script verfügt, aber um ein "vergessenes" CabControl doch noch zu benutzen ist das sicher ein gangbarer Weg - zumal eh meist die Standard-IR/IC hinter der Maschine hängen...


    Danke für eure Hilfe, nicht zuletzt dank einer äußerst hilfreichen PM hab ich es nun hinbekommen. Inzwischen hat die BR101 auch zwei Hornsounds, die getrennt voneinander via Space und Shift+Space auslösbar sind. Die nächste Stufe ist dann eine funktionierende SiFa, aber das sollte mit diesem Wissen nur noch eine Frage der Zeit sein :)


    Viele Grüße,
    Benjamin

  • Da ich nicht weis wohin und man hier schon über die Br101 Sounds redet, hab ich da mal eine Frage. Vielleicht weis das ja Jemand genau.


    Beim Anfahren im RW ist ja erst mal das Gezirpse da (ka wie ich das bennen soll ) und dann bei 56km/h wechselt das in ein anderes Geräusch (dass ich immer als Lüfter betitelt hab, was aber ja nicht stimmt).


    Nun meine Frage 1: das ist doch falsch?! Das wechselt doch bei einer "echten" 101er schon bei etwa 20km/h. Genauso wie bei einer 145/146er auch. Und vor allem wird es dann nachhaltig leiser und verschwindet irgendwann wenn Geschwindigkeit aufgenommen wird.


    Frage 2: was ist das überhaupt für ein Geräusch? Wechselrichter? Gibts die da überhaupt? Thyristoren? Trafo?
    Frage 3: wie kann man das im RW korrigieren? (ich blick da nicht durch mit den Soundcontrollern .. das hätte man auch einfacher machen können ^^)



    Edith: Hab den Parameter wohl gefunden, weis aber nicht ob ich den einfach so ändern kann. Kommt zumindest hin mit 15,00m/s ... das sind etwa 56km/h .. da setzt der Sound ein. Aber die Sounds die davor sind (Umrichter/Traktionsstromkreis) müssen ja dann aus gehen etsprechend. Und das finde ich beim besten Wille nicht in dem Salat von Nummern. Sind ja auch 4 oder gar 5 Soundfiles nur für diesen einen Sound.

    4 Mal editiert, zuletzt von Maik ()

  • Auch auf die Gefahr hin dass ich hier mit mir selber rede.


    Mitlerweile hab ich es rausgefunden wie das geht. Ist gar nicht mal so schwer die Curves und Controllerzuweisungen zu bearbeiten. Schade ist, dass es keine ordentliche Anleitung zu den Mögöiochkeiten gibt. (ja ich kenne das DevManual dazu ... da kann ich aber auch ne Klopapierrolle lesen :) )


    Ich finde zB nicht herraus, wie der Sound mit dem Throttle-Hebel eingeschaltet/ausgeschaltet wird sofern er denn per Curve hörbar gemacht wurde. Würde gerne nämlich bei Einsetzen des Sounds einen 2. dazuschalten (oneShot) der höher gepitcht ist und auch beim Original jedesmal beim Aufschalten von Leistung (von 0) zu hören ist (wiederum nur sofern man sich im hörbaren Bereich des eigentlichen Sounds befindet der ja per Curve geregelt wird ... habe den so eingestellt dass er ab 20km/h langsam bis zu 45km/h leiser wird und etwas tiefer im Pitch und dann recht schnell ganz verschwindet...halt wie beim Original)


    Habe auch noch andere Änderungen vorgenommen, wie zB. das Fahrmotorengeräusch das ja fast bis runter zum Stillstand zu hören ist im Original. Bei der RW Maschine aber bei 20km/h gar nicht mehr da ist. Ausserdem dieses im Bereich 1-5km/h deutlich runter gepitcht um das tiefe Brummen beim Anfahren zu simulieren. Dazu noch die Lautstärkeanhebung verändert um mehr "Kraft" zu hören beim Anfahren. Jetzt versuche ich noch das Motorengeräusch in Richtung höherer Geschwindigkeit nach oben zu pitchen um diesem viel zu tiefen Ton das typische Pfeifen zu verpassen (siehe/höre Mitfahrten ..zB von Gleis4.de)


    Weis jemand wie diese IDs vergeben werden? Also gibt es da ein Schema. Ich hab einfach wahllos neue erfunden die nicht in der proxyxml vorhanden sind. Funktioniert auch. Schätze aber dass es auch mal zu Kollisionen mit anderen Proxys kommen kann wenn dort die selben IDs vergeben sind.

  • HAllo maik!
    endlich mal jemand der sich dessen animmt!
    übrigens habe schon eingesounds ersätzt! wie z.b. die BRv200 oder die BR294 allerdings mit nur mässigen erfolg !


    Z.B. der Anfahr sound von der V200 der klingt bei mir einfach zu Hell bin schon am rum probiere aber ich finde da einfach nicht den richtigen sound ! das pitchen wie machst du das ? da kenne ich mich gar nicht mit aus oder mit script ! würde mich echt mal intressieren ! bin halt neugierig und ein anfänger!! also kann ich noch viel lernen! was das angeht!!! please Help!! :rolleyes:


    LG misc35

  • Hallo misc35


    Ich bin auch nur ein "Anfänger" was das angeht. Ich habe das mal im MSTS probiert und sofort verworfen. Mir scheint das im RW etwas einfacher zu sein. Vor allem wenn man begreift wie ein Shyntesizer funktioniert der per (Midi-)Controllern an den Hüllkurven gesteuert wird. Denn so ähnlich funktioniert das im RW auch. NUr gibt es leider kein Programm mit dem das visualisiert wird. Man fummelt ja nur in XML dateien rum, und das nervt schon ein wenig. Vor allem kann man in der datei von der 101er sehen dass selbst RSC wohl nicht ganz damit klar kommt :) Der Idle-Sound zB., der an sich ganz nett wäre, funktioniert gar nicht, obwohl er richtig eingetragen ist.


    Mit Diesel und Dampf hab ich mich aber bisher gar nicht beschäftigt. Steh mehr auf elektisch betriebene Fahrgerätschaften.
    Fürs Pitchen musst du eine neue Curve erstellen und einen Controller zuweisen. Kann das gern mal hier rein kopieren was ich da eingefügt habe damit der Umrichtersound sich so ändert. Das ist keine Magie, sondern reine Logik.

  • Keine Ahnung ob das wirklich jemanden interessiert. Aber da @misc35 danach fragte, kopier ich das mal rein.


    Sound-Datei Referenzierung (steht ja schond rin)


    Pitch Kurve (es gibt noch eine Kurve für Volume die auch über den Controller und die Chain angesteuert wird)


    Modifier Chain


    Controller Zuweisung