Commit graph

26 commits

Author SHA1 Message Date
riperiperi
7d61b9815d Flush GL commands before inevitably waiting for a query result. (#1278) 2020-05-27 17:51:03 +10:00
riperiperi
972d688e4e Remember bound framebuffer to avoid glGetInteger use. (#1273)
glGetInteger seems to sync with GPU which is less than ideal, and slowing down texture copies.
2020-05-24 15:44:12 +02:00
gdkchan
0c06df2ed3 Spanify Graphics Abstraction Layer (#1226)
* Spanify Graphics Abstraction Layer

* Be explicit about BufferHandle size
2020-05-23 11:46:09 +02:00
riperiperi
f7c05f1dde Implement Counter Queue and Partial Host Conditional Rendering (#1167)
* Implementation of query queue and host conditional rendering

* Resolve some comments.

* Use overloads instead of passing object.

* Wake the consumer threads when incrementing syncpoints.

Also, do a busy loop when awaiting the counter for a blocking flush, rather than potentially sleeping the thread.

* Ensure there's a command between begin and end query.
2020-05-04 12:24:59 +10:00
mageven
d2bfd2e100 Implement user-defined clipping on GL state pipeline (#1118) 2020-05-04 12:04:49 +10:00
riperiperi
806e1c2b77 Fix depth clamp enable bit, unit scale for polygon offset. (#1178)
Verified with deko3d and opengl driver code.
2020-04-30 11:47:24 +10:00
gdkchan
a21f7a7dc2 Implement texture buffers (#1152)
* Implement texture buffers

* Throw NotSupportedException where appropriate
2020-04-25 23:02:18 +10:00
mageven
c3d5dfd6cd Implement Constant Color blends (#1119)
* Implement Constant Color blends and init blend states

* Address gdkchan's comments

Also adds Set methods to GpuState

* Fix descriptions of QueryModified
2020-04-25 23:00:43 +10:00
mageven
855161db98 Implement Depth Clamping (#1120)
* Implement Depth Clamping and add misc enums

* Fix formatting
2020-04-17 11:16:49 +10:00
mageven
df5c1835c9 Simple GPU fixes (#1093)
* Implement RasterizeEnable

* Match viewport count to hardware

* Simplify ScissorTest tracking around Blits

* Disable RasterizerDiscard around Blits and track its state

* Read RasterizeEnable reg as bool and add doc
2020-04-07 19:19:45 +10:00
gdkchan
3df8f4a785 Workaround for AMD and Intel view format bug (#1050)
* Workaround for Intel view format bug

* Dispose of the intermmediate texture aswell

* Apply workaround on AMD aswell
2020-03-29 23:48:39 +11:00
gdkchan
2ef646354c Implement GPU scissors (#1058)
* Implement GPU scissors

* Remove unused using

* Add missing changes for Clear
2020-03-29 14:02:58 +11:00
gdkchan
e81772ca09 Support configurable point size (#916) 2020-02-02 10:19:46 +11:00
gdkchan
7e99d08655 Support instanced draw of quads" (#881) 2020-01-13 09:14:50 +11:00
gdkchan
471f504f97 Replace glFinish with barrier for WaitForIdle (#878) 2020-01-13 09:12:40 +11:00
gdkchan
46530360e3 Address PR feedback
Add TODO comment for GL_EXT_polygon_offset_clamp
2020-01-09 02:13:00 +01:00
gdkchan
d7fb450216 GPU resource disposal 2020-01-09 02:13:00 +01:00
gdkchan
f5ce09c126 Change GPU errors to debug and reduce log messages 2020-01-09 02:13:00 +01:00
gdkchan
c68aed533e Remove some error logging to avoid log spam 2020-01-09 02:13:00 +01:00
gdkchan
d42edddefd Some code cleanup 2020-01-09 02:13:00 +01:00
gdkchan
155c2ee2fe Add basic error logging to the GPU 2020-01-09 02:13:00 +01:00
gdkchan
ab20360779 Support depth clip mode and disable shader fast math optimization on NVIDIA as a workaround for compiler bugs (?) 2020-01-09 02:13:00 +01:00
gdk
d218b13ef1 Fix texture 0 not being bound for compute 2020-01-09 02:13:00 +01:00
gdk
5fb601a2fe Support copy of slices to 3D textures, remove old 3D render target layered render support, do not delete textures with existing views created from them 2020-01-09 02:13:00 +01:00
gdk
0c7c38df0f Add per-source type memory change tracking, simplified state change tracking, other fixes 2020-01-09 02:13:00 +01:00
gdk
c9abf08686 Initial support for image stores, support texture sample on compute 2020-01-09 02:13:00 +01:00
Renamed from Ryujinx.Graphics.OpenGL/GraphicsPipeline.cs (Browse further)