Commit graph

619 commits

Author SHA1 Message Date
raven02
a270ac7f02 GL: re-use common fp/vp decompiler (#2100) 2016-08-26 22:23:23 +08:00
Vincent Lejeune
42b518cf7e rsx: use range for vertex buffer attribute. 2016-08-24 21:58:59 +02:00
raven02
12099b3144 RSX: fix invalid format (0x1) (#2088) 2016-08-24 02:08:05 +08:00
raven02
51bdf1e3ed DX12: fix invalid dimension (#2086)
DX12: workaround invalid texture dimension
2016-08-23 11:06:01 +08:00
Nekotekina
84d0d396ed EXPECTS usage removed 2016-08-15 16:29:38 +03:00
Nekotekina
56b9b38c9c verify() fix 2016-08-15 14:59:19 +03:00
Nekotekina
05fb57baff VERIFY macro removed 2016-08-15 03:13:31 +03:00
Nekotekina
1f3433464c ENSURES usage removed 2016-08-14 22:41:01 +03:00
Nekotekina
a7e808b35b EXCEPTION macro removed
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Vincent Lejeune
eb1d4811de rsx: Use a "draw clause" object in rsx_state. 2016-08-05 23:33:40 +02:00
Vincent Lejeune
7a6f5b6ee5 rsx: Move index pointer generation in rsx::thread. 2016-08-05 17:54:44 +02:00
Nekotekina
5a36c57c57 Formatting system improved
`unveil<>` renamed to `fmt_unveil<>`, now packs args to u64 imitating va_args
`bijective...` removed, `cfg::enum_entry` now uses formatting system
`fmt_class_string<>` added, providing type-specific "%s" handler function
Added `fmt::append`, removed `fmt::narrow` (too obscure)
Utilities/cfmt.h: C-style format template function (WIP)
Minor formatting fixes and cleanup
2016-08-04 21:34:00 +03:00
raven02
0ae8cc4467 D3D12: revert heap size back to 896M (#1960)
* D3D12: revert heap size back to 896M

* Update D3D12GSRender.h
2016-07-21 14:50:06 +08:00
Nekotekina
ae634bb87e RSX exception fix
VBlank thread management fix
2016-07-20 15:16:19 +03:00
Vincent Lejeune
e9bee80f4b rsx: Use register_decoder for vertex attributes. 2016-07-19 20:28:32 +02:00
kd-11
854bc1db60 dx12: simplify constant color blend equation/algorithm checks 2016-07-19 19:20:57 +03:00
kd-11
d3837de571 dx12: Constant color/alpha blending 2016-07-19 19:20:57 +03:00
raven02
e1ff3f4674 rsx: use fragment_textures_count (#1948)
* rsx:  use fragment_textures_count

* Typo: unknow -> unknown
2016-07-19 22:50:40 +08:00
Nekotekina
ceb4cb59ac Typo fix: comparaison->comparison 2016-07-19 14:17:25 +03:00
raven02
6296453ef3 D3D12: inline stencil test as GL and Vulkan backend (#1945) 2016-07-19 16:52:14 +08:00
raven02
7ac9d3b679 D3D12/Vulkan : swizzle texture format G8B8 (#1931)
* D3D12: swizzle texture format G8B8

* Vulkan: swizzle texture format G8B8
2016-07-18 20:16:11 +08:00
kd-11
2337bf204c vk/dx12: Enable/fix separate back and front lighting (#1927)
* vk: separate specular color

rsx: separate front color output from back color output

re-enable front-back diffuse lighting

vk: fix front face selection and actually enable face culling

* dx12: Hide constant-key blended visuals (by common use of factor, 1-factor)

* dx12: Fix 2 sided lighting when the shader does not compute both outputs

* vk/dx12: confirm that src register exists before copying for 2-sided lighting
2016-07-18 00:57:50 +08:00
raven02
87e38118a5 Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE (#1898) 2016-07-12 21:52:11 +08:00
raven02
dfa968863a DX12: get_scissor() fix (#1868) 2016-07-09 01:00:15 +08:00
Vincent Lejeune
772706ca4c Factorize rsx state 2016-07-07 21:38:57 +02:00
raven02
effd379c25 Vulkan/DX12 : refactor cull face code (#1849)
* Vulkan/DX12 : refactor cull face code

1

* Add optimal build options to CMakeLists (#1841)

Provides two options when building RPCS3

    USE_SYSTEM_FFMPEG BOOL (default: OFF)
    USE_SYSTEM_LIBPNG BOOL (default: OFF)

These options lets the user select between the system provided and builtin libraries of ffmpeg and libpng to overcome possible system issues.

Also adds support for older libpng releases if the user doesn't have libpng 1.5 or higher.

* DX12: depth buffer compare should perform only if depth testing is enabled (#1848)

* GL: front face regression fix (#1854)

* GUI: Add bulk decryption of LLE modules (#1845)

Adds a new menu to "Tools" called "&Decrypt SPRX libraries" which opens a dialog to select
multiple *.sprx files, which are than decrypted all at once.
This speeds up the LLE module decryption and saves users a lot of time.

The output path is the same where the input module resides and the extension is changed
to *.prx

* vk: Avoid double-copy for vertex attributes (#1852)

* vk: Avoid double-copy for vertex attributes

fix buffer overflow

vk: Fix vertex attrib offset_in_dst for batched draw calls

* whitespace fix only
2016-07-03 10:35:51 +08:00
raven02
45d41267f5 DX12: depth buffer compare should perform only if depth testing is enabled (#1848) 2016-07-01 15:02:40 +08:00
raven02
d22017bfca DX12: using better approximation for constant color/alpha blending (#1839)
* DX12: using better approximation for constant color/alpha blending

* typo fix

* Comment updated.
2016-06-28 20:19:04 +08:00
raven02
2c10348408 DX12 : add remaining constant color/alpha blending (#1834) 2016-06-27 20:40:53 +08:00
raven02
244f3dfb89 DX12: set the heap size based on available vram (#1786) 2016-06-19 11:01:11 +08:00
raven02
079411eee8 Texture format W16_Z16_Y16_X16_FLOAT fix (#1777) 2016-06-17 09:32:07 +03:00
raven02
ea528a1ced Write shader log in seperate directory (#1755)
Write shader log in separate directory
2016-06-13 19:53:50 +03:00
raven02
caf5894152 Vulkan: add two sided stencil/logic op/depth bounds test support (#1767)
* Vulkan: add two sided stencil support

* Vulkan: add logic op support

* Vulkan: add depth bound test support

* Drop off wrong case

* Minor fixes
2016-06-13 14:10:59 +03: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
35ab3b0cd8 gl/vk/dx12: re-implement pack/unpack operations (#1764)
dx12: implement pack/unpack operations

dx12: Fix shader compilation when pack/unpack is used

dx12: pk16/up16 - relax half-float range to more realistic values
2016-06-10 14:42:48 +03:00
raven02
9710044134 Remap color component depends on RTT or RSX memory (#1744) 2016-06-05 11:11:58 +03:00
raven02
8f67c910ab FP: Implement REFL and LRP (#1712) 2016-06-04 10:23:45 +03:00
kd-11
2bcc755fca Ignore clear if surface target is set to CELL_GCM_SURFACE_TARGET_NONE 2016-06-03 17:07:48 +03:00
raven02
df6ee9c29d DX12: fix for surface color format (#1709)
#1652
#1594
2016-05-30 00:53:28 +03:00
raven02
fc1408e643 FP: Implement texture lookup with explicit gradients (#1706) 2016-05-29 18:33:41 +03:00
Nekotekina
266db1336d The rest 2016-05-23 16:22:25 +03:00
Nekotekina
b85a68e8a1 Partial commit: RSX 2016-04-15 19:22:36 +03:00
Vincent Lejeune
3a3d264cb5 rsx/common/d3d12/gl/vulkan: Set dst stride in write_vertex_array_data_to_buffer. 2016-04-07 22:17:28 +02:00
Vincent Lejeune
2ae5a7ff39 rsx/common/d3d12/gl/vulkan: Use single overload for write_index_array_data_to_buffer. 2016-04-07 22:17:28 +02:00
Vincent Lejeune
2e17ea1490 rsx/common/d3d12/vulkan: Factorise data_heap between vulkan and d3d12. 2016-04-07 22:17:28 +02:00
Raul Tambre
5ad060f150 Vulkan/DX12: Texture format fixes
DX12 also had a couple fixes
2016-04-07 21:34:32 +03:00
Raul Tambre
3ee56627eb DX12 texture format fixes and improvements 2016-04-07 21:34:32 +03:00
Vincent Lejeune
ce072f25e2 d3d12: Move sampler DescriptorHeap selection in D3D12GSRender
Avoid sampler descriptor being stored on 2 heaps inside a single draw
call. Fix somes crashes.
2016-03-31 17:56:30 +02:00
Vincent Lejeune
91d0229bc5 rsx/common: Use an help texture_dimension_extended to handle cubemap more cleanly. 2016-03-30 22:19:29 +02:00
Vincent Lejeune
73233fd347 rsx/common: Use typed class for texture filters. 2016-03-30 20:03:50 +02:00