libretro / libretro/RetroArch

wrap_modes, linear filtering and mipmap_input behaviour through passes.

Open
#14,437 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

shaders
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Description

To sample PassX from PassX+n (with n>1), with desidered linear filtering and/or wrap mode, you have to set it in PassX+1, NOT PassX or PassX+n

Eg:

shader1 = something
shader2 = something
shader3 = something
shader4 = something

If i want pass4 to sample pass 2 with linear filtering, i've to set filter_linear3 = true
Similar things happen for wrap_modes.
Is this the intended behaviour? I find it counter-intuitive.

Expected behavior

I was expecting that setting filter_linear (or a wrap mode) in pass2 would produce a linearly filtered output for pass4.

Actual behavior

Instead, it seems that the filtering mode is set by the pass that immediately follows (?)

Version/Commit

You can find this information under Information/System Information

  • RetroArch: [version/commit]
    1.10.3
Environment information

Archlinux package, Vulkan renderer.

EDIT:
mipmap_input acts the very same way.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported behavior using RetroArch 1.10.3 with the Vulkan renderer and a four-pass shader setup. Compare wrap_modes, linear filtering, and mipmap_input when sampling an earlier pass, then determine whether the pass-to-pass behavior is intended and document or correct it accordingly.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.