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
db27ea923d
VP: add few opcodes comment for vec/sca ( #1750 )
2016-06-10 01:03:43 +03:00
raven02
8f67c910ab
FP: Implement REFL and LRP ( #1712 )
2016-06-04 10:23:45 +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
raven02
42423588c8
Use native function for OP_CODE_PK2/UK2 and UP2/UK2
2016-05-21 22:08:34 +08:00
Ivan
aafcf44581
Header optimizations ( #1684 )
...
Shouldn't break anything. I hope.
2016-04-27 01:27:24 +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
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
Vincent Lejeune
cbe119b457
rsx/common: Remove MIN2/MAX2 macro.
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
a8e15ce18a
Fix forced_unit for unimplemented instructions
...
For SCT and SCB, the forced unit is always set to FORCE_NONE before
handling of the instruction. This makes the error for unimplemented
instructions' forced unit be incorrect. This fixes that.
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
91d0229bc5
rsx/common: Use an help texture_dimension_extended to handle cubemap more cleanly.
2016-03-30 22:19:29 +02:00
Vincent Lejeune
b7c539ad7a
rsx/common: Make get_exact_mipmap_count take compressed format into account
2016-03-30 22:19:29 +02:00
Vincent Lejeune
f2c82d3cf4
rsx/common: Use a typed class for texture dimension.
2016-03-30 20:03:50 +02:00
kd-11
0327e76320
Fix quad strip triangle winding
2016-03-24 10:52:35 +03:00
Vincent Lejeune
b00acff9dd
rsx/common: Turn alignment constraints in textureUtils to multiple_of constraints.
2016-03-22 19:06:09 +01:00
Vincent Lejeune
284d2c43f9
rsx/common: Use protected instead of private for surface_store content.
2016-03-22 19:06:09 +01:00
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
Vincent Lejeune
929f518ef3
rsx/d3d12/gl: Make output write backend dependent.
2015-12-16 20:36:31 +01:00
Vincent Lejeune
6fae5863cf
common/d3d12/gl: Add support for textureProj
2015-12-16 20:36:29 +01:00
Jake
52be47ca89
rsx: Style changes
2015-12-02 07:06:40 -06:00
Jake
19cf749944
rsx: fix convert_linear_swizzle converting backwards
2015-12-02 04:22:19 -06:00
Jake
178bcfc8df
rsx: Improve NV3089_IMAGE_IN_SIZE and use faster loop for swizzle conversions
2015-12-02 04:22:18 -06:00
Vincent Lejeune
a21c9f9861
rsx: Avoid mixing float4 and int4 in declaration of AddrReg.
2015-11-30 17:35:51 +01:00
Vincent Lejeune
c86cfef58e
rsx/common: Remove getFragmentConstantOffsetsCache
2015-11-28 20:58:00 +01:00
Vincent Lejeune
b9d8d9383a
rsx/d3d12: dump program content when capturing frame
2015-11-24 23:34:03 +01:00
Vincent Lejeune
3e5f0e5c37
rsx: Add missing SCB DIVSQ opcode support
...
Fix a lot of gfx glitches in SH3 HD
2015-11-19 19:24:58 +01:00
Vincent Lejeune
9fdc458d69
rsx: Make SCT/SCB/TEX SRB function complete member of FragmentProgram
2015-11-19 19:24:57 +01:00
Vincent Lejeune
a79ffdb485
rsx/common: Fix ARL register type and write function in vtx shader
2015-11-15 17:20:41 +01:00
Vincent Lejeune
ae5d95d462
rsx/common: Take primitive restart index in account and turns it into -1.
2015-11-12 18:29:01 +01:00
Raul Tambre
fac9d74344
Lots of defect fixes
2015-11-09 07:39:50 +02:00
Vincent Lejeune
2a9895b7f0
rsx/d3d12: Move fragment constants filling code to ProgramStateCache
2015-11-06 20:08:45 +01:00
Vincent Lejeune
2ad7051746
rsx/d3d12: Move vertex constants filling code to RSXThread
2015-11-06 20:08:41 +01:00
Vincent Lejeune
02ce78482c
rsx/d3d12: Move scale offset buffer setting to RSXThread
2015-11-06 20:08:17 +01:00
Vincent Lejeune
1ec18bdf64
RSX/common: Clean BufferUtils code
...
* Add noexcept
* Use a_b_c code style
* Use anonymous namespace
2015-10-29 18:48:50 +01:00
Vincent Lejeune
42467ba40f
RSX/common: Clean TextureUtils code.
...
* Use a_b_c code style
* Add noexcept
* Use anonymous namespace
2015-10-29 18:48:50 +01:00
Vincent Lejeune
9f49232cac
d3d12: Avoid copying index data and use correct index range.
...
This fixes Braid.
2015-10-27 01:24:04 +01:00
Vincent Lejeune
a2997a1109
d3d12: Avoid an extra vertex copy
2015-10-15 17:13:43 +02: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
Nekotekina
a974ee009e
vm::var improved, cleanup
...
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
DH
4a55ba3067
OpenGL renderer improvements
...
Flush program cache at thread exit
Use cached locations
2015-10-14 03:16:39 +03:00
Vincent Lejeune
a63fdf6c45
Use files from master
...
- Drop smart vertex storage and use OpenGL's one instead.
2015-10-13 14:27:17 +02:00
Vincent Lejeune
60bccf0f10
Remove RSXVertexArray
2015-10-13 00:04:12 +02:00
Vincent Lejeune
d27f6c8fa7
Use rsx::limits values
2015-10-13 00:04:05 +02:00
Vincent Lejeune
6f71d04aa4
move linear to swizzle and get_size_type
...
symbol undef though
2015-10-13 00:04:04 +02:00
Vincent Lejeune
3de47c201c
RSX: Create a rsx namespace.
...
Put get_address inside.
2015-10-13 00:04:04 +02:00
Vincent Lejeune
f483c3b9ca
Revert "Merge pull request #1245 from DHrpcs3/master"
...
This reverts commit 5feba39ff7 , reversing
changes made to ebf28f8da0 .
2015-10-09 20:04:20 +02:00
DH
6cb036d35f
Fix for gcc/clang build
2015-10-08 00:05:04 +03:00
DH
cc0c3fc98d
Implemented fragment constants loading (OpenGL renderer)
...
Fixed nv308a::color
Minor improvements
2015-10-07 17:36:26 +03:00
DH
4fdeeace66
D3D12Renderer: fixed some compilation errors
...
Removed GSFrameBase2 and D3DGSFrame.
Added frame for NullRender.
Minor improvements and fixes
2015-10-05 13:03:23 +03:00
Vincent Lejeune
d511153836
Common: Fix element count computation if addr is null (RSXVertexData)
2015-10-05 01:57:57 +02:00
Vincent Lejeune
c7b7d1f71f
Common: Move generic vertex buffer code from d3d12 backend
2015-10-03 18:25:19 +02:00
Vincent Lejeune
62d7bf2159
Common: Move generic upload texture code from d3d12
2015-10-03 18:25:18 +02:00
Raul Tambre
ea376e7751
Implement console_write and GetHomeDataExportPath
2015-09-12 14:11:26 +03:00
Raul Tambre
4666f190db
Fix BRI instruction, fixes #1165
2015-09-07 20:14:00 +03:00
Vincent Lejeune
095c8fa19b
RSX/D3D12: Improve shader lookup performance
2015-08-26 18:45:57 +02:00
Nekotekina
ce494f8847
fmt::by_value, fmt::Format removed
2015-08-24 21:22:42 +03:00
vlj
6a408301d7
d3d12: Another fix
2015-08-12 00:28:35 +02:00
vlj
312ff7e8f5
RSX: Fix for default value of temp reg
2015-08-12 00:25:33 +02:00
Nekotekina
8c00dcd02d
Bugfix
2015-07-10 04:31:21 +03:00
Nekotekina
ef6f9f6ded
be_t constructor implemented, make() eliminated
...
be_t enums are forbidden, le_t improved, some operators cleaned.
2015-07-10 04:31:07 +03:00
Nekotekina
edb9595721
Using vm::ps3 namespace moved in proper places
...
Various fixes
2015-07-10 04:30:41 +03:00
raven02
2d6dd873cd
FP: RSQ instruction alternative
2015-05-23 20:45:12 +02:00
raven02
f98b03b61f
VP: use getFloatTypeName() with compare instructions
2015-05-23 20:45:11 +02:00
raven02
eac5147a45
FP: fix SFL instruction
2015-05-23 20:45:11 +02:00
raven02
bebd437a7e
RSX: use getFloatTypeName
2015-05-23 20:45:10 +02:00
raven02
79cb025d25
RSX : factorize DPH
2015-05-23 20:45:09 +02:00
raven02
f961a2e3b4
GL: fix IFE instruction
2015-05-23 20:45:08 +02:00
vlj
2416d49dba
RSX: Add a class factorizing decompiler code
2015-05-23 20:45:07 +02:00
vlj
145f411324
RSX: Add a template class that helps caching programs.
2015-05-19 17:26:05 +02:00