Commit graph

5222 commits

Author SHA1 Message Date
James Benton
2d6d6a726e Add GX2AlphaToMaskReg. 2015-11-26 00:30:26 +00:00
James Benton
ed9dcc16ea Mess with texture pitch. 2015-11-25 23:32:27 +00:00
James Benton
30d261eaa8 Implement context state shadowing. 2015-11-25 23:11:11 +00:00
James Benton
d1a274d5a7 Correct endian swap for uniform register values. 2015-11-25 01:16:29 +00:00
James Benton
def5bedc32 Fix uniform count. 2015-11-25 01:16:10 +00:00
James Benton
d03ab88cc1 Fix texture pitch. 2015-11-25 00:17:12 +00:00
James Benton
ff28f9f253 Fix OpenGL uninitialised warning caused by PV = PVo. 2015-11-25 00:17:07 +00:00
James Benton
bcb5caf24d Fix GLSL c-style cast. 2015-11-25 00:17:01 +00:00
James Benton
ac25f2fb28 Fix active depth & color buffers.
Turns out games can use color buffers with different settings but the same
buffer address. So we must track all the relevant registers for indicating
which buffer is active.
2015-11-23 20:58:57 +00:00
James Benton
434ae5752f Initialise SQ_CONFIG.DX9_CONSTS to use Uniform Registers as default. 2015-11-23 20:58:51 +00:00
James Benton
42e83cf544 Implement depth/stencil clear. 2015-11-22 22:20:07 +00:00
James Benton
794b8e4382 Implement alpha, blend, color, cull, depth registers. 2015-11-22 22:20:02 +00:00
James Benton
053a1aab91 Implement viewport and scissor register. 2015-11-22 22:19:57 +00:00
James Benton
4cebf69423 Fix uniform register/block names. 2015-11-22 22:19:48 +00:00
James Benton
8055c346ce Cleanup some latte registers. 2015-11-22 22:19:42 +00:00
James Benton
b3e51ce26e Fix tool builds. 2015-11-22 18:19:11 +00:00
James Benton
bf72c7dd3b Basic texture implementation. 2015-11-22 18:03:59 +00:00
James Benton
0fb4a4f180 Change color buffer and depth buffer generation to use DSA. 2015-11-22 18:03:54 +00:00
Brett Lawson
36be1f66a9 Implement drawing modes more thoroughly.
This includes support for decomposing QUAD's to their
triangles since OpenGL does not support these anymore.
2015-11-20 20:34:16 -04:00
Brett Lawson
3acc9e9446 Started working on indexed drawing support. 2015-11-20 01:31:41 -04:00
Brett Lawson
f74c6f9226 Added missing PERSISTENT specification for buffer mapping. 2015-11-20 01:07:45 -04:00
Brett Lawson
405bc3d2f6 Don't spam about JIT max instruction limit. 2015-11-20 00:47:02 -04:00
Brett Lawson
863e0a7b88 Improve JIT performance by reducing maximum instructions. 2015-11-20 00:33:31 -04:00
Brett Lawson
1f1702f56a Fix issue causing command buffers to be skipped or ran twice. 2015-11-20 00:28:31 -04:00
James Benton
15fc2309b7 Start drawIndexedAuto implementation. 2015-11-20 01:12:16 +00:00
James Benton
de6b99c4fd Setup vertex attribute buffers. 2015-11-20 00:50:27 +00:00
Brett Lawson
2d9d67d0c2 Properly render TV/DRC splitscreen. 2015-11-19 23:53:27 -04:00
Brett Lawson
87ac881a1b Correct issue with missing semicolon in shader recompilation. 2015-11-19 22:02:20 -04:00
Brett Lawson
687c11333b Add better error information to shader compilation. 2015-11-19 22:02:02 -04:00
Brett Lawson
c6cf3b7a55 Improve buffer allocation and management. 2015-11-19 21:48:55 -04:00
James Benton
beb5b54fc0 Remove some c-style casts in GLSL compiler. 2015-11-20 00:15:15 +00:00
James Benton
0b8746865e Change float4 to vec4 in translateAluSourceVector. 2015-11-20 00:11:42 +00:00
James Benton
8c6d246592 Add screen drawing. 2015-11-20 13:56:59 +00:00
James Benton
8b56581290 Fix some shader generation invalid types. 2015-11-20 13:56:52 +00:00
James Benton
609c9a6198 Implement the rest of gx2 registers. 2015-11-18 23:45:42 +00:00
James Benton
4bbe36c9a1 glsl::generateBody returning false should not be treated as terminal error. 2015-11-18 22:42:25 +00:00
James Benton
cf2f72fcdd Fix parseFetchShader. 2015-11-18 22:40:28 +00:00
Brett Lawson
b4a2af232d Implement GX2 StencilMask operations. 2015-11-18 18:59:19 -04:00
Brett Lawson
8c1ea9a4da Fix missing define for glbinding. 2015-11-18 18:37:09 -04:00
James Benton
7ac3565155 Add lots of gx2 register stuff. 2015-11-18 22:07:40 +00:00
James Benton
99dea73bde Add missing headers to project. 2015-11-18 20:37:13 +00:00
James Benton
d0f0b4f12f Add PA_SC_AA_MASK, SX_ALPHA_TEST_CONTROL, SX_ALPHA_REF. 2015-11-18 20:36:11 +00:00
James Benton
296878291d Add CB_TARGET_MASK 2015-11-18 20:26:14 +00:00
James Benton
eaaba9e23e Stub the rest of GX2 registers. 2015-11-18 20:26:06 +00:00
James Benton
5c468c4b46 Use texture objects instead of render buffer. 2015-11-18 01:54:02 +00:00
James Benton
5c9711de22 Start some render buffer stuff. 2015-11-18 01:34:01 +00:00
James Benton
1e2bd10ec6 Add OpenGL buffer swap. 2015-11-18 01:34:35 +00:00
James Benton
4ee0333b55 Initialise OpenGL.
Also compiles shaders!
2015-11-18 01:25:14 +00:00
Brett Lawson
d2b92c3b41 Implement front-end for ClearColor and ClearDepthStencil. 2015-11-18 13:15:22 -04:00
James Benton
cdcb78b1f4 Implement SQ_VTX_SEMANTIC_CLEAR. 2015-11-17 01:51:32 +00:00