grafix-toolbox 0.8.33

Personal collection of opengl and rust tools, also serving as an functional gui crate. See ./gui/elements for premade gui elements
Documentation
pub use context::event;
pub use context::window;

pub mod pre {
	pub use gl;
	pub type Query = spec::Obj<spec::QueryT>; // TODO negative traits stabilization - remove send/sync from Query, Framebuffer and Vao impl !Send for impl !Sync for
	pub use super::utility::{DebugLevel, EnableDebugContext};
	pub use super::{context::Fence, geom::FocusCam};
	pub use bind::*;
	pub use buffer::*;
	pub use fbo::*;
	pub use mesh::*;
	pub use shader::*;
	pub use states::*;
	pub use tex::*;
	pub use types::*;
	pub mod macro_uses {
		pub use super::super::{control::gl_was_initialized, shader::InlineShader, shader::uniform::uniforms_use, texture::sampler_use};
	}
	pub mod bind {
		use super::super::*;
		pub use buffer::{Mapping, MappingMut, ShdArrBind};
		pub use texture::{TexBuffBind, TextureBind};
		pub use {geom::VaoBind, shader::ShaderBind};
	}
	pub mod buffer {
		pub use super::super::buffer::{AttrArr, IdxArr, ShdStorageArr, UniformArr};
	}
	pub mod fbo {
		pub use super::super::frame::{Fbo, Frame, FrameInfo, Framebuffer, RenderTgt, Renderbuffer, Slab};
	}
	pub mod shader {
		pub use super::super::shader::{Shader, ShaderManager};
	}
	pub mod states {
		pub use super::super::funcs_def::*;
	}
	pub mod tex {
		use super::super::*;
		pub use texture::{Sampler, Tex, TexBuffer, TexParam, chans::*, spec::*};
		pub use utility::{Image, fImage, uImage};
	}
	pub mod types {
		pub use gl::types::{GLbitfield, GLboolean as GLbool, GLenum, GLvoid};
		pub use half::f16;
	}
	pub mod spec {
		use super::super::*;
		pub use buffer::{AttrType, IdxType};
		pub use control::{obj::*, policy::*};
	}
	pub mod atlas {
		pub use super::super::utility::{Animation, TexAtlas, Tile, VTex2d, VTex2dEntry, pack_into_atlas};
	}
	pub mod font {
		pub use super::super::utility::{Font, Glyph};
	}
	pub mod offhand {
		pub use super::super::context::Offhand;
	}
	pub mod sdf {
		pub use super::super::utility::SdfGenerator;
	}
	pub mod laplacian {
		pub use super::super::utility::{collapse, pyramid};
	}
	pub mod pbrt {
		pub use super::super::utility::{EnvTex, Environment};
	}
	pub mod mesh {
		pub use super::super::geom::{AnyMesh, Geometry, Mesh, Model, Screen, Skybox, Vao, ps_mesh__2d_screen, vs_mesh__2d_screen};
	}
	pub mod unigl {
		pub use super::super::control::universion::*;
	}
}

mod internal {
	pub use super::control::{obj::*, policy::*, state::*, tex_state::*, uniform_state::*, universion::*};
}

#[macro_use]
mod control;
#[macro_use]
mod funcs_def;
#[macro_use]
mod shader;

mod buffer;
mod context;
mod frame;
mod geom;
mod texture;
mod utility;