CreateCamera() bringt eine "assertion failed!" Fehlermeldung

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
mbuettner
Beiträge: 88
Registriert: 14.05.2010 15:53
Computerausstattung: 3 GB RAM, Windows 7 32-Bit Home Premium
Wohnort: daheim
Kontaktdaten:

CreateCamera() bringt eine "assertion failed!" Fehlermeldung

Beitrag von mbuettner »

Hallo @all,

ich habe heute mal ein bisschen mit der 3D-Engine in PB 4.51 rumprobiert. Allerdings kommt eine Fehlermeldung bei der Funktion CreateCamera():
Bild
Hier noch der Code:

Code: Alles auswählen

If fullscreen = #False
  hWnd = OpenWindow(#GAME_WINDOW,0,0,800,800,"Mystery Park",#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_Maximize)
  If hWnd = 0
    MessageRequester(#Name,"Cannot initialize the game window!")
    End
  Else
    If OpenWindowedScreen(WindowID(#GAME_WINDOW),0,0,WindowWidth(#GAME_WINDOW),WindowHeight(#GAME_WINDOW),0,0,0) = 0
      MessageRequester(#Name,"Cannot initialize the screen!")
      End
    EndIf
    ExamineMouse()
    ExamineKeyboard()
    Add3DArchive("images",#PB_3DArchive_FileSystem)
    CreateMaterial(#MATERIAL,LoadTexture(0,"terrain.jpg"))
    CreateTerrain("map2.jpg",MaterialID(#MATERIAL),1,1,1,4)
    CreateCamera(0,5,5,100,100) ; Hier kommt der Fehler
    CameraLocate(0,5,5,TerrainHeight(5,5))
    Repeat
      Select WaitWindowEvent()
        Case #PB_Event_CloseWindow
          If EventWindow() = #GAME_WINDOW
            Quit = 1
          EndIf
      EndSelect
    Until Quit = 1
  EndIf
EndIf
Ist dieser Fehler normal oder bin ich zu doof für die 3D-Engine? Der Beispielcode ("terrain.pb") funktioniert auch.
Bild
Bild
Die täglich beförderte Datenmenge des Internets beträgt 415 Petabyte oder 445.602.856.960 Megabyte!
mbuettner
Beiträge: 88
Registriert: 14.05.2010 15:53
Computerausstattung: 3 GB RAM, Windows 7 32-Bit Home Premium
Wohnort: daheim
Kontaktdaten:

Re: CreateCamera() bringt eine "assertion failed!" Fehlermel

Beitrag von mbuettner »

Hat sich von selbst erledigt :iamwithstupid:
Jedenfalls ruckelt das jetzt ganz schön, und ich kann mich nicht bewegen. Weiß einer, weshalb?

Code: Alles auswählen

If fullscreen = #False
  hWnd = OpenWindow(#GAME_WINDOW,0,0,800,800,"********",#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_Maximize)
  If hWnd = 0
    MessageRequester(#Name,"Cannot initialize the game window!")
    End
  Else
    If OpenWindowedScreen(WindowID(#GAME_WINDOW),-5,0,WindowWidth(#GAME_WINDOW),WindowHeight(#GAME_WINDOW),1,0,0) = 0
      MessageRequester(#Name,"Cannot initialize the screen!")
      End
    EndIf
    ExamineMouse()
    ExamineKeyboard()
    Add3DArchive(GetPathPart(ProgramFilename())+"images\",#PB_3DArchive_FileSystem)
    CreateMaterial(#MATERIAL,LoadTexture(0,"terrain.jpg"))
    AddMaterialLayer(#MATERIAL, LoadTexture(1, "detail.jpg"), #PB_Material_Add)
    CreateTerrain("map2.jpg",MaterialID(#MATERIAL),1,1,1,4)
    CreateCamera(0,5,5,100,100)
    CameraLocate(0,5,5,TerrainHeight(5,5))
    CameraProjectionMode(0,#PB_Camera_Perspective)
    SkyDome("clouds.jpg",50)
    Repeat
      If KeyboardPushed(#PB_Key_A)
        KeyX = -#CameraSpeed 
      ElseIf KeyboardPushed(#PB_Key_D)
        KeyX = #CameraSpeed 
      Else
        KeyX = 0
      EndIf
                
      If KeyboardPushed(#PB_Key_W)
        KeyY = -#CameraSpeed 
      ElseIf KeyboardPushed(#PB_Key_S)
        KeyY = #CameraSpeed 
      Else
        KeyY = 0
      EndIf
      MouseX = -(MouseDeltaX()/10)*#CameraSpeed/2
      MouseY = -(MouseDeltaY()/10)*#CameraSpeed/2
      Height.f = TerrainHeight(CameraX(0), CameraZ(0))
      RotateCamera(0, MouseY, MouseX, RollZ, #PB_Relative)
      MoveCamera  (0, KeyX, -CameraY(0)+Height+8, KeyY)
      RenderWorld()
      FlipBuffers()
      Select WaitWindowEvent()
        Case #PB_Event_CloseWindow
          If EventWindow() = #GAME_WINDOW
            Quit = 1
          EndIf
      EndSelect
    Until Quit = 1
  EndIf
EndIf
Bild
Bild
Die täglich beförderte Datenmenge des Internets beträgt 415 Petabyte oder 445.602.856.960 Megabyte!
Antworten