Commit graph

102 commits

Author SHA1 Message Date
Vincent Lejeune
5de70628d7 rsx/common/d3d12/gl/vulkan: Unify texture upload code. 2016-03-14 19:10:51 +01:00
kd-11
82bc41f4ad rsx: support for more formats
rsx: support R5G5B5A1 textures
2016-03-11 18:02:29 +03:00
kd-11
bd52bcf8d4 Fix nvidia crash (API version). Fix linux builds
Properly set up vulkan API version when creating instance

Fix gcc error about passing function result by reference

Fix alot of warnings in VKGSRender project

More fixes for gcc

Fix texture create function
2016-03-10 23:55:25 +03:00
kd-11
3b6e3fb3b4 Rework vertex upload code and fix indexed renders
Rebase on current master; Refactor vertex upload code

Fix build; Minor fixes

Start preparations for merge

Fix generic indexed drawing bugs

Define WIN32_KHR only for windows

Remove linking against vulkan-1.lib
2016-03-10 23:55:25 +03:00
kd-11
2ae687cf00 Properly compute texture size 2016-03-05 18:54:06 +03:00
Vincent Lejeune
9cdb74efc7 rsx/common: Add supports for quads strip
Used in Hitman 2
2016-02-27 19:38:16 +01:00
Vincent Lejeune
a6ba47265f rsx/common/gl: s32k is actually signed short unormalized.
gl fix
2016-02-27 00:21:12 +01:00
Vincent Lejeune
a6d8d1144c rsx/common: Supports D24X8 texture format when copying
Some app uses this type before setting proper depth surface
2016-02-27 00:21:08 +01:00
Vincent Lejeune
5ef7f8bf3e rsx/common: Fix handling of UB256 2016-02-27 00:21:06 +01:00
kd-11
8a3d15d4fe Handle swizzled CELL_GCM_B8 textures
Properly handle swizzled single-channel textures
2016-02-24 17:44:24 +03:00
Vincent Lejeune
5a14644cd4 rsx/common/d3d12/gl: Use span in vertex upload function. 2016-02-22 20:22:47 +01:00
Vincent Lejeune
1675a82efd rsx/common/d3d12/gl: Use gsl::span in TextureUtils.cpp
* get_placed_texture_storage_size returns more accurate result (fix crash in Outrun)
* Factors lot of code and use integer type more carrefully
* Treat warning as error in TextureUtils.cpp
2016-02-16 18:08:22 +01:00
Vincent Lejeune
837e06e85b rsx/common/d3d12: Support non default alpha function
Fix After burner climax cloud effects.
2016-02-13 17:07:12 +01:00
kd-11
843d0ed298 Fragment position is given as gl_FragCoord not gl_Position
Fix references to gl_Position in Dx12
2016-02-12 18:34:41 +03:00
Vincent Lejeune
f0dc38cadd rsx/common/d3d12: Support back spec/diffuse color.
Fix green car in Outrun.
2016-02-08 17:35:52 +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
5f35f2ac7d rsx/common/d3d12: Support for texture 1d too.
They are used in after burner climax
2016-01-30 01:13:15 +01:00
Vincent Lejeune
149fa9d750 rsx/common: Make RSXFragmentProgram key and not just pointer. 2016-01-27 23:16:06 +01:00
Vincent Lejeune
acd384ae2d rsx/common: Base offset is actually correctly supported.
Outrun uses it and cars are correctly displayed.
2016-01-27 22:05:43 +01:00
Nekotekina
7417033d7f GLGSRender fix 2016-01-27 18:14:39 +03:00
Vincent Lejeune
3c3f92f29b rsx/common/d3d12: Support 3d textures 2016-01-26 17:56:02 +01:00
Vincent Lejeune
24255f7883 rsx/common/d3d12/gl: Add some texture info to RSXFragmentProgram 2016-01-26 17:56:01 +01:00
Vincent Lejeune
9b8522e734 rsx/common: Div is vector over scalar division
According to investigation on Resogun.
2016-01-24 00:13:17 +01:00
Vincent Lejeune
4ce4cf5242 rsx: Add vertex input and output in RSXVertexProgram. 2016-01-22 01:24:54 +01:00
DHrpcs3
19ce0cdc09 rsx methods constants moved to rsx namespace
minor fix
2016-01-20 20:12:48 +03:00
DHrpcs3
7972cb5bdc Code style fixes #1 2016-01-20 16:23:25 +03:00
Vincent Lejeune
440c637b1f rsx/common/d3d12: Move surface_store in common 2016-01-19 22:49:10 +01:00
Vincent Lejeune
1ce49b60d9 rsx-debug/d3d12: Support all rtt formats. 2016-01-17 20:02:30 +01:00
Nekotekina
960668ecf1 For #1355
offsetof() eliminated
OFFSET_32, SIZE_32, ALIGN_32 used
2016-01-14 19:07:27 +03:00
Nekotekina
38531459df Logging system rewritten
GUI doesn't freeze anymore
Some things simplified
2016-01-13 18:54:57 +03:00
Vincent Lejeune
689dee9944 rsx/common/d3d12: Consider separate index range as a whole.
Fix Wolf of the Battlefield 3
2016-01-13 00:28:48 +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
4ef76866a5 rsx/common/d3d12/gl: Support texture lod sampling. 2016-01-10 00:16:26 +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
Vincent Lejeune
d153575e59 rsx/common/d3d12/gl: Support for CMP/non pow of 2 size vertex formats.
Also use class enum for base_vertex_type everywhere.
Fix Bomberman Ultra color and Cubixx HD geometry.
2016-01-09 23:18:03 +01:00
DHrpcs3
48919330d7 rsx methods moved from rsx thread 2016-01-06 13:30:24 +02:00
DHrpcs3
ba12c489ec gl: using tiled region for read/write color buffers and flip
gl: fixed flip buffer row length
compilation fixes
2016-01-06 13:30:23 +02:00
Vincent Lejeune
3586c7613a rsx/common: Fix program state cache Shader program comparaison.
Comparaison was not taking the last instruction of shader into account.
Also remove "constant masking" since it wasn't actually usefull.

Fix DBZ: Burst Limits, SH3 and likely much more games.
2016-01-02 00:47:51 +01:00
Vincent Lejeune
5f12a4f7b5 rsx/common/d3d12/gl: Use separate vertex array/vertex register states. 2015-12-30 17:04:34 +01:00
Vincent Lejeune
969e2d8c57 rsx/common: Support RSX_FP_OPCODE_DIV for scb
Fix glitches in dbz
2015-12-29 17:08:01 +01:00
Vincent Lejeune
9c6539ea2d rsx/common/d3d12: Force depth to be at least 1. 2015-12-23 22:26:18 +01:00
Vincent Lejeune
a97dc349b7 rsx/common: If swizzle bit is not set then there is no padding, even for dxtc textures.
Fixes some textures in dbz and after burner climax.
2015-12-23 22:26:16 +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
DHrpcs3
d8bef46c2a Do not use global static variables in headers 2015-12-21 05:35:56 +02:00
Nekotekina
aa811b6eef Cleanup (noexcept, unreachable)
%x formatting fixes
2015-12-20 15:41:07 +03:00
Vincent Lejeune
69b3828086 rsx/common: Vertex program condition swizzle should apply to cc0, not float4(0.) 2015-12-16 20:36:50 +01:00
Vincent Lejeune
1cda2977bb common/d3d12: emulate polygon mode 2015-12-16 20:36:36 +01:00
Vincent Lejeune
6221fecf3b common/d3d12/gl: Start implementing cubemap sampling 2015-12-16 20:36:34 +01:00
Vincent Lejeune
80dc122742 common/d3d12: Clean texture upload code.
Some typos are fixed in the process
2015-12-16 20:36:32 +01:00