Animiertes Objekt wird nicht korrekt gerendert
Übersicht

![]() |
Spark FountainBetreff: Animiertes Objekt wird nicht korrekt gerendert |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo liebe Community,
ich habe mir kürzlich die Software MakeHuman heruntergeladen, und mal einen Charakter erstellt. Den habe ich nach Milkshape importiert und dann ein Skeleton hinzugefügt (mit Animationen und so), um es wieder als .b3d zu exportieren. Dann habe ich außerdem einen Schraubenzieher modelliert, den die Figur in die Höhe halten kann. Dafür gibt es eine Animation, die ich sowohl für das Mensch-Mesh, als auch für das Schraubenzieher-Mesh angewendet habe; aber beide Modelle wurden separat exportiert als .b3d. Das hat den Grund, dass man die Möglichkeit haben soll, den Schraubenzieher auch weg zu stecken, und dann soll er ja nicht an dem Mensch-Modell mit dran hängen. Jetzt aber zum eigentlichen Problem: In meiner Testumgebung kann ich die Kamera beliebig um die Figur drehen, und habe festgestellt, dass es manchmal aus einigen Perspektiven dazu kommt, dass der Schraubenzieher unsichtbar wird. - Natürlich meine ich nicht den Moment, wenn ich mich hinter der Person befinde und ihn logischerweise nicht sehen kann; sondern auch wenn ich von vorne, leicht seitlich, auf die Figur schaue, wie sie sich mit dem Schraubenzieher in der Hand bewegt. Dann verschwindet dieser manchmal kurzzeitig, manchmal auch komplett. Ich muss dann den Kamerawinkel erst wieder etwas verändern, um ihn wieder sichtbar zu machen. Folgendes habe ich schon probiert: ![]() ![]() ![]() Hat jemand von euch eine Idee, wie man diesen Render-Fehler bei Animationen beheben kann? Es liegt wahrscheinlich daran, dass beide Objekte sehr dicht beieinander sind, bzw. sich auch überlappen während der Animation... Vielen Dank schonmal! |
||
![]() |
Tankbuster |
![]() Antworten mit Zitat ![]() |
---|---|---|
LoadAnimMesh und LoadMesh machen völlig unterschiedliche Sachen. Bei LoadMesh wird einfach nur ein Mesh geladen. Bei LoadAnimMesh allerdings auchnoch die VertexGroups,Unterobjekte, ect.
Wenn du auf ein Bestimmtes Teil des Meshs zugreifen willst, musst du Findchild benutzen. Nichtmal das sollte bei einem Bone-animierten Objekt funktionieren: Code: [AUSKLAPPEN] Anim_objekt=LoadAnimMesh("blabla.b3d") EntityColor Anim_objekt,255,0,0 Das Ergebnis wäre, dass die Objektgruppe die Farbe nicht ändert. mit LoadAnimMesh ![]() Außerdem kann es sein, dass durch fehlerhaften Export die Nullpunkte der Vertex-Gruppen verändert werden. Oder, je nachdem wie du modelliert hast, die Sachen auch verdreht sind. Ob du ein Objekt drehst, oder die Vertexe umpositionierst (Bei Blender Object Mode <> Edit Mode) macht einen wahnsinnigen Unterschied, wenn das exportscript damit nicht umgehen kann, dann tschüss schönes Modell. |
||
Twitter
Download Jewel Snake! Windows|Android |
![]() |
Spark Fountain |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok, danke erstmal für die Antwort. Allerdings glaube ich nicht, dass es ein Problem mit dem Exportskript gibt, zumal das Objekt wie gesagt nur manchmal gerendert wird und manchmal wieder nicht. Wenn es aber dann dargestellt wird, sind Position, Winkel etc. immer korrekt.
Gibt es sonst eine andere Lösung, den Schraubenzieher zu animieren? Würde es z.b. einen Unterschied machen, wenn ich das Modell statisch lade und dann mit LoadAnimSeq die Bewegung hinzufüge? Oder müsste ich da das Menschmodell unterteilen in Gliedmaßen, und dann den Schraubenzieher als Child von der Hand definieren? ( Würde das klappen, oder beeinflusst die Animation gar nicht die eigentliche Position des Objekts? Also bleiben die Positionskoordinaten gleich, obwohl ein Objekt durch eine Bone-Animation verschoben wird? Sorry, hab da leider keine Ahnung von...) |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group