#include <GeometryBlock.h>
|
| GeometryBlock (VClouds *vc, const float &Height, const Ogre::Radian &Alpha, const Ogre::Radian &Beta, const float &Radius, const Ogre::Radian &Phi, const int &Na, const int &Nb, const int &Nc, const int &A, const int &B, const int &C, const int &Position) |
| Constructor. More...
|
|
| ~GeometryBlock () |
| Destructor. More...
|
|
void | create () |
| Create. More...
|
|
void | remove () |
| Remove. More...
|
|
void | updateGeometry (Ogre::Camera *c, const Ogre::Vector3 &displacement, const Ogre::Vector3 &distance) |
| Update geometry. More...
|
|
const bool & | isCreated () const |
| Has been create() already called? More...
|
|
Ogre::MeshPtr | getMesh () |
| Get mesh. More...
|
|
Ogre::SubMesh * | getSubMesh () |
| Get sub mesh. More...
|
|
Ogre::Entity * | getEntity () |
| Get entity. More...
|
|
Ogre::HardwareVertexBufferSharedPtr & | getHardwareVertexBuffer () |
| Get hardware vertex buffer reference. More...
|
|
Ogre::HardwareIndexBufferSharedPtr & | getHardwareIndexBuffer () |
| Get hardware index buffer reference. More...
|
|
void | setWorldOffset (const Ogre::Vector2 &WorldOffset) |
| Set world offset. More...
|
|
const bool | isInFrustum (Ogre::Camera *c) const |
| Is the geometry block inside the camera frustum? More...
|
|
Definition at line 33 of file GeometryBlock.h.
◆ GeometryBlock()
SkyX::VClouds::GeometryBlock::GeometryBlock |
( |
VClouds * |
vc, |
|
|
const float & |
Height, |
|
|
const Ogre::Radian & |
Alpha, |
|
|
const Ogre::Radian & |
Beta, |
|
|
const float & |
Radius, |
|
|
const Ogre::Radian & |
Phi, |
|
|
const int & |
Na, |
|
|
const int & |
Nb, |
|
|
const int & |
Nc, |
|
|
const int & |
A, |
|
|
const int & |
B, |
|
|
const int & |
C, |
|
|
const int & |
Position |
|
) |
| |
Constructor.
- Parameters
-
vc | VClouds pointer |
Height | Field height (in woorld coordinates) |
Alpha | Alpha angle |
Beta | Beta angle |
Radius | Total radius |
Phi | Actimutal angle |
Na | Number of slices in A zone |
Nb | Number of slices in B zone |
Nc | Number of slices in C zone |
A | A radius |
B | B radius |
C | C radius |
Definition at line 30 of file GeometryBlock.cpp.
◆ ~GeometryBlock()
SkyX::VClouds::GeometryBlock::~GeometryBlock |
( |
| ) |
|
◆ _buildAABox()
const Ogre::AxisAlignedBox SkyX::VClouds::GeometryBlock::_buildAABox |
( |
const float & |
fd | ) |
const |
|
private |
Build axis aligned box.
- Parameters
-
fd | Falling distance (Positive values for falling geometry, negative for reverse falling geometry) |
Definition at line 117 of file GeometryBlock.cpp.
◆ _calculateDataSize()
void SkyX::VClouds::GeometryBlock::_calculateDataSize |
( |
| ) |
|
|
private |
◆ _createGeometry()
void SkyX::VClouds::GeometryBlock::_createGeometry |
( |
| ) |
|
|
private |
◆ _setVertexData()
void SkyX::VClouds::GeometryBlock::_setVertexData |
( |
const int & |
index, |
|
|
const Ogre::Vector3 & |
p, |
|
|
const float & |
o |
|
) |
| |
|
private |
Set vertex data.
- Parameters
-
index | Vertex index |
o | Slice opacity |
p | Position |
Definition at line 489 of file GeometryBlock.cpp.
◆ _updateGeometry()
void SkyX::VClouds::GeometryBlock::_updateGeometry |
( |
| ) |
|
|
private |
◆ _updateZoneASlice()
void SkyX::VClouds::GeometryBlock::_updateZoneASlice |
( |
const int & |
n | ) |
|
|
private |
◆ _updateZoneBSlice()
void SkyX::VClouds::GeometryBlock::_updateZoneBSlice |
( |
const int & |
n | ) |
|
|
private |
◆ _updateZoneCSlice()
void SkyX::VClouds::GeometryBlock::_updateZoneCSlice |
( |
const int & |
n | ) |
|
|
private |
◆ create()
void SkyX::VClouds::GeometryBlock::create |
( |
| ) |
|
◆ getEntity()
Ogre::Entity* SkyX::VClouds::GeometryBlock::getEntity |
( |
| ) |
|
|
inline |
◆ getHardwareIndexBuffer()
Ogre::HardwareIndexBufferSharedPtr& SkyX::VClouds::GeometryBlock::getHardwareIndexBuffer |
( |
| ) |
|
|
inline |
Get hardware index buffer reference.
- Returns
- Ogre::HardwareIndexBufferSharedPtr reference
Definition at line 131 of file GeometryBlock.h.
◆ getHardwareVertexBuffer()
Ogre::HardwareVertexBufferSharedPtr& SkyX::VClouds::GeometryBlock::getHardwareVertexBuffer |
( |
| ) |
|
|
inline |
Get hardware vertex buffer reference.
- Returns
- Ogre::HardwareVertexBufferSharedPtr reference
Definition at line 123 of file GeometryBlock.h.
◆ getMesh()
Ogre::MeshPtr SkyX::VClouds::GeometryBlock::getMesh |
( |
| ) |
|
|
inline |
◆ getSubMesh()
Ogre::SubMesh* SkyX::VClouds::GeometryBlock::getSubMesh |
( |
| ) |
|
|
inline |
◆ isCreated()
const bool& SkyX::VClouds::GeometryBlock::isCreated |
( |
| ) |
const |
|
inline |
Has been create() already called?
- Returns
- true if created() have been already called, false if not
Definition at line 91 of file GeometryBlock.h.
◆ isInFrustum()
const bool SkyX::VClouds::GeometryBlock::isInFrustum |
( |
Ogre::Camera * |
c | ) |
const |
Is the geometry block inside the camera frustum?
- Parameters
-
- Returns
- true if yes, false if not
Definition at line 554 of file GeometryBlock.cpp.
◆ remove()
void SkyX::VClouds::GeometryBlock::remove |
( |
| ) |
|
◆ setWorldOffset()
void SkyX::VClouds::GeometryBlock::setWorldOffset |
( |
const Ogre::Vector2 & |
WorldOffset | ) |
|
|
inline |
◆ updateGeometry()
void SkyX::VClouds::GeometryBlock::updateGeometry |
( |
Ogre::Camera * |
c, |
|
|
const Ogre::Vector3 & |
displacement, |
|
|
const Ogre::Vector3 & |
distance |
|
) |
| |
Update geometry.
- Parameters
-
c | Camera |
displacement | Current offset in world units per zone |
distance | Current camera to cloud field distance |
Definition at line 280 of file GeometryBlock.cpp.
◆ mA
float SkyX::VClouds::GeometryBlock::mA |
|
private |
◆ mAlpha
Ogre::Radian SkyX::VClouds::GeometryBlock::mAlpha |
|
private |
◆ mAlphaSin
float SkyX::VClouds::GeometryBlock::mAlphaSin |
|
private |
◆ mB
float SkyX::VClouds::GeometryBlock::mB |
|
private |
◆ mBeta
Ogre::Radian SkyX::VClouds::GeometryBlock::mBeta |
|
private |
◆ mBetaSin
float SkyX::VClouds::GeometryBlock::mBetaSin |
|
private |
◆ mC
float SkyX::VClouds::GeometryBlock::mC |
|
private |
◆ mCamera
Ogre::Camera* SkyX::VClouds::GeometryBlock::mCamera |
|
private |
◆ mCreated
bool SkyX::VClouds::GeometryBlock::mCreated |
|
private |
◆ mDisplacement
Ogre::Vector3 SkyX::VClouds::GeometryBlock::mDisplacement |
|
private |
◆ mDistance
Ogre::Vector3 SkyX::VClouds::GeometryBlock::mDistance |
|
private |
◆ mEntity
Ogre::Entity* SkyX::VClouds::GeometryBlock::mEntity |
|
private |
◆ mHeight
float SkyX::VClouds::GeometryBlock::mHeight |
|
private |
◆ mIndexBuffer
Ogre::HardwareIndexBufferSharedPtr SkyX::VClouds::GeometryBlock::mIndexBuffer |
|
private |
◆ mLastFallingDistance
float SkyX::VClouds::GeometryBlock::mLastFallingDistance |
|
private |
◆ mMesh
Ogre::MeshPtr SkyX::VClouds::GeometryBlock::mMesh |
|
private |
◆ mNa
int SkyX::VClouds::GeometryBlock::mNa |
|
private |
◆ mNb
int SkyX::VClouds::GeometryBlock::mNb |
|
private |
◆ mNc
int SkyX::VClouds::GeometryBlock::mNc |
|
private |
◆ mNumberOfTriangles
int SkyX::VClouds::GeometryBlock::mNumberOfTriangles |
|
private |
◆ mPhi
Ogre::Radian SkyX::VClouds::GeometryBlock::mPhi |
|
private |
◆ mPosition
int SkyX::VClouds::GeometryBlock::mPosition |
|
private |
◆ mRadius
float SkyX::VClouds::GeometryBlock::mRadius |
|
private |
◆ mSubMesh
Ogre::SubMesh* SkyX::VClouds::GeometryBlock::mSubMesh |
|
private |
◆ mV2Cos
Ogre::Vector2 SkyX::VClouds::GeometryBlock::mV2Cos |
|
private |
◆ mV2Sin
Ogre::Vector2 SkyX::VClouds::GeometryBlock::mV2Sin |
|
private |
◆ mVClouds
VClouds* SkyX::VClouds::GeometryBlock::mVClouds |
|
private |
◆ mVertexBuffer
Ogre::HardwareVertexBufferSharedPtr SkyX::VClouds::GeometryBlock::mVertexBuffer |
|
private |
◆ mVertexCount
int SkyX::VClouds::GeometryBlock::mVertexCount |
|
private |
◆ mVertices
VERTEX* SkyX::VClouds::GeometryBlock::mVertices |
|
private |
◆ mWorldOffset
Ogre::Vector2 SkyX::VClouds::GeometryBlock::mWorldOffset |
|
private |
The documentation for this class was generated from the following files: