bunnei
7639667562
shader_bytecode: Add FSETP and KIL to GetInfo.
8 years ago
bunnei
5a47832221
shader_bytecode: Add SubOp decoding.
8 years ago
bunnei
50023bdae7
gl_shader_decompiler: Add shader stage hint.
8 years ago
bunnei
a992aac5eb
renderer_opengl: Fix Morton copy byteswap, etc.
8 years ago
bunnei
0ca8fce9d0
gl_shader_manager: Implement SetShaderSamplerBindings.
8 years ago
bunnei
beddc8afd2
gl_rasterizer: Generate shaders and upload uniforms.
8 years ago
bunnei
85d77a3d24
gl_shader_decompiler: Basic impl. for very simple vertex shaders.
- Tested with Puyo Puyo Tetris and Cave Story+
8 years ago
bunnei
51f37f5061
gl_shader_manager: Cleanup and consolidate uniform handling.
8 years ago
bunnei
35aca0bf1f
maxwell_3d: Make memory_manager public.
8 years ago
bunnei
33bb53571b
maxwell_3d: Fix shader_config decodings.
8 years ago
bunnei
5617831d5f
gl_rasterizer: Use shader program manager, remove test shader.
8 years ago
bunnei
459826a705
renderer_opengl: Add gl_shader_manager class.
8 years ago
bunnei
8aa21a03b3
maxwell_to_gl: Add a few types, etc.
8 years ago
bunnei
10953495c1
gl_shader_gen: Add hashable setup/config structs.
8 years ago
bunnei
2fcbb35ad2
gl_shader_util: Add missing includes.
8 years ago
bunnei
da1114ca59
renderer_opengl: Use OGLProgram instead of OGLShader.
8 years ago
bunnei
4f2b2d0bc5
gl_shader_util: Grab latest upstream.
8 years ago
bunnei
dbfd106ba0
gl_resource_manager: Grab latest upstream.
8 years ago
bunnei
ed7e597b44
gl_shader_decompiler: Add skeleton code from Citra for shader analysis.
8 years ago
bunnei
4e7e0f8112
shader_bytecode: Add initial module for shader decoding.
8 years ago
James Rowe
0b855f1c21
Fix clang format issues
8 years ago
Subv
dcc27d6dc1
GPU: Assert when finding a texture with a format type other than UNORM.
8 years ago
Subv
b0ca330e14
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
cb3183212d
GL: Bind the textures to the shaders used for drawing.
8 years ago
Subv
65faeb9b2a
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
b258403f0d
GLCache: Implemented GetTextureSurface.
8 years ago
Subv
65ea52394b
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
73eaef9c05
GL: Remove remaining references to 3DS-specific pixel formats
8 years ago
Subv
b305646c44
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
c28ed85875
GL: Create the sampler objects when starting up the GL rasterizer.
8 years ago
Subv
ca96b04a0c
GL: Ported the SamplerInfo struct from citra.
8 years ago
Subv
0171ec606b
GL: Rename PicaTexture to MaxwellTexture.
8 years ago
Subv
f73a280eeb
GL: Added functions to convert Maxwell tex filters and wrap modes to OpenGL.
8 years ago
Subv
ad1810e895
Textures: Added a helper function to know if a texture is blocklinear or pitch.
8 years ago
N00byKing
d1d7582a5b
rasterizer_interface.h: Update from citra to yuzu
8 years ago
N00byKing
27dbbd8227
gl_rasterizer_cache.cpp: Update from citra to yuzu
8 years ago
N00byKing
cfc28e0c1a
gl_rasterizer_cache.h: Update from citra to yuzu
8 years ago
N00byKing
ca17f581f5
renderer_opengl.h: Update from citra to yuzu
8 years ago
Subv
11b4ab9685
GPU: Use the MacroInterpreter class to execute the GPU macros instead of HLEing them.
8 years ago
Subv
1ec8d2123d
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
5e343edc9e
renderer_opengl: Use better naming for DrawScreens and DrawSingleScreen.
8 years ago
bunnei
c33abac275
gl_rasterizer: Move code to bind framebuffer surfaces before draw to its own function.
8 years ago
bunnei
d30110348b
gl_rasterizer: Add a SyncViewport method.
8 years ago
bunnei
67bc2f5ecd
gl_rasterizer: Move PrimitiveTopology check to MaxwellToGL.
8 years ago
bunnei
666d53299c
graphics_surface: Fix merge conflicts.
8 years ago
bunnei
ac19e3d061
gl_rasterizer: Use ReadBlock instead of GetPointer for SetupVertexArray.
8 years ago
bunnei
a6cab532f8
gl_rasterizer: Normalize vertex array data as appropriate.
8 years ago
bunnei
527ce12ce4
maxwel_to_gl: Fix string formatting in log statements.
8 years ago
bunnei
d89bfec5f5
rasterizer: Rename DrawTriangles to DrawArrays.
8 years ago
bunnei
1bfc0dc2db
gl_rasterizer: Use passthrough shader for SetupVertexShader.
8 years ago