Skip to main content

grafix_toolbox/kit/
opengl.rs

1pub use context::event;
2pub use context::window;
3
4pub mod pre {
5	pub use gl;
6	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
7	pub use super::utility::{DebugLevel, EnableDebugContext};
8	pub use super::{context::Fence, geom::FocusCam};
9	pub use bind::*;
10	pub use buffer::*;
11	pub use fbo::*;
12	pub use mesh::*;
13	pub use shader::*;
14	pub use states::*;
15	pub use tex::*;
16	pub use types::*;
17	pub mod macro_uses {
18		pub use super::super::{control::gl_was_initialized, shader::InlineShader, shader::uniform::uniforms_use, texture::sampler_use};
19	}
20	pub mod bind {
21		use super::super::*;
22		pub use buffer::{Mapping, MappingMut, ShdArrBind};
23		pub use texture::{TexBuffBind, TextureBind};
24		pub use {geom::VaoBind, shader::ShaderBind};
25	}
26	pub mod buffer {
27		pub use super::super::buffer::{AttrArr, IdxArr, ShdStorageArr, UniformArr};
28	}
29	pub mod fbo {
30		pub use super::super::frame::{Fbo, Frame, FrameInfo, Framebuffer, RenderTgt, Renderbuffer, Slab};
31	}
32	pub mod shader {
33		pub use super::super::shader::{Shader, ShaderManager};
34	}
35	pub mod states {
36		pub use super::super::funcs_def::*;
37	}
38	pub mod tex {
39		use super::super::*;
40		pub use texture::{Sampler, Tex, TexBuffer, TexParam, chans::*, spec::*};
41		pub use utility::{Image, fImage, uImage};
42	}
43	pub mod types {
44		pub use gl::types::{GLbitfield, GLboolean as GLbool, GLenum, GLvoid};
45		pub use half::f16;
46	}
47	pub mod spec {
48		use super::super::*;
49		pub use buffer::{AttrType, IdxType};
50		pub use control::{obj::*, policy::*};
51	}
52	pub mod atlas {
53		pub use super::super::utility::{Animation, TexAtlas, Tile, VTex2d, VTex2dEntry, pack_into_atlas};
54	}
55	pub mod font {
56		pub use super::super::utility::{Font, Glyph};
57	}
58	pub mod offhand {
59		pub use super::super::context::Offhand;
60	}
61	pub mod sdf {
62		pub use super::super::utility::SdfGenerator;
63	}
64	pub mod laplacian {
65		pub use super::super::utility::{collapse, pyramid};
66	}
67	pub mod pbrt {
68		pub use super::super::utility::{EnvTex, Environment};
69	}
70	pub mod mesh {
71		pub use super::super::geom::{AnyMesh, Geometry, Mesh, Model, Screen, Skybox, Vao, ps_mesh__2d_screen, vs_mesh__2d_screen};
72	}
73	pub mod unigl {
74		pub use super::super::control::universion::*;
75	}
76}
77
78mod internal {
79	pub use super::control::{obj::*, policy::*, state::*, tex_state::*, uniform_state::*, universion::*};
80}
81
82#[macro_use]
83mod control;
84#[macro_use]
85mod funcs_def;
86#[macro_use]
87mod shader;
88
89mod buffer;
90mod context;
91mod frame;
92mod geom;
93mod texture;
94mod utility;