Code archives/3D Graphics - Mesh/SkyPanorama loading code
This code has been declared by its author to be Public Domain code.
Download source code
| I've adapted Mark's skybox code to load the output from Fredborg's SkyPanorama. http://www.frecle.net/cloud/skypanorama.zip Please note that LoadAnimTexture needs the clamp_u and clanp_v flags setting otherwise the 'join' line shows. |
;------------------ Function LoadSkyStrip(file$) ;------------------ tex = LoadAnimTexture(file$,1+8+16+32,512,512,0,6) hEntSkyBox=CreateMesh() b = CreateBrush() BrushTexture b,tex,0 ;back face b = CreateBrush() BrushTexture b,tex,0 s=CreateSurface(hEntSkyBox,b ) AddVertex s,+1,+1,+1,0,0:AddVertex s,-1,+1,+1,1,0 AddVertex s,-1,-1,+1,1,1:AddVertex s,+1,-1,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;left face b = CreateBrush() BrushTexture b,tex,1 s=CreateSurface(hEntSkyBox,b ) AddVertex s,-1,+1,+1,0,0:AddVertex s,-1,+1,-1,1,0 AddVertex s,-1,-1,-1,1,1:AddVertex s,-1,-1,+1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;front face b = CreateBrush() BrushTexture b,tex,2 s=CreateSurface(hEntSkyBox,b ) AddVertex s,-1,+1,-1,0,0:AddVertex s,+1,+1,-1,1,0 AddVertex s,+1,-1,-1,1,1:AddVertex s,-1,-1,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;right face b = CreateBrush() BrushTexture b,tex,3 s=CreateSurface(hEntSkyBox,b ) AddVertex s,+1,+1,-1,0,0:AddVertex s,+1,+1,+1,1,0 AddVertex s,+1,-1,+1,1,1:AddVertex s,+1,-1,-1,0,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;top face b = CreateBrush() BrushTexture b,tex,4 s=CreateSurface(hEntSkyBox,b ) AddVertex s,-1,+1,+1,0,1:AddVertex s,+1,+1,+1,0,0 AddVertex s,+1,+1,-1,1,0:AddVertex s,-1,+1,-1,1,1 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ;bottom face b = CreateBrush() BrushTexture b,tex,5 s=CreateSurface(hEntSkyBox,b ) AddVertex s,-1,-1,-1,1,0:AddVertex s,+1,-1,-1,1,1 AddVertex s,+1,-1,+1,0,1:AddVertex s,-1,-1,+1,0,0 AddTriangle s,0,1,2:AddTriangle s,0,2,3 FreeBrush b ScaleMesh hEntSkyBox,3000,3000,3000 FlipMesh hEntSkyBox EntityFX hEntSkyBox,1+8 Return hEntSkyBox End Function |