My Project
ParaXStaticModelRenderPass.h
1 #pragma once
2 #include "ParaXMaterial.h"
3 
4 namespace ParaEngine
5 {
6  class CParaXStaticModel;
7  struct SceneState;
8  class CParameterBlock;
9 
11  {
12  public:
15  uint16 indexStart, indexCount;
16  union {
17  struct {
18  uint16 vertexStart, vertexEnd;
19  };
22  };
23  CParaXMaterial m_material;
24 
25  int order;
26  int geoset;
27  float p;
28  int16 blendmode;
29 
30  // for programmable pipeline
31  bool init_FX(CParaXStaticModel *m_, SceneState* pSceneState, CParameterBlock* pMaterialParams = NULL);
32  void deinit_FX(SceneState* pSceneState);
33 
34  bool operator< (const ParaXStaticModelRenderPass &m) const
35  {
36  //return !trans;
37  if (order < m.order) return true;
38  else if (order > m.order) return false;
39  else return blendmode == m.blendmode ? (p < m.p) : blendmode < m.blendmode;
40  }
41 
42  inline bool operator == (const ParaXStaticModelRenderPass &m) const
43  {
44  return m_material.m_pTexture1 == m.m_material.m_pTexture1 && blendmode == m.blendmode;
45  }
46  };
47 }
It&#39;s used as parameter to Draw method of each scene object.
Definition: SceneState.h:284
asset_ptr< TextureEntity > m_pTexture1
first texture.
Definition: ParaXMaterial.h:57
different physics engine has different winding order.
Definition: EventBinding.h:32
Definition: ParaXStaticModelRenderPass.h:10
the material information for ParaX file
Definition: ParaXMaterial.h:9
Desc: Class for loading and rendering file-based meshes.
Definition: ParaXStaticModel.h:26
int32 m_nIndexStart
if indexStart is 0xffff, then m_nIndexStart stores the index offset in 32 bits.
Definition: ParaXStaticModelRenderPass.h:21
uint16 indexStart
Fix LiXizhi 2010.1.14.
Definition: ParaXStaticModelRenderPass.h:15
a list of CParameter{name, value} pairs of anything.
Definition: ParameterBlock.h:108