Upshift 1.6.1
Curse Maven Snippet
What's new
Fixed
- The generator no longer tears. Extra frames are now interpolated between the previous and the current rendered frame instead of extrapolated past the newest one. The previous world image is warped with a rotation homography evaluated at the exact fraction between the two known poses, which removes the overshoot that produced the visible rip.
- The HUD stays still. Only the world-only part of the frame is warped. The HUD is taken from the finished frame and composited un-warped, so the crosshair, hotbar and chat do not slide with the camera.
- No stretched edges. Areas that the rotation reveals fall back to the un-warped image instead of sampling the clamped border into long streaks.
- Correct pacing. Generated frames are presented immediately before the real frame and spread over the refresh interval, while the real frame keeps its own surface image. The previous version presented them as a burst at the start of the next frame.
- Sodium is now also loaded in the development client (
modRuntimeOnly), so the settings page and Sodium compatibility can be checked inrunClient.
Technical
FrameGenPresenterkeeps two world-only snapshots with their camera rotation and projection.captureWorld()copies the world at the end ofrenderLevel, before the HUD is drawn, and the snapshots alternate every frame.MinecraftMixinwraps the window-surface blit with@WrapOperation(no@Overwrite), so generated frames and the real frame share the surface in the correct order.fgr_reprojectnow samples the previous world, the finished frame and the current world-only capture; the last two isolate the HUD mask.- The generator pipeline is precompiled once after the shader resources load, so the first activation does not hitch.
This mod has no additional files

