/* render/render.h This file is part of the Osirion project and is distributed under the terms of the GNU General Public License version 2 */ #ifndef __INCLUDED_RENDER_H__ #define __INCLUDED_RENDER_H__ #include "core/cvar.h" #include "model/vertexarray.h" #include "render/camera.h" #include "render/state.h" #include "render/draw.h" #include "render/dust.h" #include "render/gl.h" #include "render/text.h" #include "render/textures.h" #include "render/renderext.h" namespace render { /// initialize the render subsystem void init(int width, int height); /// shutdown the render subsystem void shutdown(); /// reset all render data void reset(); /// unload game render data void unload(); /// resize viewport void resize(int width, int height); extern core::Cvar *r_arraysize; extern core::Cvar *r_bbox; extern core::Cvar *r_grid; extern core::Cvar *r_particles; extern core::Cvar *r_radius; extern core::Cvar *r_sky; extern core::Cvar *r_wireframe; extern model::VertexArray *vertexarray; inline RenderExt *ext_render(core::Entity *entity) { return static_cast(entity->extension((size_t)core::Extension::Render)); } const float drawdistance = 256.0f; const float drawfxdistance = 64.0f; const float farplane = 1016.0f; } #endif // __INCLUDED_RENDER_H__