Commit graph

59 commits

Author SHA1 Message Date
kd-11 d6159a35aa gl/vk/dx12: Fix texture scaling on unnormalized rtt access 2017-02-11 15:45:59 +03:00
kd-11 38562155d4 gl/vk: Flip wpos if origin != top 2016-09-28 07:22:45 +08:00
raven02 528b2d6c7b GL/Vulkan: not discard fragment when hits NEVER comparsion (#2156)
GL/Vulkan: return no operation when comparison is never
2016-09-26 21:59:38 +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
kd-11 0d207a6c0d 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
2016-09-21 21:41:29 +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
Oil 153a2d2b40 Fixed fog and alphakill implementation in glsl (based on DH's old commits) (#2137)
* Fixed NV4097_SET_COLOR_CLEAR_VALUE

* Fixed fog and alphakill implementation in glsl (based on DH's old commits)
2016-09-14 22:47:53 +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
raven02 6e07e07cd0 GL: enable 2-sided lighting (#2103) 2016-08-27 00:26:23 +08:00
Nekotekina cc46f2d7e6 LOG macro improved 2016-08-15 00:04:42 +03:00
Nekotekina ceb4cb59ac Typo fix: comparaison->comparison 2016-07-19 14:17:25 +03:00
kd-11 c4102f3b18 vk/gl: Enable alpha test in shaders (#1743) 2016-06-05 20:31:23 +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
Vincent Lejeune 17c4b2387e gl: Fix unnormalized coord sampling. 2016-03-31 00:12:41 +02:00
Vincent Lejeune 1dcc6858b4 d3d12/gl: Separate fog distance and fog frag in fogc input. 2016-03-05 18:25:31 +01: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 62246f75c8 d3d12/gl: Supports SSA in Fragment Shader. 2016-02-27 00:21:10 +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 ddf5b52360 Implement rectangle textures natively on OpenGL 2016-02-07 08:57:04 +03:00
Vincent Lejeune 6aac972bda d3d12/gl: Use r1 as depth output.
The "Output_from_h0" flag seems to concern color output.
There might be another flag for depth from half float value.
2016-01-19 00:45:26 +01: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
Vincent Lejeune 675ccd4510 rsx/common/d3d12/gl: Mimic divsq and rsq fragment instruction behaviour with 0.
Fix Super Puzzle Turbo HD 2 and SH3 HD
2016-01-09 23:18:05 +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 6221fecf3b common/d3d12/gl: Start implementing cubemap sampling 2015-12-16 20:36:34 +01:00
Vincent Lejeune 929f518ef3 rsx/d3d12/gl: Make output write backend dependent. 2015-12-16 20:36:31 +01:00
Vincent Lejeune 399478c2cd gl: Use const and ref for loops in GLFragmentProgram.cpp 2015-11-29 18:20:43 +01:00
Vincent Lejeune 7a996648bb gl: Use fill_gragment_constans_buffer 2015-11-28 20:41:30 +01: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
vlj c3e19f34fa gl: sampler2d are constants 2015-08-12 00:26:33 +02:00
Nekotekina 3aefa2b4e1 ThreadBase rewritten (wip) 2015-07-10 04:31:16 +03:00
Vincent Lejeune 669a54d071 GL: Factorise getFloatTypeName, getFunction and compareFunction between Fragment and Vertex Decompiler 2015-05-23 20:45:10 +02:00
raven02 67e8e0a367 RSX: DP2A for fragment decompiler 2015-05-23 20:45:09 +02:00
vlj df794b88b0 GL: Use decompiler common class 2015-05-23 20:45:08 +02:00
B1ackDaemon 2a6f11b390 Merge pull request #1089 from vlj/gl
Store Vertex/Fragment program in a hashtable and do not rebuilt FP if a constant changes
2015-05-23 02:53:48 +03:00
B1ackDaemon d5ead0d315 Merge pull request #1091 from vlj/shader-fix
gl: Fix swizzle for DIVRSQ, COS, SIN in fragment shader
2015-05-21 19:13:46 +03:00
raven02 d0c2addf91 gl: Fix IFE instruction
This fixes the rsx_fp_static_test4.ppu.elf
2015-05-21 22:34:51 +08:00
vlj d58188d7ba gl: Fix swizzle for DIVRSQ, COS, SIN, EXP2, LOG2 in fragment shader
This fix rsx_fp_static_test2.ppu.elf, rsx_fp_static_test3.ppu.elf, rsx_fp_static_test5.ppu.elf.
Likely rsx_fp_dynamic_test2.ppu.elf too
2015-05-20 19:31:21 +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
Raul Tambre 4b516273f6 Implement cellSaveDataListAutoLoad, fix textureProj 2015-02-19 22:56:57 +02:00
Raul Tambre 94c81c73c5 Implement more FP instructions 2015-01-24 21:30:36 +02:00
raven02 7880753099 FP: switch to version 420 2015-01-19 04:41:22 +08:00
DHrpcs3 1bf9e41c26 Forgot this one 2015-01-18 13:16:24 +02:00
DHrpcs3 482d470bf2 Small RSX fixes
- Fixed constants offset in FP decompiler.
- Fixed vertex textures initialization.
2015-01-18 12:51:30 +02:00
raven02 fffadb975b RSX : inline fragment naming as vertex shader 2015-01-02 08:06:42 +08:00
raven02 06907cb942 format fix 2014-12-29 06:37:32 +08:00
raven02 4907dedf69 RSX: Implement LIT instruction 2014-12-29 06:21:34 +08:00
Raul Tambre 108e879266 Fragment Program improvements and additions
+ Added TODOs for REFL, LIT, LRP, BEM, TEXBEM and TXPBEM
- Removed the warning message about TEX_SRB texture projection being
used
* Implemented packSnorm2x16, unpackSnorm2x16, packSnorm4x8 and
unpackSnorm4x8. All need more testing to be confirmed as working
2014-12-28 09:53:01 +02:00