OpenGL ES SDK for Android
ARM Developer Center
|
#include <scene.hpp>
Public Types | |
enum | CullingMethod { CullHiZ = 0, CullHiZNoLOD = 1, CullNone = -1 } |
Public Member Functions | |
Scene () | |
~Scene () | |
void | update (float delta_time, unsigned width, unsigned height) |
void | render (unsigned width, unsigned height) |
void | move_camera (float delta_x, float delta_y) |
void | set_culling_method (CullingMethod method) |
void | set_physics_speed (float speed) |
float | get_physics_speed () const |
void | set_show_redundant (bool enable) |
bool | get_show_redundant () const |
Public Attributes | |
GLuint | heightmap |
GLuint | diffusemap |
vec3 | sun_dir |
bool | use_mip |
float | max_lod_coverage |
float | height_scale |
float | fov |
float | z_near |
float | z_far |
GLuint | buffer [INDIRECT_BUFFERS] |
unsigned | buffer_index |
GLuint | instance_buffer [SPHERE_LODS] |
Private Member Functions | |
void | render_spheres (vec3 color_mod) |
void | bake_occluder_geometry (std::vector< vec4 > &occluder_positions, std::vector< uint32_t > &occluder_indices, const Mesh &box_mesh, const vec4 *instances, unsigned num_instances) |
void | init_instances () |
void | apply_physics (float delta_time) |
void | render_depth_map () |
void | update_camera (float rotation_y, float rotation_x, unsigned viewport_width, unsigned viewport_height) |
Private Attributes | |
GLDrawable * | box |
GLDrawable * | sphere [SPHERE_LODS] |
std::vector< CullingInterface * > | culling_implementations |
unsigned | culling_implementation_index |
bool | show_redundant |
bool | enable_culling |
GLuint | occluder_program |
GLuint | sphere_program |
GLDrawable | quad |
GLuint | quad_program |
struct { | |
GLuint buffer [INDIRECT_BUFFERS] | |
unsigned buffer_index | |
GLuint instance_buffer [SPHERE_LODS] | |
} | indirect |
GLuint | physics_program |
GLuint | occluder_instances_buffer |
GLuint | sphere_instances_buffer |
unsigned | num_occluder_instances |
unsigned | num_sphere_render_lods |
unsigned | num_render_sphere_instances |
float | physics_speed |
mat4 | projection |
mat4 | view |
float | camera_rotation_y |
float | camera_rotation_x |
enum Scene::CullingMethod |
void Scene::set_culling_method | ( | CullingMethod | method | ) |
|
private |
GLuint Scene::buffer[INDIRECT_BUFFERS] |
|
private |
GLuint Scene::diffusemap |
Definition at line 30 of file tessellation.h.
float Scene::fov |
Definition at line 35 of file tessellation.h.
float Scene::height_scale |
Definition at line 34 of file tessellation.h.
GLuint Scene::heightmap |
Definition at line 29 of file tessellation.h.
struct { ... } Scene::indirect |
GLuint Scene::instance_buffer[SPHERE_LODS] |
float Scene::max_lod_coverage |
Definition at line 33 of file tessellation.h.
|
private |
|
private |
vec3 Scene::sun_dir |
Definition at line 31 of file tessellation.h.
bool Scene::use_mip |
Definition at line 32 of file tessellation.h.
float Scene::z_far |
Definition at line 37 of file tessellation.h.
float Scene::z_near |
Definition at line 36 of file tessellation.h.