Package net.minecraft.client.particle
Class ParticleManager
java.lang.Object
net.minecraft.client.particle.ParticleManager
- All Implemented Interfaces:
ResourceReloader
- Mappings:
Namespace Name named net/minecraft/client/particle/ParticleManagerintermediary net/minecraft/class_702official gjg
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static classprivate static interfaceNested classes/interfaces inherited from interface net.minecraft.resource.ResourceReloader
ResourceReloader.Synchronizer -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Int2ObjectMap<ParticleFactory<?>> private static final ResourceFinderprivate final Object2IntOpenHashMap<ParticleGroup> private static final Loggerprivate static final intprivate final Queue<EmitterParticle> private static final List<ParticleTextureSheet> private final SpriteAtlasTextureprivate final Map<ParticleTextureSheet, Queue<Particle>> private static final Identifierprivate final Randomprivate final Map<Identifier, ParticleManager.SimpleSpriteProvider> private final TextureManagerprotected ClientWorld -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBlockBreakingParticles(BlockPos pos, Direction direction) voidaddBlockBreakParticles(BlockPos pos, BlockState state) voidaddEmitter(Entity entity, ParticleEffect parameters) voidaddEmitter(Entity entity, ParticleEffect parameters, int maxAge) voidaddParticle(Particle particle) addParticle(ParticleEffect parameters, double x, double y, double z, double velocityX, double velocityY, double velocityZ) private voidaddTo(ParticleGroup group, int count) private booleancanAdd(ParticleGroup group) Returns whether another particle fromgroupcan be rendered by this manager.voidprivate voidprivate <T extends ParticleEffect>
@Nullable ParticlecreateParticle(T parameters, double x, double y, double z, double velocityX, double velocityY, double velocityZ) private Optional<List<Identifier>> loadTextureList(Identifier id, Resource resource) private <T extends ParticleEffect>
voidregisterBlockLeakFactory(ParticleType<T> type, ParticleFactory.BlockLeakParticleFactory<T> factory) private voidprivate <T extends ParticleEffect>
voidregisterFactory(ParticleType<T> type, ParticleFactory<T> factory) private <T extends ParticleEffect>
voidregisterFactory(ParticleType<T> type, ParticleManager.SpriteAwareFactory<T> factory) reload(ResourceReloader.Synchronizer synchronizer, ResourceManager manager, Executor prepareExecutor, Executor applyExecutor) Performs a reload.private static voidrenderCustomParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, Queue<Particle> particles) voidrenderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers) private static voidrenderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, ParticleTextureSheet sheet, Queue<Particle> particles) voidsetWorld(@Nullable ClientWorld world) voidtick()private voidtickParticle(Particle particle) private voidtickParticles(Collection<Particle> particles) Ticks all particles belonging to the same texture sheet.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.resource.ResourceReloader
getName
-
Field Details
-
LOGGER
- Mappings:
Namespace Name Mixin selector named LOGGERLnet/minecraft/client/particle/ParticleManager;LOGGER:Lorg/slf4j/Logger;intermediary field_40505Lnet/minecraft/class_702;field_40505:Lorg/slf4j/Logger;official bLgjg;b:Lorg/slf4j/Logger;
-
FINDER
- Mappings:
Namespace Name Mixin selector named FINDERLnet/minecraft/client/particle/ParticleManager;FINDER:Lnet/minecraft/resource/ResourceFinder;intermediary field_40506Lnet/minecraft/class_702;field_40506:Lnet/minecraft/class_7654;official cLgjg;c:Lakn;
-
PARTICLES_PATH
- Mappings:
Namespace Name Mixin selector named PARTICLES_PATHLnet/minecraft/client/particle/ParticleManager;PARTICLES_PATH:Lnet/minecraft/util/Identifier;intermediary field_41385Lnet/minecraft/class_702;field_41385:Lnet/minecraft/class_2960;official dLgjg;d:Laku;
-
MAX_PARTICLE_COUNT
private static final int MAX_PARTICLE_COUNT- See Also:
- Mappings:
Namespace Name Mixin selector named MAX_PARTICLE_COUNTLnet/minecraft/client/particle/ParticleManager;MAX_PARTICLE_COUNT:Iintermediary field_32657Lnet/minecraft/class_702;field_32657:Iofficial eLgjg;e:I
-
PARTICLE_TEXTURE_SHEETS
- Mappings:
Namespace Name Mixin selector named PARTICLE_TEXTURE_SHEETSLnet/minecraft/client/particle/ParticleManager;PARTICLE_TEXTURE_SHEETS:Ljava/util/List;intermediary field_17820Lnet/minecraft/class_702;field_17820:Ljava/util/List;official fLgjg;f:Ljava/util/List;
-
world
- Mappings:
Namespace Name Mixin selector named worldLnet/minecraft/client/particle/ParticleManager;world:Lnet/minecraft/client/world/ClientWorld;intermediary field_3834Lnet/minecraft/class_702;field_3834:Lnet/minecraft/class_638;official aLgjg;a:Lgfw;
-
particles
- Mappings:
Namespace Name Mixin selector named particlesLnet/minecraft/client/particle/ParticleManager;particles:Ljava/util/Map;intermediary field_3830Lnet/minecraft/class_702;field_3830:Ljava/util/Map;official gLgjg;g:Ljava/util/Map;
-
newEmitterParticles
- Mappings:
Namespace Name Mixin selector named newEmitterParticlesLnet/minecraft/client/particle/ParticleManager;newEmitterParticles:Ljava/util/Queue;intermediary field_3837Lnet/minecraft/class_702;field_3837:Ljava/util/Queue;official hLgjg;h:Ljava/util/Queue;
-
textureManager
- Mappings:
Namespace Name Mixin selector named textureManagerLnet/minecraft/client/particle/ParticleManager;textureManager:Lnet/minecraft/client/texture/TextureManager;intermediary field_3831Lnet/minecraft/class_702;field_3831:Lnet/minecraft/class_1060;official iLgjg;i:Lheo;
-
random
- Mappings:
Namespace Name Mixin selector named randomLnet/minecraft/client/particle/ParticleManager;random:Lnet/minecraft/util/math/random/Random;intermediary field_3832Lnet/minecraft/class_702;field_3832:Lnet/minecraft/class_5819;official jLgjg;j:Lazg;
-
factories
- Mappings:
Namespace Name Mixin selector named factoriesLnet/minecraft/client/particle/ParticleManager;factories:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;intermediary field_3835Lnet/minecraft/class_702;field_3835:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;official kLgjg;k:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;
-
newParticles
- Mappings:
Namespace Name Mixin selector named newParticlesLnet/minecraft/client/particle/ParticleManager;newParticles:Ljava/util/Queue;intermediary field_3836Lnet/minecraft/class_702;field_3836:Ljava/util/Queue;official lLgjg;l:Ljava/util/Queue;
-
spriteAwareFactories
- Mappings:
Namespace Name Mixin selector named spriteAwareFactoriesLnet/minecraft/client/particle/ParticleManager;spriteAwareFactories:Ljava/util/Map;intermediary field_18300Lnet/minecraft/class_702;field_18300:Ljava/util/Map;official mLgjg;m:Ljava/util/Map;
-
particleAtlasTexture
- Mappings:
Namespace Name Mixin selector named particleAtlasTextureLnet/minecraft/client/particle/ParticleManager;particleAtlasTexture:Lnet/minecraft/client/texture/SpriteAtlasTexture;intermediary field_18301Lnet/minecraft/class_702;field_18301:Lnet/minecraft/class_1059;official nLgjg;n:Lhel;
-
groupCounts
- Mappings:
Namespace Name Mixin selector named groupCountsLnet/minecraft/client/particle/ParticleManager;groupCounts:Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;intermediary field_29072Lnet/minecraft/class_702;field_29072:Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;official oLgjg;o:Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;
-
-
Constructor Details
-
ParticleManager
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/client/particle/ParticleManager;<init>(Lnet/minecraft/client/world/ClientWorld;Lnet/minecraft/client/texture/TextureManager;)Vintermediary <init>Lnet/minecraft/class_702;<init>(Lnet/minecraft/class_638;Lnet/minecraft/class_1060;)Vofficial <init>Lgjg;<init>(Lgfw;Lheo;)V
-
-
Method Details
-
registerDefaultFactories
private void registerDefaultFactories()- Mappings:
Namespace Name Mixin selector named registerDefaultFactoriesLnet/minecraft/client/particle/ParticleManager;registerDefaultFactories()Vintermediary method_3062Lnet/minecraft/class_702;method_3062()Vofficial eLgjg;e()V
-
registerFactory
private <T extends ParticleEffect> void registerFactory(ParticleType<T> type, ParticleFactory<T> factory) - Mappings:
Namespace Name Mixin selector named registerFactoryLnet/minecraft/client/particle/ParticleManager;registerFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleFactory;)Vintermediary method_3043Lnet/minecraft/class_702;method_3043(Lnet/minecraft/class_2396;Lnet/minecraft/class_707;)Vofficial aLgjg;a(Lls;Lgjh;)V
-
registerBlockLeakFactory
private <T extends ParticleEffect> void registerBlockLeakFactory(ParticleType<T> type, ParticleFactory.BlockLeakParticleFactory<T> factory) - Mappings:
Namespace Name Mixin selector named registerBlockLeakFactoryLnet/minecraft/client/particle/ParticleManager;registerBlockLeakFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleFactory$BlockLeakParticleFactory;)Vintermediary method_49338Lnet/minecraft/class_702;method_49338(Lnet/minecraft/class_2396;Lnet/minecraft/class_707$class_8187;)Vofficial aLgjg;a(Lls;Lgjh$a;)V
-
registerFactory
private <T extends ParticleEffect> void registerFactory(ParticleType<T> type, ParticleManager.SpriteAwareFactory<T> factory) - Mappings:
Namespace Name Mixin selector named registerFactoryLnet/minecraft/client/particle/ParticleManager;registerFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleManager$SpriteAwareFactory;)Vintermediary method_18834Lnet/minecraft/class_702;method_18834(Lnet/minecraft/class_2396;Lnet/minecraft/class_702$class_4091;)Vofficial aLgjg;a(Lls;Lgjg$c;)V
-
reload
public CompletableFuture<Void> reload(ResourceReloader.Synchronizer synchronizer, ResourceManager manager, Executor prepareExecutor, Executor applyExecutor) Performs a reload. Returns a future that is completed when the reload is completed.In a reload, there is a prepare stage and an apply stage. For the prepare stage, you should create completable futures with CompletableFuture.supplyAsync(..., prepareExecutor) to ensure the prepare actions are done with the prepare executor. Then, you should have a completable future for all the prepared actions, and call combinedPrepare.thenCompose(synchronizer::waitFor) to notify the
synchronizer. Finally, you should run CompletableFuture.thenAcceptAsync(..., applyExecutor) for apply actions. In the end, returns the result ofthenAcceptAsync.- Specified by:
reloadin interfaceResourceReloader- Parameters:
synchronizer- the synchronizermanager- the resource manager- Returns:
- a future for the reload
- See Also:
- Mappings:
Namespace Name Mixin selector named reloadLnet/minecraft/resource/ResourceReloader;reload(Lnet/minecraft/resource/ResourceReloader$Synchronizer;Lnet/minecraft/resource/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;intermediary method_25931Lnet/minecraft/class_3302;method_25931(Lnet/minecraft/class_3302$class_4045;Lnet/minecraft/class_3300;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;official aLaui;a(Laui$a;Lauo;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
-
clearAtlas
public void clearAtlas()- Mappings:
Namespace Name Mixin selector named clearAtlasLnet/minecraft/client/particle/ParticleManager;clearAtlas()Vintermediary method_18829Lnet/minecraft/class_702;method_18829()Vofficial aLgjg;a()V
-
loadTextureList
- Mappings:
Namespace Name Mixin selector named loadTextureListLnet/minecraft/client/particle/ParticleManager;loadTextureList(Lnet/minecraft/util/Identifier;Lnet/minecraft/resource/Resource;)Ljava/util/Optional;intermediary method_18836Lnet/minecraft/class_702;method_18836(Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)Ljava/util/Optional;official aLgjg;a(Laku;Laum;)Ljava/util/Optional;
-
addEmitter
- Mappings:
Namespace Name Mixin selector named addEmitterLnet/minecraft/client/particle/ParticleManager;addEmitter(Lnet/minecraft/entity/Entity;Lnet/minecraft/particle/ParticleEffect;)Vintermediary method_3061Lnet/minecraft/class_702;method_3061(Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;)Vofficial aLgjg;a(Lbuj;Llr;)V
-
addEmitter
- Mappings:
Namespace Name Mixin selector named addEmitterLnet/minecraft/client/particle/ParticleManager;addEmitter(Lnet/minecraft/entity/Entity;Lnet/minecraft/particle/ParticleEffect;I)Vintermediary method_3051Lnet/minecraft/class_702;method_3051(Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;I)Vofficial aLgjg;a(Lbuj;Llr;I)V
-
addParticle
@Nullable public @Nullable Particle addParticle(ParticleEffect parameters, double x, double y, double z, double velocityX, double velocityY, double velocityZ) - Mappings:
Namespace Name Mixin selector named addParticleLnet/minecraft/client/particle/ParticleManager;addParticle(Lnet/minecraft/particle/ParticleEffect;DDDDDD)Lnet/minecraft/client/particle/Particle;intermediary method_3056Lnet/minecraft/class_702;method_3056(Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703;official aLgjg;a(Llr;DDDDDD)Lgje;
-
createParticle
@Nullable private <T extends ParticleEffect> @Nullable Particle createParticle(T parameters, double x, double y, double z, double velocityX, double velocityY, double velocityZ) - Mappings:
Namespace Name Mixin selector named createParticleLnet/minecraft/client/particle/ParticleManager;createParticle(Lnet/minecraft/particle/ParticleEffect;DDDDDD)Lnet/minecraft/client/particle/Particle;intermediary method_3055Lnet/minecraft/class_702;method_3055(Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703;official bLgjg;b(Llr;DDDDDD)Lgje;
-
addParticle
- Mappings:
Namespace Name Mixin selector named addParticleLnet/minecraft/client/particle/ParticleManager;addParticle(Lnet/minecraft/client/particle/Particle;)Vintermediary method_3058Lnet/minecraft/class_702;method_3058(Lnet/minecraft/class_703;)Vofficial aLgjg;a(Lgje;)V
-
tick
public void tick()- Mappings:
Namespace Name Mixin selector named tickLnet/minecraft/client/particle/ParticleManager;tick()Vintermediary method_3057Lnet/minecraft/class_702;method_3057()Vofficial bLgjg;b()V
-
tickParticles
Ticks all particles belonging to the same texture sheet.- Parameters:
particles- a collection of particles from the same sheet- Mappings:
Namespace Name Mixin selector named tickParticlesLnet/minecraft/client/particle/ParticleManager;tickParticles(Ljava/util/Collection;)Vintermediary method_3048Lnet/minecraft/class_702;method_3048(Ljava/util/Collection;)Vofficial aLgjg;a(Ljava/util/Collection;)V
-
addTo
- Mappings:
Namespace Name Mixin selector named addToLnet/minecraft/client/particle/ParticleManager;addTo(Lnet/minecraft/particle/ParticleGroup;I)Vintermediary method_34022Lnet/minecraft/class_702;method_34022(Lnet/minecraft/class_5878;I)Vofficial aLgjg;a(Llq;I)V
-
tickParticle
- Mappings:
Namespace Name Mixin selector named tickParticleLnet/minecraft/client/particle/ParticleManager;tickParticle(Lnet/minecraft/client/particle/Particle;)Vintermediary method_3059Lnet/minecraft/class_702;method_3059(Lnet/minecraft/class_703;)Vofficial bLgjg;b(Lgje;)V
-
renderParticles
public void renderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers) - Mappings:
Namespace Name Mixin selector named renderParticlesLnet/minecraft/client/particle/ParticleManager;renderParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;)Vintermediary method_3049Lnet/minecraft/class_702;method_3049(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;)Vofficial aLgjg;a(Lfkp;FLglv$a;)V
-
renderParticles
private static void renderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, ParticleTextureSheet sheet, Queue<Particle> particles) - Mappings:
Namespace Name Mixin selector named renderParticlesLnet/minecraft/client/particle/ParticleManager;renderParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;Lnet/minecraft/client/particle/ParticleTextureSheet;Ljava/util/Queue;)Vintermediary method_65199Lnet/minecraft/class_702;method_65199(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_3999;Ljava/util/Queue;)Vofficial aLgjg;a(Lfkp;FLglv$a;Lgji;Ljava/util/Queue;)V
-
renderCustomParticles
private static void renderCustomParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, Queue<Particle> particles) - Mappings:
Namespace Name Mixin selector named renderCustomParticlesLnet/minecraft/client/particle/ParticleManager;renderCustomParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;Ljava/util/Queue;)Vintermediary method_65200Lnet/minecraft/class_702;method_65200(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;Ljava/util/Queue;)Vofficial aLgjg;a(Lfkp;FLglv$a;Ljava/util/Queue;)V
-
setWorld
- Mappings:
Namespace Name Mixin selector named setWorldLnet/minecraft/client/particle/ParticleManager;setWorld(Lnet/minecraft/client/world/ClientWorld;)Vintermediary method_3045Lnet/minecraft/class_702;method_3045(Lnet/minecraft/class_638;)Vofficial aLgjg;a(Lgfw;)V
-
addBlockBreakParticles
- Mappings:
Namespace Name Mixin selector named addBlockBreakParticlesLnet/minecraft/client/particle/ParticleManager;addBlockBreakParticles(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)Vintermediary method_3046Lnet/minecraft/class_702;method_3046(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)Vofficial aLgjg;a(Lji;Ldwv;)V
-
addBlockBreakingParticles
- Mappings:
Namespace Name Mixin selector named addBlockBreakingParticlesLnet/minecraft/client/particle/ParticleManager;addBlockBreakingParticles(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)Vintermediary method_3054Lnet/minecraft/class_702;method_3054(Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)Vofficial aLgjg;a(Lji;Ljn;)V
-
getDebugString
- Mappings:
Namespace Name Mixin selector named getDebugStringLnet/minecraft/client/particle/ParticleManager;getDebugString()Ljava/lang/String;intermediary method_3052Lnet/minecraft/class_702;method_3052()Ljava/lang/String;official dLgjg;d()Ljava/lang/String;
-
canAdd
Returns whether another particle fromgroupcan be rendered by this manager.- Returns:
- whether another particle from
groupcan be rendered by this manager - Mappings:
Namespace Name Mixin selector named canAddLnet/minecraft/client/particle/ParticleManager;canAdd(Lnet/minecraft/particle/ParticleGroup;)Zintermediary method_34021Lnet/minecraft/class_702;method_34021(Lnet/minecraft/class_5878;)Zofficial aLgjg;a(Llq;)Z
-
clearParticles
private void clearParticles()- Mappings:
Namespace Name Mixin selector named clearParticlesLnet/minecraft/client/particle/ParticleManager;clearParticles()Vintermediary method_48015Lnet/minecraft/class_702;method_48015()Vofficial fLgjg;f()V
-