igraphic 0.2.0
Contrats graphiques chargeables : IGraphic2Module / IGraphic3Module
Loading...
Searching...
No Matches
IWindow3.hpp
Go to the documentation of this file.
1
11#ifndef IWINDOW3_HPP_
12 #define IWINDOW3_HPP_
13 #include "IWindow2.hpp"
14 #include "../graphic/IModel.hpp"
15
16namespace graphic {
17 class ICamera;
18
25 class IWindow3 : public IWindow2 {
26
27 public:
28
29 virtual ~IWindow3() = default;
30
36 virtual void beginMode3(ICamera *camera) = 0;
37
43 virtual void drawModel(IModel *model) = 0;
44
53 virtual void drawText3D(IText *text, Vector3f position) = 0;
54
58 virtual void endMode3() = 0;
59 };
60
61} // namespace graphic
62
65#endif /* !IWINDOW3_HPP_ */
Camera interface.
Definition ICamera.hpp:23
Model interface.
Definition IModel.hpp:27
Text interface.
Definition IText.hpp:26
A window that can draw 2D. Adds only the 2D drawing surface on top of IWindow's lifecycle/input.
Definition IWindow2.hpp:25
A window that can also draw 3D. Extends IWindow2, so anything that only needs 2D can keep using it as...
Definition IWindow3.hpp:25
virtual void drawText3D(IText *text, Vector3f position)=0
draw text at a 3D world position - the same IText used by drawText(), just projected through the acti...
virtual void endMode3()=0
end the 3D drawing
virtual void beginMode3(ICamera *camera)=0
allowing to draw 3D on the window
virtual ~IWindow3()=default
virtual void drawModel(IModel *model)=0
draw a model
Definition IGamepad.hpp:14