30 :
SLScene(
"Facial Feature Tracking"),
34 name(
"Track Face (main cam.)");
36 name(
"Track Face (scnd. cam.)");
37 info(
"Face and facial landmark detection.");
45 "FBX/Sunglasses.fbx");
93 light1->
powers(1.0f, 1.0f, 1.0f);
The AppCommon class holds the top-level instances of the app-demo.
Definition of scene IDs in the demo app.
SLNode * gVideoTrackedNode
SLGLTexture * gVideoTexture
CVTracked * gVideoTracker
Class declaration for an SLScene inherited class.
@ VT_SCND
Selfie camera on mobile devices.
@ VT_MAIN
Main camera on all on all all devices.
#define SL_DB_MESHWIRED
Draw polygons as wired mesh.
int SLSceneID
Scene identifier.
static SLDeviceRotation devRot
Mobile device rotation from IMU.
static SLstring calibIniPath
That's where data/calibrations folder is located.
static SLDeviceLocation devLoc
Mobile device location from GPS.
static SLstring modelPath
Path to 3D models.
static SLstring texturePath
Path to texture images.
void registerAssetsToLoad(SLAssetLoader &al) override
All scene specific assets have to be registered for async loading in here.
AppDemoSceneVideoTrackFace(SLSceneID sid)
void assemble(SLAssetManager *am, SLSceneView *sv) override
After parallel loading of the assets the scene gets assembled in here.
void videoType(CVVideoType vt)
Setter for video type also sets the active calibration.
static CVCapture * instance()
Public static instance getter for singleton pattern.
OpenCV face & facial landmark tracker class derived from CVTracked.
CVTracked is the pure virtual base class for tracking features in video.
void drawDetection(bool draw)
void addLoadTask(SLAssetLoadTask task)
Add generic task.
void addTextureToLoad(SLGLTexture *&texture, const SLstring &path, SLint min_filter=GL_LINEAR_MIPMAP_LINEAR, SLint mag_filter=GL_LINEAR, SLTextureType type=TT_unknown, SLint wrapS=GL_REPEAT, SLint wrapT=GL_REPEAT)
Add 2D textures with internal image allocation.
void addNodeToLoad(SLNode *&node, const SLstring &modelPath, SLSkybox *skybox=nullptr, SLbool deleteTexImgAfterBuild=false, SLbool loadMeshesOnly=true, SLMaterial *overrideMat=nullptr, float ambientFactor=0.5f, SLbool forceCookTorranceRM=false, SLuint flags=SLProcess_Triangulate|SLProcess_JoinIdenticalVertices|SLProcess_RemoveRedundantMaterials|SLProcess_FindDegenerates|SLProcess_FindInvalidData|SLProcess_SplitLargeMeshes)
Add mesh from file to load via assimp loader.
Toplevel holder of the assets meshes, materials, textures and shaders.
void texture(SLGLTexture *backgroundTexture, bool fixAspectRatio=false)
If flag _repeatBlurred is true the texture is not distorted if its size does not fit to screen aspect...
Active or visible camera node class.
void clipFar(const SLfloat cFar)
void clipNear(const SLfloat cNear)
void devRotLoc(SLDeviceRotation *devRot, SLDeviceLocation *devLoc)
SLBackground & background()
Axis aligned coordinate axis mesh.
Texture object for OpenGL texturing.
void attenuation(const SLfloat kConstant, const SLfloat kLinear, const SLfloat kQuadratic)
void powers(SLfloat ambiPow, SLfloat diffPow, SLfloat specPow, const SLCol4f &ambiDiffSpecCol=SLCol4f::WHITE)
Sets the ambient, diffuse and specular powers all with the same color.
SLLightSpot class for a spot light source.
SLNode represents a node in a hierarchical scene graph.
void addChild(SLNode *child)
void translation(const SLVec3f &pos, SLTransformSpace relativeTo=TS_parent)
void setDrawBitsRec(SLuint bit, SLbool state)
void translate(const SLVec3f &vec, SLTransformSpace relativeTo=TS_object)
const SLstring & name() const
The SLScene class represents the top level instance holding the scene structure.
SceneView class represents a dynamic real time 3D view onto the scene.
void camera(SLCamera *camera)
void doWaitOnIdle(SLbool doWI)