summaryrefslogtreecommitdiff
path: root/sys/src/renderer.rs
diff options
context:
space:
mode:
authorMica White <botahamec@outlook.com>2024-08-15 20:23:26 -0400
committerMica White <botahamec@outlook.com>2024-08-25 19:24:37 -0400
commit509e5ce1e17417a70b9bcce8bc6e33c05106811d (patch)
tree5b1fe60a65b5f42a90023ead03c32336033afa1f /sys/src/renderer.rs
parentdb9aa9f1bf49e8bede384b9ceb1e1fb82b522799 (diff)
Start profiling
Diffstat (limited to 'sys/src/renderer.rs')
-rw-r--r--sys/src/renderer.rs98
1 files changed, 49 insertions, 49 deletions
diff --git a/sys/src/renderer.rs b/sys/src/renderer.rs
index 05d111b..a4dab20 100644
--- a/sys/src/renderer.rs
+++ b/sys/src/renderer.rs
@@ -1,49 +1,49 @@
-use crate::{RendererConfig, Vertex, Window};
-
-pub struct Renderer {
- ptr: *mut (),
-}
-
-impl Drop for Renderer {
- fn drop(&mut self) {
- unsafe { crate::destroy_renderer(self.ptr) }
- }
-}
-
-impl Renderer {
- pub fn new(window: &Window, config: RendererConfig) -> Self {
- let ptr = unsafe { crate::new_renderer(config, window.ptr) };
- Self { ptr }
- }
-
- pub fn resize(&mut self, width: u32, height: u32) {
- unsafe { crate::resize_renderer(self.ptr, width, height) }
- }
-
- pub fn set_vsync(&mut self, vsync: bool) {
- unsafe { crate::set_vsync(self.ptr, vsync) }
- }
-
- pub fn create_vertex_buffer(&mut self, vertices: &[Vertex]) {
- assert!(vertices.len() < (u32::MAX as usize), "Too many triangles!");
- let ptr = vertices.as_ptr();
- let len = vertices.len();
- unsafe { crate::create_vertex_buffer(self.ptr, len as u32, ptr) }
- }
-
- pub fn set_camera(
- &mut self,
- x: f32,
- y: f32,
- zoom: f32,
- rotation: f32,
- width: f32,
- height: f32,
- ) {
- unsafe { crate::set_camera(self.ptr, x, y, zoom, rotation, width, height) }
- }
-
- pub fn render_frame(&mut self) {
- unsafe { crate::render_frame(self.ptr) }
- }
-}
+use crate::{RendererConfig, Vertex, Window};
+
+pub struct Renderer {
+ ptr: *mut (),
+}
+
+impl Drop for Renderer {
+ fn drop(&mut self) {
+ unsafe { crate::destroy_renderer(self.ptr) }
+ }
+}
+
+impl Renderer {
+ pub fn new(window: &Window, config: RendererConfig) -> Self {
+ let ptr = unsafe { crate::new_renderer(config, window.ptr) };
+ Self { ptr }
+ }
+
+ pub fn resize(&mut self, width: u32, height: u32) {
+ unsafe { crate::resize_renderer(self.ptr, width, height) }
+ }
+
+ pub fn set_vsync(&mut self, vsync: bool) {
+ unsafe { crate::set_vsync(self.ptr, vsync) }
+ }
+
+ pub fn create_vertex_buffer(&mut self, vertices: &[Vertex]) {
+ assert!(vertices.len() < (u32::MAX as usize), "Too many triangles!");
+ let ptr = vertices.as_ptr();
+ let len = vertices.len();
+ unsafe { crate::create_vertex_buffer(self.ptr, len as u32, ptr) }
+ }
+
+ pub fn set_camera(
+ &mut self,
+ x: f32,
+ y: f32,
+ zoom: f32,
+ rotation: f32,
+ width: f32,
+ height: f32,
+ ) {
+ unsafe { crate::set_camera(self.ptr, x, y, zoom, rotation, width, height) }
+ }
+
+ pub fn render_frame(&mut self) {
+ unsafe { crate::render_frame(self.ptr) }
+ }
+}