slang-shaders/bezel/Mega_Bezel/shaders/ShaderTodo.txt
2023-01-25 12:59:48 -05:00

241 lines
9.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

![Mega_Bezel_Logo|512x256, 75%](upload://6PNkvcMF9Go9Wnk6OJXfYR1opXI.png)
Mega Bezel is updated to V1.9.0_2023-01-22
Changes:
* Added some more Sinden presets for SCREEN-ONLY and POTATO
* Added Screen Region to Resolution Debug text
* Good for getting the screen region pixel coordinates if you need them
* Adjusted Ambient Lighting Scaling when using the Inherit Zoom scale mode
* Now when you zoom out it is much less likely to generate a black frame covering the outer parts of the background image
* The minimum size of the lighting texture will be close to the height of the current viewport
* This reduces the likelihood that we will see the cutoff
* ScaleFx: Exposed more of the settings so they can be tweaked
* Default Settings changed:
* ScaleFx Threshold: now 0.43 (was 0.5)
* ScaleFx Filter Corners: now 0 (was 1)
* These settings result in a slighly clearer picture and less rounding of square corners
* SMOOTH-ADV ntsc presets: ntsc_scale adjusted so it visually matches the regular ADV ntsc presets
----------------------------------------------------
--- TODO ---------------------------------------
----------------------------------------------------
* Add back Raster Bloom
* Do new release
* Add Z-Fast to libretro repo
* Check difference between old and new NTSC
* Check out duplicate params in NTSC
* Check out independent bezel scale and reflection, reflection is not following the bezel
* Check brighter reflection in new NTSC
* Update Dual Screen to use params files
* Swap out // for # in base presets
* Add ability to have layers appear on top of the bezel but below the reflection
* One way to do this would be to have a CRT/Reflection layer offset which forces layers below to be composited on top of the bezel
* Fix CRT Blend Amount
* Adjustable softness of bezel outer edge for reflection
* Adjustable Bezel Curvature per side?
* Revisit Tate Mode / Vertical Scanline and Rotate CRT artifacts
* Fast Sharpen & Sharp Smoother currently work on x axis, should be relative to scanline direction
* Get GTU to respect scanline direction
* NTSC is causing blurriness when using FB Neo and Rotate CRT - Test Game Batrider
* We need to know what orientation the game is in the first place to do this
* When in interlacing mode for vertical opposite mult should do something
* Use brightness values of sides to control static corner highlight
* Fix Megatron Reflection
* Create 4K Royale Preset
* Add .params #reference to with all parameters commented out
* We should have a middle pass which has the device behind the CRT tube
----------------------------------------------------
--- Examples --------------------------------------
----------------------------------------------------
Recent Performance 2022-09-18
Spec RTX-2060, at 4K:
240p image
ADV 175
XBR-ADV 170
POTATO 422
POTATO-XBR 390
2K image
ADV 105
XBR-ADV 66
4K image
ADV 48
XBR-ADV Crashed
----------------------------------------------------
--- Post V1 ---------------------------------------
----------------------------------------------------
* Auto Rotate
* Guess White/Black Matting?
* Auto Shadow for image Layers above screen
* Mega Back Light a la philips Hue/Ambient
* Night light single glow - Place Glows
* Fix Corner Shading
* Double Bezel
* Swap option for Blurry vs Sharp Tube Reflection
* Do some OrionsAngel Arcade Presets
* Add Rewind Effect?
* Rotate Dual Screen
* LCD behavior when reaching resolution limit?
* Shadow from Cutout?
* Large Slotmask Bitmap Mask
* Hyllian Sync Version?
* Black frames in Mupen64Plus-Next using parallel RDP, seen in Perfect Dark
* Original scaling mode to deal with black final viewport in Parallel RDP in both mupen and Parallel cores.
Scene Dynamic Lighting
* Reflection from screen on additional elements
* Side Panels, Speaker Panel, Table
* Masking of main and additional reflection
* Colored Mask to define areas
* Up rgb(128, 255, 128)
* Down rgb(128, 0, 128)
* Left rgb(0, 128, 128)
* Right rgb(255, 128, 128)
* Center rgb(128, 128, 255)
* Bounce lighting from screen to room back to the scene
* Masking behind devices
* Sprite sheet for arcade Lighting loop
* Sprite sheets for left and right machine attract mode loops
* Split Normal vs Additive in layers
* More Reflection from closer to middle of screen on bezel
* Additional Screens driven by Sprite Sheets
* Night Lighting - Modulate Range on top of Hue & Value
----------------------------------------------------
--- Independent Shader Stuff for Main Repo --------
----------------------------------------------------
* Add Test_Max_Resources to Repo
* Make Resolution text shader it's own pass for Repo
* Show Original Res, Previous Pass Res, Next Pass Res, Viewport
* Move Resolution Debug to be top justified
* Gameboy
* Fix DMG Shader or make new one
* Fix Low Contrast Issue
* Multiple palettes including Custom for Gameboy
* Add Gameboy Palettes https://www.deviantart.com/thewolfbunny/gallery/69987002/game-boy-palettes
* Independent Bezel Scaling not the same as non-int scale
* Why? Maybe only in Portrait Res?
* Outer reflection corner radius should be independent when in independent mode
* See why very inner edge seems not affected by reflection mask
* Startup Animation - Sprite Sheet
* Frame Shading
* Shading on frame interior edge?
* Frame Inner edge static lighter line
* Frame Interior Edge thickness
* Fix shading with rounded outer corner
* Frame shadow should follow corner radius
* When reflection is off still see inner bezel edge reflection
* Put Torridgristle LUT back in for blue skys?
Documentation
Troubleshooting
New install of retroarch
Turn all overlays off
I have rings, wavy distortions (Moire)
Moire
The Waves you are seeing are called a Moire effect, its the same effect you see through a screen door sometimes.
It is caused by using a crt shader with scanlines and tube curvature and made worse when the resolution is limited. It is a thorny problem , and sometimes hard to get rid of at 1080, it is much less of a problem at 4k.
Things which can help/fix the problem
Reducing strength of scanlines,
Reducing or curvature or setting it to 0 will definitely fix it.
If you keep using curvature using Integer scale in the shader parameters can sometimes help.
If making own presets reference from crt-Base presets
Old Megabezel https://github.com/HyperspaceMadness/shaders_slang/tree/adf6dc3c0f09db11ebf4fbcf85098ac8232acfcc
----------------------------------------------------
--- Retroarch Features -----------------------------
----------------------------------------------------
* Add Core Provided Aspect as Uniform
* Add Rotation as Uniforms
* Replace Text, for shader type, game & core, content directory
* core_name
* game_name
* [shadertype], [gamename], [corename], [contentdirectory]
* Check textures and use default if not found
* Append (Prepend) Shader Preset - to add a shader preset to the beginning of the chain
* Fix edit shader in UI - Changes are currently lost or need to apply twice
* Fix loss of current parameter values when retroarch goes from full screen to window
* Fix saving with same name with different capitalization creates self reference
* Shaders folder as a path token, e.g. "[shaders]/shaders_slang/" [shaders_dir]?
* Hide Parameters
* Stop Reloading Shader multiple times on Save (Keep optional param)
* Choose Textures in UI
* Shader Textures in Sub Menu - Add ability to set texture overrides in retroarch UI
* Shader Passes in Sub Menu
* Dropdowns for indexed parameters?
* Multiple references in one file for adding passes and parameter overrides
* Edit Multiple References in UI vs Shader Passes, Discreetly change between Simple and Full
* Onscreen Display of current shader preset
* Reload Last Preset
* Next/Previous Shader does not work well if shader was loaded as Game preset
* Sometimes uses different directories, probably related to shader_path in live shader rather than originally loaded preset
* Pass Scaling Types
* Original scaling Type
* MaxAbsolute scaling type?
* If res is lower don't scale if larger scale to this res, good for PSX Upscaling
* Would avoid people crashing with internal resolution multiple
* Add "Timer" uniform variable vec4(total-count, count-since-shader-load, oscillator[1,0,1,0,1,...], [unknown/undefined])
* Unknown could be frames since direction change, good for rewind effect
* Check for alias used multiple times appears as semantic error now
* global.x is semantic error if x not in global
* GIF support
Questions for Survey
What kind of intro would you like as default in the Mega Bezel?
Snow Only
Snow + CH 04
Snow + Mega Bezel Logo
* Old Perf Numbers before Caching
* Performance of Base presets at 3840x2160 on Nvidia RTX2060:
* ADVANCED - 78 FPS - No comparable old preset
* GLASS - 150 FPS - Old Glass Preset 128 FPS
* STANDARD - 135 FPS - Old Full Preset 140 FPS
* STANDARD-HD-CORE - 105 FPS
* BASIC-BORDER-WITH-REFLECTION - 175 FPS - Old Reflect Only Preset 165 FPS
* BASIC-BORDER - 295 FPS - Old Screen Scale Preset 370 FPS
* Performance on HD-CORE E.G. 1920x1080:
* ADVANCED - 60 FPS
* ADVANCED-HD-CORE - 70 FPS
* STANDARD - 85 FPS
* STANDARD-HD-CORE - 100 FPS
* BASIC-BORDER-WITH-REFLECTION - 126 FPS
* BASIC-BORDER - 180 FPS