Ocean
GLESScene.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) Meta Platforms, Inc. and affiliates.
3  *
4  * This source code is licensed under the MIT license found in the
5  * LICENSE file in the root directory of this source tree.
6  */
7 
8 #ifndef META_OCEAN_RENDERING_GLES_SCENE_H
9 #define META_OCEAN_RENDERING_GLES_SCENE_H
10 
13 
14 #include "ocean/rendering/Scene.h"
15 
18 
19 namespace Ocean
20 {
21 
22 namespace Rendering
23 {
24 
25 namespace GLESceneGraph
26 {
27 
28 /**
29  * This class implements a GLESceneGraph scene object.
30  * @ingroup renderinggles
31  */
32 class OCEAN_RENDERING_GLES_EXPORT GLESScene :
33  virtual public GLESTransform,
34  virtual public Scene
35 {
36  friend class GLESFactory;
37 
38  public:
39 
40  /**
41  * Adds this node and all child node to a traverser.
42  * @see GLESNode::addToTraverser().
43  */
44  void addToTraverser(const GLESFramebuffer& framebuffer, const SquareMatrix4& projectionMatrix, const HomogenousMatrix4& camera_T_parent, const Lights& lights, GLESTraverser& traverser) const override;
45 
46  protected:
47 
48  /**
49  * Creates a new GLESceneGraph scene object.
50  */
52 
53  /**
54  * Destructs a GLESceneGraph scene object.
55  */
56  ~GLESScene() override;
57 };
58 
59 }
60 
61 }
62 
63 }
64 
65 #endif // META_OCEAN_RENDERING_GLES_SCENE_H
This class implements a class factory for all GLESceneGraph objects.
Definition: GLESFactory.h:30
This class implements a base for all GLESceneGraph framebuffers.
Definition: rendering/glescenegraph/GLESFramebuffer.h:34
This class implements a GLESceneGraph scene object.
Definition: GLESScene.h:35
GLESScene()
Creates a new GLESceneGraph scene object.
~GLESScene() override
Destructs a GLESceneGraph scene object.
void addToTraverser(const GLESFramebuffer &framebuffer, const SquareMatrix4 &projectionMatrix, const HomogenousMatrix4 &camera_T_parent, const Lights &lights, GLESTraverser &traverser) const override
Adds this node and all child node to a traverser.
This class implements a GLESceneGraph transform object.
Definition: GLESTransform.h:32
This class implements a traverser for renderables.
Definition: GLESTraverser.h:39
This is the base class for all rendering scenes.
Definition: rendering/Scene.h:44
std::vector< LightPair > Lights
Definition of a set holding light sources.
Definition: GLESLightSource.h:44
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15