bunnei
4a8eb6745e
maxwell3d: Allow Texture2DNoMipmap as Texture2D.
8 years ago
Subv
636ad34707
MaxwellToGL: Implemented tex wrap mode 1 (Wrap, GL_REPEAT).
8 years ago
Subv
7fc516cc1a
MaxwellToGL: Added a TODO and partial implementation of maxwell wrap mode 4 (Clamp, GL_CLAMP).
This clamp mode was removed from OpenGL as of 3.1, we can emulate it by using GL_CLAMP_TO_BORDER to get the border color of the texture, and then manually sampling the edge to mix them in the fragment shader.
8 years ago
bunnei
77bdc49343
gl_rendering: Use NGLOG* for changed code.
8 years ago
bunnei
1a1af3fda3
gl_rasterizer: Implement indexed vertex mode.
8 years ago
Subv
477aab5960
GPU: Use the same buffer names in the generated GLSL and the buffer uploading code.
8 years ago
Subv
14ac40436e
GPU: Don't use explicit binding points when uploading the constbuffers to opengl.
The bindpoints will now be dynamically calculated based on the number of buffers used by the previous shader stage.
8 years ago
Subv
e128e90350
GPU: Don't use GetPointer when uploading the constbuffer data to the GPU.
8 years ago
Subv
7da47da66e
GPU: Use the buffer hints from the shader decompiler to upload only the necessary const buffers for each shader stage.
8 years ago
bunnei
73d9c494ea
shaders: Expose hints about used const buffers.
8 years ago
Subv
c9b511da08
GPU: Upload the entirety of each constbuffer for each shader stage as SSBOs.
We're going to need the shader generator to give us a mapping of the actual used const buffers to properly bind them to the shader.
8 years ago
Subv
1957640ea2
GPU: Allow configuring ssbos in the opengl state manager.
8 years ago
Subv
ae58e46036
GPU: Added a function to determine whether a shader stage is enabled or not.
8 years ago
bunnei
1b41b875dc
shaders: Add NumTextureSamplers const, remove unused #pragma.
8 years ago
bunnei
e6224fec27
shaders: Address PR review feedback.
8 years ago
bunnei
eabeedf6af
gl_shader_decompiler: Cleanup log statements.
8 years ago
bunnei
0d408b965b
shaders: Fix GCC and clang build issues.
8 years ago
bunnei
86135864da
gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.
8 years ago
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