PositionMesh
Übersicht

![]() |
NightPhoenixBetreff: PositionMesh |
![]() Antworten mit Zitat ![]() |
---|---|---|
Benutze ich den Befehl PositionMesh verschwindet mein Objekt einfach, bei PositionEntity funktioniert alles tadellos.
Noch ne interessante Sache ist dass wenn ich dem zu positionierenden Objekt mit PositionMesh nur eine Koordinate übergebe (bsp. EntityX für das X) wird es auch positioniert, aber sobald eine zweite (EntityY) mit ins Spiel kommt ist das Objekt weg. Code: [AUSKLAPPEN] Fix.FixBlatt = First Fixblatt
Dim Ast(2400) For i=1 To 100 Ast(i)=LoadMesh("Blatt.3ds") PositionMesh Ast(i),EntityX(Fix\fixer),EntityY(Fix\fixer),EntityZ(Fix\fixer) ;PositionEntity Ast(i),EntityX(Fix\fixer),EntityY(Fix\fixer),EntityZ(Fix\fixer) ScaleMesh Ast(i),2.5,2.5,2.5 Next weiß jemand was ich falsch gemacht haben könnte? mfg. |
||
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
Soweit ich weiss, kannst du Mesh - Befehle nur benutzen, wenn du vorher nicht Entity - Befehle auf dieses Objekt verwendet hast (wie Positionentity, EntityX o.ä.).
Bei mehreren Parametern mit EntityWasauchimmer werden wohl diese vor dem ...Mesh - Befehl ausgeführt, was diesen wieder ungültig macht. |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Lade es einmal,scaliere es einmal,verstecke es,copiere es und
nimm dann keine Mesh Funk. Mesh = Drahtgittermodell Code: [AUSKLAPPEN] Fix.FixBlatt = First Fixblatt Dim Ast(2400) Ast(0)=LoadMesh("Blatt.3ds") hideentity Ast(0) ScaleMesh Ast(0),2.5,2.5,2.5 For i=1 To 100 Ast(i)=copyentity(Ast(0)) PositionEntity Ast(i),EntityX(Fix\fixer),EntityY(Fix\fixer),EntityZ(Fix\fixer) Scaleentity Ast(i),1,1,1 Next |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Und nutz die global Flag bei EntityX etc sonst könntest du in das problem laufen dass das objekt nen parent hat und schon hast du nimmer die wirkliche Objektposition | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
NightPhoenix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke für die Tipps ![]() Es hat wirklich an den Entity Befehlen gekoppelt mit den Mesh Befehlen gelegen. Wenn ich das Objekt ausschließlich als Mesh behandle ohne Entity Befehle geht alles klar. Vorher habe ich auch noch mein zu erstellendes Mesh von einem Quellmesh kopiert (CopyEntity) und anschließend mit Mesh befehlen gearbeitet. Das Quellobjekt und das erstellte lösten sich anschließend in Luft auf. Die Lösung war es doch mal mit "CopyMesh" zu probieren ^^ Das war der Fehler, deshalb würde Markus2's Code auch mit Mesh Befehlen nicht funktionieren, wegen seinem "CopyEntity" weil diese dann ebenso verschwinden. Ich brauch die Mesh Befehle für Addmesh, EntityBefehle würden es da nicht bringen ![]() MfG. ![]() *edit* Der neue Code wenn es jemanden interessiert: Code: [AUSKLAPPEN] CopyBlatt=LoadMesh("Blatt.3ds")
EntityTexture CopyBlatt,Tex_Baum ScaleMesh CopyBlatt,2.5,2.5,2.5 Fix.FixBlatt = First Fixblatt SeedRnd(0) Detail=240 NextSteper=Int(Detail/12) Dim Ast(2400) For i=1 To Detail typzae=typzae+1 Ast(i)=CopyMesh(CopyBlatt) EntityTexture ast(i),tex_baum ;PositionMesh Ast(i),EntityX(Fix\fixer)+Rnd(-3,3),EntityY(Fix\fixer)+Rnd(-2.2,2.2),EntityZ(Fix\fixer)+Rnd(-3,3) PositionEntity Ast(i),EntityX(Fix\fixer)+Rnd(-3,3),EntityY(Fix\fixer)+Rnd(-2,3),EntityZ(Fix\fixer)+Rnd(-3,3) EntityAutoFade ast(i),60,80 If typzae=NextSteper Then typzae=0 fix = After fix EndIf Next HideEntity CopyBlatt Das Ganze wird jetzt auf SingleSurface umgeschrieben ![]() danke euch nochmal! |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
CopyEntity erstellt ja auch kein neues Mesh ,
ich glaube du hast den Sinn bei dem Befehl nicht verstanden . Trotzdem kann man Scale Entity benutzen und auch Entity an andere dran hängen . Was Du vor hast ist Quatsch und ich behaupte mal das Du nicht weist was zu tust ![]() ??? Code: [AUSKLAPPEN] Ast(i)=CopyMesh(CopyBlatt) EntityTexture ast(i),tex_baum |
||
![]() |
NightPhoenix |
![]() Antworten mit Zitat ![]() |
---|---|---|
was ist daran so falsch? ^^
Wenn ich CopyMesh anwende wird die Textur nicht "übernommen"... so hätte ich das erwartet, aber nunja, deshalb entitytextur oder was meinst du? ^^ |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
falsch kann man dazu eigentlich nicht sagen
Du kopierst immer das gleiche Drahtgitter obwohl ein Verweis reichen würde also 1 echtes Objekt wo xxxx drauf verweisen statt wie du xxxx Objekte doppelt im Speicher zu haben bzw. ein Riesen Drahtgitter Modell mit immer den gleichen Elementen . Da macht es auch kein Sinn das in Single Surface zu machen . Als Vergleich: Du schüttest Dir selber nen Berg vor die Füße und gräbst den mit deiner eigenen Schaufel wieder weg wobei kein Berg = kein Hindernis = keine Arbeit wär . |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group