kd-11
07c83f6e44
gl: cleanup; fix program linkage on mesa using GL_ARB_explicit_uniform_location, also make use of ARB_multidraw
2017-09-21 16:17:06 +03:00
kd-11
650c1c64f1
gl: Workarounds for intel GPUs which dont seem to be truly GL4 compliant
2017-08-16 23:58:30 +03:00
kd-11
00b0311c86
rsx/gl/vulkan: Refactoring and partial vulkan rewrite
...
- Updates vulkan to use GPU vertex processing
- Rewrites vulkan to buffer entire frames and present when first available to avoid stalls
- Move more state into dynamic descriptors to reduce progam cache misses; Fix render pass conflicts before texture access
- Discards incomplete cb at destruction to avoid refs to destroyed objects
- Move set_viewport to the uninterruptible block before drawing in case cb is switched before we're ready
- Manage frame contexts separately for easier async frame management
- Avoid wasteful create-destroy cycles when sampling rtts
2017-08-16 23:58:30 +03:00
kd-11
6a707f515e
vk/gl: Factorize shared GLSL code
...
- prep vulkan for shared glsl backend
2017-08-16 23:58:30 +03:00
kd-11
d54c2dd39a
gl: Move vertex processing to the GPU
...
- Significant gains from greatly reduced CPU work
- Also reorders command submission in end() to improve throughput
- Refactors most of the vertex buffer handling
- All vertex processing is moved GPU side
2017-08-16 23:58:30 +03:00
kd-11
a69f19a9ab
rsx/decompilers: Avoid std::endl like the plague. It adds extra processing overhead
2017-06-29 13:13:19 +03:00
kd-11
6e578c4fde
rsx: Initialize declared but unset varying variables to all ones
2017-06-29 13:13:19 +03:00
kd-11
b2e906f4cc
rsx: Code cleanup. Fixes several dozen warnings
...
- Wrap unused parameters as comments to prevent C1400
- Fix sized variable conversions with explicit casts
2017-06-22 23:36:15 +03:00
kd-11
30f276a49b
gl: Properly emulate signed normalized wide integers
...
Another fix for signed normalized formats; single component vectors are swizzled
2017-06-22 23:36:15 +03:00
kd-11
98cf72e0fb
rsx: Fix clip space computations
2017-06-22 23:36:15 +03:00
kd-11
c26607de08
gl: Strict export of diff_color and spec_color for mesa compatibility ( #2779 )
...
* gl: Strict export of diff_color and spec_color for mesa compatibility
* gl: Relax the front_diff/spec rules a little
2017-05-14 11:50:24 +03:00
kd-11
7460bdfb1b
gl: Use strict vertex output declaration for better compatibility with mesa
2017-05-12 20:10:03 +03:00
kd-11
c5975d5f66
rsx: Vertex program output fixes
2017-05-12 20:10:03 +03:00
Jake
60ce85f840
[Render] Userclip for d12/vk/ogl ( #2719 )
2017-04-25 18:32:39 +08:00
kd-11
9263999ad1
[rsx/vp] Improve BRB opcode implementation
...
fix merge issues
2017-02-26 10:17:34 +03:00
kd-11
d6159a35aa
gl/vk/dx12: Fix texture scaling on unnormalized rtt access
2017-02-11 15:45:59 +03:00
O1L
6b48a72d42
GL: fixed user clip implementation
2017-01-23 23:49:17 +03:00
kd-11
2c803dbe66
gl/vk: Bug fixes and improvements ( #2206 )
...
* gl: Only bind attrib textures on thread startup
* gl: Persistent mapped buffers
* gl: Fix emulated primitives in an inlined array
* gl: Do not re-update program information every draw call
* gl/vk: s1 type is signed normalized not unsigned normalized
* gl/rsx: Allow disabling of persistent buffers for debugging
gl: Large heap size is more practical
gl: Fix a bug with legacy opengl buffers
* gl/rsx: Allow emulation of unsupported attribute formats
* gl: Fix typos and remove dprints
gl: cleanup debug prints
* ui: Move the GL legacy buffer toggle to the left pane
* vk/gl: Fix cmp type, its range is [-1,1] not [0,1] SNORM_INT
2016-10-18 15:57:28 +08:00
kd-11
7884356e90
gl/vk: Bug fixes and improvements ( #2155 )
...
* gl: Fix broken buffer reserve computation
* gl: Texture format fixes
* gl: Two sided lighting
* gl: Always update glsl output registers
* gl: Simplify vertex input declaration
* vk: Always write output registers
* vk/gl: swizzle component read on depth textures
* gl/vk: Use proper MVP matrix
gl: fix broken mvp when window_origin=top
* vk/gl: Move fragment operations block into the proxy function
2016-09-26 20:21:17 +08:00
Oil
b72f6da853
Porting of DH's user clip implementation in gl ( #2139 )
...
* Porting of DH's user clip implementation in gl
* Tweak clang-format
* rsx: Move inline array to draw_clause structure.
* rsx: Use variant based draw commands.
* rsx: Dump DRAW_ARRAYS and DRAW_INDEX_ARRAYS.
* GL: old recompiler clean up (#2142 )
* RSX texture refactor (#2144 )
* gl/vk: Enable vertex texture fetch (#2127 )
* gl: Enable vertex textures
* rsx: use textureLod instead of generic texture sample
* rsx: handle uploading of W32_X32_Y32_Z32
* gl: Re-enable proper shader logging
remove old logging method that overwrites single file
* gl: Declare texture_coord_scale for vertex samplers
* gl: texture remap fixes; enable remap for vertex textures
* gl: offset texture indices to base layer 16
* rsx: Fix W32_Z32_Y32_X32_FLOAT subresource layout
* vk: Enable vertex textures
* rsx: define special calls for vertex texture fetch
* gl: improved vertex texture fetch setup
* vk: Fix texture formats and component mapping
* vk: Implement vertex texture fetch functions properly
* vk/gl: proper fix for primitive restart index
revert inadvertent decompiler update
* gl: Disable filtering for vertex textures
* Hopefully fix appveyor build (#2148 )
* GL/Vulkan: Bug fixes and improvements; alphakill for vulkan (#2146 )
* vk: Zero-initialize some more structs
* gl: Clean up fragment program generation code
* vk: Enable alpha kill
* vk: Fix surface clear; redirect output for surface_type:b
* vk: Tie renderpass to program object to avoid incompatible passes
* vk: Properly compute descriptor pool size (#2150 )
* rsx: Set default attribute format to float.
* rsx: vertex attribute size is 1 again for CMP, let backend handles this formats properties.
* rsx: Move printing function in a separate header/cpp
* Porting of DH's user clip implementation in gl
2016-09-24 18:21:41 +08:00
kd-11
867e9210d7
gl/vk: Enable vertex texture fetch ( #2127 )
...
* gl: Enable vertex textures
* rsx: use textureLod instead of generic texture sample
* rsx: handle uploading of W32_X32_Y32_Z32
* gl: Re-enable proper shader logging
remove old logging method that overwrites single file
* gl: Declare texture_coord_scale for vertex samplers
* gl: texture remap fixes; enable remap for vertex textures
* gl: offset texture indices to base layer 16
* rsx: Fix W32_Z32_Y32_X32_FLOAT subresource layout
* vk: Enable vertex textures
* rsx: define special calls for vertex texture fetch
* gl: improved vertex texture fetch setup
* vk: Fix texture formats and component mapping
* vk: Implement vertex texture fetch functions properly
* vk/gl: proper fix for primitive restart index
revert inadvertent decompiler update
* gl: Disable filtering for vertex textures
2016-09-20 22:23:56 +08:00
raven02
bb66b97251
GL: minor fixes ( #2105 )
...
* Minor fixes
* temporary disable 2-sided lighting
* Disable user clip planes until they are properly handled
2016-08-27 14:12:44 +08:00
kd-11
3956b21cb7
vk/gl/dx12: Dynamic cb flush for vulkan; fix glsl/hlsl vertex shader generation for some games; dx12: ignore fbo textures during flip if no surface target is set ( #1766 )
...
* gl/vk/dx12: Fix vertex shader code generation for buggy games
dx12: revert vsh attribute changes
* vk: dynamically flush command buffers if we exceed available resources
* dx12: do not prepare flip texture if it has not been initialized
2016-06-11 16:24:27 +03:00
kd-11
4260f68f85
gl/vk: Fix ub256 and s32k vertex attributes; silence some unnecessary debug errors ( #1757 )
...
* gl/vk: Sample integer attribs with integer samplers
* gl: silence useless DPRINTs where behaviour has already proven correct
2016-06-08 12:39:08 +03:00
kd-11
c4102f3b18
vk/gl: Enable alpha test in shaders ( #1743 )
2016-06-05 20:31:23 +03:00
Nekotekina
266db1336d
The rest
2016-05-23 16:22:25 +03:00
Ivan
75fe95eeb1
GSL moved from stdafx.h ( #1676 )
...
Added GSL.h helper for correct including
2016-04-20 02:32:27 +03:00
kd-11
8d3235cd7c
Properly set up fog parameters for openGL
2016-03-03 01:07:53 +03:00
Vincent Lejeune
32434dd848
rsx/common/d3d12/gl: Support for fog mode.
...
Fix hitman 2
2016-02-29 16:31:18 +01:00
Vincent Lejeune
1f7a1e4078
rsx/common/d3d12/gl: Fix lit and rsq behavior near 0 in vertex shaders.
2016-02-08 17:35:49 +01:00
kd-11
7b889a10cc
Add vertex texture buffers for VS input
...
Support vertex instancing in vertex shader using VertexID
Relax OpenGL requirements by removing 4.5 features
Use EXT version of TexBufferRange; Implement buffer copy using TexBuffer
Apply travis workaround by danilaml
Fix vertex upload in in case of inlined array
2016-02-03 13:38:23 +03:00
Vincent Lejeune
69272edba6
gl: Fix warnings and enable trat warning as error.
2016-01-13 23:53:11 +01:00
Vincent Lejeune
bab52c132d
rsx/common/d3d12/gl: Clean ProgramStateCache
...
Use a_b_c format.
Use using =
Use tuple as output
Use RAII to delete program safely
Ensure const correctness.
2016-01-11 19:21:57 +01:00
Nekotekina
3ed603074c
Changes done by [DH] rewritten
...
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
Vincent Lejeune
5447521ce5
gl: Use uniform buffer for transform constants.
2015-11-19 20:26:14 +01:00
Vincent Lejeune
e2d0a63b98
gl: Use factored scale offset function call
2015-11-15 22:52:39 +01:00
Vincent Lejeune
b0f8611f49
Common/GL/D3D12: Fix int vector ctor in vertex shader and a compare opcode.
2015-10-15 17:13:42 +02:00
DH
3721941ffb
Fixed OpenGL renderer crash
...
Temporary downgraded OpenGL requirements to OpenGL 3.1 (GLSL 1.40)
Fixed some D3D12 Renderer compilation errors
2015-10-05 18:40:22 +03:00
Nekotekina
3aefa2b4e1
ThreadBase rewritten (wip)
2015-07-10 04:31:16 +03:00
vlj
2dbac65613
GL: Fix output swizzling for fog and clip distance
2015-05-24 17:09:05 +02:00
Vincent Lejeune
669a54d071
GL: Factorise getFloatTypeName, getFunction and compareFunction between Fragment and Vertex Decompiler
2015-05-23 20:45:10 +02:00
raven02
79cb025d25
RSX : factorize DPH
2015-05-23 20:45:09 +02:00
vlj
df794b88b0
GL: Use decompiler common class
2015-05-23 20:45:08 +02:00
vlj
2a7c65c019
GL: Use pipeline cache
2015-05-19 17:26:06 +02:00
Nekotekina
f92c10ef71
Minor fixes
2015-05-08 12:45:21 +03:00
O1L
99ea666bf2
Implemented binary vertex program disassembler
2015-02-23 16:22:30 +04:00
Raul Tambre
e2d2c9d377
Fix stacksize
2015-02-20 15:55:00 +02:00
raven02
546619ee24
VP: switch to version 420
2015-01-19 04:42:00 +08:00
Nekotekina
1c4e89d2bf
Formatting fixes, ToBE() replaced with data()
2015-01-13 17:54:36 +03:00
raven02
24a19a0dd9
format fix
2014-12-29 06:42:08 +08:00