DLSS / FSR 4 rework: per-object motion vectors from the game
@jerbanpls ya está trabajando en esto.
Desde el 8/11/2026.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 15/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- cpp
- Área
- computer-graphics
Línea de trabajo
Start with runtime/src/gfx/extras/temporal.cpp, which currently builds camera-only motion vectors, then trace the G-buffer vertex uniforms to find where per-object transforms are stored. Check whether the game already exposes a velocity buffer and how the Streamline and FidelityFX integrations consume motion vectors, jitter, and masks. Done means moving objects no longer ghost under DLSS or FSR, related issues #44 and #45 are resolved or explained, and FSR 4 is selectable on supported hardware.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Rework the temporal upscaling path (DLSS / DLAA through Streamline, AMD FidelityFX) and add FSR 4 support. The biggest change is feeding the upscalers real per-object motion vectors pulled from the game, not ones rebuilt from the camera alone.
Current state
runtime/src/gfx/extras/temporal.cpp makes motion vectors in a compute pass using only the depth buffer and the current and previous view-projection. That covers camera motion only. Anything that moves on its own (Pokémon, the player, NPCs, animated or skinned meshes, particles) gets vectors that are wrong. That causes ghosting and smearing behind moving objects, and instability on some surfaces.
Related: #44 (ghosting), #45 (upscaler flicker / odd textures where tiles join).
Goals
- Per-object motion vectors. Find a way to expose object motion from the game:
- Find where the game keeps per-draw / per-object transforms (world matrices, skinning palettes) in the G-buffer vertex uniforms
- Keep the previous frame's transforms per object and match them across frames (stable object identity)
- Build a velocity pass that renders object motion on top of the camera-only vectors, or check whether the game has a velocity buffer of its own (e.g. for its TAA / motion blur) that we can use instead
- Handle skinned / animated meshes, or at least mask them reliably
- FSR 4 backend. Add FSR 4 next to the current FidelityFX path, with a fallback on GPUs that don't support it
- DLSS rework. Review the Streamline integration with the new inputs (motion vectors, reactive / transparency masks, jitter, reset on camera cuts)
- Reactive / transparency masks for UI, particles, water and other alpha-blended surfaces so they don't ghost
- Recheck the jitter setup (
temporal_jitter_block, sign conventions) against both SDKs
Done when
- Moving characters and objects no longer ghost or smear under DLSS / FSR
- #44 and #45 are fixed or confirmed to have another cause
- FSR 4 can be picked in the settings on supported hardware
- Lenguaje dominante
- C++
- Estrellas
- 224
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de featureJosh/Recompia
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
featureJosh/Recompia#522 ·
-
Improve GardeningAbiertoenhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
featureJosh/Recompia#535 ·
-
bug low priority
Dificultad 3/5 1-2 días Aptitud para principiantes 52/100
featureJosh/Recompia#534 · 2 comentarios ·
-
Game crashes multiple times at random moments | CachyOS HyprlandPosiblemente ocupada @featureJosh la tomó hoy. Abiertobug
featureJosh/Recompia#533 · 1 asignado ·
-
Frequent Crashes on Steam Deck: The graphics device was lost, so Pokopia must closePosiblemente ocupada @featureJosh la tomó hoy. Abiertobug high priority
featureJosh/Recompia#531 · 1 comentario · 1 asignado ·
Todos los issues de featureJosh/Recompia
Issues similares
-
type:bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
tensorflow/tflite-micro#3995 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
not for AI lovers
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
OSGeo/gdal#15515 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
VT: Backend
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
contour-terminal/contour#2314 ·
Los mantenedores suelen responder en 1 día