📄 water.h
字号:
//--------------------------------------------------
// Desc: 类似WOW的水特效
// Date: 2007.3.12 /update
// Author: artsylee
//
// Copyright (C) 2007 artsylee
//
//--------------------------------------------------
#ifndef _WATER_
#define _WATER_
#include <d3d9.h>
#include <d3dx9.h>
#include "GNode.h"
enum WaterType
{
WT_HIGHLIGHT,
WT_NORMAL,
WT_INVALID,
};
struct WaterVertex
{
float x, y, z;
float nx, ny, nz;
float tu, tv;
enum FVF
{
FVF_Flags = D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1
};
};
struct HighLightVertex
{
float x, y, z;
float nx, ny, nz;
enum FVF
{
FVF_Flags = D3DFVF_XYZ | D3DFVF_NORMAL
};
};
class CWater : public GNode
{
public:
CWater();
~CWater();
void InitWater();
void Render();
private:
void FillWaterVertex(void);
void FillHighLightVertex(void);
private:
float m_fWidth;
float m_fLength;
int m_NumXWrap;
int m_NumYWrap;
WaterType m_eWaterType;
DWORD m_hTex[30];
WaterVertex m_WaterVertices[4];
DWORD m_LastUpdate;
int m_CurFrame;
// 高光网格-------------------------------
LPDIRECT3DVERTEXBUFFER9 m_pHighLightVB;
LPDIRECT3DINDEXBUFFER9 m_pHighLightIB;
D3DMATERIAL9 m_HighLightMaterial;
int m_nXTile;
int m_nYTile;
int m_nVertices;
int m_nIndices;
float m_fTileSize;
// 高光网格-------------------------------
};
#endif // _WATER_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -