Graphics

Modules

charge.gfx.buffer Vertex buffers.
charge.gfx.gfx Source file for misc gfx things.
charge.gfx.shader Source file for Shader base class.
charge.gfx.texture Source file for Texture(s).
charge.gfx.timetracker Source file for TimeTrackers and trackers.
charge.gfx.counters GPU profiling counters.
charge.gfx.draw Super simple 2D drawing helper.
charge.gfx.bitmapfont Simple bitmap font.
charge.gfx.aa Helper class for rendering a AA view to another target.
charge.gfx Include everything from gfx.
charge.gfx.helpers Helper classes to keep track of framebuffers and blit textures.
charge.gfx.timer Source file for timers.
charge.gfx.sync Source file for syncing with the gpu.
charge.gfx.target Source file for Target(s), that is FBOs and DefaultTarget.
charge.gfx.simple Simpler object rendering code, shader, buffer and builder.
charge.gfx.compiler Source file for Shader Compiler code.

Classes

Target Base target class, allows you to bind and unbind targets.
DefaultTarget The default fbo in OpenGL, glBindFramebuffer(GL_FRAMEBUFFER, 0).
ExtTarget Target for a FBO made outside of charge, takes ownership of the fbo.
Framebuffer A simple color + depth framebuffer.
FramebufferMSAA A simple color + depth framebuffer, with MSAA textures.
SimpleBuffer VBO used for simple drawing operations.
SimpleVertexBuilder Building simple vertex buffers.

Structs

ViewInfo Information about a single view to be rendered, passed alongside a Target.
SimpleVertex Vertex format, vec3f32 position, vec2f32 coordinate and vec4!u8 color.