Download Particle Core — Minecraft Mods — MetaMods

Particle Core

Active

Downloads

28

Last update

3 months ago

Versions

1.20 — 1.21.8
Client
Fabric
Forge
Neoforge
Quilt
Decor
Game mechanics
Game optimization
Utils

Particle Core - Particle Optimization in Minecraft

Main Banner. The words Particle Core over an expanse of bubble particles.

Particle Core specializes in one thing: optimizing particle performance. The standard version of Minecraft handles particles inefficiently in various aspects. This mod aims to correct this situation.

Main Features

Culling Invisible Particles

The most significant performance improvement - the mod doesn't render particles you can't see. This makes sense! At standard field of view, only about 1/12 of the space around the player is visible - why render the other 11/12 of particles that aren't visible anyway?

Rendering Optimization

Rendered particles undergo additional optimization. Vertex transformations and lighting map operations are improved. For vertex optimization, the mod works with Sodium.

Particle Type Control

Three methods are provided to completely disable or reduce the appearance of specific particle types. Any particles that can be added via the /particle command can be configured.

  1. particle_type tag. Add particle types to particle_core:excluded_particles to completely disable them. Server owners: this will disable specified particles for all clients joining the server - use with caution!
  2. Type-based reduction through configuration. In the Particle Core configuration, users can add mappings of particle type identifier to appearance probability (floating-point number).
  3. Complete disabling of potion particles. If potion particles irritate you on screen, simply disable them in settings!

Unlike resource packs that hide particles, this approach prevents their generation at the spawning stage, which actually improves performance.

Fine-tuning Standard Parameters

Two configuration options allow precise adjustment of standard Minecraft parameters: ALL, DECREASED, and MINIMAL. The first regulates the interval between ALL and DECREASED, the second - between DECREASED and MINIMAL. If you want to slightly reduce the number of particles, for example when your computer works fine with DECREASED but you still think there are too many particles, you can reduce their quantity without switching to full MINIMAL.

Configuration

Particle Core provides comprehensive configuration covering all added features. The configuration file is located in the standard .minecraft config folder. File name: particle_core_config_v[x].json, where [x] is the current version number.

At the beginning of the configuration file, there's a detailed "comments" section. It's recommended to review it for understanding configuration usage.

turnOffPotionParticles

For some players, potion particles are extremely irritating. Use this setting to disable them.

reduceParticlesAllChance

Regulator for adjusting particle appearance between Minecraft parameters ALL and DECREASED.

reduceParticlesDecreasedChance

Regulator for adjusting particle appearance between Minecraft parameters DECREASED and MINIMAL.

disableParticles

Completely disables generation of all particles on the client side.

reduceParticlesByType

Map for reducing appearance of specific particle types.

  • key: particle type identifier, for example minecraft:smoke.
  • value: floating-point number from 0.0 to 1.0. 0.0 completely disables the particle, 1.0 - normal appearance frequency. Any intermediate value determines the probability of successful particle appearance.

disableOptimizations

If any Particle Core feature causes conflicts or is simply undesirable, each feature can be individually disabled by adding its string key to this list. See comments for instructions.

Performance Comparison

Without Particle Core

Without Particle Core, world rendering takes 41% of CPU time, with particle rendering comprising the lion's share - 25% of CPU time. Screenshot of Spark profile showing world rendering at 41% CPU time

With Particle Core

With Particle Core, rendering now takes only 16% of CPU time, and particle rendering has almost no impact on performance. Screenshot of second Spark profile showing world rendering at 16% CPU time

With Sodium

Improves performance compared to Sodium alone. The top part of the screenshot shows operation with Particle Core, the bottom - without it. Improvement is about 5% of CPU time, or 50% relative improvement. Screenshot of two overlaid Spark profiles. Top shows particle rendering at 11%, bottom at 17%

Project members
fzzyhmstrs

fzzyhmstrs

Developer

Created: 12 Mar 2024

ID: 1510