bunnei
47bf0b0094
shaders: Fix GCC and clang build issues.
8 years ago
bunnei
d166a50ded
gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.
8 years ago
bunnei
a859a70da1
shader_bytecode: Add FSETP and KIL to GetInfo.
8 years ago
bunnei
6fe96737a1
shader_bytecode: Add SubOp decoding.
8 years ago
bunnei
a5728bdd10
gl_shader_decompiler: Add shader stage hint.
8 years ago
bunnei
e3628ec6fd
renderer_opengl: Fix Morton copy byteswap, etc.
8 years ago
bunnei
1962aac7a0
gl_shader_manager: Implement SetShaderSamplerBindings.
8 years ago
bunnei
1a3dbd49ef
gl_rasterizer: Generate shaders and upload uniforms.
8 years ago
bunnei
8df3222eb3
gl_shader_decompiler: Basic impl. for very simple vertex shaders.
- Tested with Puyo Puyo Tetris and Cave Story+
8 years ago
bunnei
f11b2888c9
gl_shader_manager: Cleanup and consolidate uniform handling.
8 years ago
bunnei
7e7f053ea7
maxwell_3d: Make memory_manager public.
8 years ago
bunnei
4e961244a8
maxwell_3d: Fix shader_config decodings.
8 years ago
bunnei
2452d127dc
gl_rasterizer: Use shader program manager, remove test shader.
8 years ago
bunnei
f9c4e515d8
renderer_opengl: Add gl_shader_manager class.
8 years ago
bunnei
9e32fa6bb2
maxwell_to_gl: Add a few types, etc.
8 years ago
bunnei
7cebff07e4
gl_shader_gen: Add hashable setup/config structs.
8 years ago
bunnei
1aa7a9ae50
gl_shader_util: Add missing includes.
8 years ago
bunnei
f1915d909e
renderer_opengl: Use OGLProgram instead of OGLShader.
8 years ago
bunnei
56ee41ebe8
gl_shader_util: Grab latest upstream.
8 years ago
bunnei
83007952ea
gl_resource_manager: Grab latest upstream.
8 years ago
bunnei
f0f3990064
gl_shader_decompiler: Add skeleton code from Citra for shader analysis.
8 years ago
bunnei
0b49a74e19
shader_bytecode: Add initial module for shader decoding.
8 years ago
James Rowe
d8502eb24a
Fix clang format issues
8 years ago
Subv
cb3ca1d4cf
GPU: Assert when finding a texture with a format type other than UNORM.
8 years ago
Subv
c63f7aa93b
GL: Set up the textures used for each draw call.
Each Maxwell shader stage can have an arbitrary number of textures, but we're limited to a certain number in OpenGL. We try to only use the minimum amount of host textures by not keeping a 1:1 relation between guest texture ids and host texture ids, ie, guest texture id 8 can be host texture id 0 if it's the only texture used in the guest shader program.
This mapping will have to be passed to the shader decompiler so it can rewrite the texture accesses.
8 years ago
Subv
4f1665d365
GL: Bind the textures to the shaders used for drawing.
8 years ago
Subv
8bc63e89e4
GLCache: Specialize the MortonCopy function for the DXT1 texture format.
It will now use the UnswizzleTexture function instead of the MortonCopyPixels128, which doesn't seem to work for textures.
8 years ago
Subv
1e6faaf2b3
GLCache: Implemented GetTextureSurface.
8 years ago
Subv
2a5e90745c
GLCache: Support uploading compressed textures to the GPU.
Compressed texture formats like DXT1, DXT2, DXT3, etc will use this to ease the load on the CPU.
8 years ago
Subv
34b212c6a8
GL: Remove remaining references to 3DS-specific pixel formats
8 years ago
Subv
6400a3bb35
RasterizerCache: Remove 3DS-specific pixel formats.
We're only left with RGB8 and DXT1 for now. More will be added as they are needed.
8 years ago
Subv
ab6d7991f8
GL: Create the sampler objects when starting up the GL rasterizer.
8 years ago
Subv
232ffe85ad
GL: Ported the SamplerInfo struct from citra.
8 years ago
Subv
dc26ad9aec
GL: Rename PicaTexture to MaxwellTexture.
8 years ago
Subv
3c9cbbca68
GL: Added functions to convert Maxwell tex filters and wrap modes to OpenGL.
8 years ago
Subv
d9e067fad6
Textures: Added a helper function to know if a texture is blocklinear or pitch.
8 years ago
N00byKing
63b5de9c40
rasterizer_interface.h: Update from citra to yuzu
8 years ago
N00byKing
b84397745f
gl_rasterizer_cache.cpp: Update from citra to yuzu
8 years ago
N00byKing
3ca8768d3a
gl_rasterizer_cache.h: Update from citra to yuzu
8 years ago
N00byKing
2a2af539f3
renderer_opengl.h: Update from citra to yuzu
8 years ago
Subv
84c9824895
GPU: Use the MacroInterpreter class to execute the GPU macros instead of HLEing them.
8 years ago
Subv
7fe4f9491e
GPU: Implemented a gpu macro interpreter.
The Ryujinx macro interpreter and envydis were used as reference.
Macros are programs that are uploaded by the games during boot and can later be called by writing to their method id in a GPU command buffer.
8 years ago
bunnei
6333552a5d
renderer_opengl: Use better naming for DrawScreens and DrawSingleScreen.
8 years ago
bunnei
12a6c7b11b
gl_rasterizer: Move code to bind framebuffer surfaces before draw to its own function.
8 years ago
bunnei
b9eae6e652
gl_rasterizer: Add a SyncViewport method.
8 years ago
bunnei
2666b52264
gl_rasterizer: Move PrimitiveTopology check to MaxwellToGL.
8 years ago
bunnei
74c4739713
graphics_surface: Fix merge conflicts.
8 years ago
bunnei
7c376760c0
gl_rasterizer: Use ReadBlock instead of GetPointer for SetupVertexArray.
8 years ago
bunnei
95d56cac29
gl_rasterizer: Normalize vertex array data as appropriate.
8 years ago
bunnei
0e59fbd73f
maxwel_to_gl: Fix string formatting in log statements.
8 years ago