lambda/render/
viewport.rs1use lambda_platform::gfx;
4
5#[derive(Debug, Clone, PartialEq)]
6pub struct Viewport {
7 viewport: gfx::viewport::ViewPort,
8}
9
10impl Viewport {
11 pub(crate) fn clone_gfx_viewport(&self) -> gfx::viewport::ViewPort {
14 return self.viewport.clone();
15 }
16}
17
18pub struct ViewportBuilder {
20 x: i16,
21 y: i16,
22}
23
24impl ViewportBuilder {
25 pub fn new() -> Self {
27 return Self { x: 0, y: 0 };
28 }
29
30 pub fn build(self, width: u32, height: u32) -> Viewport {
32 let viewport = gfx::viewport::ViewPortBuilder::new()
33 .with_coordinates(self.x, self.y)
34 .build(width, height);
35
36 return Viewport { viewport };
37 }
38}