Seite 1 von 1

Entity ladet nicht

Verfasst: 22.04.2006 15:42
von Quaxi
Huhu nochmal, nun bin ich auf ein weiteres Problem gestossen.

Code: Alles auswählen

InitEngine3D() : InitSprite()
InitKeyboard() : InitMouse()

Enumeration
  #CAMERA
  #MESH_MAPDATA
  #MESH_MAP
  #TEXTURE_MAP
  #MATERIAL_MAP
EndEnumeration

OpenScreen(1280,1024,32,"Erste 3D Tests")
Add3DArchive("Data\", #PB_3DArchive_FileSystem)

AmbientColor(RGB(255,255,255))
SkyDome("Sky.jpg",10)

;LADE DIE MAP ###
LoadMesh(#MESH_MAPDATA, "map.mesh")
LoadTexture(#TEXTURE_MAP, "terrain_texture.jpg")
CreateMaterial(#MATERIAL_MAP, TextureID(#TEXTURE_MAP))
CreateEntity(#MESH_MAP, MeshID(#MESH_MAPDATA), MaterialID(#MATERIAL_MAP))
EntityLocate(#MESH_MAP,0,0,0)
;#################

CreateCamera(#CAMERA, 0,0,100,100)
CameraLocate(#CAMERA, 0, 0, 0)
Repeat
  ExamineKeyboard() : ExamineMouse()
  
  ;STEUERUNG######
  RotateCamera(#CAMERA, -MouseDeltaX(),0,0)
  RotateCamera(#CAMERA, 0,-MouseDeltaY(),0) 
  If KeyboardPushed(#PB_Key_Up) : MoveCamera(#CAMERA, 0,0,-10) : ElseIf KeyboardPushed(#PB_Key_Down) : MoveCamera(#CAMERA, 0,0,10) : EndIf
  If KeyboardPushed(#PB_Key_Left) : MoveCamera(#CAMERA, -10,0,0) : ElseIf KeyboardPushed(#PB_Key_Right) : MoveCamera(#CAMERA, 10,0,0) : EndIf
  ;################
  
  RenderWorld()
  
  StartDrawing(ScreenOutput())
    FrontColor(255,100,100) : DrawingMode(1) 
    Locate(0,0) : DrawText("Camera: X="+Str(CameraX(#CAMERA)) + " Y="+Str(CameraY(#CAMERA))+" Z="+Str(CameraZ(#CAMERA)))
    Locate(0,12) : DrawText("FPS="+StrF(Engine3DFrameRate(0), 1))
  StopDrawing()
  
  FlipBuffers()

Until KeyboardPushed(#PB_Key_Escape)

End
Der Debugger bircht hier ständig beim CreateEntity Befehl ab und schreibt "Specified Entity not initialized". Was könnte da schuld sein? Muss ich hier auch eine bestimmte Reihenfolge beachten? Die Mesh Datei selbst findet er 100% im angegebenem Ordner.

Verfasst: 22.04.2006 16:04
von grapy
Hi,

versuch doch mal ein anderes *.mesh.
Evtl. hat dieses ein defekt oder ist nicht kompatibel.
(Altes Ogre, Neues Ogre) PB3 oder PB4 beta?

grapy :mrgreen:

Verfasst: 22.04.2006 16:08
von Quaxi
Ich hab schon ein anderes .mesh Model probiert, leider mit dem selben Ergebnis.
Ich benutze noch PB 3.94.
Ich will eigentlich erst auf die 4.00 wechseln wenn sie Final ist.

Verfasst: 22.04.2006 16:16
von grapy
Bei mir ging Dein Code mit dem robot.mesh unter 3.94.
Leider weiß ich da keinen Rat mehr. :freak:

Verfasst: 22.04.2006 16:45
von Quaxi
Sodele, hab nun die aktuelle Beta von PB4 runtergeladen und meinen Code dementsprechend angepasst. Nun startet die Anwendung und ladet auch das Entity, allerdings ohne Textur... Die Textur ist eine 256x256 Pixel JPG Datei.

Code: Alles auswählen

InitEngine3D() : InitSprite()
InitKeyboard() : InitMouse()

Enumeration
  #CAMERA
  #MESH_MAP
  #ENTITY_MAP
  #TEXTURE_MAP
  #MATERIAL_MAP
EndEnumeration

OpenScreen(1280,1024,32,"Erste 3D Tests")
Add3DArchive("Data\", #PB_3DArchive_FileSystem)

SkyDome("Sky.jpg",10)

;LADE DIE MAP ###
LoadMesh(#MESH_MAP, "map01.mesh")
LoadTexture(#TEXTURE_MAP, "terrain_texture.jpg") : CreateMaterial(#MATERIAL_MAP, TextureID(#TEXTURE_MAP))
CreateEntity(#ENTITY_MAP, MeshID(#MESH_MAP), MaterialID(#MATERIAL_MAP))
EntityMaterial(#ENTITY_MAP, MaterialID(#MATERIAL_MAP))
EntityLocate(#ENTITY_MAP,0,0,0)
;#################

;Create Camera ###
CreateCamera(#CAMERA, 0,0,100,100)
CameraLocate(#CAMERA, 0, 100, 100)
;#################

Repeat
  ExamineKeyboard() : ExamineMouse()
  
  ;STEUERUNG ######
  RotateCamera(#CAMERA, -MouseDeltaX(),0,0)
  RotateCamera(#CAMERA, 0,-MouseDeltaY(),0) 
  If KeyboardPushed(#PB_Key_Up) : MoveCamera(#CAMERA, 0,0,-5) : ElseIf KeyboardPushed(#PB_Key_Down) : MoveCamera(#CAMERA, 0,0,5) : EndIf
  If KeyboardPushed(#PB_Key_Left) : MoveCamera(#CAMERA, -5,0,0) : ElseIf KeyboardPushed(#PB_Key_Right) : MoveCamera(#CAMERA, 5,0,0) : EndIf
  ;#################
  
  RenderWorld()
  
  StartDrawing(ScreenOutput())
    FrontColor(RGB(255,50,50)) : DrawingMode(1) 
    DrawText(0,0,"Camera: X="+Str(CameraX(#CAMERA)) + " Y="+Str(CameraY(#CAMERA))+" Z="+Str(CameraZ(#CAMERA)))
    DrawText(0,12,"Entity: X="+Str(EntityX(#ENTITY_MAP))+" Y="+Str(EntityY(#ENTITY_MAP))+" Z="+Str(EntityZ(#ENTITY_MAP)))
    DrawText(0,24,"FPS="+StrF(Engine3DFrameRate(0), 1))
  StopDrawing()
  
  FlipBuffers()

Until KeyboardPushed(#PB_Key_Escape)

End

Verfasst: 23.04.2006 00:04
von grapy
Hallo,

bei mir gehts. Entweder hat das MESH keine UV-Koordinaten,
oder Dein JPG hat einen Schuss!? :roll:

Verfasst: 23.04.2006 10:49
von Quaxi
Hey danke. Ich hatte tatsächlich keine UV-Koordinaten. An die hab ich gar nicht gedacht....Pffff
Nun funktioniert es einwandfrei.