|
Nebula
|
#include <instanceserverbase.h>
Inherits Core::RefCounted.
Inherited by Vulkan::VkInstanceServer.
Public Member Functions | |
| InstanceServerBase () | |
| constructor | |
| virtual | ~InstanceServerBase () |
| destructor | |
| virtual bool | Open () |
| open the InstanceServerBase | |
| virtual void | Close () |
| close the InstanceServerBase | |
| bool | IsOpen () const |
| return if InstanceServerBase is open | |
| void | BeginInstancing (const Ptr< Models::ModelNode > &modelNode, const SizeT multiplier, const Ptr< CoreGraphics::Shader > &shader, const IndexT &pass) |
| begins adding model instances to server | |
| void | AddInstance (const IndexT &instanceCode, const Ptr< Models::ModelNodeInstance > &instance) |
| adds instance to current model | |
| void | EndInstancing () |
| ends adding model instances | |
| virtual void | Render (IndexT frameIndex) |
| updates instance server (call from batch) | |
Public Member Functions inherited from Core::RefCounted | |
| RefCounted () | |
| constructor | |
| int | GetRefCount () const |
| get the current refcount | |
| void | AddRef () |
| increment refcount by one | |
| void | Release () |
| decrement refcount and destroy object if refcount is zero | |
| bool | IsInstanceOf (const Rtti &rtti) const |
| return true if this object is instance of given class | |
| bool | IsInstanceOf (const Util::String &className) const |
| return true if this object is instance of given class by string | |
| bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
| return true if this object is instance of given class by fourcc | |
| bool | IsA (const Rtti &rtti) const |
| return true if this object is instance of given class, or a derived class | |
| bool | IsA (const Util::String &rttiName) const |
| return true if this object is instance of given class, or a derived class, by string | |
| bool | IsA (const Util::FourCC &rttiFourCC) const |
| return true if this object is instance of given class, or a derived class, by fourcc | |
| const Util::String & | GetClassName () const |
| get the class name | |
| Util::FourCC | GetClassFourCC () const |
| get the class FourCC code | |
Protected Attributes | |
| IndexT | pass |
| Ptr< CoreGraphics::Shader > | shader |
| Ptr< Instancing::InstanceRenderer > | renderer |
| Ptr< Models::ModelNode > | modelNode |
| Util::Dictionary< IndexT, Util::Array< Ptr< Models::ModelNodeInstance > > > | instancesByCode |
| bool | isBeginInstancing |
| bool | isOpen |
| SizeT | multiplier |
Private Member Functions | |
| __DeclareSingleton (InstanceServerBase) | |
| __DeclareClass (InstanceServerBase) | |
Additional Inherited Members | |
Static Public Member Functions inherited from Core::RefCounted | |
| static void | DumpRefCountingLeaks () |
| dump refcounting leaks, call at end of application (NEBULA_DEBUG builds only!) | |
Protected Member Functions inherited from Core::RefCounted | |
| virtual | ~RefCounted () |
| destructor (called when refcount reaches zero) | |
| Base::InstanceServerBase::InstanceServerBase | ( | ) |
constructor
|
virtual |
destructor
|
private |
|
private |
| void Base::InstanceServerBase::AddInstance | ( | const IndexT & | instanceCode, |
| const Ptr< Models::ModelNodeInstance > & | instance ) |
adds instance to current model
Add model instances to list.
| void Base::InstanceServerBase::BeginInstancing | ( | const Ptr< Models::ModelNode > & | modelNode, |
| const SizeT | multiplier, | ||
| const Ptr< CoreGraphics::Shader > & | shader, | ||
| const IndexT & | pass ) |
begins adding model instances to server
Prepare to render model.
|
virtual |
close the InstanceServerBase
Reimplemented in Vulkan::VkInstanceServer.
| void Base::InstanceServerBase::EndInstancing | ( | ) |
ends adding model instances
End the instancing.
|
inline |
return if InstanceServerBase is open
|
virtual |
open the InstanceServerBase
Reimplemented in Vulkan::VkInstanceServer.
|
virtual |
updates instance server (call from batch)
Performs actual instanced rendering, override this in a subclass.
Reimplemented in Vulkan::VkInstanceServer.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |