WoodHarvesterCutTreeEvent.lua

  • Ja und nein.


    Warum willst du einen Attacher einfügen? Möglich ist es schon, mit der Schittfläche hat es aber nix zu tun das wird alles von der Engine gemacht da steckt nix in den LUA Scripten drin.


    Attacher ist im Grunde nix weiter als ein Referenzpunkt den kannst du jeder Zeit setzen. (Am einfachsten indem du eine Transformgroup an gegebener Position setzt)
    Das würde ich aber nicht unbedingt im Event selbst machen sondern an der Stelle an der das Event im Hauptscript aufgerufen wird.



    LG

  • Liegst du falsch ;)


    Meine Winde nutzt (derzeit) die Stamm-Erkennung aus dem Motorsägenscript und erstellt dann den Joint an der Stelle an der die Maus zeigt. (kleiner grauer Punkt im Video zu sehen, 1m entfernt von der Camera des Players)
    Habe auch eine Version des Scripts das den Attacher einfach mittig im Stamm an der Stelle an der die Maus zeigt erstellt (Ebenfalls wie bei der Motorsäge für den blauen/grünen Marker) und die erste Version hat statt der Stamm-Erkennung einen Trigger verwendet somit konnte man (theoretisch) das Seil auch an andere Objekte anhängen nicht nur an Stämme.


    Zum erstellen eines Joints brauchst du nichts weiter als die Position und die zwei Objekte (Objekt ID's) die miteinander verbunden werden sollen.


    Das ist das quasi Minimum was man zum attachen braucht:
    [lua]
    local constr = JointConstructor:new();
    constr:setActors(self.rootNode, tree);

    constr:setJointTransforms(self.winchAttacherTransform, treeAttacherTransform);


    constr:setEnableCollision(false);
    self.w.attachedShape = constr:finalize();
    [/lua]


    Zuerst wird der Joint Constructor erstellt, dann die beiden Collisions-Objekte angegeben (im einfachsten Beispiel self.rootNode von Seil-Gerät (Winde/Seil etc.) und tree was in meinem Fall eine lokale Variable ist die die Object-ID des Baumes beinhaltet.
    setJointTransform setzt die beiden Transformgroups die den Attacher bilden, der erste ist in der Winde an der Stelle an der attached werden soll (also z.b. am Ende des Seils) und der andere ist im Baum. Der wird vorher eingefügt per createTransformGroup und link und an die Position gebracht an der der Punkt vor der Camera gerade ist.
    Am Ende noch Kollision zwischen beiden verbieten und finalisieren (Der Attacher ist erstellt)


    Natürlich fehlt da der gesamte Code der die Position der Transforms raus findet usw. und das winden an sich usw.. Aber das ist das Grundprinzip zum attachen, kein vorher angebrachter Attacher notwendig ;)



    LG

  • Zitat

    Bist du den so im ganzen mit deiner Winde zufrieden ?


    So wie im Video zu sehen funktioniert sie Bugfrei und MP fähig. Bin aber selbst kaum zum spielen gekommen weil ich nach dem Video noch ein zwei Wochen rum gebastelt hab und dann keine Zeit mehr hatte :D


    Zufrieden auf jeden Fall noch nicht, wollte noch eine Schlaufe machen dass das Seil nicht einfach in den Stamm rein zeigt und generell das optisch noch etwas netter aussehen lassen, gestaltet sich aber sehr schwierig mit den Giants Bäumen und nach vielen Versuchen bin ich nicht so wirklich weiter weil alles nicht 100% funktioniert sprich in jeder Situation und mit jedem Baum.


    Zitat

    Wird den deine Winde irgend wann öffentlich ? :whistling:


    Geplant war's schon, aber nach den oben genannten Problemen. Und dann hatte ich keine Zeit mehr und dann war ich im Urlaub, dann hat sich mein Auto zerlegt... und jetzt hab ich auch anderes zu tun :D
    Hab seither vor die Winde so wie sie im Video ist zu releasen als Beta, aber bin noch nicht dazu gekommen ist ja auch immer n Haufen Aufwand. Außerdem muss ich dann noch mit Maxter Rücksprache halten was der davon hält er hat ja mit gewirkt an der Winde.
    Aber wenn nicht als Beta wirds für den 15er auf jeden Fall nichts mehr.



    LG

  • Spricht nix dagegen wieso sollte es auch :D


    Aber eigentlich ist es Blödsinn Arbeit zwei mal zu machen und wenn du dir die ganze Arbeit machst ne Winde zu basteln obwohls schon eine gibt.. Musst du selber wissen ob sich das lohnt :D Wenn ich die Tage mal etwas Luft hab schaue ich ob ich die Beta nicht online stellen kann.



    LG

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!