SGCT
master (487fac4)
Simple Graphics Cluster Toolkit
Toggle main menu visibility
Loading...
Searching...
No Matches
equirectangular.h
Go to the documentation of this file.
1
/*****************************************************************************************
2
* SGCT *
3
* Simple Graphics Cluster Toolkit *
4
* *
5
* Copyright (c) 2012-2026 *
6
* For conditions of distribution and use, see copyright notice in LICENSE.md *
7
****************************************************************************************/
8
9
#ifndef __SGCT__EQUIRECTANGULAR__H__
10
#define __SGCT__EQUIRECTANGULAR__H__
11
12
#include <sgct/sgctexports.h>
13
#include <
sgct/projection/nonlinearprojection.h
>
14
15
#include <
sgct/math.h
>
16
#include <
sgct/shaderprogram.h
>
17
18
namespace
sgct
{
19
20
namespace
config
{
struct
EquirectangularProjection
; }
21
class
BaseViewport
;
22
class
User
;
23
class
Window
;
24
25
class
SGCT_EXPORT
EquirectangularProjection
final :
public
NonLinearProjection
{
26
public
:
27
EquirectangularProjection
(
const
config::EquirectangularProjection
&
config
,
28
const
Window
& parent,
User
& user);
29
~EquirectangularProjection
() final;
30
31
void
render
(const
BaseViewport
& viewport,
FrustumMode
mode) const override;
32
33
void
renderCubemap
(
FrustumMode
frustumMode) const override;
34
35
void
update
(const
vec2
& size) const override;
36
37
private:
38
void
initVBO() override;
39
void
initViewports() override;
40
void
initShaders() override;
41
42
unsigned
int
_vao = 0;
43
unsigned
int
_vbo = 0;
44
ShaderProgram
_shader;
45
};
46
47
}
// namespace sgct
48
49
#endif
// __SGCT__EQUIRECTANGULAR__H__
sgct::BaseViewport
This class holds and manages viewportdata and calculates frustums.
Definition
baseviewport.h:27
sgct::EquirectangularProjection::EquirectangularProjection
EquirectangularProjection(const config::EquirectangularProjection &config, const Window &parent, User &user)
sgct::EquirectangularProjection::~EquirectangularProjection
~EquirectangularProjection() final
sgct::EquirectangularProjection::renderCubemap
void renderCubemap(FrustumMode frustumMode) const override
sgct::EquirectangularProjection::render
void render(const BaseViewport &viewport, FrustumMode mode) const override
sgct::EquirectangularProjection::update
void update(const vec2 &size) const override
sgct::NonLinearProjection::NonLinearProjection
NonLinearProjection(const Window &parent)
sgct::ShaderProgram
Class for handling compiling, linking and using shader programs.
Definition
shaderprogram.h:24
sgct::User
Helper class for setting user variables.
Definition
user.h:24
sgct::Window
Definition
window.h:46
math.h
sgct::config
Definition
clustermanager.h:22
sgct
Definition
actions.h:16
sgct::FrustumMode
FrustumMode
Definition
definitions.h:23
nonlinearprojection.h
shaderprogram.h
sgct::config::EquirectangularProjection
Definition
config.h:195
sgct::vec2
Definition
math.h:47
sgct
projection
equirectangular.h
Generated by
1.18.0