SLProject  4.2.000
A platform independent 3D computer graphics framework for desktop OS, Android, iOS and online in web browsers
AppDemoSceneRTSpheres.h
Go to the documentation of this file.
1 /**
2  * \file AppDemoSceneRTSpheres.h
3  * \brief Class declaration for an SLScene inherited class
4  * \details For more info about App framework and the scene assembly see:
5  * https://cpvrlab.github.io/SLProject4/app-framework.html
6  * \date May 2024
7  * \authors Marcus Hudritsch, Marino von Wattenwyl
8  * \copyright http://opensource.org/licenses/GPL-3.0
9  * \remarks Please use clangformat to format the code. See more code style on
10  * https://github.com/cpvrlab/SLProject4/wiki/SLProject-Coding-Style
11 */
12 
13 #ifndef APPDEMOSCENERTSPHERES_H
14 #define APPDEMOSCENERTSPHERES_H
15 
16 #include <SLScene.h>
17 
18 //-----------------------------------------------------------------------------
19 //! Class for the ray tracing scene with sphere group
21 {
22 public:
24  void registerAssetsToLoad(SLAssetLoader& al) override;
25  void assemble(SLAssetManager* am, SLSceneView* sv) override;
27  SLint depth,
28  SLfloat x,
29  SLfloat y,
30  SLfloat z,
31  SLfloat scale,
32  SLuint resolution,
33  SLMaterial* matGlass,
34  SLMaterial* matRed);
35 private:
37 };
38 //-----------------------------------------------------------------------------
39 
40 #endif
float SLfloat
Definition: SL.h:173
unsigned int SLuint
Definition: SL.h:171
int SLint
Definition: SL.h:170
int SLSceneID
Scene identifier.
Definition: SLEnums.h:91
SLScene SLSceneView SLint sceneID
Definition: SLScene.h:33
Class for the ray tracing scene with sphere group.
void assemble(SLAssetManager *am, SLSceneView *sv) override
After parallel loading of the assets the scene gets assembled in here.
AppDemoSceneRTSpheres(SLSceneID sceneID)
SLNode * SphereGroupRT(SLAssetManager *am, SLint depth, SLfloat x, SLfloat y, SLfloat z, SLfloat scale, SLuint resolution, SLMaterial *matGlass, SLMaterial *matRed)
Creates a recursive sphere group used for the ray tracing scenes.
void registerAssetsToLoad(SLAssetLoader &al) override
All assets the should be loaded in parallel must be registered in here.
Toplevel holder of the assets meshes, materials, textures and shaders.
Defines a standard CG material with textures and a shader program.
Definition: SLMaterial.h:56
SLNode represents a node in a hierarchical scene graph.
Definition: SLNode.h:147
The SLScene class represents the top level instance holding the scene structure.
Definition: SLScene.h:47
SceneView class represents a dynamic real time 3D view onto the scene.
Definition: SLSceneView.h:69