2 #ifdef USE_DIRECTX_RENDERER 3 #include "StaticMesh.h" 5 #include "ParaXStaticBase.h" 6 #include "ParaXStaticModelRenderPass.h" 37 virtual int GetPolyCount();
39 virtual int GetPhysicsCount();
41 virtual const char* DumpTextureUsage();
44 virtual int GetNextPhysicsGroupID(
int nPhysicsGroup = -1);
52 virtual TextureEntity* GetDefaultReplaceableTexture(
int ReplaceableTextureID);
59 virtual HRESULT Create(
RenderDevicePtr pd3dDevice,
void* buffer, DWORD nFileSize,
bool bCheckSecondUV =
false);
60 #ifdef USE_DIRECTX_RENDERER 61 virtual HRESULT Create(
RenderDevicePtr pd3dDevice, LPD3DXFILEDATA pFileData) {
return S_FALSE; };
65 virtual HRESULT Destroy();
68 virtual HRESULT InitDeviceObjects();
69 virtual HRESULT DeleteDeviceObjects();
72 virtual FLOAT ComputeBoundingSphere(
Vector3* vObjectCenter, FLOAT* fObjectRadius);
85 virtual HRESULT ClonePhysicsMesh(DWORD* pNumVertices,
Vector3 ** ppVerts, DWORD* pNumTriangles, WORD** ppIndices,
int* pnMeshPhysicsGroup =
nullptr,
int* pnTotalMeshGroupCount =
nullptr);
89 #ifdef USE_DIRECTX_RENDERER 90 virtual MeshHeader& GetMeshHeader(LPD3DXFILE pFileParser =
nullptr) {
return GetMeshHeader((
XFileParser*)
nullptr); };
94 #ifdef USE_DIRECTX_RENDERER 96 virtual bool GetMeshHeaderFromFile(
CParaFile& myFile, LPD3DXFILE pFileParser) {
return false; };
102 bool bDrawOpaqueSubsets =
true,
103 bool bDrawAlphaSubsets =
true,
float fAlphaFactor = 1.0f)
109 bool bDrawOpaqueSubsets =
true,
110 bool bDrawAlphaSubsets =
true,
float fAlphaFactor = 1.0f,
CParameterBlock* materialParams =
nullptr);
121 void BuildRenderBuffer();
122 void DrawRenderPass(
int i);
124 std::vector<ParaXStaticModelRenderPass> m_passes;
127 std::vector<mesh_vertex_normal> m_vertices;
129 std::vector<int16> m_indices;
136 #ifndef USE_DIRECTX_RENDERER Which DXT Compression to Use? Obviously, there are some trade-offs between the different formats whic...
Definition: TextureEntity.h:29
It's used as parameter to Draw method of each scene object.
Definition: SceneState.h:284
Helper structure analogue to aiScene.
Definition: XFileHelper.h:123
different physics engine has different winding order.
Definition: EventBinding.h:32
Definition: minilua.c:352
a very thin wrapper to DirectX device with a portable version of openGL implementation.
Definition: RenderDeviceDirectX.h:10
cross platform vertex/index buffer.
Definition: ParaVertexBuffer.h:18
Standard 3-dimensional vector.
Definition: ParaVector3.h:16
The XFileParser reads a XFile either in text or binary form and builds a temporary data structure out...
Definition: XFileParser.h:19
virtual int GetAttributeClassID()
attribute class ID should be identical, unless one knows how overriding rules work.
Definition: ParaXStaticModel.h:30
virtual const char * GetAttributeClassName()
a static string, describing the attribute class object's name
Definition: ParaXStaticModel.h:32
virtual const char * GetAttributeClassDescription()
a static string, describing the attribute class object
Definition: ParaXStaticModel.h:34
The ref_ptr class template stores a pointer to a dynamically allocated (AssetEntity|CRefCounted|BaseA...
Definition: PERefPtr.h:13
in OpenGL, there is no different between vertex and index buffer.
Definition: ParaVertexBuffer.h:78
Definition: effect_file.h:323
it presents a real or virtual file in ParaEngine.
Definition: ParaFile.h:31
Desc: Class for loading and rendering file-based meshes.
Definition: ParaXStaticModel.h:26
Definition: ParaXStaticBase.h:32
a list of CParameter{name, value} pairs of anything.
Definition: ParameterBlock.h:108