Перейти к содержимому
Mineforgian

GpuShift

Adaptive entity and particle render budgeting.

Загрузки
9K
Подписчики
34
Обновлён
8 августа 2026 г.
Лицензия
All-Rights-Reserved

Опубликован 4 мая 2026 г.

GpuShift

GpuShift is a client-side optimization utility for Minecraft 1.21.1.

It does not move all Minecraft CPU work to the GPU, replace the renderer, or guarantee higher FPS. Instead, it focuses on a small set of client-render tasks that can become expensive in some scenes, especially when there are many distant living entities or many cosmetic particles.

What It Does

  • Adds adaptive client-side render budgeting
  • Can skip some distant non-player living entity rendering under render pressure
  • Can limit newly spawned cosmetic particles based on a configurable particle budget
  • Protects important visuals such as players, named entities, glowing entities, close entities, weather particles, and known compatibility cases
  • Includes an optional FPS/frame-time overlay
  • Adds keybinds:
    • F8 toggles the GpuShift overlay
    • F9 opens GpuShift settings
  • Shows a one-time quick setup screen on first world/server join
  • Detects common render stacks such as Sodium, Embeddium, and Oculus/Iris-style shader setups
  • Includes compatibility safeguards for mods such as Pretty Rain and Tooltip Overhaul

What It Does Not Do

GpuShift does not optimize:

  • Server TPS
  • Mob AI
  • Redstone or machines
  • World generation
  • Chunk loading
  • Networking
  • Memory usage
  • Recipe loading
  • The full Minecraft renderer pipeline

If your bottleneck is server-side logic, chunk generation, RAM pressure, shaders, or GPU load, GpuShift may show little or no visible FPS change.

Performance Expectations

GpuShift is most likely to matter in CPU-bound client-render scenes with many particles or distant living entities.

It may have little effect in lightweight scenes, already-optimized modpacks, or packs where another optimization mod is already handling the expensive render work.

The overlay can be used to check whether GpuShift is actively doing anything. If the skipped entity/particle counters stay at zero, then the current scene likely has little for GpuShift to budget.

Recommended Settings

Default Balanced settings are intended to be conservative.

Recommended particle budget:

  • 70% for better visuals
  • 65% for balanced use
  • 55% for heavier packs where you are comfortable with fewer cosmetic particles
  • 100% disables GpuShift particle culling

Compatibility

GpuShift is designed to avoid hard dependencies.

Known/expected compatibility behavior:

  • Sodium / Embeddium: detected automatically
  • Oculus / shader stacks: shader assist is kept conservative
  • Pretty Rain: weather particles are protected
  • Tooltip Overhaul: armor tooltip preview entities are protected
  • AsyncParticles or other particle render mods: use 100% particle budget if you want the other mod to fully control particles

If you find a visual issue, please report it with:

  • Minecraft version
  • Loader and loader version
  • GpuShift version
  • Modpack or mod list
  • latest.log
  • GpuShift config
  • Screenshot or reproduction steps

Bug reports and compatibility issues:

https://github.com/orferr/GpuShift-Issues

"GpuShift Development Status

Active development of GpuShift has ended.

The mod will remain available, but no new features or Minecraft version ports are currently planned. Critical fixes may still happen, but there is no guaranteed support schedule.

The main reason for this decision is that GpuShift has reached a point where further development is becoming increasingly unpredictable. The mod already modifies and redistributes a significant amount of Minecraft's rendering and performance-related workload, and additional optimizations are starting to affect different hardware configurations in very different ways.

An optimization that gives a significant performance improvement on one system can provide little benefit, or even reduce performance, on another. Because of this, I can no longer predict the result of further changes with a sufficiently high level of confidence.

At this stage, continuing to add more optimization systems is increasingly likely to result in a performance regression rather than an improvement. In other words, further attempts to push GpuShift beyond its current state are becoming more likely to produce a minus instead of a plus.

Fixing this properly would require major architectural changes, extensive hardware-specific testing, profiling, and adaptive behavior. That would effectively mean rebuilding a large part of the project rather than continuing to develop the existing mod.

GpuShift started as an experiment in pushing Minecraft optimization further, and I’m happy with what the project managed to achieve. Existing releases will remain available.

Thank you to everyone who tested the mod, reported issues, shared benchmarks, and helped with its development."

Ченджлог

1.2.7Релиз1.20.1 · 26 июля 2026 г.

GpuShift 1.2.7 – Entity Preview & Flicker Hotfix

Special thanks to NoahRoopull for reporting the issue and providing the files needed for testing.

Fixed Fixed entity previews from Supplementaries and similar mods being incorrectly affected by Smart Entity Culling. Preview and detached entities are now automatically protected, including mobs displayed inside cages, jars, books, held items, and custom preview renderers. Fixed distant mobs flickering when the adaptive render distance changed under frame pressure. Replaced the old short cache with stable spatial and temporal hysteresis. Entities are now culled only after remaining beyond the distance threshold for several consecutive frames. Prevented temporary previews and reused entity IDs from inheriting cached culling decisions from real world entities. Preserved all existing protections for players, named or glowing mobs, passengers, nearby entities, and important entities. Kept the fix fully compatible without adding a hard dependency on Supplementaries. Performance World registration checks only run for distant entities that may actually be culled. Fast render paths remain unaffected. No noticeable performance loss was observed in scenes containing more than 100 mobs.

1.2.7Релиз1.21.1 · 26 июля 2026 г.

GpuShift 1.2.7 – Entity Preview & Flicker Hotfix

Special thanks to NoahRoopull for reporting the issue and providing the files needed for testing.

Fixed Fixed entity previews from Supplementaries and similar mods being incorrectly affected by Smart Entity Culling. Preview and detached entities are now automatically protected, including mobs displayed inside cages, jars, books, held items, and custom preview renderers. Fixed distant mobs flickering when the adaptive render distance changed under frame pressure. Replaced the old short cache with stable spatial and temporal hysteresis. Entities are now culled only after remaining beyond the distance threshold for several consecutive frames. Prevented temporary previews and reused entity IDs from inheriting cached culling decisions from real world entities. Preserved all existing protections for players, named or glowing mobs, passengers, nearby entities, and important entities. Kept the fix fully compatible without adding a hard dependency on Supplementaries. Performance World registration checks only run for distant entities that may actually be culled. Fast render paths remain unaffected. No noticeable performance loss was observed in scenes containing more than 100 mobs.

1.3.0-beta.2Бета1.21.1 · 22 июля 2026 г.

GpuShift GPU V2 Beta

Highlights

  • Added the new GPU Mob Layer for supported adult vanilla passive and neutral mobs.
  • Mob animations are prepared on the CPU, while vertex transformations and instanced rendering are handled by the GPU.
  • Added automatic batching by model, mesh, and texture to reduce entity draw calls.
  • GPU rendering activates for distant mobs when at least four compatible models are visible.
  • Added automatic model discovery, mesh caching, bone hierarchy extraction, and safe vanilla fallback.
  • Unsupported entities, children, passengers, glowing or invisible mobs, damaged states, custom models, and modded entities remain on the vanilla renderer.
  • Vanilla shadows, names, leashes, fire, armor, wool, saddles, and additional render layers remain fully supported.
  • Added safe compatibility detection for shader, model, and texture replacement stacks.
  • Added GPU Mob settings, status information, capture counters, fallback counters, batch counts, instance counts, and draw-call statistics to the GPU V2 interface.

Smart Calibration

  • Replaced the basic Auto Tune toggle with a complete Smart Calibration system.
  • Detects the current hardware, rendering environment, active resource packs, shader stack, resolution, render distance, and performance bottleneck.
  • Tests particle density, entity distance, Block Entity distance, item-frame budgeting, GPU Particles, GPU Mobs, and Adaptive Mode independently.
  • Automatically skips tests when the current scene does not contain enough relevant workload.
  • Searches for the best combined configuration using up to 16 controlled probes.
  • Validates the final recommendation using an alternating A-B-B-A test.
  • Tracks average FPS, 1% Low, p99 frame time, stability, and result confidence.
  • Repeats invalid measurements when the player moves, rotates the camera, opens a screen, changes worlds, or loses window focus.
  • Temporarily removes VSync and FPS limits during calibration, then safely restores the original settings.
  • Trial settings remain runtime-only until the player presses Apply.
  • Added recovery protection for interrupted or crashed calibration sessions.
  • Saved calibration results are automatically marked as outdated after significant system or rendering changes.

GPU Mob Lighting Fix

  • Fixed GPU-rendered mobs appearing completely black in darkness or when a shader mod was installed without an active shader pack.
  • GPU Mob rendering now explicitly binds the vanilla lightmap and overlay textures.
  • Added safe restoration of texture bindings and OpenGL state after every GPU batch.
  • Added automatic vanilla fallback when required auxiliary textures are unavailable.
  • Added the new fallback status: AUX_TEXTURES_UNAVAILABLE.
  • Added a one-time log confirmation when the mob shader, texture, lightmap, and overlay bindings are ready.

Stability and Compatibility

  • Added safe fallback for shader initialization failures, resource errors, unsupported render types, buffer overflow, and unavailable GPU resources.
  • Resource reloads, dimension changes, disconnects, and world changes now clear and rebuild GPU Mob resources safely.
  • Added protection against permanent mob disappearance after rendering or shader errors.
  • Added support for Sodium and Embeddium rendering environments.
  • Added SAFE and FORCE operating modes for GPU Mob rendering.
  • Reduced runtime telemetry overhead outside active calibration.

Benchmark Results

  • Average FPS improvement: +8.4%
  • 1% Low FPS improvement: +14.0%
  • Frame time improvement: approximately 0.16 ms
  • Deep 0.1% Low frame drops did not worsen.
  • Results were collected across three clean benchmark cycles and are included in the benchmark graph.
1.2.6Релиз1.21.1 · 21 июля 2026 г.

GpuShift 1.2.6 Early Config Load Crash Hotfix Fixed the NeoForge startup crash: Cannot get config value before config is loaded. GpuShift now safely waits for the client config to finish loading before enabling optimizations. Existing settings are applied automatically after loading, with no restart or config reset required. Added startup protection for GPU Particles, Block Entity budgets, overlays, desktop UI, and config controls. Released for Minecraft 1.21.1 and 1.20.1.

Special thanks to Gopnik for the detailed crash reports and help identifying the issue.

1.2.6Релиз1.20.1 · 21 июля 2026 г.

GpuShift 1.2.6 Early Config Load Crash Hotfix Fixed the NeoForge startup crash: Cannot get config value before config is loaded. GpuShift now safely waits for the client config to finish loading before enabling optimizations. Existing settings are applied automatically after loading, with no restart or config reset required. Added startup protection for GPU Particles, Block Entity budgets, overlays, desktop UI, and config controls. Released for Minecraft 1.21.1 and 1.20.1.

Special thanks to Gopnik for the detailed crash reports and help identifying the issue.

1.3.0-beta.1Бета1.21.1 · 17 июля 2026 г.

GpuShift 1.3.0 Beta 1

GPU Particle Layer v2

  • Added a new experimental GPU particle renderer for Minecraft 1.21.1.
  • Particle movement, gravity, fading and billboard calculations are now handled by the GPU.
  • Added AUTO, V2 and VANILLA backend modes.
  • Smoke, ash and suspended particles can use the new renderer.
  • Unsupported, modded or incompatible particles automatically fall back to vanilla rendering.
  • Pretty Rain, FBP, weather, leaves and campfire smoke remain vanilla.
  • Unsupported GPUs and shader errors safely disable V2 without crashing.
  • SAFE mode disables V2 with Iris/Oculus, while FORCE allows experimental testing.

Bottleneck Detector

  • Added automatic detection of CPU-bound and GPU-bound situations.
  • Adaptive Mode can now adjust particle, entity and block-entity budgets based on the detected bottleneck.
  • GPU timing is asynchronous and does not wait for the GPU.

UI

  • Added GPU backend selection.
  • Added Bottleneck Detector toggle and status.
  • Debug overlay now shows GPU particle instances, fallback count, draw calls, CPU/GPU frame time and bottleneck state.

Benchmark

Compared with stable 1.2.5:

  • Average FPS: 140.75 vs 140.37
  • p95 frame time: 9.29 ms vs 9.53 ms
  • p99 frame time: 10.95 ms vs 11.78 ms
  • 1% Low: 39.77 FPS vs 36.79 FPS

Average FPS is effectively unchanged, while heavier frame-time spikes and 1% Low performance improved.

1.2.5Релиз1.20.1 · 13 июля 2026 г.

GpuShift 1.2.5 Hotfix

This update improves compatibility with particle and block entity rendering mods.

Fixed

  • Fixed block-like particles disappearing when the Particle Budget was set below 100%.
  • Improved compatibility with FancyBlockParticles and similar particle mods.
  • Fixed chests, signs, banners, campfires, beds, and shulker boxes disappearing with some block entity rendering mods.
  • Improved compatibility with Better Block Entities, OBE, Enhanced Block Entities, and FastItemFrames.
  • Normal GpuShift optimization behavior remains unchanged when these mods are not installed.

Special Thanks

Personal thanks to Pranglereler for reporting the issue, providing logs, and helping identify the cause.

1.2.5Релиз1.21.1 · 13 июля 2026 г.

GpuShift 1.2.5 Hotfix

This update improves compatibility with particle and block entity rendering mods.

Fixed

  • Fixed block-like particles disappearing when the Particle Budget was set below 100%.
  • Improved compatibility with FancyBlockParticles and similar particle mods.
  • Fixed chests, signs, banners, campfires, beds, and shulker boxes disappearing with some block entity rendering mods.
  • Improved compatibility with Better Block Entities, OBE, Enhanced Block Entities, and FastItemFrames.
  • Normal GpuShift optimization behavior remains unchanged when these mods are not installed.

Special Thanks

Personal thanks to Pranglereler for reporting the issue, providing logs, and helping identify the cause.

Комментарии

Загружаем…