Commit Graph

6059 Commits

Author SHA1 Message Date
patrickvl a0de74ffd9 Make sure all HLSL parameters regardless their swizzle, are cast to float4 before the actual calculation commences 2019-12-18 20:12:17 +01:00
patrickvl 8ed16b9f5a Reorder vertex shader decoding code 2019-12-18 20:12:15 +01:00
PatrickvL 07ceaf96d5 Avoid all implicit typecast warnings, by casting all HSLS calculations to a float4, and apply the output mask to that as well 2019-12-18 20:12:15 +01:00
PatrickvL 339af7b500 Pass mask as argument into the opcode defines.
Also fixed a few HLSL issues that crept in the previous commit
2019-12-18 20:12:15 +01:00
PatrickvL 5b2ff4e278 Simpler determination of used parameters per opcode 2019-12-18 20:12:14 +01:00
PatrickvL 127e51302e Wrap (or replace) HLSL functions with defines, so that destination swizzles work as expected without too much syntax deviation.
Also adjusted a few hlshl functions to be more accurate
2019-12-18 20:12:14 +01:00
PatrickvL 46fbfad52d Remove assembly version and replace regex with dedicated streaming 2019-12-18 20:12:14 +01:00
PatrickvL c039562e7f Reformat HLSL code
Prefer HLSL functions over #defines
Avoid implicit conversion warnings in HLSL template code
Move scalar W selection towards HLSL helper function
Apply scalar component fixup after instead of before conversion to HLSL
2019-12-18 20:12:14 +01:00
Anthony Miles 200b7c493e Use log2, exp2 2019-12-18 20:12:14 +01:00
Anthony Miles bd55f17f0d - Move ILU ops together
- Some ops use the .w component by default. Ensure they will use w instead of x, if the default xyzw swizzle was used
2019-12-18 20:12:14 +01:00
Anthony Miles 59c8ee936f Add line numbers to shader debug 2019-12-18 20:12:14 +01:00
Anthony Miles 05f1f90603 fixup texcoord comments 2019-12-18 20:12:13 +01:00
Anthony Miles b61bfd32af - Use MAC defines, remove functions
- Fix truncation compiler warning in x_dp3
2019-12-18 20:12:12 +01:00
Anthony Miles eaa7bbca41 At debug log level, log shader warnings even if the shader compiled 2019-12-18 20:12:12 +01:00
PatrickvL a9d3b5cdde Better hlsl consistency 2019-12-18 20:12:12 +01:00
PatrickvL c1ba533455 Include the hlsl code as a raw string
Make all Xbox VSh opcodes consistent (using an x_ function or macro)
Replace switch statements with table lookups, making the code much more compact
2019-12-18 20:12:11 +01:00
Anthony Miles e372a80a8d Workaround bad masks on single component outputs 2019-12-18 20:12:09 +01:00
Anthony Miles a258d5d759 file location hack 2019-12-18 20:12:09 +01:00
Anthony Miles 5d21af8a0e Implement more HLSL functions 2019-12-18 20:12:09 +01:00
Luke Usher 19f0affd21 Negate Screen Space Transforms instead of deleting from shader 2019-12-18 20:12:08 +01:00
Anthony Miles fd1555535e HACK
Get HLSL compiling
2019-12-18 20:12:08 +01:00
Anthony Miles 8382adfaab fixup dp3, dph 2019-12-18 20:12:08 +01:00
Anthony Miles 620c98da80 Interpret r12 as oPos 2019-12-18 20:12:08 +01:00
Anthony Miles 2102bffee2 Ensure dp3 and dph use float3 dot products 2019-12-18 20:12:08 +01:00
Anthony Miles 551516a52a fix typo 2019-12-18 20:12:08 +01:00
Anthony Miles 65f6ff3497 fix missing bracket 2019-12-18 20:12:08 +01:00
Anthony Miles c3fbc46b7c c() bounds check 2019-12-18 20:12:07 +01:00
Anthony Miles ef3b5d7217 Fix bias typo 2019-12-18 20:12:07 +01:00
Anthony Miles 650174ea83 - Reverse screenspace transform properly
- Move Xbox variable 'a' inside main
- Fix rcc reversed clamp
2019-12-18 20:12:07 +01:00
Anthony Miles 780cb6c578 fix rcc typo 2019-12-18 20:12:07 +01:00
Anthony Miles 504b8ddba6 Fix swizzle behaviour 2019-12-18 20:12:06 +01:00
Anthony Miles b24ea2309c Fix HLSL debug logging 2019-12-18 20:12:05 +01:00
Anthony Miles 3cd2f73332 Apply scaling hack 2019-12-18 20:12:05 +01:00
Anthony Miles c6242b798c remove junk files 2019-12-18 20:12:03 +01:00
Anthony Miles 21712cb4de Implement remaining xbox functions 2019-12-18 20:12:03 +01:00
Anthony Miles 389e50a570 more hlsl 2019-12-18 20:12:03 +01:00
Anthony Miles da6fc5f35c TMP more stuff 2019-12-18 20:12:02 +01:00
Anthony Miles 62015b1499 initial 2019-12-18 20:12:02 +01:00
PatrickvL 18a630bb78
Merge pull request #1800 from LukeUsher/half-life-2-hack
Fix when titles attempt to find the XBEH header in memory
2019-12-17 22:28:34 +01:00
Luke Usher be42ab7a0f Nasty hack to fix hl2 crash during switch to ingame 2019-12-17 19:45:30 +00:00
PatrickvL 8ebeeeb24c
Merge pull request #1799 from LukeUsher/fix-mechassault
kernel: Define and init IdexChannelObject
2019-12-16 23:47:29 +01:00
Luke Usher b62333551c kernel: Define and init IdexChannelObject 2019-12-16 21:53:02 +00:00
RadWolfie d0da11cb1e
Merge pull request #1796 from LukeUsher/eeprom-serial-number
Eeprom Config: Correctly render Serial Number as Numeric Text, not HEX
2019-12-14 13:20:23 -06:00
Luke Usher 23540f01b4 Eeprom Config: Correctly render Serial Number as Numeric Text, not HEX 2019-12-14 19:15:58 +00:00
RadWolfie 7e46adb95e
Merge pull request #1797 from LukeUsher/minor-nic-fix
nvnet: Accept only broadcast and targeted traffic, not multicast
2019-12-14 13:13:19 -06:00
Luke Usher d1018cb773 nvnet: Accept only broadcast and targeted traffic, not multicast
Fixes XNET warnings when using Debug XDK libraries
2019-12-14 11:25:35 +00:00
Luke Usher 63bc65ece2
Merge pull request #1791 from PatrickvL/hash_palete_in_texture_key
Speed up paletized texture
2019-12-02 08:04:41 +00:00
patrickvl b76f4c5d5a Fixed black texture regression in Bloodrayne (and possibly all other reported cases); Turned out to be an oversight (GetHostBaseTexture 2nd argument is not the TextureStage, but D3DUsage, dug!). I had to re-do each change line by line, testing as I went, to find this... Ah well, at least it didn't have anything to do with the new cache! 2019-12-01 17:16:57 +01:00
patrickvl ce191a66e0 Fixed incorrect assumption : Xbox doesn't have a D3DCOMMON_VIDEOMEMORY flag at all, so we can't identify resources with it either! 2019-12-01 15:41:34 +01:00
PatrickvL 8664e6cc3d Potential fix for the "CreateCubeTexture Failed!" regression, by restoring GetHostBaseTexture to it's previous behaviour (if this works, I'll create a separate issue with all relevant detail so that we can follow-up on this later) 2019-11-28 17:00:50 +01:00