Code: Alles auswählen
Procedure view3D()
Dim mesharray.w(512,512,512)
For v=0 To 511
For h=0 To 511
z.w=layerarray(v,h)*512
mesharray(h,v,z)
Next
Next
If InitEngine3D()
Add3DArchive("Data\", #PB_3DArchive_FileSystem)
Ergebnis = CreateMesh(#Mesh1)
SetMeshData(#Mesh1, #PB_Mesh_Vertices, @mesharray(0,0,0),512*512*512)
CreateCamera(#Camera, 10,30,layer()\ bildausgabex,layer()\ bildausgabey )
CameraLocate(#Camera, 256,512,512)
CameraFOV(#Camera, 90)
CameraLookAt(#Camera, 0, 0, 0)
Else
MessageRequester("","nix 3d",#PB_MessageRequester_Ok)
EndIf
EndProcedure
Ich will ohne Quake arbeiten, und der Render soll später in einem Fenster dargestellt werden. Es ist kein Spiel, sondern ein 3d Preview von einem Terrain (16bit Höhenauflösung, deshalb mesh und nicht terrain).
Johannes