// Skybox.h
 // Header file containing definition of CSkyBox class

 #ifndef _SKYBOX_H
 #define _SKYBOX_H

 #include <d3d8.h>
 #include <d3dx8.h>

 typedef struct _tagSkyBoxVertex
 {
     float       x, y, z;
     float       tu, tv;
 } SKYBOXVERTEX;

 #define D3DFVF_SKYBOX (D3DFVF_XYZ | D3DFVF_TEX1 )

 class CSkyBox
 {
 public:

     LPDIRECT3DTEXTURE8      m_pTextureFront;
     LPDIRECT3DTEXTURE8      m_pTextureBack;
     LPDIRECT3DTEXTURE8      m_pTextureLeft;
     LPDIRECT3DTEXTURE8      m_pTextureRight;
     LPDIRECT3DTEXTURE8      m_pTextureTop;

     SKYBOXVERTEX            m_vSkyBox[30];
     LPDIRECT3DVERTEXBUFFER8 m_pVertexBuffer;

     CSkyBox();
     ~CSkyBox();

     HRESULT Initialise(LPDIRECT3DDEVICE8& pDevice);

     HRESULT Render(LPDIRECT3DDEVICE8& pDevice, LPDIRECT3DSURFACE8& pBackBuffer);

 };

 #endif // _SKYBOX_H