⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cue.h

📁 C++台球游戏代码
💻 H
字号:
#if !defined(AFX_CUE_H__F7B8B61C_6337_483D_A227_A28ECF766D93__INCLUDED_)
#define AFX_CUE_H__F7B8B61C_6337_483D_A227_A28ECF766D93__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "Base.h"
#define CUE_D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ|D3DFVF_NORMAL|D3DFVF_TEX1)

class CCue:public CBase
{
private:
	struct CUE_CUSTOMVERTEX
	{
		float x,y,z;
		float nx,ny,nz;
		float tu,tv;
	};

public:
	bool SetMaterial(D3DCOLORVALUE rgbaDiffuse,D3DCOLORVALUE rgbaAmbient,
		             D3DCOLORVALUE rgbaSpecular,D3DCOLORVALUE rgbaEmissive,float rPower);
	bool SetSideTexture(const char *szTextureFilePath);
	bool SetEndTexture(const char *szTextureFilePath);
	DWORD Render();
	CCue(LPDIRECT3DDEVICE8 pD3DDevice,float fHeight=1.0f,float fRadius=1.0f,int iSegments=20);
	virtual ~CCue();

	void TransformCue(D3DXVECTOR3 vecCuePosition,D3DXVECTOR3 vecCueDirection,int iMouseY);

private:
	bool UpdateVertices();
	bool CreateVertexBuffer();
	LPDIRECT3DDEVICE8 m_pD3DDevice;
	LPDIRECT3DVERTEXBUFFER8 m_pVertexBuffer;
	LPDIRECT3DTEXTURE8 m_pSideTexture;
	LPDIRECT3DTEXTURE8 m_pEndTexture;
	D3DMATERIAL8 m_matMaterial;

	float m_fHeight;
	float m_fRadius;
	int m_iSegments;

	DWORD m_dwNumOfVertices;
	DWORD m_dwNumOfSidePolygons;
	DWORD m_dwNumOfEndPolygons;
};
#endif // !defined(AFX_CUE_H__F7B8B61C_6337_483D_A227_A28ECF766D93__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -