iwubcode
|
b251194a7e
|
VideoCommon: wait for the GPU to be finished doing any work before invalidating pipelines when graphic config changes
|
2023-10-10 18:17:24 -05:00 |
|
iwubcode
|
0e8f8ea930
|
VideoCommon: instead of using 'CustomTextureData' directly, use 'TextureData' for texture assets, this allows us to provide additional metadata for textures. Such as a sampler or type information (to distinguish cube maps)
|
2023-10-10 09:58:14 -05:00 |
|
 iwubcodeandTellowKrinkle
|
713454b7d7
|
Metal: update binding mapping for SPRV due to change for custom shader uniforms in other backends (Metal is still not supported)
Co-authored-by: TellowKrinkle <[email protected]>
|
2023-10-06 02:17:43 -05:00 |
|
iwubcode
|
a099f4f41b
|
VideoCommon: given the changes to pipeline interaction, update the global version variable to reflect those changes and force pipelines to be rebuilt
|
2023-10-06 02:17:43 -05:00 |
|
 iwubcodeandTellowKrinkle
|
751356af47
|
VideoCommon: avoid Vulkan validation errors when custom shader ubo isn't set up
Co-authored-by: TellowKrinkle <[email protected]>
|
2023-10-06 02:17:43 -05:00 |
|
iwubcode
|
b6d321bfb1
|
VideoBackends / VideoCommon: add new uniform buffer object for custom shader materials (slot 3, geometry shader buffer moves to slot 4 if available)
|
2023-10-06 02:17:42 -05:00 |
|
iwubcode
|
92accc3ef7
|
VideoCommon: add custom pixel shader constants as a buffer of data to be passed to all backends
|
2023-10-05 21:20:16 -05:00 |
|
iwubcode
|
589834f562
|
VideoCommon: add cubemap as a sampler target for shaders, add cubemap as a valid texture asset
|
2023-09-05 21:11:19 -05:00 |
|
iwubcode
|
62fee2f3b6
|
VideoCommon: add loading cube maps from DDS files and loading it into our custom texture object. Custom texture object now has the concept of slices in addition to levels. Traditional custom textures have a single slice
|
2023-09-02 20:20:09 -05:00 |
|
iwubcode
|
f982c556b5
|
VideoCommon: add additional texture sampler types to ShaderAsset
|
2023-08-26 12:12:37 -05:00 |
|
iwubcode
|
9223540bf4
|
VideoCommon: additional error checking for CustomPipelineAction and move the pixel shader asset cache time back to being calculated during texture creation
|
2023-08-24 00:47:48 -05:00 |
|
iwubcode
|
7c52a52440
|
VideoCommon: add TextureData structure that contains the raw texture data, a sampler, and the type of texture information
|
2023-08-24 00:35:31 -05:00 |
|
iwubcode
|
55fba7c0ed
|
VideoCommon/GraphicsModAsset: Error out if config key is not a string.
|
2023-08-22 02:40:08 +02:00 |
|
iwubcode
|
5506121685
|
VideoCommon: add support to graphics mod manager to load in assets and pass it to graphics actions
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
6ea0d17802
|
VideoCommon: when graphics settings change, trigger a reload of all custom shaders
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
931a8aa413
|
VideoCommon: add milliseconds elapsed time value to pixel shaders as a uniform to be able to support animation effects in custom shaders
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
675544ec2b
|
docs: Add custom pipeline documentation
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
c7191382be
|
VideoCommon: add custom pipeline action
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
d320366954
|
VideoCommon: add custom shader cache to VertexManagerBase, supporting custom pixel shaders by replacing the existing pipeline with a modified one
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
bedbf2b8c6
|
VideoCommon: add custom shader cache
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
dbaf24ef09
|
VideoCommon: add data needed to support custom pixel shaders to graphics mod actions
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
4283d76718
|
VideoCommon: uber pixel shader gen changes needed to support custom pixel shaders in graphics mods
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
e704385fce
|
VideoCommon: pixel shader gen changes needed to support custom pixel shaders in graphics mods
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
c3a370839a
|
VideoCommon: add helper functions to handle generating custom lighting code for a custom pixel shader
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
0da5cf60a8
|
VideoCommon: add custom pixel shader definition and custom shader header to shadergen common as it will be used by both the special and uber shader variant of pixel shaders
|
2023-08-20 18:53:27 -05:00 |
|
iwubcode
|
eeb73460ab
|
VideoCommon: asset load time is now stored as a chrono system_clock time, so that times can be fabricated in a future feature (without creating a file to do so)
|
2023-08-15 22:02:28 -05:00 |
|
iwubcode
|
89e2fc1dd3
|
VideoBackends: update SRVDescriptorTable size in DX12 to use pixel sampler constant
|
2023-08-13 17:23:26 -05:00 |
|
iwubcode
|
246b7c5bdb
|
VideoCommon: fix regression with texture load order where the custom texture code was always updating the asset map for each texture with each entry, making it so the last value actually would be loaded instead of the first
|
2023-08-11 00:36:41 -05:00 |
|
iwubcode
|
dca7c67105
|
VideoCommon: update NetplayChatUI's chat message input to use a hidden label. This avoids an error thrown by imgui
|
2023-07-29 00:27:07 -05:00 |
|
iwubcode
|
c2b495586d
|
Externals: add misc/cpp/imgui_stdlib to imgui build in order to use std::string in InputText
|
2023-07-27 12:08:07 -05:00 |
|
iwubcode
|
350e51951b
|
VideoCommon: update imgui to 1.89.7 (and implot to 0.15); fix issues with upgrade; keep the demo code in case someone wants to reference it but don't compile it by enabling 'IMGUI_DISABLE_DEMO_WINDOWS' in config
|
2023-07-27 11:47:34 -05:00 |
|
iwubcode
|
e54b7ac356
|
Core: save core timing parameters into variables updated during refresh
|
2023-07-23 14:03:21 -05:00 |
|
iwubcode
|
fd74244339
|
VideoCommon: add custom texture message to provide a dirty means of debugging whether custom textures are installed correctly
|
2023-07-21 20:13:27 -05:00 |
|
iwubcode
|
e892b7f1ac
|
VideoBackends: add support for cube maps for OGL, Vulkan, and D3D
|
2023-07-21 19:09:40 -05:00 |
|
iwubcode
|
f7e78742cf
|
VideoCommon: skip the texture dump if the texture is using a custom texture, regardless of whether or not it is loaded yet
|
2023-07-19 23:44:41 -05:00 |
|
iwubcode
|
79f202ea5c
|
VideoCommon: fix some compiler warnings for CustomAsset. FreeBSD compiler complained about a defaulted move constructor due to the mutex being implicitly deleted. Additionally, the const owning library deleted the copy constructor.
|
2023-07-16 19:45:55 -05:00 |
|
iwubcode
|
5740be15f9
|
VideoCommon: initialize load info variables
|
2023-07-16 12:56:03 -05:00 |
|
iwubcode
|
77511e8e7c
|
VideoCommon: add material asset. A material is similar to other graphics engines where it provides data to be used in conjunction with a shader asset to generate a runtime AbstractShader
|
2023-07-09 12:21:34 -05:00 |
|
iwubcode
|
a2ad3ca6f7
|
VideoCommon: don't do pointer copies during graphics mod callback iteration
|
2023-07-02 13:58:07 -05:00 |
|
iwubcode
|
0539bb4a3e
|
VideoCommon: call into graphics mods create texture callback, providing additional asset dependencies that trigger the texture to be reloaded
|
2023-07-02 13:45:09 -05:00 |
|
iwubcode
|
a93e6e7397
|
VideoCommon: add support for allowing a TextureCache entry to be associated with multiple assets
|
2023-07-02 12:50:07 -05:00 |
|
iwubcode
|
6ea49c6746
|
VideoCommon: add a pixel shader asset
|
2023-06-30 01:32:53 -05:00 |
|
iwubcode
|
3627398cf5
|
VideoBackends: support multiple compute images for some backends (D3D, OGL, Vulkan)
|
2023-06-28 17:15:31 -05:00 |
|
iwubcode
|
1d767c3a5b
|
VideoCommon: add graphics mod callback interface for when a texture is created
|
2023-06-20 19:26:53 -05:00 |
|
iwubcode
|
2dc24a9148
|
VideoCommon: move cached texture asset to 'CustomAsset' common code
|
2023-06-20 18:59:55 -05:00 |
|
iwubcode
|
ba74902bca
|
VideoBackends: fix d3d12 validation layer error introduced by multi-output texture breaking logic ops support
|
2023-06-17 01:48:59 -05:00 |
|
iwubcode
|
3e27fc7c0b
|
VideoCommon: don't treat incorrect aspect ratio or sizes that aren't a multiple of native textures as an error
|
2023-06-12 21:19:29 -05:00 |
|
iwubcode
|
afa498fa2f
|
VideoCommon: update DirectFilesystemAssetLibrary to not throw exceptions when a file no longer exists
|
2023-06-08 22:20:52 -05:00 |
|
iwubcode
|
429b2eca8a
|
VideoCommon: add logging for loading texture assets
|
2023-06-08 19:48:45 -05:00 |
|
iwubcode
|
e831d7b6bb
|
InputCommon / VideoCommon: remove dynamic input reloading the texture cache, this is no longer needed, assets reload automatically!
|
2023-06-07 18:30:10 -05:00 |
|
iwubcode
|
ca8d6748d6
|
VideoCommon: introduce linked assets in TCacheEntry, allowing for assets to be reloaded
|
2023-06-07 18:30:10 -05:00 |
|
iwubcode
|
f1f1ecc9d1
|
Core / VideoCommon: update HiresTexture to use CustomAssetLoader
|
2023-06-05 16:33:19 -05:00 |
|
iwubcode
|
5738646e3e
|
Core: add CustomAssetLoader to System
|
2023-06-05 16:33:19 -05:00 |
|
iwubcode
|
9d7ab47738
|
VideoCommon: add additional locks around asset access and usage to ensure thread safety
|
2023-06-05 16:19:46 -05:00 |
|
iwubcode
|
8c3dc5b0d6
|
VideoCommon: update pipeline version for RenderState change
|
2023-06-03 14:52:31 -05:00 |
|
iwubcode
|
834f8f7b5c
|
VideoBackends: add support to allow rendering to multiple output textures
|
2023-06-03 14:52:31 -05:00 |
|
iwubcode
|
9b9dc6dc5d
|
VideoCommon: fix minor issue in C++ template
|
2023-06-03 12:47:12 -05:00 |
|
iwubcode
|
47c40d51df
|
VideoCommon: when loading a PNG with no custom texture data levels already, create a level, this avoids a potential segfault
|
2023-06-03 12:19:30 -05:00 |
|
iwubcode
|
58d383b30b
|
VideoCommon: prevent potential data issue when reloading Asset data that could happen due to the asset loading thread reloading data while another thread is working with it
|
2023-06-03 00:13:06 -05:00 |
|
iwubcode
|
c93940c6ee
|
VideoCommon: add multithreaded asset loader and define a texture asset
|
2023-06-02 17:31:31 -05:00 |
|
iwubcode
|
07307edd49
|
VideoCommon: add an asset library that loads directly from the filesystem
|
2023-06-02 14:49:22 -05:00 |
|
iwubcode
|
e028d2ead0
|
VideoCommon: move custom texture data to assets
|
2023-06-02 14:07:42 -05:00 |
|
iwubcode
|
b2c5a5485a
|
VideoCommon: add custom asset implementation and asset library that can load an asset
|
2023-06-01 19:57:57 -05:00 |
|
iwubcode
|
0afb8c247f
|
VideoCommon: check whether action was successfully created before adding targets for a graphics mod
|
2023-05-30 09:32:59 -05:00 |
|
iwubcode
|
bbf3efb17d
|
VideoCommon: fix bug in GraphicsModManager where a separate action was being created for each target
|
2023-05-29 23:08:35 -05:00 |
|
iwubcode
|
e101f7f6ae
|
VideoCommon: refactor GetTexture into a separate function for creation, separating the custom texture data path from the game's texture data path
|
2023-04-08 02:54:00 -05:00 |
|
iwubcode
|
42cb3f3904
|
VideoCommon: remove HiResTexture DDS loading, update hirestexture logic to use custom texture data
|
2023-03-01 12:11:04 -06:00 |
|
iwubcode
|
3e35255983
|
VideoCommon: add class to load custom texture data
|
2023-03-01 11:58:37 -06:00 |
|
iwubcode
|
5d571b068f
|
VideoBackends: rework d3d11 to specify samplers/bound textures using a bitset with a constant size, instead of hardcoding each individual enumeration value
|
2023-02-24 11:32:48 -06:00 |
|
iwubcode
|
20dc4401c5
|
VideoCommon: pass a graphics mod base path to the graphics mod, so it can lookup other relative files if necessary
|
2023-02-11 00:21:40 -06:00 |
|
iwubcode
|
af313f8419
|
VideoCommon: add constant value to set the allowed maximum number of pixel samplers
|
2023-02-10 00:46:11 -06:00 |
|
iwubcode
|
d0c6b6c9ed
|
VideoCommon: store the configuration used to create the AbstractPipeline on the pipeline itself, so that it's easy to duplicate pipelines with slightly altered configuration
|
2023-02-09 02:13:53 -06:00 |
|
iwubcode
|
7bea39b39e
|
VideoBackends: add a way to load data into a specific level AND layer, default to layer 0
|
2023-01-27 18:46:53 -06:00 |
|
iwubcode
|
271c60781b
|
VideoBackends: update Vulkan's 'CopyRectangleFromTexture' to copy one layer, copying more than one layer doesn't make sense given that we provide both the source/destination layer
|
2023-01-27 18:41:52 -06:00 |
|
iwubcode
|
31bf9d0019
|
Core: add option to apply memory patch to not store the existing value (used during locking)
|
2022-12-23 12:31:33 -06:00 |
|
iwubcode
|
190cf5af30
|
DolphinQt: add multiselection to WatchWidget
|
2022-12-23 12:31:33 -06:00 |
|
iwubcode
|
c8a6ff6309
|
DolphinQt: add a 'add to watch' context menu item that allows you to add a memory location found in a cheat search to be added to the watch list
|
2022-12-23 12:31:33 -06:00 |
|
iwubcode
|
7d7fcdddd3
|
DolphinQt: add lock state to WatchWidget
|
2022-12-23 12:31:33 -06:00 |
|
iwubcode
|
8f3e8e4ca3
|
Core: add locked state to watches
|
2022-12-23 11:59:23 -06:00 |
|
iwubcode
|
41c9d706cb
|
DolphinQt: cleanup WatchWidget
|
2022-12-23 11:59:23 -06:00 |
|
iwubcode
|
3081a781fd
|
Core: when scheduling an invalidate cpu cache, no need to schedule if we're already on the cpu thread
|
2022-12-23 11:59:23 -06:00 |
|
iwubcode
|
2f2f906bf5
|
Core: add ability to add memory patches to the patch engine that will be executed each frame
|
2022-12-23 03:13:03 -06:00 |
|
iwubcode
|
1f87bcd202
|
Core: add ability to apply memory patches during a frame update in the PatchEngine
|
2022-12-23 03:13:03 -06:00 |
|
iwubcode
|
4743d74985
|
Core: add helper function to apply a memory patch and mark the 'PPCPatches' as final
|
2022-12-23 03:13:03 -06:00 |
|
iwubcode
|
259f2972a0
|
GameINI: Force safe texture cache on Marvel Super Hero Squad: The Infinity Gauntlet
|
2022-12-04 11:31:01 -06:00 |
|
iwubcode
|
ea3e133200
|
VideoCommon: call texture load graphics mod hook when Dolphin loads a texture
|
2022-10-28 19:24:43 -05:00 |
|
iwubcode
|
0e1ffe009a
|
VideoBackends: fix d3d12 subresource calculation
|
2022-10-28 19:07:08 -05:00 |
|
iwubcode
|
bc360584a3
|
VideoCommon: add structures to graphics mods to allow for future adding or removing parameters with less code overhead
|
2022-10-09 00:00:01 -05:00 |
|
iwubcode
|
637dca680c
|
VideoCommon: update ubershader pixel to not enforce d3d when writing color output that has been defined as uints
|
2022-08-06 16:08:58 -05:00 |
|
iwubcode
|
05135b4f43
|
VideoCommon: fix uint shader compiler error in specialized shaders. This error is in renderers that use uint for their color output (for logic ops). Remove D3D check for uint output since other backends could use uint output as well.
|
2022-08-06 16:08:58 -05:00 |
|
iwubcode
|
0b5f7d2c5f
|
VideoCommon: fix graphics target not properly setting 'draw_started' texture names for efb/xfb
|
2022-08-06 12:01:33 -05:00 |
|
iwubcode
|
958354e285
|
Data: add Super Mario Galaxy bloom definition graphics mod
|
2022-07-06 21:51:39 -05:00 |
|
iwubcode
|
3227244372
|
Data: Add Rune Factory Frontier bloom definition
|
2022-07-02 15:14:21 -05:00 |
|
iwubcode
|
1970a27b57
|
Data: add Wii Play and Skyward Sword bloom definitions
|
2022-07-02 11:49:21 -05:00 |
|
iwubcode
|
eda3fd8bf1
|
Data: add Monster Hunter Tri full game and rename folder to reflect that. It has the same bloom ids as the demo disc.
|
2022-07-02 11:49:21 -05:00 |
|
iwubcode
|
ba007a0244
|
Data: rename Battalion Wars 2, Mario Strikers Charged, The House of the Dead: Overkill, and The Last Story to properly reflect their game name / spelling
|
2022-07-02 11:49:21 -05:00 |
|
iwubcode
|
d0540f19ac
|
Data: add built in mods for bloom and HUD
|
2022-07-02 11:49:21 -05:00 |
|
iwubcode
|
66f5085800
|
DolphinQt: add word wrap to graphics mods description
|
2022-07-01 19:31:19 -05:00 |
|
iwubcode
|
8dd4e916a7
|
DolphinQt: save changes to disk before refreshing mod list
|
2022-07-01 19:31:19 -05:00 |
|
iwubcode
|
4788a05c76
|
VideoCommon: fix projection graphics mod affecting more than the intended draw call
|
2022-06-29 20:04:59 -05:00 |
|