Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
83 lines
1.8 KiB
C++
83 lines
1.8 KiB
C++
// MeshObject.h: interface for the CMeshObject class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_MESHOBJECT_H__6734D99C_DC1E_4886_B686_DB6FF091A3E8__INCLUDED_)
|
|
#define AFX_MESHOBJECT_H__6734D99C_DC1E_4886_B686_DB6FF091A3E8__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include <Vertex.h>
|
|
#include <List.h>
|
|
#include "SceneException.h"
|
|
#include <texture.h>
|
|
#include <3DMath.h>
|
|
|
|
|
|
class CMeshObject
|
|
{
|
|
static LPDIRECT3DDEVICE8 m_pd3dDevice;
|
|
public:
|
|
void MeshReload();
|
|
char m_strMeshName[256];
|
|
void ConvertTree();
|
|
void ConvertDetail();
|
|
void TextureLoad();
|
|
void Optimize();
|
|
void ConvertMulti();
|
|
void ConvertNormal();
|
|
|
|
void Save(char *strFilename);
|
|
void SetShader(DWORD Shader){m_dwShader=Shader;};
|
|
DWORD m_dwShader;
|
|
DWORD m_dwCustomizeShader;
|
|
|
|
bool m_isAlreadyLock;
|
|
vector3 m_MaxBox,m_MinBox;
|
|
bool m_bCompleteMesh;
|
|
void CopyBuffer();
|
|
void AllUnlockBuffer();
|
|
void AllLockBuffer();
|
|
|
|
int m_nTotalVertex;
|
|
int m_nTotalIndices;
|
|
|
|
int m_iMethod;
|
|
|
|
|
|
List<LPDIRECT3DVERTEXBUFFER8> m_pVertexBuffer;
|
|
List<LPDIRECT3DINDEXBUFFER8> m_pIndicesBuffer;
|
|
List<CTexture*> m_pMat;
|
|
List<CTexture*> m_pGlare;
|
|
|
|
List<CTexture*> m_pDetailMap;
|
|
|
|
List<CTexture*> m_pBumpTexture;
|
|
List<DWORD> m_pMatRef;
|
|
|
|
|
|
List<WORD *> m_pIndices;
|
|
List<void *> m_pVertex;
|
|
|
|
List<long> m_nVertex;
|
|
List<long> m_nIndices;
|
|
|
|
bool m_bRender;
|
|
|
|
long GetObjectCount(){return m_nVertex.num;};
|
|
void RenderBox(LPDIRECT3DDEVICE8 pd3dDevice);
|
|
void Render(LPDIRECT3DDEVICE8 pd3dDevice);
|
|
void RenderGlare(LPDIRECT3DDEVICE8 pd3dDevice);
|
|
|
|
void CalcBox();
|
|
void Load(char *strFilename);
|
|
void SaveConvertMesh(char *strFilename,int iMethod);
|
|
|
|
CMeshObject();
|
|
virtual ~CMeshObject();
|
|
};
|
|
|
|
#endif // !defined(AFX_MESHOBJECT_H__6734D99C_DC1E_4886_B686_DB6FF091A3E8__INCLUDED_)
|