raSystem  1.0 bata
raGPUParticleSystem Class Reference

#include <raGPUParticleSystem.h>

Inheritance diagram for raGPUParticleSystem:
raVisual raRender IRAMesh

Public Member Functions

 raGPUParticleSystem (raDirectX *dx, LPCSTR ParticleTexture="raGrafik\articlered.bmp", LPCSTR EffectFile="raEffects\articleEffect.fx", LPCSTR Technique="RenderParticle")
 
 raGPUParticleSystem (raDirectX *dx, raMaterial *ParticleMat)
 
 ~raGPUParticleSystem (void)
 
virtual bool CreateMesh ()
 
virtual bool DestroyMesh ()
 
virtual void SetupEffectVariables (const raMatrix &pView, const raMatrix &pProj, const raLight *pLight)
 
virtual bool RenderMesh (LPCSTR techniqueName="")
 
virtual bool Update (float fTime, float fRunTime)
 
virtual UINT GetNumSubsets ()
 
virtual SDKMESH_SUBSETGetSubset (UINT n)
 
virtual const D3D11_INPUT_ELEMENT_DESC * GetVertexLayout ()
 
virtual UINT GetNumElements ()
 
virtual ID3D11Buffer * GetVertexBuffer ()
 
virtual ID3D11Buffer * GetIndexBuffer ()
 
virtual UINT GetStrideSize ()
 
virtual DXGI_FORMAT GetIndexBufferFormat ()
 
virtual D3D11_PRIMITIVE_TOPOLOGY GetPrimitiveTopology (UINT n)
 
virtual bool Intersects (const raVector3 *pRayPos, const raVector3 *pRayDir, float *pDist)
 
- Public Member Functions inherited from raVisual
 raVisual (raSmartPointer< raDirectX > dx, bool bAlpha=false, bool bAdditive=false, bool bDepthDisable=false, D3D11_FILL_MODE fillMode=D3D11_FILL_SOLID, D3D11_CULL_MODE cullMode=D3D11_CULL_BACK)
 
 ~raVisual (void)
 
virtual bool CreateVertexLayout ()
 
virtual bool Create ()
 
virtual void Destroy ()
 
virtual void CreateEffectVariables ()
 
virtual void DestroyEffectVariables ()
 
virtual bool Render (UINT drawOrder, const raMatrix &pView, const raMatrix &pProj, const raLight *pLight, LPCSTR techniqueName="")
 
virtual void CreateMaterials ()
 
virtual void DestroyMaterials ()
 
bool SetState ()
 
bool RestoreState ()
 
virtual UINT GetNumMaterials ()
 
virtual raMaterialGetMaterial (UINT n)
 
void SetMaterial (UINT n, raMaterial *pMaterial)
 
void SetMaterial_1 (UINT n, raMaterial *pMaterial)
 
void SetTexture (UINT n, LPCSTR textureFileName)
 
void SetTexture_1 (UINT n, LPCSTR textureFileName)
 
virtual void SetVisible (bool bVisible)
 
virtual void SetDrawOder (UINT Value)
 
virtual void SetSelected (bool bSelected)
 
virtual const float GetBoundingsphereRadius ()
 
- Public Member Functions inherited from raRender
 raRender (raSmartPointer< raDirectX > dx, const raMatrix *mWorld=NULL, LPCSTR Name="Render")
 
virtual ~raRender (void)
 
LPCSTR GetName ()
 
void SetName (LPCSTR Name)
 
virtual void SetWorldMatrix (const raMatrix &value)
 
virtual raMatrixGetWorldMatrix (void)
 
- Public Member Functions inherited from IRAMesh
virtual ~IRAMesh ()
 

Static Public Attributes

static const int MAXPARTICLES = 100
 
- Static Public Attributes inherited from raVisual
static raString EffectfileName
 
static raString TechniqueName
 
static raString TexturedTechniqueName
 
static raString SkinnedEffectfileName
 
static raString SkinnedEffectfileName2
 
static raString SkinnedTechniqueName
 
static raString SkinnedTexturedTechniqueName
 

Protected Attributes

raCSIOBufferm_pCS
 
std::vector< PARTICLEVERTEXm_Particles
 
raMaterialm_mat
 
- Protected Attributes inherited from raVisual
UINT m_DrawOder
 
DWORD m_numMaterials
 
raMaterial ** m_pMaterials
 
raSmartPointer< raDirectXm_dx
 
ID3D11InputLayout * m_pVertexLayout
 
ID3D11BlendState * m_pAlphaBlendState
 
ID3D11BlendState * m_pOldAlphaBlendState
 
ID3D11DepthStencilState * m_pDepthStencilState
 
ID3D11DepthStencilState * m_pOldDepthStencilState
 
ID3D11RasterizerState * m_pRasterState
 
ID3D11RasterizerState * m_pOldRasterState
 
bool m_bVisible
 
bool m_bAlpha
 
bool m_bAdditive
 
float m_blendFactor [4]
 
UINT m_sampleMask
 
bool m_bDepthDisable
 
UINT m_StencilRef
 
D3D11_FILL_MODE m_FillMode
 
D3D11_CULL_MODE m_CullMode
 
DWORD m_numSubsets
 
SDKMESH_SUBSETm_pSubsets
 
- Protected Attributes inherited from raRender
raSmartPointer< raDirectXm_dx
 
raMatrix m_World
 
LPCSTR m_Name
 

Additional Inherited Members

- Public Attributes inherited from raVisual
raVector3 m_bbMin
 
raVector3 m_bbMax
 
- Protected Member Functions inherited from raVisual
bool CreateAlphaBlendState ()
 
bool CreateDepthStencilState ()
 
bool CreateRasterizerState ()
 

Detailed Description

Definition at line 3 of file raGPUParticleSystem.h.

Constructor & Destructor Documentation

◆ raGPUParticleSystem() [1/2]

raGPUParticleSystem::raGPUParticleSystem ( raDirectX dx,
LPCSTR  ParticleTexture = "raGrafik\\particlered.bmp",
LPCSTR  EffectFile = "raEffects\\ParticleEffect.fx",
LPCSTR  Technique = "RenderParticle" 
)

Definition at line 5 of file raGPUParticleSystem.cpp.

◆ raGPUParticleSystem() [2/2]

raGPUParticleSystem::raGPUParticleSystem ( raDirectX dx,
raMaterial ParticleMat 
)

Definition at line 12 of file raGPUParticleSystem.cpp.

◆ ~raGPUParticleSystem()

raGPUParticleSystem::~raGPUParticleSystem ( void  )
inline

Definition at line 14 of file raGPUParticleSystem.h.

Member Function Documentation

◆ CreateMesh()

virtual bool raGPUParticleSystem::CreateMesh ( void  )
inlinevirtual

Implements IRAMesh.

Definition at line 16 of file raGPUParticleSystem.h.

◆ DestroyMesh()

virtual bool raGPUParticleSystem::DestroyMesh ( )
inlinevirtual

Implements IRAMesh.

Definition at line 17 of file raGPUParticleSystem.h.

◆ GetIndexBuffer()

virtual ID3D11Buffer* raGPUParticleSystem::GetIndexBuffer ( )
inlinevirtual

Implements IRAMesh.

Definition at line 37 of file raGPUParticleSystem.h.

◆ GetIndexBufferFormat()

virtual DXGI_FORMAT raGPUParticleSystem::GetIndexBufferFormat ( )
inlinevirtual

Reimplemented from raVisual.

Definition at line 40 of file raGPUParticleSystem.h.

◆ GetNumElements()

virtual UINT raGPUParticleSystem::GetNumElements ( )
inlinevirtual

Reimplemented from raVisual.

Definition at line 34 of file raGPUParticleSystem.h.

◆ GetNumSubsets()

virtual UINT raGPUParticleSystem::GetNumSubsets ( )
inlinevirtual

Implements IRAMesh.

Definition at line 30 of file raGPUParticleSystem.h.

◆ GetPrimitiveTopology()

virtual D3D11_PRIMITIVE_TOPOLOGY raGPUParticleSystem::GetPrimitiveTopology ( UINT  n)
inlinevirtual

Implements IRAMesh.

Definition at line 41 of file raGPUParticleSystem.h.

◆ GetStrideSize()

virtual UINT raGPUParticleSystem::GetStrideSize ( )
inlinevirtual

Reimplemented from raVisual.

Definition at line 38 of file raGPUParticleSystem.h.

◆ GetSubset()

virtual SDKMESH_SUBSET* raGPUParticleSystem::GetSubset ( UINT  n)
inlinevirtual

Implements IRAMesh.

Definition at line 31 of file raGPUParticleSystem.h.

◆ GetVertexBuffer()

virtual ID3D11Buffer* raGPUParticleSystem::GetVertexBuffer ( )
inlinevirtual

Implements IRAMesh.

Definition at line 36 of file raGPUParticleSystem.h.

◆ GetVertexLayout()

virtual const D3D11_INPUT_ELEMENT_DESC* raGPUParticleSystem::GetVertexLayout ( )
inlinevirtual

Reimplemented from raVisual.

Definition at line 33 of file raGPUParticleSystem.h.

◆ Intersects()

virtual bool raGPUParticleSystem::Intersects ( const raVector3 pRayPos,
const raVector3 pRayDir,
float *  pDist 
)
inlinevirtual

Reimplemented from raRender.

Definition at line 47 of file raGPUParticleSystem.h.

◆ RenderMesh()

bool raGPUParticleSystem::RenderMesh ( LPCSTR  techniqueName = "")
virtual

Implements IRAMesh.

Definition at line 50 of file raGPUParticleSystem.cpp.

◆ SetupEffectVariables()

void raGPUParticleSystem::SetupEffectVariables ( const raMatrix pView,
const raMatrix pProj,
const raLight pLight 
)
virtual

Reimplemented from raVisual.

Definition at line 37 of file raGPUParticleSystem.cpp.

◆ Update()

virtual bool raGPUParticleSystem::Update ( float  fTime,
float  fRunTime 
)
inlinevirtual

Reimplemented from raRender.

Definition at line 24 of file raGPUParticleSystem.h.

Member Data Documentation

◆ m_mat

raMaterial* raGPUParticleSystem::m_mat
protected

Definition at line 53 of file raGPUParticleSystem.h.

◆ m_Particles

std::vector<PARTICLEVERTEX> raGPUParticleSystem::m_Particles
protected

Definition at line 52 of file raGPUParticleSystem.h.

◆ m_pCS

raCSIOBuffer* raGPUParticleSystem::m_pCS
protected

Definition at line 51 of file raGPUParticleSystem.h.

◆ MAXPARTICLES

const int raGPUParticleSystem::MAXPARTICLES = 100
static

Definition at line 6 of file raGPUParticleSystem.h.


The documentation for this class was generated from the following files: