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/ParticleManager- intermediary - net/minecraft/class_702- official - gjk
- 
Nested Class SummaryNested ClassesModifier and TypeClassDescriptionprivate static classprivate static interfaceNested classes/interfaces inherited from interface net.minecraft.resource.ResourceReloaderResourceReloader.Synchronizer
- 
Field SummaryFieldsModifier 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 SummaryConstructors
- 
Method SummaryModifier 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.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.resource.ResourceReloadergetName
- 
Field Details- 
LOGGER- Mappings:
- Namespace - Name - Mixin selector - named - LOGGER- Lnet/minecraft/client/particle/ParticleManager;LOGGER:Lorg/slf4j/Logger;- intermediary - field_40505- Lnet/minecraft/class_702;field_40505:Lorg/slf4j/Logger;- official - b- Lgjk;b:Lorg/slf4j/Logger;
 
- 
FINDER- Mappings:
- Namespace - Name - Mixin selector - named - FINDER- Lnet/minecraft/client/particle/ParticleManager;FINDER:Lnet/minecraft/resource/ResourceFinder;- intermediary - field_40506- Lnet/minecraft/class_702;field_40506:Lnet/minecraft/class_7654;- official - c- Lgjk;c:Lako;
 
- 
PARTICLES_PATH- Mappings:
- Namespace - Name - Mixin selector - named - PARTICLES_PATH- Lnet/minecraft/client/particle/ParticleManager;PARTICLES_PATH:Lnet/minecraft/util/Identifier;- intermediary - field_41385- Lnet/minecraft/class_702;field_41385:Lnet/minecraft/class_2960;- official - d- Lgjk;d:Lakv;
 
- 
MAX_PARTICLE_COUNTprivate static final int MAX_PARTICLE_COUNT- See Also:
- Mappings:
- Namespace - Name - Mixin selector - named - MAX_PARTICLE_COUNT- Lnet/minecraft/client/particle/ParticleManager;MAX_PARTICLE_COUNT:I- intermediary - field_32657- Lnet/minecraft/class_702;field_32657:I- official - e- Lgjk;e:I
 
- 
PARTICLE_TEXTURE_SHEETS- Mappings:
- Namespace - Name - Mixin selector - named - PARTICLE_TEXTURE_SHEETS- Lnet/minecraft/client/particle/ParticleManager;PARTICLE_TEXTURE_SHEETS:Ljava/util/List;- intermediary - field_17820- Lnet/minecraft/class_702;field_17820:Ljava/util/List;- official - f- Lgjk;f:Ljava/util/List;
 
- 
world- Mappings:
- Namespace - Name - Mixin selector - named - world- Lnet/minecraft/client/particle/ParticleManager;world:Lnet/minecraft/client/world/ClientWorld;- intermediary - field_3834- Lnet/minecraft/class_702;field_3834:Lnet/minecraft/class_638;- official - a- Lgjk;a:Lgga;
 
- 
particles- Mappings:
- Namespace - Name - Mixin selector - named - particles- Lnet/minecraft/client/particle/ParticleManager;particles:Ljava/util/Map;- intermediary - field_3830- Lnet/minecraft/class_702;field_3830:Ljava/util/Map;- official - g- Lgjk;g:Ljava/util/Map;
 
- 
newEmitterParticles- Mappings:
- Namespace - Name - Mixin selector - named - newEmitterParticles- Lnet/minecraft/client/particle/ParticleManager;newEmitterParticles:Ljava/util/Queue;- intermediary - field_3837- Lnet/minecraft/class_702;field_3837:Ljava/util/Queue;- official - h- Lgjk;h:Ljava/util/Queue;
 
- 
textureManager- Mappings:
- Namespace - Name - Mixin selector - named - textureManager- Lnet/minecraft/client/particle/ParticleManager;textureManager:Lnet/minecraft/client/texture/TextureManager;- intermediary - field_3831- Lnet/minecraft/class_702;field_3831:Lnet/minecraft/class_1060;- official - i- Lgjk;i:Lhev;
 
- 
random- Mappings:
- Namespace - Name - Mixin selector - named - random- Lnet/minecraft/client/particle/ParticleManager;random:Lnet/minecraft/util/math/random/Random;- intermediary - field_3832- Lnet/minecraft/class_702;field_3832:Lnet/minecraft/class_5819;- official - j- Lgjk;j:Lazh;
 
- 
factories- Mappings:
- Namespace - Name - Mixin selector - named - factories- Lnet/minecraft/client/particle/ParticleManager;factories:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;- intermediary - field_3835- Lnet/minecraft/class_702;field_3835:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;- official - k- Lgjk;k:Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;
 
- 
newParticles- Mappings:
- Namespace - Name - Mixin selector - named - newParticles- Lnet/minecraft/client/particle/ParticleManager;newParticles:Ljava/util/Queue;- intermediary - field_3836- Lnet/minecraft/class_702;field_3836:Ljava/util/Queue;- official - l- Lgjk;l:Ljava/util/Queue;
 
- 
spriteAwareFactories- Mappings:
- Namespace - Name - Mixin selector - named - spriteAwareFactories- Lnet/minecraft/client/particle/ParticleManager;spriteAwareFactories:Ljava/util/Map;- intermediary - field_18300- Lnet/minecraft/class_702;field_18300:Ljava/util/Map;- official - m- Lgjk;m:Ljava/util/Map;
 
- 
particleAtlasTexture- Mappings:
- Namespace - Name - Mixin selector - named - particleAtlasTexture- Lnet/minecraft/client/particle/ParticleManager;particleAtlasTexture:Lnet/minecraft/client/texture/SpriteAtlasTexture;- intermediary - field_18301- Lnet/minecraft/class_702;field_18301:Lnet/minecraft/class_1059;- official - n- Lgjk;n:Lhes;
 
- 
groupCounts- Mappings:
- Namespace - Name - Mixin selector - named - groupCounts- Lnet/minecraft/client/particle/ParticleManager;groupCounts:Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;- intermediary - field_29072- Lnet/minecraft/class_702;field_29072:Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;- official - o- Lgjk;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;)V- intermediary - <init>- Lnet/minecraft/class_702;<init>(Lnet/minecraft/class_638;Lnet/minecraft/class_1060;)V- official - <init>- Lgjk;<init>(Lgga;Lhev;)V
 
 
- 
- 
Method Details- 
registerDefaultFactoriesprivate void registerDefaultFactories()- Mappings:
- Namespace - Name - Mixin selector - named - registerDefaultFactories- Lnet/minecraft/client/particle/ParticleManager;registerDefaultFactories()V- intermediary - method_3062- Lnet/minecraft/class_702;method_3062()V- official - e- Lgjk;e()V
 
- 
registerFactoryprivate <T extends ParticleEffect> void registerFactory(ParticleType<T> type, ParticleFactory<T> factory) - Mappings:
- Namespace - Name - Mixin selector - named - registerFactory- Lnet/minecraft/client/particle/ParticleManager;registerFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleFactory;)V- intermediary - method_3043- Lnet/minecraft/class_702;method_3043(Lnet/minecraft/class_2396;Lnet/minecraft/class_707;)V- official - a- Lgjk;a(Lls;Lgjl;)V
 
- 
registerBlockLeakFactoryprivate <T extends ParticleEffect> void registerBlockLeakFactory(ParticleType<T> type, ParticleFactory.BlockLeakParticleFactory<T> factory) - Mappings:
- Namespace - Name - Mixin selector - named - registerBlockLeakFactory- Lnet/minecraft/client/particle/ParticleManager;registerBlockLeakFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleFactory$BlockLeakParticleFactory;)V- intermediary - method_49338- Lnet/minecraft/class_702;method_49338(Lnet/minecraft/class_2396;Lnet/minecraft/class_707$class_8187;)V- official - a- Lgjk;a(Lls;Lgjl$a;)V
 
- 
registerFactoryprivate <T extends ParticleEffect> void registerFactory(ParticleType<T> type, ParticleManager.SpriteAwareFactory<T> factory) - Mappings:
- Namespace - Name - Mixin selector - named - registerFactory- Lnet/minecraft/client/particle/ParticleManager;registerFactory(Lnet/minecraft/particle/ParticleType;Lnet/minecraft/client/particle/ParticleManager$SpriteAwareFactory;)V- intermediary - method_18834- Lnet/minecraft/class_702;method_18834(Lnet/minecraft/class_2396;Lnet/minecraft/class_702$class_4091;)V- official - a- Lgjk;a(Lls;Lgjk$c;)V
 
- 
reloadpublic 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 interface- ResourceReloader
- Parameters:
- synchronizer- the synchronizer
- manager- the resource manager
- Returns:
- a future for the reload
- See Also:
- Mappings:
- Namespace - Name - Mixin selector - named - reload- Lnet/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_25931- Lnet/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 - a- Lauj;a(Lauj$a;Laup;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture;
 
- 
clearAtlaspublic void clearAtlas()- Mappings:
- Namespace - Name - Mixin selector - named - clearAtlas- Lnet/minecraft/client/particle/ParticleManager;clearAtlas()V- intermediary - method_18829- Lnet/minecraft/class_702;method_18829()V- official - a- Lgjk;a()V
 
- 
loadTextureList- Mappings:
- Namespace - Name - Mixin selector - named - loadTextureList- Lnet/minecraft/client/particle/ParticleManager;loadTextureList(Lnet/minecraft/util/Identifier;Lnet/minecraft/resource/Resource;)Ljava/util/Optional;- intermediary - method_18836- Lnet/minecraft/class_702;method_18836(Lnet/minecraft/class_2960;Lnet/minecraft/class_3298;)Ljava/util/Optional;- official - a- Lgjk;a(Lakv;Laun;)Ljava/util/Optional;
 
- 
addEmitter- Mappings:
- Namespace - Name - Mixin selector - named - addEmitter- Lnet/minecraft/client/particle/ParticleManager;addEmitter(Lnet/minecraft/entity/Entity;Lnet/minecraft/particle/ParticleEffect;)V- intermediary - method_3061- Lnet/minecraft/class_702;method_3061(Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;)V- official - a- Lgjk;a(Lbum;Llr;)V
 
- 
addEmitter- Mappings:
- Namespace - Name - Mixin selector - named - addEmitter- Lnet/minecraft/client/particle/ParticleManager;addEmitter(Lnet/minecraft/entity/Entity;Lnet/minecraft/particle/ParticleEffect;I)V- intermediary - method_3051- Lnet/minecraft/class_702;method_3051(Lnet/minecraft/class_1297;Lnet/minecraft/class_2394;I)V- official - a- Lgjk;a(Lbum;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 - addParticle- Lnet/minecraft/client/particle/ParticleManager;addParticle(Lnet/minecraft/particle/ParticleEffect;DDDDDD)Lnet/minecraft/client/particle/Particle;- intermediary - method_3056- Lnet/minecraft/class_702;method_3056(Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703;- official - a- Lgjk;a(Llr;DDDDDD)Lgji;
 
- 
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 - createParticle- Lnet/minecraft/client/particle/ParticleManager;createParticle(Lnet/minecraft/particle/ParticleEffect;DDDDDD)Lnet/minecraft/client/particle/Particle;- intermediary - method_3055- Lnet/minecraft/class_702;method_3055(Lnet/minecraft/class_2394;DDDDDD)Lnet/minecraft/class_703;- official - b- Lgjk;b(Llr;DDDDDD)Lgji;
 
- 
addParticle- Mappings:
- Namespace - Name - Mixin selector - named - addParticle- Lnet/minecraft/client/particle/ParticleManager;addParticle(Lnet/minecraft/client/particle/Particle;)V- intermediary - method_3058- Lnet/minecraft/class_702;method_3058(Lnet/minecraft/class_703;)V- official - a- Lgjk;a(Lgji;)V
 
- 
tickpublic void tick()- Mappings:
- Namespace - Name - Mixin selector - named - tick- Lnet/minecraft/client/particle/ParticleManager;tick()V- intermediary - method_3057- Lnet/minecraft/class_702;method_3057()V- official - b- Lgjk;b()V
 
- 
tickParticlesTicks all particles belonging to the same texture sheet.- Parameters:
- particles- a collection of particles from the same sheet
- Mappings:
- Namespace - Name - Mixin selector - named - tickParticles- Lnet/minecraft/client/particle/ParticleManager;tickParticles(Ljava/util/Collection;)V- intermediary - method_3048- Lnet/minecraft/class_702;method_3048(Ljava/util/Collection;)V- official - a- Lgjk;a(Ljava/util/Collection;)V
 
- 
addTo- Mappings:
- Namespace - Name - Mixin selector - named - addTo- Lnet/minecraft/client/particle/ParticleManager;addTo(Lnet/minecraft/particle/ParticleGroup;I)V- intermediary - method_34022- Lnet/minecraft/class_702;method_34022(Lnet/minecraft/class_5878;I)V- official - a- Lgjk;a(Llq;I)V
 
- 
tickParticle- Mappings:
- Namespace - Name - Mixin selector - named - tickParticle- Lnet/minecraft/client/particle/ParticleManager;tickParticle(Lnet/minecraft/client/particle/Particle;)V- intermediary - method_3059- Lnet/minecraft/class_702;method_3059(Lnet/minecraft/class_703;)V- official - b- Lgjk;b(Lgji;)V
 
- 
renderParticlespublic void renderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers) - Mappings:
- Namespace - Name - Mixin selector - named - renderParticles- Lnet/minecraft/client/particle/ParticleManager;renderParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;)V- intermediary - method_3049- Lnet/minecraft/class_702;method_3049(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;)V- official - a- Lgjk;a(Lfks;FLglz$a;)V
 
- 
renderParticlesprivate static void renderParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, ParticleTextureSheet sheet, Queue<Particle> particles) - Mappings:
- Namespace - Name - Mixin selector - named - renderParticles- Lnet/minecraft/client/particle/ParticleManager;renderParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;Lnet/minecraft/client/particle/ParticleTextureSheet;Ljava/util/Queue;)V- intermediary - method_65199- Lnet/minecraft/class_702;method_65199(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;Lnet/minecraft/class_3999;Ljava/util/Queue;)V- official - a- Lgjk;a(Lfks;FLglz$a;Lgjm;Ljava/util/Queue;)V
 
- 
renderCustomParticlesprivate static void renderCustomParticles(Camera camera, float tickDelta, VertexConsumerProvider.Immediate vertexConsumers, Queue<Particle> particles) - Mappings:
- Namespace - Name - Mixin selector - named - renderCustomParticles- Lnet/minecraft/client/particle/ParticleManager;renderCustomParticles(Lnet/minecraft/client/render/Camera;FLnet/minecraft/client/render/VertexConsumerProvider$Immediate;Ljava/util/Queue;)V- intermediary - method_65200- Lnet/minecraft/class_702;method_65200(Lnet/minecraft/class_4184;FLnet/minecraft/class_4597$class_4598;Ljava/util/Queue;)V- official - a- Lgjk;a(Lfks;FLglz$a;Ljava/util/Queue;)V
 
- 
setWorld- Mappings:
- Namespace - Name - Mixin selector - named - setWorld- Lnet/minecraft/client/particle/ParticleManager;setWorld(Lnet/minecraft/client/world/ClientWorld;)V- intermediary - method_3045- Lnet/minecraft/class_702;method_3045(Lnet/minecraft/class_638;)V- official - a- Lgjk;a(Lgga;)V
 
- 
addBlockBreakParticles- Mappings:
- Namespace - Name - Mixin selector - named - addBlockBreakParticles- Lnet/minecraft/client/particle/ParticleManager;addBlockBreakParticles(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/block/BlockState;)V- intermediary - method_3046- Lnet/minecraft/class_702;method_3046(Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;)V- official - a- Lgjk;a(Lji;Ldwy;)V
 
- 
addBlockBreakingParticles- Mappings:
- Namespace - Name - Mixin selector - named - addBlockBreakingParticles- Lnet/minecraft/client/particle/ParticleManager;addBlockBreakingParticles(Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/math/Direction;)V- intermediary - method_3054- Lnet/minecraft/class_702;method_3054(Lnet/minecraft/class_2338;Lnet/minecraft/class_2350;)V- official - a- Lgjk;a(Lji;Ljn;)V
 
- 
getDebugString- Mappings:
- Namespace - Name - Mixin selector - named - getDebugString- Lnet/minecraft/client/particle/ParticleManager;getDebugString()Ljava/lang/String;- intermediary - method_3052- Lnet/minecraft/class_702;method_3052()Ljava/lang/String;- official - d- Lgjk;d()Ljava/lang/String;
 
- 
canAddReturns 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 - canAdd- Lnet/minecraft/client/particle/ParticleManager;canAdd(Lnet/minecraft/particle/ParticleGroup;)Z- intermediary - method_34021- Lnet/minecraft/class_702;method_34021(Lnet/minecraft/class_5878;)Z- official - a- Lgjk;a(Llq;)Z
 
- 
clearParticlesprivate void clearParticles()- Mappings:
- Namespace - Name - Mixin selector - named - clearParticles- Lnet/minecraft/client/particle/ParticleManager;clearParticles()V- intermediary - method_48015- Lnet/minecraft/class_702;method_48015()V- official - f- Lgjk;f()V
 
 
-