Parcourir la source

LibGPU+LibSoftGPU: Move RasterPosition into its own header in LibGPU

Stephan Unverwerth il y a 3 ans
Parent
commit
8f359bf758

+ 23 - 0
Userland/Libraries/LibGPU/RasterPosition.h

@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2022, Jelle Raaijmakers <jelle@gmta.nl>
+ * Copyright (c) 2022, Stephan Unverwerth <s.unverwerth@serenityos.org>
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include <LibGfx/Vector4.h>
+
+namespace GPU {
+
+struct RasterPosition {
+    FloatVector4 window_coordinates { 0.0f, 0.0f, 0.0f, 1.0f };
+    float eye_coordinate_distance { 0.0f };
+    bool valid { true };
+    FloatVector4 color_rgba { 1.0f, 1.0f, 1.0f, 1.0f };
+    float color_index { 1.0f };
+    FloatVector4 texture_coordinates { 0.0f, 0.0f, 0.0f, 1.0f };
+};
+
+}

+ 1 - 1
Userland/Libraries/LibSoftGPU/Device.cpp

@@ -1251,7 +1251,7 @@ void Device::set_stencil_configuration(GPU::Face face, GPU::StencilConfiguration
     m_stencil_configuration[face] = stencil_configuration;
     m_stencil_configuration[face] = stencil_configuration;
 }
 }
 
 
-void Device::set_raster_position(RasterPosition const& raster_position)
+void Device::set_raster_position(GPU::RasterPosition const& raster_position)
 {
 {
     m_raster_position = raster_position;
     m_raster_position = raster_position;
 }
 }

+ 4 - 12
Userland/Libraries/LibSoftGPU/Device.h

@@ -16,6 +16,7 @@
 #include <LibGPU/ImageFormat.h>
 #include <LibGPU/ImageFormat.h>
 #include <LibGPU/Light.h>
 #include <LibGPU/Light.h>
 #include <LibGPU/Material.h>
 #include <LibGPU/Material.h>
+#include <LibGPU/RasterPosition.h>
 #include <LibGPU/SamplerConfig.h>
 #include <LibGPU/SamplerConfig.h>
 #include <LibGPU/StencilConfiguration.h>
 #include <LibGPU/StencilConfiguration.h>
 #include <LibGfx/Bitmap.h>
 #include <LibGfx/Bitmap.h>
@@ -91,15 +92,6 @@ struct LightModelParameters {
 
 
 struct PixelQuad;
 struct PixelQuad;
 
 
-struct RasterPosition {
-    FloatVector4 window_coordinates { 0.0f, 0.0f, 0.0f, 1.0f };
-    float eye_coordinate_distance { 0.0f };
-    bool valid { true };
-    FloatVector4 color_rgba { 1.0f, 1.0f, 1.0f, 1.0f };
-    float color_index { 1.0f };
-    FloatVector4 texture_coordinates { 0.0f, 0.0f, 0.0f, 1.0f };
-};
-
 class Device final {
 class Device final {
 public:
 public:
     Device(Gfx::IntSize const& min_size);
     Device(Gfx::IntSize const& min_size);
@@ -128,8 +120,8 @@ public:
     void set_material_state(GPU::Face, GPU::Material const&);
     void set_material_state(GPU::Face, GPU::Material const&);
     void set_stencil_configuration(GPU::Face, GPU::StencilConfiguration const&);
     void set_stencil_configuration(GPU::Face, GPU::StencilConfiguration const&);
 
 
-    RasterPosition raster_position() const { return m_raster_position; }
-    void set_raster_position(RasterPosition const& raster_position);
+    GPU::RasterPosition raster_position() const { return m_raster_position; }
+    void set_raster_position(GPU::RasterPosition const& raster_position);
     void set_raster_position(FloatVector4 const& position, FloatMatrix4x4 const& model_view_transform, FloatMatrix4x4 const& projection_transform);
     void set_raster_position(FloatVector4 const& position, FloatMatrix4x4 const& model_view_transform, FloatMatrix4x4 const& projection_transform);
 
 
 private:
 private:
@@ -153,7 +145,7 @@ private:
     AlphaBlendFactors m_alpha_blend_factors;
     AlphaBlendFactors m_alpha_blend_factors;
     Array<GPU::Light, NUM_LIGHTS> m_lights;
     Array<GPU::Light, NUM_LIGHTS> m_lights;
     Array<GPU::Material, 2u> m_materials;
     Array<GPU::Material, 2u> m_materials;
-    RasterPosition m_raster_position;
+    GPU::RasterPosition m_raster_position;
     Array<GPU::StencilConfiguration, 2u> m_stencil_configuration;
     Array<GPU::StencilConfiguration, 2u> m_stencil_configuration;
 };
 };