All pastes #415163 Raw Edit

Anonymous

public text v1 · immutable
#415163 ·published 2007-03-29 15:45 UTC
rendered paste body
#include "Globals.h"

HWND GameHandle;

LPDIRECT3D9             g_pD3D       = NULL; // Used to create the D3DDevice
LPDIRECT3DDEVICE9       d3d_Device = NULL; // Our rendering device
LPDIRECT3DVERTEXBUFFER9 g_pVB        = NULL; // Buffer to hold vertices

DWORD starttime1=GetTickCount(), endtime1;

D3DXVECTOR3 g_Pos(0,20,180);
D3DXMATRIX g_ViewMatrix;
float g_SpeedForward = 0;
float g_SpeedStrafe = 0;
float g_Yaw = 0, g_Pitch = 0, g_Roll = 0;

LPDIRECT3DTEXTURE9      pTexture = NULL;  
LPDIRECT3DTEXTURE9      *pTextures = NULL;

// ----  Class Wall Member Functions  ---- //

Wall::Wall(float tl_x, float tl_y, float tl_z, DWORD tl_color, float tl_u, float tl_v,
       float tr_x, float tr_y, float tr_z, DWORD tr_color, float tr_u, float tr_v,
       float br_x, float br_y, float br_z, DWORD br_color, float br_u, float br_v,
       float bl_x, float bl_y, float bl_z, DWORD bl_color, float bl_u, float bl_v, int text)
{
    m_Verts[0].point = D3DXVECTOR3(tl_x, tl_y, tl_z);
    m_Verts[1].point = D3DXVECTOR3(tr_x, tr_y, tr_z);
    m_Verts[2].point = D3DXVECTOR3(br_x, br_y, br_z);
    m_Verts[3].point = D3DXVECTOR3(bl_x, bl_y, bl_z);

    m_Verts[0].uv    = D3DXVECTOR2(tl_u, tl_v);
    m_Verts[1].uv    = D3DXVECTOR2(tr_u, tr_v);
    m_Verts[2].uv    = D3DXVECTOR2(br_u, br_v);
    m_Verts[3].uv    = D3DXVECTOR2(bl_u, bl_v);

    m_Verts[0].color = tl_color;
    m_Verts[1].color = tr_color;
    m_Verts[2].color = br_color;
    m_Verts[3].color = bl_color;

    m_Indexes[0] = 0;
    m_Indexes[1] = 1;
    m_Indexes[2] = 3;
    m_Indexes[3] = 1;
    m_Indexes[4] = 2;
    m_Indexes[5] = 3;

	Texture=text;
}

Wall::Wall()
{
	// no code required
}

Cuboid::Cuboid(float cube_x, float cube_y, float cube_z,
			   float cube_l, float cube_w, float cube_h,
			   int text)
{	
	//Face 1 - Front
	m_Verts1[0].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[1].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[2].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[3].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));
	//Face 2 - back
	m_Verts1[4].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[5].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[6].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[7].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
	//Face 3 - Left
	m_Verts1[8].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[9].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[10].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[11].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));
	//Face 4 - Right
	m_Verts1[12].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[13].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[14].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[15].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));
	//Face 5 - Top
	m_Verts1[16].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[17].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[18].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[19].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y + (cube_w / 2), cube_z - (cube_h / 2));
	//Face 6 - Bottom
	m_Verts1[20].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[21].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z + (cube_h / 2));
    m_Verts1[22].point = D3DXVECTOR3(cube_x + (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));
    m_Verts1[23].point = D3DXVECTOR3(cube_x - (cube_l / 2),cube_y - (cube_w / 2), cube_z - (cube_h / 2));

	m_Verts1[0].uv = D3DXVECTOR2(0,0);
	m_Verts1[1].uv = D3DXVECTOR2(1,0);
	m_Verts1[2].uv = D3DXVECTOR2(1,1);
	m_Verts1[3].uv = D3DXVECTOR2(0,1);
	m_Verts1[4].uv = D3DXVECTOR2(0,0);
	m_Verts1[5].uv = D3DXVECTOR2(1,0);
	m_Verts1[6].uv = D3DXVECTOR2(1,1);
	m_Verts1[7].uv = D3DXVECTOR2(0,1);
	m_Verts1[8].uv = D3DXVECTOR2(0,0);
	m_Verts1[9].uv = D3DXVECTOR2(1,0);
	m_Verts1[10].uv = D3DXVECTOR2(1,1);
	m_Verts1[11].uv = D3DXVECTOR2(0,1);
	m_Verts1[12].uv = D3DXVECTOR2(0,0);
	m_Verts1[13].uv = D3DXVECTOR2(1,0);
	m_Verts1[14].uv = D3DXVECTOR2(1,1);
	m_Verts1[15].uv = D3DXVECTOR2(0,1);
	m_Verts1[16].uv = D3DXVECTOR2(0,0);
	m_Verts1[17].uv = D3DXVECTOR2(1,0);
	m_Verts1[18].uv = D3DXVECTOR2(1,1);
	m_Verts1[19].uv = D3DXVECTOR2(0,1);
	m_Verts1[20].uv = D3DXVECTOR2(0,0);
	m_Verts1[21].uv = D3DXVECTOR2(1,0);
	m_Verts1[22].uv = D3DXVECTOR2(1,1);
	m_Verts1[23].uv = D3DXVECTOR2(0,1);

	m_Verts1[0].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[1].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[2].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[3].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[4].color = D3DCOLOR_RGBA(0,255,255,255);
	m_Verts1[5].color = D3DCOLOR_RGBA(0,255,255,255);
	m_Verts1[6].color = D3DCOLOR_RGBA(0,255,255,255);
	m_Verts1[7].color = D3DCOLOR_RGBA(0,255,255,255);
	m_Verts1[8].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[9].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[10].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[11].color = D3DCOLOR_RGBA(255,100,255,255);
	m_Verts1[12].color = D3DCOLOR_RGBA(0,100,255,255);
	m_Verts1[13].color = D3DCOLOR_RGBA(0,100,255,255);
	m_Verts1[14].color = D3DCOLOR_RGBA(0,100,255,255);
	m_Verts1[15].color = D3DCOLOR_RGBA(0,100,255,255);
	m_Verts1[16].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[17].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[18].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[19].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[20].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[21].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[22].color = D3DCOLOR_RGBA(255,255,0,255);
	m_Verts1[23].color = D3DCOLOR_RGBA(255,255,0,255);


	//Front
	m_Indexes1[0] = 0;
    m_Indexes1[1] = 1;
    m_Indexes1[2] = 3;
    m_Indexes1[3] = 1;
    m_Indexes1[4] = 2;
    m_Indexes1[5] = 3;

	//Back
	m_Indexes1[6] = 4;
    m_Indexes1[7] = 5;
    m_Indexes1[8] = 7;
    m_Indexes1[9] = 5;
    m_Indexes1[10] = 6;
    m_Indexes1[11] = 7;

	//Left
	m_Indexes1[12] = 8;
    m_Indexes1[13] = 9;
    m_Indexes1[14] = 11;
    m_Indexes1[15] = 9;
    m_Indexes1[16] = 10;
    m_Indexes1[17] = 11;
	
	//Right
	m_Indexes1[18] = 12;
    m_Indexes1[19] = 13;
    m_Indexes1[20] = 15;
    m_Indexes1[21] = 13;
    m_Indexes1[22] = 14;
    m_Indexes1[23] = 15;

	//Top
	m_Indexes1[24] = 16;
    m_Indexes1[25] = 17;
    m_Indexes1[26] = 19;
    m_Indexes1[27] = 17;
    m_Indexes1[28] = 18;
    m_Indexes1[29] = 19;

	//Bottom
	m_Indexes1[30] = 20;
    m_Indexes1[31] = 21;
    m_Indexes1[32] = 23;
    m_Indexes1[33] = 21;
    m_Indexes1[34] = 22;
    m_Indexes1[35] = 23;

	Texture=text;
}

Cuboid::Cuboid()
{
	//blank
}

void Wall::Render()
{
    d3d_Device->DrawIndexedPrimitiveUP(D3DPT_TRIANGLELIST, 0, 4, 2, m_Indexes, D3DFMT_INDEX16, m_Verts, sizeof(CUSTOMVERTEX));
}

void Cuboid::Render()
{
    d3d_Device->DrawIndexedPrimitiveUP(D3DPT_TRIANGLELIST, 0, 36, 12, m_Indexes1, D3DFMT_INDEX16, m_Verts1, sizeof(CUSTOMVERTEX));
}

// ----  End ----  //

Wall *pQuad=NULL;
Cuboid *pCube=NULL;

int NumQuads=0;
int NumTextures=0;
int cubenumber=0;


int MouseCurrentX = 0;
int MouseCurrentY = 0;
int MouseOriginX = 0;
int MouseOriginY = 0;

DWORD starttime=GetTickCount(), endtime;