"Flimmerndes Mesh"
Übersicht

![]() |
BlackproggerBetreff: "Flimmerndes Mesh" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi Leute, ich habe vor 2 Tagen angefangen eine Steuerung für mein neues Spiel zu proggen. Die Steuerung läuft wunderbar, nur leider Flimmert der Würfel (den Ich Steuere). Ich hoffe ihr könnt mir weiterhelfen.
Code: [AUSKLAPPEN] Ox#=EntityX#(Raumschiff)-EntityX#(Maus3D) Oy#=EntityY#(Raumschiff)-EntityY#(Maus3D) Oz#=EntityZ#(Raumschiff)-EntityZ#(Maus3D) Opitch#=VectorPitch#(Ox#,Oy#,Oz#) Oyaw#=VectorYaw#(Ox#,Oy#,Oz#) RotateEntity Raumschiff,0,Oyaw#,0 RaumschiffSpeed=(EntityDistance(Raumschiff,Maus3D)/10) * (-1) MoveEntity Raumschiff,0,0,RaumschiffSpeed Kurze Codeerklärung: Das Raumschiff ist der Würfel. Die 3DMaus ist auch ein unsichtbarere Würfel den ich mit der Maus steuere. Das Raumschiff soll sich zu der 3D Maus drehen. Je weiter das Raumschiff entfernt ist, desto schneller soll es auf die 3DMaus zufliegen. Je näher es ist desto langsamer. Aber leider flimmert das ganze, bzw. wenn ich die Maus ganz schnell bewege, habe ich dann auf einmal 2 Würfel. Ich hoffe ihr könnt mir helfen. |
||
PC:
AMD Athlon 64 X2 TK 57 Prozessor (2x 1.9 GHz) | nVidia GeForce 8600M GS mit 512 MB VRAM | 4-GB-DDR2-RAM | Windows Vista Home Premium |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
mach nicht flip 0
Klingt sehr als ob du sehr viele frames hast und wenn das bedeutend mehr sind als dein Bildschirm rendern kann (60 oder 72 normalerweise bei TFT) dann wirds mit der zeit "kritisch" |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Blackprogger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also wenn ich flip 0 benutze, funktioniert es gut ^^. | ||
PC:
AMD Athlon 64 X2 TK 57 Prozessor (2x 1.9 GHz) | nVidia GeForce 8600M GS mit 512 MB VRAM | 4-GB-DDR2-RAM | Windows Vista Home Premium |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
mit Flip 1 noch viel besser, weils dann nicht schneller aktualisiert als deine Bildschirm es kann. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Blackprogger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn ich Flip 1 benutze, dann "flimmert" es wieder, bei Flip 0 nicht. | ||
PC:
AMD Athlon 64 X2 TK 57 Prozessor (2x 1.9 GHz) | nVidia GeForce 8600M GS mit 512 MB VRAM | 4-GB-DDR2-RAM | Windows Vista Home Premium |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das klingt schief.
du hast nicht eventuell kaputte kamera range settings oder? (also entweder 0.1, 1000 oder 1,10000 oder so, einfach nicht mehr als faktor 10000 zwischen den zwei werten) |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Blackprogger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das einzigste was ich mit der Cam mache ist bewegen. Rangesettings habe ich noch keine benutzt/gesetzt. | ||
PC:
AMD Athlon 64 X2 TK 57 Prozessor (2x 1.9 GHz) | nVidia GeForce 8600M GS mit 512 MB VRAM | 4-GB-DDR2-RAM | Windows Vista Home Premium |
![]() |
NightPhoenix |
![]() Antworten mit Zitat ![]() |
---|---|---|
kannst du mal den codeausschnitt aus deinem code posten ab dem "Updateworld", bzw. "RenderWorld" Befehl bis zum "End"?
Ich vermute da liegt irgend ein fehler |
||
![]() |
Blackprogger |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] UpdateWorld RenderWorld Text 0,0,EntityX(Maus3D) Flip 0 Delay 10 Wend End Das Flip habe ich nach Dreamoras Antwort verbessert. |
||
PC:
AMD Athlon 64 X2 TK 57 Prozessor (2x 1.9 GHz) | nVidia GeForce 8600M GS mit 512 MB VRAM | 4-GB-DDR2-RAM | Windows Vista Home Premium |
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Solch flimmern kommt eigentlich immer zustande, wenn man zb etwas jedes frame vor der Kamera platziert, man kann sowas verhindern indem man es einfach zum Child von der Kamera deklariert. | ||
Starfare: Worklog, Website (download) |
timmeTheOnly |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Flackert das immer wieder schwarz auf? Kann sein, dass du 2 Triangles übereinander hast. | ||
![]() |
NightPhoenix |
![]() Antworten mit Zitat ![]() |
---|---|---|
also nur das eine mesh flimmert?
dann bewegst du dein raumschiff sicherlich außerhalb des machbaren bereiches für die Gleitkommaberechnung... wenn du dein schiff bei einer realen skalierung auf x=10000000 oder y=-6840000000 hast dann ist die Genauigkeit der 3D Positionsdatenberechnung so ungenau dass dein Computer nicht weiß wo er es hinzeichnen soll, deswegen springt er jedes frame an eine andere position weil diese am genausten ist. Umso weiter du vom Koordinatenzentrum (0,0,0) weg komsmt umso ungenauer und flimmriger wirds. Das kann man mit neu skalieren auch nicht beheben wenn du im selben Maßstab bleiben willst. Du wirst dabei wohl nicht um ein ausgeglügeltes Verfahren herumkommen damit die ungenauigkeit entfällt... schau dir mal das "Octree Verfahren" an. Is schon kompliziert aber ne andere Wahl hast du nicht, höchstens Alternativen zu Octree, welche aber nicht wirklich einfach sind. MfG. |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
die einfachste variante ist das raumschiff garnicht zu bewegen sondern bei 0,0,0 zu halten und das universum drum herum zu bewegen -> ist man immer im genauen bereich | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
hm, hast du das mesh 2mal geladen, einmal mit und einmal ohne texture? | ||
between angels and insects |
![]() |
Blackprogger |
![]() Antworten mit Zitat ![]() |
---|---|---|
@Zap: Ich verstehe nicht ganz was du meinst.
@timmeTheOnly: Nein es flackert in der gleichen Farbe wie das Mesh auf. @NightPhoenix: Also das das Bild zu weit weg ist bezweifle ich. Ich habe hier mal ein Bild gemacht: und das hier sind die einzigsten Codestellen, wo ich das Raumschiff "bearbeite": Code: [AUSKLAPPEN] ;-----------Raumschiff--------- Raumschiff=CreateCube() ScaleEntity Raumschiff,5,5,5 (...) ;---------Hauptschleife---------- (...) ;---------------3DMauspunkt------------------- If CameraPick(cam,MausX,MausY) Then PositionEntity Maus3D,PickedX(),PickedY(),PickedZ() EndIf ;------------Objekt nach Maus ausrichten und bewegen---------------------- Ox#=EntityX#(Raumschiff)-EntityX#(Maus3D) Oy#=EntityY#(Raumschiff)-EntityY#(Maus3D) Oz#=EntityZ#(Raumschiff)-EntityZ#(Maus3D) Opitch#=VectorPitch#(Ox#,Oy#,Oz#) Oyaw#=VectorYaw#(Ox#,Oy#,Oz#) RotateEntity Raumschiff,0,Oyaw#,0 RaumschiffSpeed=(EntityDistance(Raumschiff,Maus3D)/10) * (-1) MoveEntity Raumschiff,0,0,RaumschiffSpeed UpdateWorld RenderWorld Text 0,0, "EntityX Raumschiff: " + EntityX(Raumschiff) Text 0,20,"EntityY Raumschiff: " + EntityY(Raumschiff) Text 0,40,"EntityZ Raumschiff: " + EntityZ(Raumschiff) Flip 0 Delay 10 Wend End Ich bin mir nicht sicher, aber könnte es auch an meiner Drehfunktion liegen, womit ich das Raumschiff drehe? @Dreamora: Hmmm, das hört sich zwar kompliziert aber aufwendig und machbar an. Aber ich vermute mal, dass es an der Framezahl liegt. Ich werde demnächst einen "Framestopper" einbauen, so dass das Spiel auf jeden PC gleichschnell läuft. Zudem kann ich ja dann sehen, ob es an der Framanzahl lag/liegt oder nicht. (Zur Info, meine PC-Daten: Intel Penitium 4 mit 2,8 Ghz, 512 MB RAM und 128 MB Grafikkarte (Onboard)) @Jan_: Nein ich habe das Mesh nur einmal geladen. Ich habe wegen Exportproblemen (liegt irgendwie an Blender) das Mesh noch nicht texturiert. ~edit~: Auf dem Bild ist nicht zu sehen wie es flimmert. (Danke schonmal für eure Antworten und Hilfsbereitschaft ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group