|
| SLKeyframeCamera (SLstring name="Camera") |
|
virtual void | drawMesh (SLSceneView *sv) |
| SLKeyframeCamera::drawMeshes draws the cameras frustum lines. More...
|
|
void | setDrawColor (SLCol4f color=SLCol4f::WHITE *0.7f) |
| SLKeyframeCamera::setDrawColor specify which color should be use. More...
|
|
bool | renderBackground () |
|
bool | allowAsActiveCam () |
|
| SLCamera (const SLstring &name="Camera") |
| Construct a new SLCamera::SLCamera object. More...
|
|
| ~SLCamera () override |
|
void | statsRec (SLNodeStats &stats) override |
| SLCamera::statsRec updates the statistic parameters. More...
|
|
virtual SLbool | camUpdate (SLSceneView *sv, SLfloat timeMS) |
|
void | preShade (SLRay *ray) |
|
void | calcMinMax (SLVec3f &minV, SLVec3f &maxV) const |
|
void | buildAABB (SLAABBox &aabb, const SLMat4f &wmNode) |
|
SLVec2f | frustumSizeAtDistance (SLfloat distance) |
| Calculate and return frustum size at distance to camera center. More...
|
|
SLbool | onMouseDown (SLMouseButton button, SLint x, SLint y, SLKey mod) override |
| Gets called whenever a mouse button gets pressed. More...
|
|
SLbool | onMouseMove (SLMouseButton button, SLint x, SLint y, SLKey mod) override |
| Gets called whenever the mouse is moved. More...
|
|
SLbool | onMouseUp (SLMouseButton button, SLint x, SLint y, SLKey mod) override |
| Gets called whenever the mouse button is released. More...
|
|
SLbool | onMouseWheel (SLint delta, SLKey mod) override |
|
SLbool | onTouch2Down (SLint x1, SLint y1, SLint x2, SLint y2) override |
|
SLbool | onTouch2Move (SLint x1, SLint y1, SLint x2, SLint y2) override |
|
SLbool | onTouch2Up (SLint x1, SLint y1, SLint x2, SLint y2) override |
|
SLbool | onKeyPress (SLKey key, SLKey mod) override |
|
SLbool | onKeyRelease (SLKey key, SLKey mod) override |
|
void | eyeToPixelRay (SLfloat x, SLfloat y, SLRay *ray) |
| eyeToPixelRay returns the a ray from the eye to the center of a pixel. More...
|
|
void | UVWFrame (SLVec3f &EYE, SLVec3f &U, SLVec3f &V, SLVec3f &W) |
|
SLVec2f | projectWorldToNDC (const SLVec4f &worldPos) const |
| Project a world position into screen coordinates. More...
|
|
SLVec3f | trackballVec (SLint x, SLint y) const |
| Returns a vector from the window center to a virtual trackball at [x,y]. More...
|
|
SLbool | isInFrustum (SLAABBox *aabb) |
| SLCamera::isInFrustum does a simple and fast frustum culling test for AABBs. More...
|
|
void | passToUniforms (SLGLProgram *program) |
| Pass camera parameters to the uniform variables. More...
|
|
void | setViewport (SLSceneView *sv, SLEyeType eye) |
| Sets the viewport transform depending on the projection. More...
|
|
void | setProjection (SLSceneView *sv, SLEyeType eye) |
|
void | setView (SLSceneView *sv, SLEyeType eye) |
|
void | setFrustumPlanes () |
| SLCamera::setFrustumPlanes set the 6 plane from the view frustum. More...
|
|
void | projType (SLProjType p) |
|
void | fov (const SLfloat fov) |
| vertical field of view More...
|
|
void | camAnim (SLCamAnim ca) |
|
void | clipNear (const SLfloat cNear) |
|
void | clipFar (const SLfloat cFar) |
|
void | lookFrom (const SLVec3f &fromDir, const SLVec3f &upDir=SLVec3f::AXISY) |
| Sets the view to look from a direction towards the current focal point. More...
|
|
void | maxSpeed (const SLfloat ms) |
|
void | moveAccel (const SLfloat accel) |
|
void | brakeAccel (const SLfloat accel) |
|
void | drag (const SLfloat drag) |
|
void | focalDist (const SLfloat f) |
|
void | lensDiameter (const SLfloat d) |
|
void | lensSamples (SLuint x, SLuint y) |
|
void | stereoEyeSeparation (const SLfloat es) |
|
void | devRotLoc (SLDeviceRotation *devRot, SLDeviceLocation *devLoc) |
|
void | fogIsOn (const bool isOn) |
|
void | fogMode (const SLFogMode mode) |
|
void | fogDensity (const float density) |
|
void | onCamUpdateCB (function< void(SLSceneView *sv)> callbackFunc) |
|
const SLMat4f & | updateAndGetVM () const |
|
SLProjType | projType () const |
|
SLstring | projTypeStr () const |
|
SLfloat | unitScaling () const |
|
SLfloat | fovV () const |
| Vertical field of view. More...
|
|
SLfloat | fovH () const |
| Horizontal field of view. More...
|
|
SLRecti | viewport () const |
|
SLfloat | aspect () const |
|
SLfloat | clipNear () const |
|
SLfloat | clipFar () const |
|
SLCamAnim | camAnim () const |
|
SLstring | animationStr () const |
| SLCamera::animationStr() returns the animation enum as string. More...
|
|
SLfloat | stereoEyeSeparation () const |
|
SLint | stereoEye () const |
|
SLMat3f | stereoColorFilter () const |
|
SLfloat | lensDiameter () const |
|
SLRaySamples2D * | lensSamples () |
|
SLfloat | focalDist () const |
|
SLfloat | focalDistScrW () const |
|
SLfloat | focalDistScrH () const |
|
SLVec3f | focalPointWS () const |
|
SLVec3f | focalPointOS () const |
|
SLbool | fogIsOn () const |
|
SLFogMode | fogMode () const |
|
SLfloat | fogDensity () const |
|
SLfloat | fogDistStart () const |
|
SLfloat | fogDistEnd () const |
|
SLCol4f | fogColor () const |
|
SLfloat | trackballSize () const |
|
SLBackground & | background () |
|
SLfloat | maxSpeed () const |
|
SLfloat | moveAccel () const |
|
SLfloat | brakeAccel () const |
|
SLfloat | drag () const |
|
SLstring | toString () const |
| SLCamera::to_string returns important camera parameter as a string. More...
|
|
SLRectf & | selectRect () |
|
SLRectf & | deselectRect () |
|
void | updateEnuCorrRenu (SLSceneView *sv, const SLMat3f &enuRc, float &f, SLVec3f &enuOffsetPix) |
| Calculate and apply correction from finger x-y-rotation. More...
|
|
| SLNode (const SLstring &name="Node") |
| Construct a new SLNode::SLNode object. More...
|
|
| SLNode (SLMesh *mesh, const SLstring &name="Node") |
|
| SLNode (SLMesh *mesh, const SLVec3f &translation, const SLstring &name) |
|
| ~SLNode () override |
|
virtual void | cull3DRec (SLSceneView *sv) |
|
virtual void | cullChildren3D (SLSceneView *sv) |
| Initializer function to call SLNode::cull3DRec recursively. More...
|
|
virtual void | cull2DRec (SLSceneView *sv) |
|
virtual bool | hitRec (SLRay *ray) |
|
virtual SLNode * | copyRec () |
|
virtual SLAABBox & | updateAABBRec (SLbool updateAlsoAABBinOS) |
|
virtual void | dumpRec () |
|
void | setDrawBitsRec (SLuint bit, SLbool state) |
|
void | setPrimitiveTypeRec (SLGLPrimitiveType primitiveType) |
|
virtual void | addMesh (SLMesh *mesh) |
|
bool | removeMesh () |
| Returns true if a mesh was assigned and set it to nullptr. More...
|
|
bool | removeMesh (SLMesh *mesh) |
| Returns true if the passed mesh was assigned and sets it to nullptr. More...
|
|
SLint | numChildren () |
|
void | addChild (SLNode *child) |
|
bool | insertChild (SLNode *insertC, SLNode *afterC) |
|
void | deleteChildren () |
|
bool | deleteChild () |
|
bool | deleteChild (SLNode *child) |
|
bool | deleteChild (const SLstring &name) |
|
bool | removeChild (SLNode *child) |
| remove child from vector of children. Removes false if not found, else true. More...
|
|
template<typename T > |
T * | find (const SLstring &name="", SLbool findRecursive=true) |
|
template<typename T > |
T * | findChild (const SLstring &name="", SLbool findRecursive=true) |
|
template<typename T > |
deque< T * > | findChildren (const SLstring &name="", SLbool findRecursive=true, SLbool canContain=false) |
|
deque< SLNode * > | findChildren (const SLMesh *mesh, SLbool findRecursive=true) |
|
deque< SLNode * > | findChildren (SLuint drawbit, SLbool findRecursive=true) |
|
SLVec3f | translationOS () const |
|
SLVec3f | forwardOS () const |
|
SLVec3f | rightOS () const |
|
SLVec3f | upOS () const |
|
SLVec3f | axisXOS () const |
|
SLVec3f | axisYOS () const |
|
SLVec3f | axisZOS () const |
|
SLVec3f | translationWS () const |
|
SLVec3f | forwardWS () const |
|
SLVec3f | rightWS () const |
|
SLVec3f | upWS () const |
|
SLVec3f | axisXWS () const |
|
SLVec3f | axisYWS () const |
|
SLVec3f | axisZWS () const |
|
void | translation (const SLVec3f &pos, SLTransformSpace relativeTo=TS_parent) |
|
void | translation (SLfloat x, SLfloat y, SLfloat z, SLTransformSpace relativeTo=TS_parent) |
|
void | rotation (const SLQuat4f &rot, SLTransformSpace relativeTo=TS_parent) |
|
void | rotation (SLfloat angleDeg, const SLVec3f &axis, SLTransformSpace relativeTo=TS_parent) |
|
void | scaling (SLfloat s) |
|
void | scaling (SLfloat x, SLfloat y, SLfloat z) |
|
void | scaling (const SLVec3f &scaling) |
|
void | lookAt (SLfloat targetX, SLfloat targetY, SLfloat targetZ, SLfloat upX=0, SLfloat upY=1, SLfloat upZ=0, SLTransformSpace relativeTo=TS_world) |
|
void | lookAt (const SLVec3f &target, const SLVec3f &up=SLVec3f::AXISY, SLTransformSpace relativeTo=TS_world) |
|
void | translate (const SLVec3f &vec, SLTransformSpace relativeTo=TS_object) |
|
void | translate (SLfloat x, SLfloat y, SLfloat z, SLTransformSpace relativeTo=TS_object) |
|
void | rotate (const SLQuat4f &rot, SLTransformSpace relativeTo=TS_object) |
|
void | rotate (SLfloat angleDeg, const SLVec3f &axis, SLTransformSpace relativeTo=TS_object) |
|
void | rotate (SLfloat angleDeg, SLfloat x, SLfloat y, SLfloat z, SLTransformSpace relativeTo=TS_object) |
|
void | rotateAround (const SLVec3f &point, SLVec3f &axis, SLfloat angleDeg, SLTransformSpace relativeTo=TS_world) |
|
void | scale (SLfloat s) |
|
void | scale (SLfloat x, SLfloat y, SLfloat z) |
|
void | scale (const SLVec3f &scale) |
|
void | scaleToCenter (SLfloat maxDim) |
|
void | setInitialState () |
|
void | resetToInitialState () |
|
void | parent (SLNode *p) |
|
void | entityID (SLint entityID) |
|
void | om (const SLMat4f &mat) |
|
void | animation (SLAnimation *a) |
|
void | castsShadows (SLbool castsShadows) |
|
virtual void | needUpdate () |
|
void | needWMUpdate () |
|
void | needAABBUpdate () |
|
void | isSelected (bool isSelected) |
|
void | minLodCoverage (SLfloat minLodCoverage) |
|
void | levelForSM (SLubyte lfsm) |
|
void | onUpdateCB (function< void()> callbackFunc) |
|
SLNode * | parent () |
|
SLint | depth () const |
|
SLint | entityID () const |
|
const SLMat4f & | om () |
|
const SLMat4f & | initialOM () |
|
const SLMat4f & | updateAndGetWM () const |
|
const SLMat4f & | updateAndGetWMI () const |
|
SLDrawBits * | drawBits () |
|
SLbool | drawBit (SLuint bit) |
|
SLAABBox * | aabb () |
|
SLAnimation * | animation () |
|
SLbool | castsShadows () |
|
SLMesh * | mesh () |
|
SLVNode & | children () |
|
const SLAnimSkeleton * | skeleton () |
| Returns the first skeleton found in the meshes. More...
|
|
void | updateRec () |
|
virtual void | doUpdate () |
|
bool | updateMeshSkins (bool forceCPUSkinning, const std::function< void(SLMesh *)> &cbInformNodes) |
| Update all skinned meshes recursively. More...
|
|
void | updateMeshAccelStructs () |
|
void | updateMeshMat (std::function< void(SLMaterial *m)> setMat, bool recursive) |
| Updates the mesh material recursively with a material lambda. More...
|
|
void | setMeshMat (SLMaterial *mat, bool recursive) |
| Set the mesh material recursively. More...
|
|
bool | isSelected () |
|
SLfloat | minLodCoverage () |
|
SLubyte | levelForSM () |
|
| SLObject (const SLstring &Name="", const SLstring &url="") |
|
virtual | ~SLObject () |
|
void | name (const SLstring &Name) |
|
void | url (const SLstring &url) |
|
const SLstring & | name () const |
|
const SLstring & | url () const |
|
Public Member Functions inherited from SLEventHandler |
| SLEventHandler () |
|
virtual | ~SLEventHandler () |
|
virtual SLbool | onDoubleClick (const SLMouseButton button, const SLint x, const SLint y, const SLKey mod) |
|
virtual SLbool | onTouch3Down (const SLint x1, const SLint y1) |
|
virtual SLbool | onTouch3Move (const SLint x1, const SLint y1) |
|
virtual SLbool | onTouch3Up (const SLint x1, const SLint y1) |
|
virtual SLbool | onRotationPYR (const SLfloat pitchRAD, const SLfloat yawRAD, const SLfloat rollRAD) |
|
void | mouseRotationFactor (SLfloat rf) |
|
SLfloat | mouseRotationFactor () |
|
|
static SLstring | projTypeToStr (SLProjType pt) |
| Returns the projection type as string. More...
|
|
static SLCamAnim | currentAnimation = CA_turntableYUp |
|
static SLProjType | currentProjection = P_monoPerspective |
|
static SLfloat | currentFOV = 45.0f |
|
static SLint | currentDevRotation = 0 |
|
static SLuint | numWMUpdates = 0 |
| NO. of calls to updateWMRec per frame. More...
|
|
static unsigned int | instanceIndex = 0 |
| ??? More...
|
|
SLProjType | _projType |
| Projection type. More...
|
|
SLfloat | _fovV |
| Current vertical field of view (view angle) in degrees. More...
|
|
SLfloat | _fovInit |
| Initial vertical field of view (view angle) in degrees. More...
|
|
SLfloat | _clipNear |
| Dist. to the near clipping plane. More...
|
|
SLfloat | _clipFar |
| Dist. to the far clipping plane. More...
|
|
SLPlane | _plane [6] |
| 6 frustum planes (l, r, t, b, n, f) More...
|
|
SLRecti | _viewport |
| framebuffer rectangle More...
|
|
SLfloat | _viewportRatio |
| viewport.width / viewport.height = screen ratio More...
|
|
SLfloat | _fx |
| horizontal focal length More...
|
|
SLfloat | _fy |
| vertical focal length More...
|
|
SLfloat | _cx |
| sensor center in x direction More...
|
|
SLfloat | _cy |
| sensor center in y direction More...
|
|
SLBackground | _background |
| Colors or texture displayed in the background. More...
|
|
SLGLVertexArrayExt | _vao |
| OpenGL Vertex array for rendering. More...
|
|
SLbool | _movedLastFrame |
|
SLCamAnim | _camAnim |
| did the camera updateRec in the last frame? More...
|
|
SLVec2f | _oldTouchPos1 |
| Old mouse/touch position in pixels. More...
|
|
SLVec2f | _oldTouchPos2 |
| Old 2nd finger touch position in pixels. More...
|
|
SLVec3f | _trackballStartVec |
| Trackball vector at mouse down. More...
|
|
SLfloat | _trackballSize |
| Size of trackball (0.8 = 80% of window size) More...
|
|
SLchar | _keyStates [256] |
| Stores for all movement keys whether they are pressed. More...
|
|
SLfloat | _drag |
| simple constant drag that affects velocity More...
|
|
SLfloat | _maxSpeed |
| maximum speed in m/s, with high drag values this speed might not be achievable at all More...
|
|
SLVec3f | _velocity |
| current velocity vector More...
|
|
SLVec3f | _acceleration |
| current acceleration vector More...
|
|
SLfloat | _brakeAccel |
| brake acceleration More...
|
|
SLfloat | _moveAccel |
| move acceleration More...
|
|
SLfloat | _focalDist |
| distance to lookAt point on the focal plane from lens More...
|
|
SLfloat | _lensDiameter |
| Lens diameter. More...
|
|
SLRaySamples2D | _lensSamples |
| sample points for lens sampling (DOF) More...
|
|
SLfloat | _stereoEyeSeparation |
| eye separation for stereo mode More...
|
|
SLfloat | _unitScaling |
| indicate what the current unit scale is More...
|
|
SLint | _stereoEye |
| -1=left, 0=center, 1=right More...
|
|
SLMat3f | _stereoColorFilter |
| color filter matrix for anaglyphling is to adjust movement and stereo rendering correctly More...
|
|
SLbool | _fogIsOn |
| Flag if fog blending is enabled. More...
|
|
SLFogMode | _fogMode |
| 0=LINEAR, 1=EXP, 2=EXP2 More...
|
|
SLfloat | _fogDensity |
| Fog density for exponential modes. More...
|
|
SLfloat | _fogStart |
| Fog start distance for linear mode. More...
|
|
SLfloat | _fogEnd |
| Fog end distance for linear mode. More...
|
|
SLCol4f | _fogColor |
| fog color blended to the final color More...
|
|
SLbool | _fogColorIsBack |
| fog color blended to the final color More...
|
|
SLDeviceRotation * | _devRot = nullptr |
|
SLDeviceLocation * | _devLoc = nullptr |
|
SLRectf | _selectRect |
| Mouse selection rectangle. See SLMesh::handleRectangleSelection. More...
|
|
SLRectf | _deselectRect |
| Mouse deselection rectangle. See SLMesh::handleRectangleSelection. More...
|
|
SLint | _xOffsetPix = 0 |
| parameter for manual finger rotation and translation More...
|
|
SLint | _yOffsetPix = 0 |
|
SLMat3f | _enucorrRenu |
|
function< void(SLSceneView *sv)> | _onCamUpdateCB |
|
SLNode * | _parent |
| pointer to the parent node More...
|
|
SLVNode | _children |
| vector of children nodes More...
|
|
SLMesh * | _mesh |
| pointer to a single mesh More...
|
|
SLint | _depth |
| depth of the node in a scene tree More...
|
|
SLint | _entityID |
| ID in the SLVEntity graph for Data Oriented Design. More...
|
|
SLMat4f | _om |
| object matrix for local transforms More...
|
|
SLMat4f | _initialOM |
| the initial om state More...
|
|
SLMat4f | _wm |
| world matrix for world transform More...
|
|
SLMat4f | _wmI |
| inverse world matrix More...
|
|
SLbool | _isWMUpToDate |
| is the WM of this node still valid More...
|
|
SLbool | _isWMIUpToDate |
| is the inverse WM of this node still valid More...
|
|
SLbool | _isAABBUpToDate |
| is the saved aabb still valid More...
|
|
bool | _castsShadows |
| flag if meshes of node should cast shadows More...
|
|
bool | _isSelected |
| flag if node and one or more of its meshes are selected More...
|
|
SLDrawBits | _drawBits |
| node level drawing flags More...
|
|
SLAABBox | _aabb |
| axis aligned bounding box More...
|
|
SLAnimation * | _animation |
| animation of the node More...
|
|
SLfloat | _minLodCoverage |
| Min. LOD coverage for visibility (0.0 < _minLodCoverage < 1.0) More...
|
|
SLubyte | _levelForSM |
| Level of LOD to use for shadow mapping (0 = the visible one will be drawn) More...
|
|
function< void()> | _onUpdateCB |
| Optional lambda callback once per update. More...
|
|
SLstring | _name |
| name of an object More...
|
|
SLstring | _url |
| uniform resource locator More...
|
|
Protected Attributes inherited from SLEventHandler |
SLfloat | _mouseRotationFactor |
| Mouse rotation sensibility. More...
|
|
SLfloat | _keyboardDeltaPos |
| Delta dist. for keyboard translation. More...
|
|
Special camera for ORB-SLAM keyframes that allows the video image display on the near clippling plane.
Definition at line 20 of file SLKeyframeCamera.h.