Nebula
|
#include <pickingserver.h>
Server responsible to handle id-based rendering.
(C) 2013-2018 Individual contributors, see AUTHORS file
Inherits Core::RefCounted.
Public Member Functions | |
PickingServer () | |
constructor | |
virtual | ~PickingServer () |
destructor | |
void | Open () |
open the PickingServer | |
void | Close () |
close the PickingServer | |
const bool | IsOpen () const |
returns true if server is open | |
void | Render () |
renders a frame | |
IndexT | FetchIndex (const Math::float2 &position) |
returns picking id from pixel | |
void | FetchSquare (const Math::rectangle< float > &rect, Util::Array< IndexT > &items, Util::Array< IndexT > &edgeItems) |
returns array of picking ids from a rectangle | |
float | FetchDepth (const Math::float2 &position) |
returns depth of position | |
Math::float4 | FetchNormal (const Math::float2 &position) |
returns normal of position | |
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 | |
Private Member Functions | |
__DeclareClass (PickingServer) | |
__DeclareSingleton (PickingServer) | |
Private Attributes | |
bool | isOpen |
IndexT | frameIndex |
Ptr< Frame::FrameScript > | frameShader |
Ptr< CoreGraphics::Texture > | pickingBuffer |
Ptr< CoreGraphics::Texture > | depthBuffer |
Ptr< CoreGraphics::Texture > | normalBuffer |
Ptr< Graphics::CameraEntity > | pickingCamera |
Ptr< Graphics::View > | pickingView |
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) | |
Picking::PickingServer::PickingServer | ( | ) |
constructor
|
virtual |
destructor
|
private |
|
private |
void Picking::PickingServer::Close | ( | ) |
close the PickingServer
float Picking::PickingServer::FetchDepth | ( | const Math::float2 & | position | ) |
returns depth of position
IndexT Picking::PickingServer::FetchIndex | ( | const Math::float2 & | position | ) |
returns picking id from pixel
Math::float4 Picking::PickingServer::FetchNormal | ( | const Math::float2 & | position | ) |
returns normal of position
void Picking::PickingServer::FetchSquare | ( | const Math::rectangle< float > & | rect, |
Util::Array< IndexT > & | items, | ||
Util::Array< IndexT > & | edgeItems ) |
returns array of picking ids from a rectangle
|
inline |
returns true if server is open
void Picking::PickingServer::Open | ( | ) |
open the PickingServer
void Picking::PickingServer::Render | ( | ) |
renders a frame
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |