gramods
Loading...
Searching...
No Matches
LinearAnaglyphsMultiplexer.hh
1
2#ifndef GRAMODS_GRAPHICS_LINEARANAGLYPHSMULTIPLEXER
3#define GRAMODS_GRAPHICS_LINEARANAGLYPHSMULTIPLEXER
4
5// Required before gmCore/OFactory.hh for some compilers
6#include <gmCore/io_float.hh>
7
8#include <gmGraphics/MultiscopicMultiplexer.hh>
9
10BEGIN_NAMESPACE_GMGRAPHICS;
11
18
19public:
20
22
29 void setLeftColor(gmCore::float3 c);
30
37 void setRightColor(gmCore::float3 c);
38
47 void setSaturation(float s);
48
57 void setLeftSaturation(float s);
58
67 void setRightSaturation(float s);
68
73 size_t getEyeCount() { return 2; }
74
78 void prepare() override;
79
83 void setupRendering(size_t eye) override;
84
88 void finalize() override;
89
90 GM_OFI_DECLARE;
91
92private:
93
94 struct Impl;
95 std::unique_ptr<Impl> _impl;
96
97};
98
99END_NAMESPACE_GMGRAPHICS;
100
101#endif
An implementation of anaglyphs stereoscopic multiplexing that is based on linear operations.
Definition LinearAnaglyphsMultiplexer.hh:17
size_t getEyeCount()
Returns the number of eyes that should be rendered for the multiplexer.
Definition LinearAnaglyphsMultiplexer.hh:73
The multiscopic multiplexing is the process of rendering images for the left and the right (or more) ...
Definition MultiscopicMultiplexer.hh:30
std::array< float, 3 > float3
Array of 3 float.
Definition io_float.hh:15