sspacelynx
aba9cae5ab
DriverDetails: Fix broken vector bitwise AND on Mali drivers
2021-04-11 15:15:02 +02:00
Pokechu22
f32b771f7a
Skip loading unknown XF registers in the FIFO player
...
This avoids some warnings, which were originally fixed by ignoring loads with a value of zero (see 636bedb207
/ #3242 ).
Note that FifoCI will report some changes, but only on the first frame; these seem to be timing related as they don't happen if a different write is used to replace skipped ones.
2021-04-06 11:54:49 -07:00
Pokechu22
cde6cf2ab5
Track and log CP commands 0x00/0x10/0x20 differently from other unknown commands
...
They appear to relate to perf queries, and combining them with truely unknown commands would probably hide useful information. Furthermore, 0x20 is issued by every title, so without this every title would be recorded as using an unknown command, which is very unhelpful.
2021-04-06 11:54:49 -07:00
Pokechu22
193f6a67a7
Log a warning for inexact uses of MATINDEX or VCD commands
2021-04-06 11:54:48 -07:00
Pokechu22
7fe1292c62
Add game quirks for unknown BP/CP/XF commands
2021-04-06 11:44:31 -07:00
Léo Lam
6d1eb6ae5a
Merge pull request #9621 from Pokechu22/cassert
...
Replace uses of cassert with Common/Assert.h
2021-04-03 12:46:21 +02:00
Pokechu22
004dfd1586
Replace uses of cassert with Common/Assert.h
2021-04-02 10:18:18 -07:00
blåhaj
f339bc69c8
VertexShaderGen: Sonic epsilon hack for OpenGL ES
...
debaf63fe8
moved the "Sonic epsilon hack"
to vertex shaders. However, it was only done for targets with depth
clamping. If this is not available, for example the target is OpenGL ES,
the Sonic problem appears (https://bugs.dolphin-emu.org/issues/11897 ).
A version of the "Sonic epsilon hack" is added for targets without
depth clamping.
2021-04-02 15:12:30 +02:00
JMC47
ce8e87c64b
Merge pull request #8747 from iwubcode/map-freelook
...
Support controlling Free Look via input bindings (motion controls, gamepad, etc!)
2021-04-01 01:05:00 -04:00
Pokechu22
51de3d0fd1
Refactor CP array constants slightly
2021-03-26 17:27:21 -07:00
iwubcode
425ee13d35
FreeLook: update camera and manager to use a delta time for movement (in case we decide to move this somewhere else in the future)
2021-03-18 17:54:12 -05:00
iwubcode
80cf87158e
VideoCommon: update FreeLook camera to add quaternion based rotation, fix orbital and fps implementations
2021-03-17 20:58:33 -05:00
JosJuice
a45a0a2066
Merge pull request #9494 from Dentomologist/convert_arm64reg_to_enum_class
...
Arm64Gen: Convert ARM64Reg to enum class
2021-03-17 00:05:23 +01:00
Dentomologist
f0f206714f
Arm64Gen: Convert ARM64Reg to enum class
...
Most changes are just adding ARM64Reg:: in front of the constants.
2021-03-13 10:10:59 -08:00
Dentomologist
95c86ee48b
FreeLookCamera: Add override specifiers
2021-03-07 10:10:00 -08:00
Dentomologist
1c71d33ed5
FreeLookCamera: Remove unused variable
2021-03-07 10:10:00 -08:00
Pokechu22
df81210e96
Use formatters in GetBPRegInfo; add missing commands
...
BPMEM_TEV_COLOR_ENV + 6 (0xC6) was missing due to a typo. BPMEM_BP_MASK (0xFE) does not lend itself well to documentation with the current FIFO analyzer implementation (since it requires remembering the values in BP memory) but still shouldn't be treated as unknown. BPMEM_TX_SETMODE0_4 and BPMEM_TX_SETMODE1_4 (0xA4-0xAB) were missing entirely.
2021-03-06 19:27:20 -08:00
Pokechu22
70f9fc4e75
Convert BPMemory to BitField and enum class
...
Additional changes:
- For TevStageCombiner's ColorCombiner and AlphaCombiner, op/comparison and scale/compare_mode have been split as there are different meanings and enums if bias is set to compare. (Shift has also been renamed to scale)
- In TexMode0, min_filter has been split into min_mip and min_filter.
- In TexImage1, image_type is now cache_manually_managed.
- The unused bit in GenMode is now exposed.
- LPSize's lineaspect is now named adjust_for_aspect_ratio.
2021-03-06 19:27:19 -08:00
Pokechu22
db8ced7e4e
Add FogParam0::FloatValue and FogParam3::FloatValue
...
This value will be used in the register description; so expose it in a way that can be re-used instead of calculating it in 2 places later.
2021-03-06 19:27:18 -08:00
Pokechu22
f2bea67709
Fix typo with ztex2 op in UseVertexDepthRange
2021-03-06 19:27:17 -08:00
Pokechu22
762fe33a3d
Rename BPMEM_EFB_BR to BPMEM_EFB_WH
2021-03-06 19:27:16 -08:00
Pokechu22
81b84a5ebe
Use XFMEM_REGISTERS_START/END in XFRegWritten and LoadXFReg
2021-03-06 19:27:15 -08:00
Pokechu22
8c80369373
Add names and descriptions for regular XF memory
2021-03-06 19:27:15 -08:00
Pokechu22
2d6ec7457d
Add names and descriptions for XF registers to the FIFO analyzer
2021-03-06 19:27:14 -08:00
Pokechu22
aab81d5aa0
Convert XFMemory to BitField and enum class
...
Additionally a new ClipDisable union has been added (though it is not currently used by Dolphin).
2021-03-06 19:27:14 -08:00
Pokechu22
953e09428f
Add names and descriptions for CP registers to the FIFO analyzer
2021-03-06 19:27:14 -08:00
Pokechu22
f749fcfa9f
Convert CPMemory to BitField and enum class
...
Additionally, VCacheEnhance has been added to UVAT_group1. According to YAGCD, this field is always 1.
TVtxDesc also now has separate low and high fields whose hex values correspond with the proper registers, instead of having one 33-bit value. This change was made in a way that should be backwards-compatible.
2021-03-06 19:27:08 -08:00
Pokechu22
c27efb3f1f
Create constants for CP registers and masks
2021-03-06 17:34:05 -08:00
iwubcode
0a9c764dc4
VideoCommon: Join the prefetch thread before clearing to avoid a potential crash that can occur by multiple threads touching a single resource
2021-02-11 19:18:38 -06:00
Léo Lam
c386c5acc2
Merge pull request #9366 from iwubcode/freelook_camera_quaternion
...
VideoCommon: allow Free Look to be manipulated by a quaternion
2021-01-28 01:34:09 +01:00
iwubcode
586c689d63
VideoCommon: use Quaternion for Free Look orientation
2021-01-27 18:22:10 -06:00
Shawn Hoffman
500a694ca8
msbuild: bundle all dolphin "core" code into single library
2021-01-27 14:29:49 -08:00
Shawn Hoffman
84128d9532
rename Common/File to Common/IOFile
2021-01-27 14:29:48 -08:00
Shawn Hoffman
07fd02f207
rename Core/Analytics to Core/DolphinAnalytics
2021-01-27 14:29:47 -08:00
Dentomologist
e3237661ec
Arm64Emitter: Convert ShiftType to enum class
2021-01-17 16:21:38 -08:00
Dentomologist
70c54065ab
Arm64Emitter: Convert IndexType to enum class
2021-01-15 23:27:11 -08:00
Léo Lam
eafb9de047
Merge pull request #9323 from waddlesplash/haiku
...
Rehabilitate Haiku support.
2021-01-05 16:09:43 +01:00
Filippo Tarpini
a5a6ef8512
Fix a couple of typos
...
[committer note: fixed commit message style]
2021-01-05 15:24:21 +01:00
waddlesplash
2df11d3911
Rehabilitate Haiku support.
2021-01-02 16:54:24 -05:00
iwubcode
16dc2fa379
VideoCommon: Fix crash that occurs on loading a fifo log due to uninitialized Free Look control type
2020-12-26 17:26:21 -06:00
iwubcode
c7b24d6213
VideoCommon: Update active config when we check for config changes, this ensures Free Look settings are copied at the start of the frame. Also update the camera's controller type at this time
2020-12-24 13:51:46 -06:00
iwubcode
bcf63c463b
VideoCommon: Add 'Active' state to FreelookCamera to future proof if we ever add multiple cameras
2020-12-24 13:49:25 -06:00
iwubcode
a37fd8c5d9
VideoCommon: Update Free Look camera with settings change...
2020-12-24 13:49:25 -06:00
iwubcode
f6ab9a9b6f
Core / VideoCommon: Remove old Free Look config
2020-12-24 13:49:25 -06:00
iwubcode
d5bc209eb6
VideoCommon: Change 'Zoom' to 'MoveForward' since it really isn't a zoom
2020-12-24 13:48:38 -06:00
iwubcode
cb6ae6a4b1
VideoCommon: Add speed to Free Look camera
2020-12-24 13:48:38 -06:00
Léo Lam
0ad2f3da45
Core: Remove ImageWrite and get rid of -Wmissing-declarations warnings
2020-12-16 16:04:19 +01:00
Léo Lam
eafe005672
Fix -Wclass-memaccess warnings
...
We want to clear/memset the padding bytes, not just each member,
so using assignment or {} initialization is not an option.
To silence the warnings, cast the object pointer to u8* (which is not
undefined behavior) to make it explicit to the compiler that we want
to fill the object representation.
2020-12-16 15:37:43 +01:00
David Carlier
2c355b81f2
Add NetBSD support
2020-12-15 02:34:25 +01:00
Léo Lam
fd5c69deca
Merge pull request #9289 from AdmiralCurtiss/simple-png-api-write
...
Use Simplified libpng API for writing PNGs.
2020-12-11 10:24:16 +01:00
Léo Lam
d8b9a040ed
Merge pull request #9275 from JosJuice/framedump-boot-time
...
FrameDump: Start timing at 0 ticks when starting from boot
2020-12-05 23:57:41 +01:00
Lioncash
139d4fc76e
General: Convert PanicAlerts over to fmt equivalent
...
Converts lingering panic alert calls over to the fmt-capable ones.
2020-12-02 13:38:33 -05:00
JosJuice
d69f243c32
FrameDump: Start timing at 0 ticks when starting from boot
2020-11-27 17:54:08 +01:00
Admiral H. Curtiss
324de7fa02
VideoCommon: Use Common::SavePNG() to write textures.
2020-11-26 23:55:05 +01:00
Lioncash
978e5469af
Core: Remove commented out logs
...
Commented out logs shouldn't be kept around, since it makes performing
renames and migrations harder, as tooling generally doesn't inspect
comments.
2020-11-26 07:49:37 -05:00
JosJuice
28c696fa74
Fix vertex ubershader GLES compile errors
...
Regression from 51724c1
.
2020-11-23 11:42:41 +01:00
JosJuice
118d056410
FrameDump: Re-add call to av_register_all
...
This was removed in 4902146329
.
We still need this for the ffmpeg version we're using on Windows.
2020-11-22 00:11:23 +01:00
Stenzek
51724c1ccd
LightingShaderGen: Always calculate lighting for both color channels
...
Cel-damage depends on lighting being calculated for the first channel
even though there is no color in the vertex format (defaults to the
material color). If lighting for the channel is not enabled, the vertex
will use the default color as before.
The default value of the color is determined by the number of elements in
the vertex format. This fixes the grey cubes in Super Mario Sunshine.
If the color channel count is zero, we set the color to black before the
end of the vertex shader. It's possible that this would be undefined
behavior on hardware if a vertex color index that was greater than the
channel count was used within TEV.
2020-11-20 15:54:04 -08:00
JosJuice
e63b00e562
Fix translatable strings which contain non-positional arguments
2020-11-20 20:24:30 +01:00
Léo Lam
bca82bb942
Merge pull request #9239 from altimumdelta/FFDUMP_Separate_Logging
...
FrameDump Logging: Separate log type and migrate to fmt
2020-11-20 02:21:57 +01:00
Lioncash
3d9b2aa005
VideoCommon: Migrate over to fmt
...
Migrates off the printf-based formatting where applicable.
2020-11-17 21:23:58 -05:00
altimumdelta
f44b13ffcd
FrameDump Logging: Separate log type and migrate to fmt
2020-11-10 17:17:43 +01:00
Lioncash
a5b28f1f07
ShaderGenCommon: Rename WriteFmt() to Write()
...
Now that we've converted all of the shader generators over to using fmt,
we can drop the old Write() member function and perform a rename
operation on the WriteFmt() to turn it into the new Write() function.
All changes within this are the removal of a <cstdarg> header, since the
previous printf-based Write() required it, and renaming. No functional
changes are made at all.
2020-11-09 02:31:49 -05:00
LC
add2b44eb7
Merge pull request #9197 from lioncash/uber-pixel
...
UberShaderPixel: Migrate over to fmt
2020-11-09 02:13:57 -05:00
JosJuice
28aa04312c
Common/LinearDiskCache: Replace std::fstream with File::IOFile
...
File::IOFile is better suited to this type of task.
Split out from a future PR.
2020-11-05 00:31:17 +01:00
JMC47
6a3a71cfd7
Merge pull request #9141 from Techjar/but-for-how-long
...
Re-enable GPU Texture Decoding under MoltenVK
2020-10-29 01:22:13 -04:00
Lioncash
dc72edf0e2
UberShaderPixel: Migrate over to fmt
...
Completes the migration over to using the fmt-formatting WriteFmt
function. The next PR will rename all usages of WriteFmt, while
simultaneously getting rid of the old printf code.
2020-10-27 13:25:11 -04:00
Léo Lam
d2a2ec870d
Merge pull request #9171 from lioncash/pixel
...
PixelShaderGen: Migrate over to fmt
2020-10-26 20:35:47 +01:00
Léo Lam
7f66de062c
Merge pull request #9188 from jordan-woyak/stop-caring-about-old-avcodec-versions
...
VideoCommon/FrameDump: Remove code for older versions of avcodec.
2020-10-26 18:55:48 +01:00
iwubcode
8a4773bc91
VideoCommon: update vcproj file to set HAS_OPENGL
2020-10-23 17:08:53 -05:00
iwubcode
a34745926e
VideoCommon: remove HAS_OPENGL from VideoBackendBase
2020-10-23 17:00:32 -05:00
iwubcode
272717b3f4
VideoCommon: update vcproj file to set HAS_VULKAN
2020-10-23 17:00:05 -05:00
iwubcode
d12380f26b
VideoCommon: rename USE_VULKAN to HAS_VULKAN in VideoBackendBase
2020-10-23 16:59:22 -05:00
Lioncash
5de2244acf
PixelShaderGen: Migrate over to fmt
...
Continues the migration of the shader generators over to fmt.
After this, all that remains in the Ubershader pixel generator.
2020-10-23 17:17:55 -04:00
Jordan Woyak
4902146329
VideoCommon/FrameDump: Remove code for older versions of avcodec.
2020-10-23 14:43:50 -05:00
mazes-80
f375ee72a2
CMake: Add option to enable/disable Vulkan video backend
2020-10-23 20:14:46 +02:00
JosJuice
908d6f8fa0
Merge pull request #9179 from leoetlino/available-video-backends
...
VideoCommon: Get rid of the global g_available_video_backends
2020-10-23 20:02:21 +02:00
Jordan Woyak
4807a5e157
VideoCommon: FrameDump fixes/cleanups.
2020-10-22 12:17:26 -05:00
Léo Lam
89b01cd6d3
Merge pull request #9169 from lioncash/uber-vert
...
UberShaderVertex: Migrate over to fmt
2020-10-22 01:21:31 +02:00
Léo Lam
d08b80828d
VideoCommon: Simplify VideoBackendBase::GetDefaultBackendName
...
Now we can just call GetDefaultVideoBackend to get the default backend
and get its name by calling GetName.
2020-10-21 22:00:10 +02:00
Léo Lam
aaaa3896c0
VideoCommon: Get rid of the global g_available_video_backends
...
Replace it with a function-local static that is initialized on first
use. This gets rid of a global variable and removes the need for
manual initialization in UICommon.
This commit also replaces the weird find_if that looks for a non-null
unique_ptr with a simple "is vector empty" check considering that
none of the pointers can be null by construction.
2020-10-21 22:00:10 +02:00
Lioncash
751d67a59a
UberShaderVertex: Migrate over to fmt
...
Continues migration of the shader generators over to fmt.
With this, all that's left to move over are the pixel shaders (regular
and ubershader variants)
2020-10-20 09:24:10 -04:00
Léo Lam
ce59b026c0
Merge pull request #9168 from lioncash/ifconst
...
DataReader: Make use of if constexpr where applicable
2020-10-20 14:56:24 +02:00
Lioncash
7bc2bbc508
DataReader: Make use of if constexpr where applicable
...
We can make use of if constexpr for cases where booleans will always
statically be known at compile-time.
2020-10-20 08:42:32 -04:00
Léo Lam
dc5ae5ee66
Merge pull request #9165 from lioncash/ubercommon
...
UberShaderCommon: Migrate over to fmt
2020-10-20 14:42:19 +02:00
Léo Lam
49b7f10b39
Merge pull request #9163 from lioncash/fbgen
...
FramebufferShaderGen: Migrate over to fmt
2020-10-20 13:25:50 +02:00
Lioncash
83db7a707c
UberShaderCommon: Migrate over to fmt
...
Continues migration of the shader generators over to fmt.
2020-10-20 06:22:48 -04:00
Léo Lam
7b1e0dba9b
Merge pull request #9164 from lioncash/geoshader
...
GeometryShaderGen: Migrate over to fmt
2020-10-20 11:59:45 +02:00
Léo Lam
fc3b474cce
Merge pull request #8318 from iwubcode/dynamic_input_textures
...
InputCommon: Dynamic Input Textures
2020-10-20 02:10:29 +02:00
Lioncash
5475a8d6eb
GeometryShaderGen: Migrate over to fmt
...
Continues migration of the shader generators over to fmt.
2020-10-19 19:22:02 -04:00
Lioncash
df11615bde
FramebufferShaderGen: Migrate over to fmt
...
Continures the migration of the shader generators over to fmt.
2020-10-19 18:49:01 -04:00
Admiral H. Curtiss
b93adeaad7
VertexShaderGen: Fix unescaped { in D3D shader.
2020-10-19 20:05:07 +02:00
LC
cec47b9c32
Merge pull request #8981 from lioncash/vtx-fmt
...
LightingShaderGen/VertexShaderGen: Migrate over to fmt
2020-10-19 07:52:55 -04:00
Techjar
0c01712d13
DriverDetails: Remove bug for broken GPU Texture Decoding
2020-10-08 10:13:40 -04:00
Techjar
de2d099200
Re-enable GPU Texture Decoding under MoltenVK
2020-10-08 10:11:02 -04:00
iwubcode
4fff04db3c
Core: Load custom textures after inputs has been loaded and avoid sending force texture reload during startup for dynamic textures. This ensures that custom texture loading only happens once and users don't see any weird flashes on startup
2020-10-03 17:10:36 -05:00
iwubcode
fd3af4c5d3
InputCommon: Introducing the "Dynamic Input Texture". Configuration links an emulated input action to an image based on what host key is defined for that emulated input. Specific regions are called out in configuration that mark where to replace an input button with a host key image.
2020-10-03 17:10:35 -05:00
iwubcode
8a1539f948
VideoCommon: Make a reusable free function for getting top level directories that have a matching gameid text file underneath
2020-10-03 17:10:35 -05:00
Stenzek
880f7ca6bb
FramebufferManager: Fix EFB readbacks with MSAA on
...
Regression from #8827 .
2020-09-25 20:58:02 +10:00
JMC47
6ada03fca2
Merge pull request #9075 from JosJuice/android-osd-left-margin
...
Android: Move OSD out of the way when menu is open
2020-09-16 16:42:04 -04:00