Skip to content

AshleyPikachu/Super-Bit-Shader

Repository files navigation

Super-Bit-Shader


Super-Bit-Shader (SBS) is a GLSL Retroarch Pixel Index shader that allows the user to color monochromatic games using a variety of palettes. Also, there are options for the "Color" versions of consoles like GBC, NGPC, and WSC with the goal of creating a more accurate experience.

Supported Consoles

  • Game Boy / Game Boy Color (TGB Dual / DoubleCherryGB)
  • Neo Geo Pocket / Neo Geo Pocket Color: (Beetle NeoPop / RACE)
  • Pokémon Mini (PokeMini)
  • Wonderswan / Wonderswan Color (Beetle Cygne)
  • Virtual Boy (Beetle VB) / (Red-Viper)

Paritally Supported Cores

  • Game Boy / Game Boy Color (SameBoy) - Game Boy Color and Super Game Boy Games

Screenshots


Retroarch Shader Install Instructions

🟢Part 1: Retroarch Setup

  1. First download and install Retroarch and familiarize yourself with the program and Shaders.
  2. Launch Retroarch and go to "Settings" -> "Video" -> "Output" -> "Video - Set Video Driver to GL".
  3. Download a release version and place the "Retroarch.SBS.3.5.1" folder inside the "Retroarch/Shaders" directory.
  4. Now is now ready to be seen by Retroarch.

🟠Part 2: Loading Super-Bit-Shader

  1. Load a game inside Retroarch using a supported core above.
  2. With the game loaded bring up the Retroarch "Quick Menu", from there scroll to "Shaders".
  3. Select it and choose "Load Preset" to interact with the "Retroarch.SBS.3.5.1" folder.
  4. Once inside the folder choose your console and shader type, if unsure select "Mixed-Frames".
  5. Pick "GLSLP" file that is the shader color of your choice.

🔵Part 3: Core Options

  1. Now with your shader selected use backspace key to head back to the "Main Menu".
  2. From the there select "Quick Menu" again and locate "Core Options".
  3. These are settings per core, and some of them need to be adjusted for SBS to work.
  • DoubleCherryGB & SameBoy: Set GBC Color Correction to "OFF".
  • PokeMini & Beetle VB: Set the Palette: "Black & White".
  • Beetle Cygne: Color Palette: "Grayscale", "Color Depth-Thousands (16-bit)". "60hz Mode off" when Mixed-Frames.

🟡Part 5: SAVE YOUR WORK

  1. Head back to the "Main Menu" using and select the "Quick Menu" one last time.
  2. Scroll down to "Overrides" and select it.
  3. Choose Save "Core Override" or "Game Override" to have Super-Bit-Shader launch every session.
  4. Congratulations, you are all set! Close the Retroarch menu and get back to the game.

Shader Versions

  • Regular: SBS applied to the handheld with no modifications to the output.
  • Mixed-Frames: SBS + Mixed-Frames. It used to prevent flicker and is the recommended as the default.
  • Pixel-AA: Anti-Aliasising option for non integerscale displays.
  • Color Handheld Presets: "1. Game Boy Color", "1. Neo Geo Pocket Color" and "1. Wonderswan Color (Crystal)" should be assigned as a "Core Override" for those handhelds with monochrome games being a "Game Override".

🐍Red-Viper (3DS Required)

🟢Setting Up Red-Viper

  1. This is a Virtual Boy Emulator for the 3DS by SkyFloogle.
  2. Replace the included "rv_config.ini" on your 3DS's SD card with the file from the Github release page.
  • Directory: "RootofSD\config\red-viper"
  1. You are now all set to use Red-Viper and can choose your palettes in the emulator.

PCVR - Virtual Boy (A Controller & Bigscreen Beta Required)

🔴Setting Up Retroarch for VR

  1. With Super-Bit-Shader setup, create a desktop shortcut for Retroarch to make it easy to open in VR.
  2. Start a Virtual Boy game and inside "Core Options" to set the "3D Mode" to "Side-by-Side".
  3. Go back to the "Main Menu" and select "Settings" below it.
  4. From "Settings" pick "Input" goto "Hotkeys", look for "Menu Toggle (Controller Combo)" and select "L3 + R3".
  5. Return to the "Quick Menu" and save these changes as a "Core Override" and close Retroarch.

🔴Using Retroarch in VR

  1. With a regular controller in reach, enter VR and launch Bigscreen Beta. It can be Steam, Rift Store or Quest Store.
  2. A wired connection automatically shows your desktop. Use "Remote Desktop" for wireless.
  3. Using the VR controllers a pointer launch Retroarch and use your regular controller to navigate it.
  4. Load a Virtual Boy game and put the regular controller down.
  5. With VR controllers go into the Bigscreen's menu and press "My Room" to locate to the "Desktop" category.
  6. You will find a "2D" button, press it until it says "SBS" for Side by Side 3D.
  7. You are now ready to play Virtual Boy.

Google Cardboard - Virtual Boy (A Controller & Smartphone Required)

🔵Setting Up Retroarch

  1. With Super-Bit-Shader setup, start a Virtual Boy game.
  2. Pull up the "Quick Menu" and locate "On-Screen Overlay" to toggle the "Display Overlay" off.
  3. From "Settings" pick "Input" goto "Hotkeys", look for "Menu Toggle (Controller Combo)" and select "L3 + R3".
  4. Next return to the "Main Menu" and enter the "Quick Menu" again.
  5. From there select "Core Options" and set the "3D Mode" to "Side-by-Side".
  6. Save changes as a "Core Override", go back to the "Main Menu" to properly "Quit" Retroarch to save your work.
  7. Now reboot the program and load your game and put the phone inside the Google Cardboard.

NOTE: "Core Options" cannot adjust Interpupillary Distance (IPD), make sure your Google Cardboard is fitted for Retroarch.


How to Create Your Own Palette

Prerequisites

  1. A Photo editor with Hex Colors and the option to modify Hue, Chroma and Saturation.
  2. This tool to Convert Hex Color to GLSL vec3
  3. The ability to copy, edit and save the glsl files included in this github.

Guide

  1. First create a color palette in a program of your choosing. This github includes sample sheets for each palette.
  2. When making a Palette keep the light levels around the same as the grayscale templates with the exception being Virtual Boy.
  3. Feel free to experiment with Chroma, Saturation, and Hue.
  4. More details are available in each consoles glsl files.

Credits

  • Version 1.0: Testing and calibrating, color selection by Digiflower5 (AshleyPikachu). Base code by hunterk.
  • Version 2.0-3.5.X: Testing, calibrating, color selection, code modifications, and comments by Digiflower5 (AshleyPikachu)
  • Special Thanks to Nispero & EADMASTER for inspiring this project. Also thank you SkyFloogle for helping me read the Red-Viper config.

Licenses - Check the GLSL files for full details

  • "Super-Bit-Shader" by Ashley the Pikachu (Digiflower5) and hunterk is Public Domain.
  • "pixel-aa / to_lin" shaders by fishku are Public Domain.
  • "mixed-frames" shader by jdgleaver is GNU General Public License.
  • "gba-color" by Pokefan531 and hunterk is Public Domain.
  • "gbc-color" by Pokefan531 and hunterk is Public Domain.
  • "gdapt" by Sp00kyFox does not have a license listed.
  • All seperate supporting shaders included with SBS are from Retroarch's Online Updater unmodified and have their own licenses.

Extra Notes & Tips

  • Older releases of Super-Bit-Shader are included on this Github for archival purposes.
  • You can use Overrides to set your video driver per core if you need another display driver.

About

Super Bit Shader is a GLSL Retroarch Pixel Index shader that allows the user to color monochromatic games using a variety of palettes.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages