cgv
gl_vr_display.h
1
#pragma once
2
3
#include <vector>
4
#include <string>
5
6
#include "lib_begin.h"
7
10
11
13
namespace
vr
{
15
enum
EyeSelection
{
16
ES_BOTH,
17
ES_LEFT,
18
ES_RIGHT
19
};
21
24
class
CGV_API
gl_vr_display
25
{
26
private
:
27
int
vp[4];
28
int
old_msaa;
29
protected
:
31
unsigned
width
, height, nr_multi_samples;
33
unsigned
multi_depth_buffer_id[2];
34
unsigned
multi_tex_id[2];
35
unsigned
multi_fbo_id[2];
36
unsigned
tex_id[2];
37
unsigned
fbo_id[2];
38
39
friend
class
vr_wall_kit;
41
std::string
last_error
;
42
public
:
44
gl_vr_display
(
unsigned
_width,
unsigned
_height,
unsigned
_nr_multi_samples);
46
virtual
~
gl_vr_display
();
48
const
std::string& get_last_error()
const
;
50
int
get_width()
const
;
52
int
get_height()
const
;
54
virtual
void
set_size(
int
new_width,
int
new_height);
56
virtual
bool
init_fbos(
EyeSelection
es = ES_BOTH);
58
virtual
bool
blit_fbo(
int
eye,
int
x,
int
y,
int
w,
int
h);
60
virtual
bool
fbos_initialized(
EyeSelection
es = ES_BOTH)
const
;
62
virtual
void
destruct_fbos(
EyeSelection
es = ES_BOTH);
64
virtual
void
enable_fbo(
int
eye);
66
virtual
void
disable_fbo(
int
eye);
68
virtual
void
bind_texture(
int
eye);
69
};
70
}
71
73
74
#include <cgv/config/lib_end.h>
vr::EyeSelection
EyeSelection
enum to support restriction of eyes to a single eye
Definition:
gl_vr_display.h:15
vr::gl_vr_display
implements offscreen rendering
Definition:
gl_vr_display.h:25
vr
the vr namespace for virtual reality support
Definition:
gl_vr_display.cxx:5
vr::gl_vr_display::last_error
std::string last_error
store last error message
Definition:
gl_vr_display.h:41
vr::gl_vr_display::width
unsigned width
pixel dimensions of render targets
Definition:
gl_vr_display.h:31
projects
git
cgv
libs
vr
gl_vr_display.h
Generated by
1.8.18