1.21.9-pre1
This commit is contained in:
1 parent
77c91efbd4
commit
a554a4892d
7 files changed
+31
-28
No files matched your search
+1
-1
@@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx1G
|
||||
|
||||
# Fabric Properties
|
||||
# check https://fabricmc.net/develop/
|
||||
minecraft_version=25w37a
|
||||
minecraft_version=1.21.9-pre1
|
||||
loader_version=0.16.14
|
||||
jsr305_version=3.0.2
|
||||
fabric_version=0.119.5+1.21.5
|
||||
|
||||
@@ -10,7 +10,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||
@Mixin(DebugRenderer.class)
|
||||
public class DebugRenderer_scarpetRenderMixin
|
||||
{
|
||||
@Inject(method = "clear", at = @At("HEAD"))
|
||||
@Inject(method = "refreshRendererList", at = @At("HEAD"))
|
||||
private void resetScarpetRenderes(CallbackInfo ci)
|
||||
{
|
||||
if (CarpetClient.shapes != null)
|
||||
|
||||
@@ -8,7 +8,6 @@ import com.mojang.blaze3d.framegraph.FramePass;
|
||||
import net.minecraft.client.Camera;
|
||||
import net.minecraft.client.DeltaTracker;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.LevelRenderState;
|
||||
import net.minecraft.client.renderer.LevelRenderer;
|
||||
import net.minecraft.client.renderer.LevelTargetBundle;
|
||||
import net.minecraft.client.renderer.RenderBuffers;
|
||||
@@ -16,6 +15,7 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher;
|
||||
import net.minecraft.client.renderer.culling.Frustum;
|
||||
import net.minecraft.client.renderer.entity.EntityRenderDispatcher;
|
||||
import net.minecraft.client.renderer.feature.FeatureRenderDispatcher;
|
||||
import net.minecraft.client.renderer.state.LevelRenderState;
|
||||
import net.minecraft.util.profiling.ProfilerFiller;
|
||||
import org.joml.Matrix4f;
|
||||
import org.spongepowered.asm.mixin.Final;
|
||||
@@ -41,7 +41,7 @@ public class LevelRenderer_scarpetRenderMixin
|
||||
}
|
||||
|
||||
@Inject(method = "addMainPass", at = @At("RETURN"))
|
||||
private void renderScarpetThingsLate(FrameGraphBuilder frameGraphBuilder, Frustum frustum, Camera camera, Matrix4f matrix4f, GpuBufferSlice gpuBufferSlice, boolean bl, LevelRenderState levelRenderState, DeltaTracker deltaTracker, ProfilerFiller profilerFiller, CallbackInfo ci)
|
||||
private void renderScarpetThingsLate(FrameGraphBuilder frameGraphBuilder, Frustum frustum, Matrix4f matrix4f, GpuBufferSlice gpuBufferSlice, boolean bl, LevelRenderState levelRenderState, DeltaTracker deltaTracker, ProfilerFiller profilerFiller, CallbackInfo ci)
|
||||
{
|
||||
// in normal circumstances we want to render shapes at the very end so it appears correctly behind stuff.
|
||||
// we might actually not need to play with render hooks here.
|
||||
@@ -51,7 +51,7 @@ public class LevelRenderer_scarpetRenderMixin
|
||||
final float deltaPartialTick = deltaTracker.getGameTimeDeltaPartialTick(false);
|
||||
FramePass pass = frameGraphBuilder.addPass("scarpet_shapes");
|
||||
targets.main = pass.readsAndWrites(targets.main);
|
||||
pass.executes(() -> CarpetClient.shapes.render(null, camera, deltaPartialTick));
|
||||
pass.executes(() -> CarpetClient.shapes.render(null, levelRenderState, deltaPartialTick));
|
||||
featureRenderDispatcher.renderAllFeatures();
|
||||
renderBuffers.bufferSource().endLastBatch();
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import net.minecraft.client.renderer.blockentity.PistonHeadRenderer;
|
||||
import net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState;
|
||||
import net.minecraft.client.renderer.blockentity.state.PistonHeadRenderState;
|
||||
import net.minecraft.client.renderer.feature.ModelFeatureRenderer;
|
||||
import net.minecraft.client.renderer.state.CameraRenderState;
|
||||
import net.minecraft.world.level.block.entity.BlockEntity;
|
||||
import net.minecraft.world.level.block.piston.PistonMovingBlockEntity;
|
||||
import net.minecraft.world.phys.Vec3;
|
||||
@@ -51,10 +52,10 @@ public abstract class PistonHeadRenderer_movableBEMixin implements BlockEntityRe
|
||||
}
|
||||
}
|
||||
|
||||
@Inject(method = "submit(Lnet/minecraft/client/renderer/blockentity/state/PistonHeadRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/SubmitNodeCollector;)V",
|
||||
@Inject(method = "submit(Lnet/minecraft/client/renderer/blockentity/state/PistonHeadRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/SubmitNodeCollector;Lnet/minecraft/client/renderer/state/CameraRenderState;)V",
|
||||
at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/SubmitNodeCollector;submitMovingBlock(Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/block/MovingBlockRenderState;)V",
|
||||
ordinal = 0))
|
||||
private void endMethod(PistonHeadRenderState pistonHeadRenderState, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, CallbackInfo ci)
|
||||
private void endMethod(PistonHeadRenderState pistonHeadRenderState, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, CameraRenderState cameraRenderState, CallbackInfo ci)
|
||||
//private void endMethod(PistonMovingBlockEntity pistonBlockEntity_1, float partialTicks, PoseStack matrixStack_1, int i, int j, Vec3 vec3, ModelFeatureRenderer.CrumblingOverlay crumblingOverlay, SubmitNodeCollector submitNodeCollector, CallbackInfo ci)
|
||||
//private void endMethod3576(PistonMovingBlockEntity pistonBlockEntity_1, float partialTicks, PoseStack matrixStack_1, MultiBufferSource layeredVertexConsumerStorage_1, int int_1, int init_2, Vec3 cameraPos, CallbackInfo ci)
|
||||
{
|
||||
@@ -62,7 +63,7 @@ public abstract class PistonHeadRenderer_movableBEMixin implements BlockEntityRe
|
||||
if (mbrsi.getMovedBERenderState() != null) {
|
||||
BlockEntityRenderState res = mbrsi.getMovedBERenderState();
|
||||
if (res != null) {
|
||||
dispatcher.submit(res, poseStack, submitNodeCollector);
|
||||
dispatcher.submit(res, poseStack, submitNodeCollector, cameraRenderState);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ import carpet.script.CarpetScriptServer;
|
||||
import carpet.script.external.Carpet;
|
||||
import carpet.script.utils.shapes.ShapeDirection;
|
||||
|
||||
import com.mojang.blaze3d.platform.Lighting;
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import com.mojang.blaze3d.vertex.BufferBuilder;
|
||||
import com.mojang.blaze3d.vertex.ByteBufferBuilder;
|
||||
@@ -36,6 +35,7 @@ import net.minecraft.client.renderer.blockentity.BlockEntityRenderer;
|
||||
import net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState;
|
||||
import net.minecraft.client.renderer.entity.state.EntityRenderState;
|
||||
import net.minecraft.client.renderer.item.ItemStackRenderState;
|
||||
import net.minecraft.client.renderer.state.LevelRenderState;
|
||||
import net.minecraft.client.renderer.texture.OverlayTexture;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
@@ -112,13 +112,13 @@ public class ShapesRenderer
|
||||
labels = new HashMap<>();
|
||||
}
|
||||
|
||||
public void render(Matrix4f modelViewMatrix, Camera camera, float partialTick)
|
||||
public void render(Matrix4f modelViewMatrix, LevelRenderState cameraa, float partialTick)
|
||||
{
|
||||
Runnable token = Carpet.startProfilerSection("Scarpet client");
|
||||
// posestack is not needed anymore - left as TODO to cleanup later
|
||||
PoseStack matrices = new PoseStack();
|
||||
|
||||
//Camera camera = this.client.gameRenderer.getCamera();
|
||||
Camera camera = this.client.gameRenderer.getMainCamera();
|
||||
ClientLevel iWorld = this.client.level;
|
||||
ResourceKey<Level> dimensionType = iWorld.dimension();
|
||||
if ((shapes.get(dimensionType) == null || shapes.get(dimensionType).isEmpty()) &&
|
||||
@@ -164,7 +164,7 @@ public class ShapesRenderer
|
||||
shapes.get(dimensionType).values().forEach(s -> {
|
||||
if ((!s.shape.debug || entityBoxes) && s.shouldRender(dimensionType))
|
||||
{
|
||||
s.renderLines(matrices, tesselator, cameraX, cameraY, cameraZ, partialTick);
|
||||
s.renderLines(matrices, tesselator, cameraX, cameraY, cameraZ, partialTick, cameraa);
|
||||
}
|
||||
});
|
||||
// faces
|
||||
@@ -187,7 +187,7 @@ public class ShapesRenderer
|
||||
labels.get(dimensionType).values().forEach(s -> {
|
||||
if ((!s.shape.debug || entityBoxes) && s.shouldRender(dimensionType))
|
||||
{
|
||||
s.renderLines(matrices, tesselator, cameraX, cameraY, cameraZ, partialTick);
|
||||
s.renderLines(matrices, tesselator, cameraX, cameraY, cameraZ, partialTick, cameraa);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -263,7 +263,7 @@ public class ShapesRenderer
|
||||
long expiryTick;
|
||||
double renderEpsilon;
|
||||
|
||||
public abstract void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick);
|
||||
public abstract void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState);
|
||||
|
||||
public void renderFaces(Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
{
|
||||
@@ -337,7 +337,7 @@ public class ShapesRenderer
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy,
|
||||
double cz, float partialTick)
|
||||
double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0.0)
|
||||
{
|
||||
@@ -447,7 +447,7 @@ public class ShapesRenderer
|
||||
if (blockEntityRenderer != null && state != null)
|
||||
{
|
||||
// testme partial positions
|
||||
blockEntityRenderer.submit(state, matrices,client.gameRenderer.getFeatureRenderDispatcher().getSubmitNodeStorage());
|
||||
blockEntityRenderer.submit(state, matrices,client.gameRenderer.getFeatureRenderDispatcher().getSubmitNodeStorage(), levelRenderState.cameraRenderState);
|
||||
//blockEntityRenderer.submit(BlockEntity, partialTick,
|
||||
// matrices, light, OverlayTexture.NO_OVERLAY, camera1.getPosition(), null, client.gameRenderer.getFeatureRenderDispatcher().getSubmitNodeStorage());
|
||||
|
||||
@@ -493,7 +493,7 @@ public class ShapesRenderer
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0.0)
|
||||
{
|
||||
@@ -582,7 +582,7 @@ public class ShapesRenderer
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0.0)
|
||||
{
|
||||
@@ -626,7 +626,7 @@ public class ShapesRenderer
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
Vec3 v1 = shape.relativiseRender(client.level, shape.from, partialTick);
|
||||
Vec3 v2 = shape.relativiseRender(client.level, shape.to, partialTick);
|
||||
@@ -707,7 +707,7 @@ public class ShapesRenderer
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy,
|
||||
double cz, float partialTick)
|
||||
double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0)
|
||||
{
|
||||
@@ -842,7 +842,7 @@ public class ShapesRenderer
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0.0)
|
||||
{
|
||||
@@ -878,7 +878,7 @@ public class ShapesRenderer
|
||||
}
|
||||
|
||||
@Override
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick)
|
||||
public void renderLines(PoseStack matrices, Tesselator tesselator, double cx, double cy, double cz, float partialTick, LevelRenderState levelRenderState)
|
||||
{
|
||||
if (shape.a == 0.0)
|
||||
{
|
||||
|
||||
@@ -59,7 +59,7 @@ public class SystemInfo
|
||||
return StringValue.of(tlf);
|
||||
});
|
||||
put("world_dimensions", c -> ListValue.wrap(c.server().levelKeys().stream().map(k -> ValueConversions.of(k.location()))));
|
||||
put("world_spawn_point", c -> ValueConversions.of(c.server().overworld().getLevelData().getSpawnPos()));
|
||||
put("world_spawn_point", c -> ValueConversions.of(c.server().overworld().getLevelData().getRespawnData().pos()));
|
||||
|
||||
put("world_bottom", c -> new NumericValue(c.level().getMinY()));
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ import net.minecraft.commands.arguments.selector.EntitySelector;
|
||||
import net.minecraft.commands.arguments.selector.EntitySelectorParser;
|
||||
import net.minecraft.core.BlockPos;
|
||||
import net.minecraft.core.Direction;
|
||||
import net.minecraft.core.GlobalPos;
|
||||
import net.minecraft.core.Holder;
|
||||
import net.minecraft.core.HolderSet;
|
||||
import net.minecraft.core.Registry;
|
||||
@@ -69,6 +70,7 @@ import net.minecraft.world.level.GameType;
|
||||
import net.minecraft.world.level.Level;
|
||||
import net.minecraft.world.level.entity.EntityTypeTest;
|
||||
import net.minecraft.world.level.pathfinder.Path;
|
||||
import net.minecraft.world.level.storage.LevelData;
|
||||
import net.minecraft.world.level.storage.TagValueInput;
|
||||
import net.minecraft.world.level.storage.TagValueOutput;
|
||||
import net.minecraft.world.phys.BlockHitResult;
|
||||
@@ -533,9 +535,9 @@ public class EntityValue extends Value
|
||||
}
|
||||
ServerPlayer.RespawnConfig spec = spe.getRespawnConfig();
|
||||
return ListValue.of(
|
||||
ValueConversions.of(spec.pos()),
|
||||
ValueConversions.of(spec.dimension()),
|
||||
new NumericValue(spec.angle()),
|
||||
ValueConversions.of(spec.respawnData().pos()),
|
||||
ValueConversions.of(spec.respawnData().dimension()),
|
||||
new NumericValue(spec.respawnData().yaw()),
|
||||
BooleanValue.of(spec.forced())
|
||||
);
|
||||
}
|
||||
@@ -1386,7 +1388,7 @@ public class EntityValue extends Value
|
||||
}
|
||||
}
|
||||
}
|
||||
spe.setRespawnPosition(new ServerPlayer.RespawnConfig(world, pos, angle, forced), false);
|
||||
spe.setRespawnPosition(new ServerPlayer.RespawnConfig(new LevelData.RespawnData(new GlobalPos(world, pos), angle, 0), forced), false);
|
||||
}
|
||||
else if (a instanceof BlockValue bv)
|
||||
{
|
||||
@@ -1394,7 +1396,7 @@ public class EntityValue extends Value
|
||||
{
|
||||
throw new InternalExpressionException("block for spawn modification should be localised in the world");
|
||||
}
|
||||
spe.setRespawnPosition(new ServerPlayer.RespawnConfig(bv.getWorld().dimension(), bv.getPos(), e.getYRot(), true), false); // yaw
|
||||
spe.setRespawnPosition(new ServerPlayer.RespawnConfig(new LevelData.RespawnData(new GlobalPos(bv.getWorld().dimension(), bv.getPos()), e.getYRot(), 0), true), false); // yaw
|
||||
}
|
||||
else if (a.isNull())
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user