Camera vue de dessus

Généralités sur la programmation 3D
Avatar de l’utilisateur
falsam
Messages : 7317
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Camera vue de dessus

Message par falsam »

Un cube en position 0, 0, 0
Une camera en position 0, 10, 0
La camera regarde en 0, 0, 0
La camera ne voit pas le cube.

Si je modifie légèrement la camera sur l'axe des z en position 0, 10, 0.01
La caméra voit le cube.

Etrange non ?

Voici le code

Code : Tout sélectionner

EnableExplicit

; DPI Résolution
Global drx.f, dry.f

drx = DesktopResolutionX()
dry = DesktopResolutionY()

InitEngine3D(#PB_Engine3D_DebugLog) : InitSprite() : InitKeyboard() : InitMouse()

ExamineDesktops()
OpenWindow(0, 0,0, DesktopWidth(0)*0.5,DesktopHeight(0)*0.5, "EntityCollide() - [Esc] quit",#PB_Window_ScreenCentered)
OpenWindowedScreen(WindowID(0), 0, 0, WindowWidth(0)*drx, WindowHeight(0)*dry, 0, 0, 0)

Add3DArchive(#PB_Compiler_Home + "examples\3D\Data\Textures", #PB_3DArchive_FileSystem)
Add3DArchive(GetCurrentDirectory(), #PB_3DArchive_FileSystem)

CreateCamera(0, 0, 0, 100, 100) 
CameraBackColor(0, RGB(222, 184, 135))

CreateLight(#PB_Any, RGB(255, 255, 255), 100, 100, 100)
AmbientColor(RGB(184, 184, 184))
WorldShadows(#PB_Shadow_Additive)

; Création d'un cube en position 0, 0, 0
CreateMaterial(0, TextureID(LoadTexture(#PB_Any, "caisse.png")))
CreateCube(0, 1)
CreateEntity(0, MeshID(0), MaterialID(0), 0, 0, 0)

Repeat
  While WindowEvent() : Wend
  ExamineKeyboard()
  ExamineMouse()
    
  MoveCamera(0, 0, 10, 0.01, #PB_Absolute)
  CameraLookAt(0, 0, 0, 0)
  
  RenderWorld()
  FlipBuffers()    
Until KeyboardReleased(#PB_Key_Escape) Or MouseButton(#PB_MouseButton_Middle)
Modifier

Code : Tout sélectionner

MoveCamera(0, 0, 10, 0.01, #PB_Absolute)
par

Code : Tout sélectionner

MoveCamera(0, 0, 10, 0, #PB_Absolute)
la camera ne voit plus le cube😲
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
Avatar de l’utilisateur
Naheulf
Messages : 193
Inscription : dim. 10/mars/2013 22:22
Localisation : France

Re: Camera vue de dessus

Message par Naheulf »

Si au lieu de

Code : Tout sélectionner

CameraLookAt()
tu fait

Code : Tout sélectionner

RotateCamera(0, -90, 0, 0, #PB_Absolute)
ça fonctionne.
Répondre