OmegaEngine API  1.0.3
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events
Public Member Functions | Static Public Member Functions | Protected Member Functions | Package Functions | List of all members
OmegaEngine.Graphics.Renderables.VertexGroup Class Reference

A simple set of vertexes that can be rendered. More...

Inheritance diagram for OmegaEngine.Graphics.Renderables.VertexGroup:
OmegaEngine.Graphics.Renderables.PositionableRenderable OmegaEngine.Graphics.Renderables.Renderable OmegaEngine.IPositionableOffset OmegaEngine.EngineElement OmegaEngine.IResetable OmegaEngine.IPositionable

Public Member Functions

 VertexGroup (PrimitiveType primitiveType, PositionColored[] vertexes, short[] indexes=null)
 Creates a new colored vertex group More...
 
 VertexGroup (PrimitiveType primitiveType, PositionNormalColored[] vertexes, short[] indexes=null)
 Creates a new colored vertex group More...
 
 VertexGroup (PrimitiveType primitiveType, PositionTextured[] vertexes, short[] indexes, XMaterial material)
 Creates a new textured vertex group More...
 
 VertexGroup (PrimitiveType primitiveType, PositionNormalTextured[] vertexes, short[] indexes, XMaterial material)
 Creates a new textured vertex group More...
 
- Public Member Functions inherited from OmegaEngine.Graphics.Renderables.PositionableRenderable
void SetScale (float factor)
 Scales this PositionableRenderable symmetrically More...
 
bool IsVisible (Camera camera)
 Checks whether this object is visible at the moment (includes Frustum Culling and other filtering criteria). More...
 
virtual bool Intersects (Ray ray, out float distance)
 Determine whether this PositionableRenderable is intersected by a ray. More...
 
bool Intersects (Ray ray, out DoubleVector3 position)
 Determine whether this PositionableRenderable is intersected by a ray. More...
 
- Public Member Functions inherited from OmegaEngine.Graphics.Renderables.Renderable
override string ToString ()
 
- Public Member Functions inherited from OmegaEngine.EngineElement
void Dispose ()
 

Static Public Member Functions

static VertexGroup Quad (float size, ITextureProvider texture=null)
 Creates a new textured quad. More...
 

Protected Member Functions

override void OnEngineSet ()
 Hook that is calld when Engine is set for the first time.
 
override void OnDispose ()
 Hook that is called when the object needs to dispose its internal resources.
 
- Protected Member Functions inherited from OmegaEngine.Graphics.Renderables.PositionableRenderable
virtual void RecalcWorldTransform ()
 Called to generate/update transformation matrices and related values More...
 
void RenderHelper (Action render, XMaterial material, Camera camera, params LightSource[] lights)
 Provides an automatic rendering framework that handles things like setting textures, materials, lighting and shaders. More...
 
virtual bool IntersectsBounding (Ray ray)
 Determine whether PositionableRenderable.WorldBoundingBox and PositionableRenderable.WorldBoundingSphere (if defined) are intersected by a ray. More...
 
- Protected Member Functions inherited from OmegaEngine.Graphics.Renderables.Renderable
virtual void OnPreRender ()
 
void PrepareRender ()
 Should be called before rendering anything - usually called by base constructor More...
 
- Protected Member Functions inherited from OmegaEngine.EngineElement
void RegisterChild (EngineElement element, bool autoDispose=true)
 Registers a child EngineElement for automatic Engine setting and Dispose calling. More...
 
void UnregisterChild (EngineElement element)
 Unregisters a child EngineElement (opposite of RegisterChild). More...
 

Package Functions

override void Render (Camera camera, GetLights getLights=null)
 To be called when this object ist to be rendered.
Parameters
cameraSupplies information for the view transformation.
getLightsA delegate that will be called to get lighting information.

 

Additional Inherited Members

- Public Attributes inherited from OmegaEngine.Graphics.Renderables.PositionableRenderable
ICollection< ViewRequiredViews => _requiredViews
 A list of Views that must be rendered before this PositionableRenderable can be rendered More...
 
- Public Attributes inherited from OmegaEngine.EngineElement
bool IsEngineSet => _engine != null
 true if the Engine has been set. More...
 
- Protected Attributes inherited from OmegaEngine.Graphics.Renderables.PositionableRenderable
bool WorldTransformDirty = true
 Does the world transform need to be recalculated? More...
 
- Properties inherited from OmegaEngine.Graphics.Renderables.PositionableRenderable
bool Pickable [get, set]
 Shall this PositionableRenderable be pickable with the mouse? More...
 
ViewType RenderIn = true [get, set]
 In what kind of Views shall this body be rendered? More...
 
SurfaceEffect SurfaceEffect [get, set]
 What kinds of surface effects (e.g. lighting) to apply to this PositionableRenderable More...
 
SurfaceShader SurfaceShader [get, set]
 The SurfaceShader to apply to the surface of this PositionableRenderable More...
 
BillboardMode Billboard [get, set]
 How this PositionableRenderable shall be rotated towards the camera More...
 
Matrix PreTransform [get, set]
 A transformation matrix that is to be applied before the normal world transform occurs - useful for correcting off-center meshes More...
 
Vector3 Scale [get, set]
 Scaling to be performed before rendering More...
 
Quaternion Rotation [get, set]
 The body's rotation quaternion More...
 
DoubleVector3 Position [get, set]
 The body's position in world space More...
 
Matrix WorldTransform [get]
 The world transformation matrix for this entity More...
 
Matrix InverseWorldTransform [get]
 The world transformation matrix for this entity More...
 
double CurrentCameraDistance [get]
 The body's current distance to View.Camera calculated from IPositionableOffset.EffectivePosition More...
 
BoundingSphere BoundingSphere [get, set]
 A sphere that completely encompasses the body (in entity space, even before apply PreTransform). More...
 
BoundingSphere WorldBoundingSphere [get]
 A sphere that completely encompasses the body (in world space, used for culling tests). More...
 
bool DrawBoundingSphere [get, set]
 Shall the bounding sphere used to cull this object be drawn/visualized? (used for debugging) More...
 
BoundingBox BoundingBox [get, set]
 A axis-aligned box that completely encompasses the body (in entity space, even before apply PreTransform). More...
 
BoundingBox WorldBoundingBox [get]
 An axis-aligned box that completely encompasses the body (in world space, used for culling tests). More...
 
bool DrawBoundingBox [get, set]
 Shall the bounding box used to cull this object be drawn/visualized? (used for debugging) More...
 
- Properties inherited from OmegaEngine.Graphics.Renderables.Renderable
int RenderCount [get, set]
 How many times has this entity been rendered in this frame? More...
 
string Name [get, set]
 Text value to make it easier to identify a particular render entity More...
 
bool Visible [get, set]
 Shall the entity be rendered? More...
 
bool Wireframe = true [get, set]
 Shall this entity be drawn in wireframe-mode? (used for debugging) More...
 
float VisibilityDistance [get, set]
 The maximum distance from which the entity is visible - 0 for infinite More...
 
int Alpha [get, set]
 The level of transparency from 0 (solid) to 255 (invisible), OmegaEngine.EngineState.AlphaChannel, OmegaEngine.EngineState.BinaryAlphaChannel or OmegaEngine.EngineState.AdditivBlending More...
 
- Properties inherited from OmegaEngine.EngineElement
Engine Engine [get, set]
 The Engine instance used by this object. Must be set before using the object. May not be changed once it has been set! More...
 
bool IsDisposed [get, set]
 Indicates whether this object has been disposed and can therefore no longer be used. More...
 
- Properties inherited from OmegaEngine.IPositionableOffset
DoubleVector3 Offset [get, set]
 A value to be subtracted from IPositionable.Position in order gain IPositionableOffset.EffectivePosition More...
 
Vector3 EffectivePosition [get]
 The sum of IPositionable.Position and IPositionableOffset.EffectivePosition More...
 
- Properties inherited from OmegaEngine.IPositionable
DoubleVector3 Position [get, set]
 The object's position More...
 
- Events inherited from OmegaEngine.Graphics.Renderables.Renderable
Action PreRender
 Occurs once per frame before rendering the entity. Will not be executed if the entity is excluded by a culling test. More...
 

Detailed Description

A simple set of vertexes that can be rendered.

No culling, intersect testing, etc.. Use Model for that.

Constructor & Destructor Documentation

OmegaEngine.Graphics.Renderables.VertexGroup.VertexGroup ( PrimitiveType  primitiveType,
PositionColored[]  vertexes,
short[]  indexes = null 
)
inline

Creates a new colored vertex group

Parameters
primitiveTypeThe type of primitives to generate from the vertexes
vertexesAn array for vertexes with position and color information
indexesAn array of indexes for the index buffer; null for no indexes
OmegaEngine.Graphics.Renderables.VertexGroup.VertexGroup ( PrimitiveType  primitiveType,
PositionNormalColored[]  vertexes,
short[]  indexes = null 
)
inline

Creates a new colored vertex group

Parameters
primitiveTypeThe type of primitives to generate from the vertexes
vertexesAn array for vertexes with position and color information
indexesAn array of indexes for the index buffer; null for no indexes
OmegaEngine.Graphics.Renderables.VertexGroup.VertexGroup ( PrimitiveType  primitiveType,
PositionTextured[]  vertexes,
short[]  indexes,
XMaterial  material 
)
inline

Creates a new textured vertex group

Parameters
primitiveTypeThe type of primitives to generate from the vertexes
vertexesAn array for vertexes with position and texture information
indexesAn array of indexes for the index buffer; null for no indexes
materialThe material to use for rendering
OmegaEngine.Graphics.Renderables.VertexGroup.VertexGroup ( PrimitiveType  primitiveType,
PositionNormalTextured[]  vertexes,
short[]  indexes,
XMaterial  material 
)
inline

Creates a new textured vertex group

Parameters
primitiveTypeThe type of primitives to generate from the vertexes
vertexesAn array for vertexes with position and texture information
indexesAn array of indexes for the index buffer; null for no indexes
materialThe material to use for rendering

Member Function Documentation

static VertexGroup OmegaEngine.Graphics.Renderables.VertexGroup.Quad ( float  size,
ITextureProvider  texture = null 
)
inlinestatic

Creates a new textured quad.

Parameters
sizeThe length of a border of the quad.
textureThe texture to place on the vertex group; null for no texture.
Returns
The vertex group that was created.

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