diff --git a/Userland/Libraries/LibGPU/RasterPosition.h b/Userland/Libraries/LibGPU/RasterPosition.h new file mode 100644 index 0000000000..6d2b11362e --- /dev/null +++ b/Userland/Libraries/LibGPU/RasterPosition.h @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2022, Jelle Raaijmakers + * Copyright (c) 2022, Stephan Unverwerth + * + * SPDX-License-Identifier: BSD-2-Clause + */ + +#pragma once + +#include + +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 }; +}; + +} diff --git a/Userland/Libraries/LibSoftGPU/Device.cpp b/Userland/Libraries/LibSoftGPU/Device.cpp index 8b68e74c80..e6a9b23d63 100644 --- a/Userland/Libraries/LibSoftGPU/Device.cpp +++ b/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; } -void Device::set_raster_position(RasterPosition const& raster_position) +void Device::set_raster_position(GPU::RasterPosition const& raster_position) { m_raster_position = raster_position; } diff --git a/Userland/Libraries/LibSoftGPU/Device.h b/Userland/Libraries/LibSoftGPU/Device.h index f0e0bf0e1a..979681f83e 100644 --- a/Userland/Libraries/LibSoftGPU/Device.h +++ b/Userland/Libraries/LibSoftGPU/Device.h @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -91,15 +92,6 @@ struct LightModelParameters { 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 { public: Device(Gfx::IntSize const& min_size); @@ -128,8 +120,8 @@ public: void set_material_state(GPU::Face, GPU::Material 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); private: @@ -153,7 +145,7 @@ private: AlphaBlendFactors m_alpha_blend_factors; Array m_lights; Array m_materials; - RasterPosition m_raster_position; + GPU::RasterPosition m_raster_position; Array m_stencil_configuration; };