Module three_d::core[][src]

Expand description

Mid-level modular abstractions of common graphics concepts such as buffer, texture, program, render target and so on. Can be combined with low-level calls in the context module as long as any graphics state changes are reset.

Re-exports

pub use buffer::*;
pub use math::*;
pub use texture::*;
pub use object::*;
pub use render_states::*;
pub use render_target::*;
pub use material::*;

Modules

Different types of buffers used for sending data (primarily geometry data) to the GPU.

Definitions for a CPU- and GPU-side material.

Basic math functionality. Mostly just an re-export of cgmath.

A collection of objects that can be rendered with custom fragment shader, for example a mesh.

Definitions of the input state needed for any draw call.

Functionality for rendering to the screen or into textures.

Different types of textures used by the GPU to read from and write to.

Structs

A bounding box that aligns with the x, y and z axes.

Used in a render call to define how to view the 3D world.

Represents a color composed of a red, green and blue component. In addition, the alpha value determines the how transparent the color is (0 is fully transparent and 255 is fully opaque).

Contains the graphics API for almost direct calls to OpenGL/WebGL. Used internally in the higher level features and can safely be ignored unless you want more control.

A customizable 2D effect. Can for example be used for adding an effect on top of a rendered image.

A shader program consisting of a programmable vertex shader followed by a programmable fragment shader. Functionality includes transferring per vertex data to the vertex shader (see the use_attribute functionality) and transferring uniform data to both shader stages (see the use_uniform and use_texture functionality) and execute the shader program (see the draw functionality).

Defines the part of the screen/render target that is rendered to.

Enums

Error in the core module.