From 509e5ce1e17417a70b9bcce8bc6e33c05106811d Mon Sep 17 00:00:00 2001 From: Mica White Date: Thu, 15 Aug 2024 20:23:26 -0400 Subject: Start profiling --- sys/src/renderer.rs | 98 ++++++++++++++++++++++++++--------------------------- 1 file changed, 49 insertions(+), 49 deletions(-) (limited to 'sys/src/renderer.rs') 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) } + } +} -- cgit v1.2.3