Commit Graph

58 Commits

Author SHA1 Message Date
Dave Murphy
2741615b85 elaborate GX_BUFFER_DIM 2016-01-03 14:08:58 +00:00
fincs
c048221f86 Add shaderProgramSetGshMode() for configuring geoshader mode 2015-12-05 13:28:41 +01:00
fincs
c14634f323 Synchronize GPU register names with the 3dbrew Wiki, again 2015-12-05 13:27:02 +01:00
fincs
3657571591 Add proctex GPU register names and enumerations from the 3dbrew Wiki 2015-12-02 12:04:13 +01:00
fincs
f052d22ceb shaderProgram: manage GPUREG_SH_OUTATTR_MODE/CLOCK 2015-12-01 13:22:34 +01:00
fincs
f7798302ea Add new GPU register names and enumerations from the 3dbrew Wiki 2015-12-01 12:58:57 +01:00
fincs
416cc38797 Add a few additional GPU enumerations 2015-11-25 21:49:26 +01:00
fincs
5923112082 Several improvements to shaderProgram, see details:
- shaderProgramSetGshInputPermutation() was added
- shaderInstanceGetUniformLocation() return type corrected
- shaderInstanceSetBool bug fixed (true/false were incorrectly mapped)
- shaderInstance now has bitmasks indicating which int/bool uniforms are
  used by int/bool constants in the DVLE
- shaderProgramUse() was revamped:
  - Shader unit setup/code/opdesc upload code was separated into a new
    function called shaderProgramConfigure()
  - shaderProgramUse() calls shaderProgramConfigure() and afterwards
    uploads DVLE constants
  - GPU wrappers that perform uniform management will want to use
    shaderProgramConfigure() instead of shaderProgramUse() and later
    read the shaderInstance uniform usage bitmasks to set the constants.
2015-11-21 00:49:33 +01:00
Steven Smith
375fbce98a Service cleanup. 2015-11-11 08:57:54 -08:00
Steven Smith
891df76804 Fix #139 2015-11-08 12:00:33 -08:00
fincs
0e7755af01 Fix GPUCMD_AddSingleParam() C++ compatibility issue 2015-10-07 20:50:57 +02:00
fincs
56a2712501 Docufixes 2015-10-06 11:47:28 +02:00
Steven Smith
fa5f3783ce Finish up basic documentation. 2015-10-05 18:35:15 -07:00
Steven Smith
d6962f2122 Doc consistency. 2015-10-04 14:08:02 -07:00
Steven Smith
9a3baad7ed Rewrite most documentation to be consistent in format. 2015-10-04 10:37:28 -07:00
fincs
c99707ada4 Add fragment lighting register names, enumerations, etc 2015-09-13 18:40:37 +02:00
fincs
0ace45a746 Add some more GPU enum values from the 3dbrew wiki 2015-09-08 20:55:43 +02:00
fincs
fded98b9ed Sync register names with 3dbrew wiki 2015-09-07 19:31:02 +02:00
fincs
c594170fca Rename GX commands 2015-09-07 12:53:37 +02:00
fincs
15af3eff30 Merge branch 'master' into great-refactor
Conflicts:
	libctru/source/gpu/gpu.c
2015-09-05 22:14:34 +02:00
fincs
604b1f4b43 Make some internal shader loading helper functions private/static 2015-09-05 20:30:24 +02:00
fincs
696ac996d1 Remove u32* gxbuf parameter in GX/GPU functions 2015-09-05 20:24:55 +02:00
fincs
5fd4a726ff Start the Great Refactor with some GPU refactoring/deprecating 2015-09-05 20:16:47 +02:00
fincs
11a5001f33 Correct GPU_DrawArray() parameter order, fix GPU examples 2015-09-05 18:02:06 +02:00
Subv
ad3dd538dc Use register 0x22A (GPUREG_DRAW_VERTEX_OFFSET) when using GPU_DrawArrays.
It will set the index of the first vertex to draw, akin to the "first" parameter of glDrawArrays.
2015-08-22 22:18:33 -05:00
fincs
6f9edd9bbe Merge pull request #154 from Subv/tev_buffer_color
GPU: Added code to manipulate the combiner buffer.
2015-08-22 21:20:37 +02:00
Subv
1738893d05 GPU: Added code to manipulate the combiner buffer.
You can set an initial color value with GPUREG_TEXENV_BUFFER_COLOR, then use GPU_SetCombinerBufferWrite with GPU_TEV_BUFFER_WRITE_CONFIG to allow/disallow the TEV stages to write their color outputs to the buffer.

You can retrieve the previous buffer color using GPU_PREVIOUS_BUFFER as color source in the TEV config.
2015-08-22 11:28:30 -05:00
Subv
f1b641a4ad Added the rest of the stencil operations and corrected their names. 2015-08-21 15:10:13 -05:00
Lectem
2d7a53d75f Documented GX TRANSFER_SCALE and FILL_CONTROL 2015-07-23 21:54:48 +02:00
Lectem
4109bf5b66 Fixed wrap_s and wrap_t
Those were swapped.
2015-07-20 00:20:35 +02:00
Lectem
a204c0def7 added texture border color 2015-07-08 00:17:25 +02:00
Lectem
0774378190 added texture border color 2015-07-08 00:03:01 +02:00
Lectem
594215e5e5 Added GPU_CLAMP_TO_BORDER and GPU_MIRRORED_REPEAT 2015-07-07 22:25:00 +02:00
Lectem
de687695cf added GX_SetMemoryFill control enums 2015-06-03 21:17:38 +02:00
smea
33eb72e071 Merge pull request #112 from xerpi/master
GX_SetDisplayTransfer enums, GPU_SetTexture bug, GPU sample commented
2015-05-24 21:36:25 -07:00
Lectem
53b03ef6c5 use GPU prefix instead of GL 2015-05-16 21:53:10 +02:00
Lectem
7c26d8e68d added missing texenv op 2015-05-16 21:43:34 +02:00
Sergi Granell
cf7082ad1b Added GX_SetDisplayTransfer flags enums and define helpers
Solved GPU_SetTexture bug (width and height was swapped)
Comment the GPU sample a bit more (to make it easier to understand)
2015-04-03 18:05:31 +02:00
fincs
624dc1c1b3 GPU_DepthRange() -> GPU_DepthMap() 2015-03-07 16:59:52 +01:00
smea
b7ab3f9a54 shbin.c cleanup, shaderInstanceGetUniformLocation 2015-01-02 21:22:37 -08:00
smea
5df4902c4e GPU_SetUniform -> GPU_SetFloatUniform 2015-01-02 21:16:17 -08:00
smea
8b84747df3 updated gpu.c to use new convention 2015-01-02 21:14:03 -08:00
smea
d195917ec1 minifix + geoshader stride 2015-01-02 19:39:37 -08:00
smea
80e6bcfd34 shaderProgram 2015-01-02 19:16:23 -08:00
smea
cd05cc45ff started work on shaderProgram 2015-01-02 17:15:44 -08:00
smea
05e886c9fa fixed up DVLE_SendOutmap 2014-12-27 11:22:48 -08:00
smea
db11dd9bbc GPUCMD_AddMaskedWrite, GPUCMD_AddWrite, GPUCMD_AddMaskedWrites, GPUCMD_AddWrites, GPUCMD_AddMaskedIncrementalWrites, GPUCMD_AddIncrementalWrites 2014-12-18 21:11:53 -08:00
smea
91f01e8280 added registers.h (for real this time) 2014-12-17 22:48:05 -08:00
smea
5f10c8ee74 added registers.h 2014-12-17 22:47:41 -08:00
Xeatheran Minexew
e7c3b7c8a1 Make SHDR_GetUniformRegister name argument const 2014-11-21 22:42:25 +01:00