Skip to content

Support for .slang / .slangp and librashader #532

@AhayriSG

Description

@AhayriSG

Describe the feature or issue.

I'd love to see librashader integrated into touchHLE.
It would let us load and run .slang shaders and .slangp presets on a bunch of modern backends (OpenGL 3.3+, Vulkan, Metal, Direct3D, etc.). Early iPhone games (320×480 and similar low resolutions) look unnaturally sharp and blocky when upscaled on modern high-resolution desktop monitors. Original ~3.5" iPhone screens viewed at 25–40 cm. Many modern displays (e.g., 27"1440p at typical viewing distance) make the upscaled pixels appear huge and overly crisp, losing the authentic close-up handheld LCD feel. Emulators like PPSSPP solve this with LCD filters/shaders. Adding similar visual customization to touchHLE would greatly improve immersion and authenticity for many users.

It would open the door for users to apply cool stuff like:

  • Popular handheld/LCD-style filters such as lcd-grid-v2 or pixel_transparency-lcd3x
  • Custom bezels and overlays with reflections, glass effects, and so on (Mega Bezel style presets)
  • Load custom/user-created shader chains

Examples;
pixel_transparency-lcd-grid-v2.slangp
pixel_transparency-lcd3x.slangp
gameboy-color-dot-matrix-white-bg

I get that this is pretty niche for an emulator focused on early iPhone OS apps. Compatibility, performance and getting more stuff to actually run are way more important right now. Still, shader customization is one of those things a lot of people really enjoy in other emulators. Once the core emulation is more solid, having the option for some visual flair and immersion would be awesome, even if it's just a "nice to have" feature. No pressure at all, just putting the idea out there for whenever someone feels like looking into it down the line. 😊 Big thanks to the touchHLE team, the work you've done so far is seriously impressive. It's easily one of the most promising classic iOS emulators out there right now.

By submitting this issue, I certify that…

  • I understand that linking to, discussing or asking for pirated content is not permitted, and will lead to an immediate ban.
  • I understand that “Abandonware” and illegal copies of free games are also pirated content.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions