mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 12:57:35 +00:00
LibGL+LibGPU+LibSoftGPU: Implement and expose glClipPlane
This commit implements glClipPlane and its supporting calls, backed by new support for user-defined clip planes in the software GPU clipper. This fixes some visual bugs seen in the Quake III port, in which mirrors would only reflect correctly from close distances.
This commit is contained in:
parent
bc2f738a84
commit
0836912a6d
14 changed files with 193 additions and 63 deletions
|
@ -61,6 +61,7 @@ public:
|
|||
virtual void set_light_state(unsigned, Light const&) = 0;
|
||||
virtual void set_material_state(Face, Material const&) = 0;
|
||||
virtual void set_stencil_configuration(Face, StencilConfiguration const&) = 0;
|
||||
virtual void set_clip_planes(Vector<FloatVector4> const&) = 0;
|
||||
|
||||
virtual RasterPosition raster_position() const = 0;
|
||||
virtual void set_raster_position(RasterPosition const& raster_position) = 0;
|
||||
|
|
|
@ -15,6 +15,7 @@ struct DeviceInfo final {
|
|||
String device_name;
|
||||
unsigned num_texture_units;
|
||||
unsigned num_lights;
|
||||
unsigned max_clip_planes;
|
||||
u8 stencil_bits;
|
||||
bool supports_npot_textures;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue