x,y position vom cube oder gesammt 3d modelle

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Mathias-Kwiatkowski

Betreff: x,y position vom cube oder gesammt 3d modelle

BeitragMo, Nov 27, 2006 18:06
Antworten mit Zitat
Benutzer-Profile anzeigen
noch ein problem mit 3d Very Happy wie kann ich die x,y position angeben, also so wie beim text , z.b. text 1,1,txt$ dann ist der text auf pixel 1 und 1 bzw, da startet er
aber wenn ich es mit einem cube mache dann geht es nicht, der lässt sich also nicht um einen pixel bewegen, dieser springt direct 50 pixel oder so, also gibt es eine möglichkeit genaue x,y angaben zu machen?

mein erster test
Code: [AUSKLAPPEN]

Graphics3D 640,480,0,2
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight()
cube=CreateCube()
PositionEntity camera,0,0,0
RotateEntity light,90,0,0
PositionEntity cube,0,0,10
EntityPickMode cube,2
cube1=CreateCube()
EntityPickMode cube1,2
PositionEntity cube1,-5,0,15

While Not KeyDown(1)
   TurnEntity cube,.5,1,2
   TurnEntity cube1,.5,0,0
   mx=MouseX()
   my=MouseY()
   entity=CameraPick(camera,mx,my)
   If entity=0 Then EntityColor cube,255,255,255 : EntityColor cube1,255,255,255
 
 
  If entity=cube Then EntityColor cube,0,255,0
   If entity=cube1 Then EntityColor cube1,255,255,0
   RenderWorld
   If entity=0 Then Text 0,0,"Nicht ausgewählt"
   If entity<>0 Then Text 0,0,"Ausgewählt:"+entity
   Oval mx-5,my-5,10,10,1
   Flip
Wend
End


mein zweiter
Code: [AUSKLAPPEN]

Graphics3D 640,480,0,2
SetBuffer BackBuffer()
camera=CreateCamera()
light=CreateLight()
cube=CreateCube()
PositionEntity camera,0,0,0
RotateEntity light,90,0,0
PositionEntity cube,0,0,10
EntityPickMode cube,2
cube1=CreateCube()
EntityPickMode cube1,2
PositionEntity cube1,-5,0,15

While Not KeyDown(1)
   TurnEntity cube,.5,1,2
   TurnEntity cube1,.5,0,0
   mx=MouseX()
   my=MouseY()
   entity=CameraPick(camera,mx,my)
   If entity=0 Then EntityColor cube,255,255,255 : EntityColor cube1,255,255,255
 
 
  If entity=cube Then EntityColor cube,0,255,0
   If entity=cube1 Then EntityColor cube1,255,255,0
   RenderWorld
   If entity=0 Then Text 0,0,"Nicht ausgewählt"
   If entity<>0 Then Text 0,0,"Ausgewählt:"+entity
   Oval mx-5,my-5,10,10,1
   Flip
Wend
End

Pdd

BeitragMo, Nov 27, 2006 18:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm du setzt den Cube einfach um eine Floatwert nach rechts/links. Also statt 1 einfach 0.001 Razz
Lieber Apfel als Birne.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragMo, Nov 27, 2006 18:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Die halbe X-Bildschirmauflösung das Objekt oder die Kamera voneinander entfernen. Dann entspricht eine 3D-Welt-Koordinate ein Pixel auf dem Bildschirm.

Beachten das Objekt auch eine Tiefe haben, also sind Sprites am besten damit zu machen. Zudem muß das ganze parallel verlaufen, also zB RotateEntity camera,0,0,0:PositionEntity camera,0,0,-400:PositionEntity sprite,x,y,0 etc.

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group