ReinUsesLisp
368aa43389
Implement some shader instructions ( #252 )
...
* Add IADDI32, IADD and SEL shader instructions
* Add LOP shader instruction and fix LOP32I pass_b
* Add ISET shader instruction
* Add IADD3 shader instruction
* Address feedback
* Fixup OperA in Iadd_I32
2018-07-17 16:50:00 -03:00
gdkchan
e4175c19e1
Some small shader related fixes ( #258 )
...
* Some small shader related fixes
* Address PR feedback
2018-07-14 13:08:39 -03:00
ReinUsesLisp
1fc69f2792
Add FaceAttr in GLSL, unmanaged case in EmitTex and ConstantColorG80 blend factor ( #207 )
...
* Add FaceAttr (0x3fc) input attribute in GLSL
* Implement unmanaged case in EmitTex
* Add ConstantColor for 0xC001 (G80) from PR #145
2018-07-03 20:06:13 -03:00
ReinUsesLisp
a066f396b2
Explicit GLSL "position" attribute location ( #199 )
2018-06-28 22:01:58 -03:00
gdkchan
c6e873368c
Add support for Vertex Program A and other small shader improvements ( #192 )
...
* Add WIP support for Vertex Program A, add the FADD_I32 shader instruction, small fix on FFMA_I encoding, nits
* Add separate subroutines for program A/B, and copy attributes to a temp
* Move finalization code to main
* Add new line after flip uniform on the shader
* Handle possible case where VPB uses an output attribute written by VPA but not available on the vbo
* Address PR feedback
2018-06-27 23:55:08 -03:00
ReinUsesLisp
c8bedf558c
Implementation of UBOs instead of uniform constant arrays ( #186 )
...
* Sort uniform binding to avoid possible failures in drivers fewer bindings
* Throw exception for Cbuf overflow
* Search for free bindings instead of using locked ones
* EnsureAllocated when binding buffers
* Fix uniform bindings
* Remove spaces
* Use 64 KiB UBOs when available
* Remove double colon
* Use IdentationStr and avoid division in Cbuf offset
* Add spaces
2018-06-26 02:10:54 -03:00
gdkchan
a7de328a4f
Small OpenGL Renderer refactoring ( #177 )
...
* Call OpenGL functions directly, remove the pfifo thread, some refactoring
* Fix PerformanceStatistics calculating the wrong host fps, remove wait event on PFIFO as this wasn't exactly was causing the freezes (may replace with an exception later)
* Organized the Gpu folder a bit more, renamed a few things, address PR feedback
* Make PerformanceStatistics thread safe
* Remove unused constant
* Use unlimited update rate for better pref
2018-06-23 21:39:25 -03:00
gdkchan
b8786d0acc
Fix 3 graphics related issues ( #180 )
...
* Fix 3 graphics related bugs
* OGLShader shouldn't be public (yet)
2018-06-23 02:00:44 -03:00
gdkchan
f5f884f614
Minor shader fixes
2018-06-12 09:26:49 -03:00
gdkchan
14a67565c8
Fix mistake on astc conversion, make some static methods that shouldn't be public private, remove old commmented out code
2018-06-02 11:44:52 -03:00
gdkchan
5f4591a8ac
Some small gpu improvements and shader improvements, add support for ASTC 4x4 textures (slow!)
2018-06-02 00:50:56 -03:00
gdkchan
4f35cdbb70
Added support for more shader instructions and texture formats, fix swapped channels in RGB565 and RGBA5551? texture formats, allow zero values on blending registers, initial work to build CFG on the shader decoder, update the BRA instruction to work with it (WIP)
2018-05-29 20:37:10 -03:00
gdkchan
3f51356006
Improve shader sending method to GAL, use a memory interface instead of reading a fixed array size and sending every time
2018-05-22 22:43:31 -03:00
gdkchan
822a71602c
Added more shader instructions, including BFE, BRA (partial), FMNMX, ISCADD, SHL, LD_C, some shader related fixes, added support for texture component selection
2018-05-17 15:25:42 -03:00
gdkchan
a3410f482b
Ignore ZR target texture color registers on shader
2018-04-30 14:32:54 -03:00
gdkchan
556298930f
Properly support multiple vertex buffers, stub 2 ioctls, fix a shader issue, change the way how the vertex buffer size is calculated for the buffers with limit = 0
2018-04-29 17:58:38 -03:00
gdkchan
ab56c9b2af
Some small sync primitive fixes, logging fixes, started to implement the 2D engine on the GPU, fixed DrawArrays, implemented a few more shader instructions, made a start on nvdrv refactor, etc...
2018-04-25 23:12:26 -03:00
gdkchan
0fcd0c3d86
Add SvcSetThreadActivity, tweak SignalProcessWideKey, add fmul32i shader instructions and other small fixes
2018-04-19 16:18:30 -03:00
gdkchan
f4bb7344b1
[GPU] Fix frame buffer being upside down in some cases
2018-04-14 00:39:24 -03:00
gdkchan
6d474a72c1
[GPU] Remove 1f in RCP instruction emitter on glsl decompiler
2018-04-13 16:01:29 -03:00
gdkchan
933ccc72aa
[GPU] Do not use the f suffix on float contants on the shader glsl code
2018-04-13 15:53:16 -03:00
gdkchan
a0ed8de9c5
Bump glsl version to support layout qualifier
2018-04-13 15:36:12 -03:00
gdkchan
fab16f9aae
Fix for current framebuffer issues ( #78 )
...
[GPU] Fix some of the current framebuffer issues
2018-04-13 15:12:58 -03:00
gdkchan
38ea4de41f
[GPU] Add more shader instructions, add support for rgb565 textures
2018-04-10 16:50:32 -03:00
gdkchan
eacc7689ed
Merge shader branch, adding support for GLSL decompilation, a macro
...
interpreter, and a rewrite of the GPU code.
2018-04-08 16:41:38 -03:00