Jump to content

Geschwindigkeit kopieren


Empfohlene Beiträge

Hallo zusammen,

für die Animation von Objekten in der Anlage suche ich eine Möglichkeit, die reale Geschwindigkeit von einer Lok auf die andere zu kopieren.
In der angehängten Beispielanlage sollte sich also "Draisine 2" genauso bewegen wie "Draisine 1".

Es wäre für mich keine Lösung, in jedem Ereignis die Draisine 2 mit anzusteuern. Ich bräuchte eine Möglichkeit, mit der sich D2 die Geschwindigkeit immer von D1 holt.
Im Sinne von "VD2=VD1".

Habt Ihr eine Idee?

Viele Grüße von Koriander

V Kopie.mbp

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Koriander,
Du kannst natürlich permanent in den Eigenschaften nach der Soll-Geschwindigkeit schauen und diese an die Soll-Geschwindigkeit der zweiten Lok geben.
Ist-Geschwindigkeit ist möglicherweise kritischer, denn das Original wird bei Brems/Beschleunigungsvorgängen interpolieren.
Jetzt brauchst Du aber noch ein permanentes wiederkehrendes Ereignis und das kann eigentlich nur ein schneller Timer sein. Da ist nun die Frage, wie hart belastbar das alles ist, denn - eben wg. Bremsen und Beschleunigen - müssen ja auch ständig die neuen Positionen der Loks berechnet werden. Mein Beispiel nimmt einen 20Hz-Timer.

Die Verzögerung der Draisine 2 habe ich an Draisine 1 angepaßt, sonst wird's lustig.

Gruß
  Andy

v kopie_re.mbp

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Koriander

Was hältst du davon mit einem Benutzerdefinierten Ereignis zu arbeiten. In dieses packst du alle Fahrzeuge die gleichzeitig angesteuert werden sollen. Bei deinen Ereignissen rufst du dann immer das Benutzerdefinierten Ereignis ab, die hat sogar den Vorteil, dass du nur jedes Mal die gewünschte Geschwindigkeit eintragen musst, denn alle Fahrzeuge sind bereits vorhanden. Schau einfach mal in das Beispiel:

Draisinengeschwindigkeit.mbp

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Auf dein Beispiel würde es dann so aussehen:

Draisinengeschwindigkeit2.mbp

wichtig dabei ist aber, dass alle Fahrzeuge die gleiche Verzögerung und Beschleunigung haben, die waren in deinem Beispiel unterschiedlich. Wenn du absichtlich mit unterschiedlichen Werten arbeiten willst ist Andy seine Lösung eher geeignet, aber bei dieser gibt es trotz der 20 Hz eine Verzögerung, die Langfristig eine Verschiebung bedeutet.

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 53 Minuten schrieb HaNNoveraNer:

Aber so gehts doch auch?

Gute Idee mit dem Verknüpfen, leider funktioniert dies nur solang die Gleise parallel verlaufen (auch mit einem Versatz), aber sobald es sich nicht mehr um parallele Strecken handelt funktioniert dies Variante nicht mehr. Interessant wäre wohl ein Auslöser namens „Geschwindigkeit wird gesetzt“.

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @fzonk,
das Thema mit dem fehlenden Auslöser hatten wir schon. Wenn ich's richtig in Erinnerung habe, gibt es den nicht, weil das alles in einem alten Programmpaket liegt, das Neo nicht gerne aufmachen möchte. Es steht aber auf der todo-Liste für eine Komplettüberarbeitung. Übrigens gab's deswegen dafür auch kein Ereignis in der Schnittstelle, was wir ja bei einigen Checks schmerzlich vermißt haben. Easy hat damals schon empfohlen, notfalls jedes Setzen von Geschwindigkeiten über checkbare Zwischenvariablen laufen zu lassen.

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 15 Minuten schrieb Andy:

Wenn ich's richtig in Erinnerung habe, gibt es den nicht, weil das alles in einem alten Programmpaket liegt,

einen Auslöser "Geschwindigkeit wird gesetzt" gibt es nicht, weil es sich hierbei nicht um ein Ereignis handelt, sondern um eine kontinuierliche Werteanpassung. Wenn z.B. ein Fahrzeug bremst, ändert sich die Geschwindigkeit jedes Frame. Ein Ereignis wäre hier nicht praktikabel.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eigentlich würde das Ereignis: "Sollgeschwindigkeit wird gesetzt" reichen.
Dazu natürlich Acceleration und Deceleration ebenso, da das dann synchron laufen müßte.

P.S. Für Rocstudio wäre auch: "Istgeschwindigkeit wird gesetzt" interessant, zum sanften Bremsen z.B.

Bremsen und Anfahren machen die Fahrzeuge dann natürlich autark.

Bearbeitet von HaNNoveraNer
Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin

Wie sich D2 die geschwindigkeit von D1 "holen" soll haben wir jetzt verschiedene moeglichkeiten. Wie Frank heraus stellte: HaNNoveraNer's idee wird nur nur bei gerader bzw. paralleler strecke funktionieren, und Andy's weg duerfte praezise, abba rechnerintensiv zum gewuenschten ergebniss fuehren. Frank's vorschlag ueber benutzer definierte ereignisse ist meiner loesung nicht unaehnlich, braucht abba einen eintrag mehr:P.....Wie auch Frank schon herausstellte ist es wichtig das die "syncronisierten" fahrzeuge mit identischen beschl u verzoeg. werten eingestellt sind. Hier also meine version.

Cheers

Tom

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 46 Minuten schrieb Neo:

einen Auslöser "Geschwindigkeit wird gesetzt" gibt es nicht, weil es sich hierbei nicht um ein Ereignis handelt, sondern um eine kontinuierliche Werteanpassung.

Sorry, dann habe ich da was mißverstanden. Das Setzen der Istgeschwindigkeit war damit aber nicht gemeint. Klar, dass die sich beim Bremsen/Beschleunigen ständig ändert. Anders bei der Sollgeschwindigkeit. Eigentlich ist Koriander's Wunsch da schon etwas ausgefallen. Man könnte natürlich eine zweite Lok, ggf. mit einer erweiterten Bedingung an der Stelle einfügen. Aber wir haben ja auch das Ereignis 'Objekt/Variable wird gesetzt' oder 'Schalter schaltet'. 'Eigenschaft wird gesetzt' haben wir nicht.

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

vor 12 Minuten schrieb Andy:

Aber wir haben ja auch das Ereignis 'Objekt/Variable wird gesetzt' oder 'Schalter schaltet'. 'Eigenschaft wird gesetzt' haben wir nicht.

Jedes Objekt besitzt verschiedene Eigenschaften, und einige davon werden jedes Frame geändert (z.B. die Position bei sich bewegenden Objekten). Solche Änderungen können nicht jeweils ein Ereignis auslösen, das Studio würde gar nicht mehr aus dem Ereignisauslösen herauskommen. "Variable wird gesetzt" hat dieses Problem nicht, da Variablen vom Studio selber nicht angefasst werden und der Benutzer pro Frame nicht tausende Variablen ändert.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 49 Minuten schrieb Neo:

da Variablen vom Studio selber nicht angefasst werden und der Benutzer pro Frame nicht tausende Variablen ändert.

Der Benutzer muss es nicht selbst tun, sondern kann ein Script schreiben, dass eine Variable 1000 mal geändert werden soll. ;) Ich habe aber keine Ahnung, ob das dann in einem oder mehreren Frames abgearbeitet wird.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Timba,

vor 7 Stunden schrieb Timba:

Der Benutzer muss es nicht selbst tun, sondern kann ein Script schreiben, dass eine Variable 1000 mal geändert werden soll.

mit einem Script oder einer "falschen" EV kann man jede Anlage kaputt machen, allerdings hat auch das der Benutzer selber in der Hand, was er am Ende für Aktionen aufruft. Über ein "Eigenschaft hat sich geändert"-Ereignis hat er keinerlei Kontrolle.

Am Ende ist der vernünftigste Kompromiss, einfach beide Loks auch immer gleichzeitig anzusteuern. Wenn es so viele verschiedene Ursachen für eine Geschwindigkeitsänderung gibt, dann würde ich eher dort ansetzen und die vielen Änderungen versuchen über eine zentrale Stelle laufen zu lassen.

Viele Grüße,

Neo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo zusammen,

oops, so eine Aufruhr wollte ich gar nicht auslösen...Vielen Dank für die Unterstützung und die vielen Vorschläge.

Ich hab's schon mal mit Andys Vorschlag probiert - jetzt teste ich noch fzonks Variante.

Zur Zeit bin ich dabei, meine alte Anlage BK2 für V5 zu überarbeiten. Dabei fallen die Vögel auf, deren Flügelschlag immer wieder aus dem Ruder läuft. Mit einer Stopp-Variante hatte ich bisher die Synchroniosation immer wieder "neu justiert". Das sah aber manchmal etwas flügellahm aus.

Die umgesetzte Andy-Variante habe ich schon mal angehängt. Allerdings fürchte ich auch, dass es nicht dauerhaft synchron bleibt.

Viele Grüße von Koriander

...und wenn Ihr jetzt denkt, ich hab 'nen Vogel - stimmt nicht, es sind mehrere... :D

Vogel.mbp

Link zu diesem Kommentar
Auf anderen Seiten teilen

Meines Wissens nach ist das sowieso der einzige Vogel (in der Luft!), der irgendwo zu sehen ist. Der hat mich damals schon gefreut, der muß geschützt und gefüttert werden!
Da gibt's auf jeden Fall noch Modellbedarf, auch wenn ein einziger Vogel halt doch sehr klein ist. Aber animiert wären sie sehr auffällig - ich habe den sehr wohl gesehen. Und so ein paar Enten oder ein Schwan auf'm Teich wären bestimmt auch hübsch.

Gruß
  Andy

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 9 Stunden schrieb Koriander:

oops, so eine Aufruhr wollte ich gar nicht auslösen

Hi Koriander

Ist ja ein kreativer aufruhr9_9. Ich hatte mir schon gedacht das das eher im kreisverkehr was sein koennte. Da geht es sogar noch einfacher. Wenn du die endgleise als jeweils ein gleis zusammenfasst koennen beide dummies ueber den ausloeser angesprochen werden.

kori2.thumb.JPG.fea5b6d82244e9c02350b73640afce1a.JPG

Cheers

Tom

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo metallix,

so etwas dachte ich auch - allerdings laufen die beiden Loks dann mit der Zeit auseinander und die Flugfähigkeit lässt rapide nach. :o Irgendwie muss doch synchronisiert werden.

Im Anhang findet Ihr den Vogel auch noch in Aktion (mit Version Andy). Allerdings merkt man da auch schon wieder, dass die Flügel nicht ganz synchron sind.

Viele Grüße

Koriander

Vogel2.mbp

Bearbeitet von Koriander
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo @Koriander und alle anderen Interessierten,

da ich ja nun weiß um was es bei der Steuerung genau geht, was hältst du von dieser Steuerung? Ich habe in die Steuerung mit eingebaut, dass diese sich selbständig immer wieder ausrichtet, bei jedem Flügelschlag. Somit werden kleinste Verschiebungen sofort korrigiert und es kommt zu keiner größeren Verschiebung der Flügel.

Synchrone Flügel.mbp

Gruß Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 5 Stunden schrieb Andy:

Meines Wissens nach ist das sowieso der einzige Vogel (in der Luft!), der irgendwo zu sehen ist. Der hat mich damals schon gefreut, der muß geschützt und gefüttert werden!
Da gibt's auf jeden Fall noch Modellbedarf, auch wenn ein einziger Vogel halt doch sehr klein ist. Aber animiert wären sie sehr auffällig - ich habe den sehr wohl gesehen. Und so ein paar Enten oder ein Schwan auf'm Teich wären bestimmt auch hübsch.

Gruß
  Andy

Wenn mir einer unserer "MakeHuman" Experten ein Vogelmodell zur Verfügung stellen könnte, würde ich gerne Versuchen es zu Animieren.

Viele Grüße

fmkberlin

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...