Need guide to use shaders for vulkan driver and paraLLEl n64

How can I use shaders under the vulkan driver? I’d appreciate step by step. Thank you!

There’s not much to it. Go to the online updater and fetch the slang shaders. If you’ve already got games running in ParaLLEl, just hop back into the menu, go to the quick menu if you’re not already there, go down to ‘shaders’ and then ‘load shader preset’ and choose which one you want.

I don’t see the option to update slang shaders – only cg and glsl. Do I need to be on a nightly to see it? Thanks for your interest!

whoops, my bad. You’ll have to download them from here instead:

[QUOTE=hunterk;46965]whoops, my bad. You’ll have to download them from here instead: https://github.com/libretro/slang-shaders[/QUOTE]

Thanks!

Unfortunately I still can’t get them to work. I placed the entire shaders in \retroarch\shaders\slang-shaders-master
And went to Shaders > Load Shader Preset > Slang-Shaders-Master>CRT>crt-easymode.slangp doesn’t work

manually adding it also doesn’t work.

Thoughts?

Hmm, that should work. Is it giving you any errors?

Nope, it just doesn’t work

Do they work with other cores under the Vulkan context? Can you post a log of you trying to load one?

The Cores I tested seemed to run fine with vulkan but they crashed if trying to force slang presets. If I load slangp shaders, I don’t see any visible change and if I exit and enter again, there are no shaders selected at all.

RetroArch [INFO] :: === Build =======================================RetroArch [INFO] :: Version: 1.3.6
RetroArch [INFO] :: Git: 218d6f5
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: Config: loading config from: D:\retroarch\retroarch.cfg.
RetroArch [INFO] :: Resetting undo buffers.
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: Set audio input rate to: 29975.00 Hz.
RetroArch [INFO] :: Found shader "D:\retroarch\shaders\retroarch.slangp"
RetroArch [INFO] :: Video @ fullscreen
RetroArch [INFO] :: Vulkan dynamic library loaded.
RetroArch [INFO] :: Detecting screen resolution 1920x1200.
RetroArch [INFO] :: [WGL]: Setting fullscreen to 1920x1200 @ 60Hz on device \\.\DISPLAY1.
RetroArch [INFO] :: [Vulkan]: Queue family 0 supports 16 sub-queues.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 2.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 3.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 1.
RetroArch [INFO] :: [Vulkan]: Creating swapchain with present mode: 2
RetroArch [INFO] :: [Vulkan]: Using swapchain size 1920 x 1200.
RetroArch [INFO] :: [Vulkan]: Got 3 swapchain images.
RetroArch [INFO] :: Vulkan: Using resolution 1920x1200
RetroArch [INFO] :: [Vulkan]: Using RGB565 format.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: Loading stock shader.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: Found XInput v1.4.
RetroArch [INFO] :: Found XInput controller, user #0
RetroArch [INFO] :: Enumerating DInput joypads ...
RetroArch [INFO] :: Device #0 PID: {FACE} VID:{14D8}
RetroArch [INFO] :: Autodetect: 29 profiles found
RetroArch [INFO] :: Autodetect: selected configuration: D:\retroarch\autoconfig\xinput\Cthulhu Multiconsole Edition.cfg
RetroArch [INFO] :: Device #1 PID: {02D1} VID:{045E}
RetroArch [INFO] :: Done enumerating DInput joypads ...
RetroArch [INFO] :: Autodetect: 29 profiles found
RetroArch [INFO] :: Autodetect: selected configuration: D:\retroarch\autoconfig\xinput\XInput_Controller_User_1.cfg
RetroArch [INFO] :: Found joypad driver: "xinput".
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: XAudio2: Requesting 64 ms latency, using 64 ms latency.
RetroArch [INFO] :: Found menu display driver: "menu_display_vulkan".
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [WARN] :: Input device ID 5 is unknown to this libretro implementation. Using RETRO_DEVICE_JOYPAD.
RetroArch [INFO] :: SRAM will not be saved.
RetroArch [INFO] :: null: [D:\retroarch\content_history.lpl].
RetroArch [INFO] :: [Vulkan]: VSync => on
RetroArch [INFO] :: [Vulkan]: VSync => on
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 2.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 3.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 1.
RetroArch [INFO] :: [Vulkan]: Creating swapchain with present mode: 2
RetroArch [INFO] :: [Vulkan]: Using swapchain size 1920 x 1200.
RetroArch [INFO] :: [Vulkan]: Recycled old swapchain.
RetroArch [INFO] :: [Vulkan]: Got 3 swapchain images.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: Using content: D:\ROMS\N64\Mario Kart 64 (USA).zip.
RetroArch [INFO] :: arg #0: retroarch
RetroArch [INFO] :: arg #1: D:\N64\Mario Kart 64 (USA).zip
RetroArch [INFO] :: arg #2: -s
RetroArch [INFO] :: arg #3: D:\retroarch\saves
RetroArch [INFO] :: arg #4: -S
RetroArch [INFO] :: arg #5: D:\retroarch\states
RetroArch [INFO] :: arg #6: -c
RetroArch [INFO] :: arg #7: D:\retroarch\retroarch.cfg
RetroArch [INFO] :: arg #8: -L
RetroArch [INFO] :: arg #9: D:\retroarch\cores\parallel_libretro.dll
RetroArch [INFO] :: Resetting undo buffers.
RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

Hmm, that’s very strange. I don’t see it reporting any slang errors (or anything at all, other than the stock bits), but I assume you tried to load a preset somewhere in there…?

Yes, I did. Like I said, nothing happens. I’ll wait – thnx for help

Any news on this? I’m having the same issue

do you have a log? are there any errors reported?

This is me trying to load the crt royale preset with paralel and vulkan:

RetroArch [INFO] :: === Build =======================================
RetroArch [INFO] :: Version: 1.3.6
RetroArch [INFO] :: Git: 218d6f5
RetroArch [INFO] :: =================================================
RetroArch [INFO] :: Config: loading config from: C:\Users\sidne\Documents\Retroarch\retroarch.cfg.
RetroArch [INFO] :: Resetting undo buffers.
RetroArch [INFO] :: Environ SET_PIXEL_FORMAT: RGB565.
RetroArch [INFO] :: Version of libretro API: 1
RetroArch [INFO] :: Compiled against API: 1
RetroArch [INFO] :: Set audio input rate to: 29975.00 Hz.
RetroArch [INFO] :: Video @ fullscreen
RetroArch [INFO] :: Vulkan dynamic library loaded.
RetroArch [INFO] :: Detecting screen resolution 1920x1080.
RetroArch [INFO] :: [Vulkan]: Queue family 0 supports 16 sub-queues.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 2.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 3.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 1.
RetroArch [INFO] :: [Vulkan]: Creating swapchain with present mode: 2
RetroArch [INFO] :: [Vulkan]: Using swapchain size 1920 x 1080.
RetroArch [INFO] :: [Vulkan]: Got 3 swapchain images.
RetroArch [INFO] :: Vulkan: Using resolution 1920x1080
RetroArch [INFO] :: [Vulkan]: Using RGB565 format.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: Loading stock shader.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: Found XInput v1.4.
RetroArch [INFO] :: Found XInput controller, user #0
RetroArch [INFO] :: Enumerating DInput joypads ...
RetroArch [INFO] :: Device #0 PID: {02DD} VID:{045E}
RetroArch [INFO] :: Done enumerating DInput joypads ...
RetroArch [INFO] :: Autodetect: 24 profiles found
RetroArch [INFO] :: Autodetect: selected configuration: C:\Users\sidne\Documents\Retroarch\autoconfig\xinput\XInput_Controller_User_1.cfg
RetroArch [INFO] :: Found joypad driver: "xinput".
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: XAudio2: Requesting 64 ms latency, using 64 ms latency.
RetroArch [INFO] :: Found menu display driver: "menu_display_vulkan".
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: Using font rendering backend: freetype.
RetroArch [INFO] :: SRAM will not be saved.
RetroArch [INFO] :: null: [C:\Users\sidne\Documents\Retroarch\content_history.lpl].
RetroArch [INFO] :: [Vulkan]: VSync => on
RetroArch [INFO] :: [Vulkan]: VSync => on
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 2.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 3.
RetroArch [INFO] :: [Vulkan]: Swapchain supports present mode: 1.
RetroArch [INFO] :: [Vulkan]: Creating swapchain with present mode: 2
RetroArch [INFO] :: [Vulkan]: Using swapchain size 1920 x 1080.
RetroArch [INFO] :: [Vulkan]: Recycled old swapchain.
RetroArch [INFO] :: [Vulkan]: Got 3 swapchain images.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [Vulkan]: GPU supports linear images as textures, but not DEVICE_LOCAL. Falling back to copy path.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: Found #pragma parameter interlace_bff (interlace_bff) 0.000000 0.000000 1.000000 1.000000
RetroArch [INFO] :: [slang]: Compiling shader "C:\Users\sidne\Documents\Retroarch\shaders\shaders_slang\crt\shaders/crt-royale/src/crt-royale-first-pass-linearize-crt-gamma-bob-fields.slang".
RetroArch [ERROR] :: Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0È: 'push_constant' : only allowed when using GLSL for Vulkan 
ERROR: 1 compilation errors.  No code generated.


RetroArch [ERROR] :: 
RetroArch [ERROR] :: Failed to compile vertex shader stage.
RetroArch [ERROR] :: Failed to compile shader: "C:\Users\sidne\Documents\Retroarch\shaders\shaders_slang\crt\shaders/crt-royale/src/crt-royale-first-pass-linearize-crt-gamma-bob-fields.slang".
RetroArch [ERROR] :: [Vulkan]: Failed to create preset: "C:\Users\sidne\Documents\Retroarch\shaders\shaders_slang\crt\crt-royale.slangp".
RetroArch [ERROR] :: [Vulkan]: Failed to create filter chain: "C:\Users\sidne\Documents\Retroarch\shaders\shaders_slang\crt\crt-royale.slangp". Falling back to stock.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: [slang]: Building pass #0 (N/A)
RetroArch [INFO] :: [slang]: Reflection
RetroArch [INFO] :: [slang]:   Textures:
RetroArch [INFO] :: [slang]:      Source (#0)
RetroArch [INFO] :: [slang]:
RetroArch [INFO] :: [slang]:   Uniforms (Vertex: yes, Fragment: no):
RetroArch [INFO] :: [slang]:      MVP (Offset: 0)
RetroArch [INFO] :: [Vulkan filter chain]: Not using frame history.
RetroArch [INFO] :: [Vulkan filter chain]: Not using framebuffer feedback.
RetroArch [INFO] :: Saving config at path: "C:\Users\sidne\Documents\Retroarch\retroarch.cfg"
RetroArch [INFO] :: Saved new config to "C:\Users\sidne\Documents\Retroarch\retroarch.cfg".
RetroArch [INFO] :: Resetting undo buffers.
RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
RetroArch [INFO] :: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

Ah, that’s because the push_constant feature was added after the 1.3.6 stable release. It should work in the nightly builds, if you care to update. If not, hold off a bit because 1.3.7/1.4 (whatever we decide to call it) will be out relatively soon.

Thanks alot for the advice :slight_smile: I look forward to the update