mirror of
https://github.com/Creators-of-Create/Create.git
synced 2025-02-05 01:45:00 +01:00
Fix some instanced rendering
This commit is contained in:
parent
273fe8ebf1
commit
68bc9c6921
1 changed files with 12 additions and 1 deletions
|
@ -14,9 +14,11 @@ import com.simibubi.create.foundation.utility.AngleHelper;
|
|||
import com.simibubi.create.foundation.utility.AnimationTickHolder;
|
||||
import com.simibubi.create.foundation.utility.VecHelper;
|
||||
|
||||
import net.minecraft.nbt.CompoundNBT;
|
||||
import net.minecraft.util.Direction;
|
||||
import net.minecraft.util.math.vector.Quaternion;
|
||||
import net.minecraft.util.math.vector.Vector3d;
|
||||
import net.minecraft.util.math.vector.Vector3f;
|
||||
import net.minecraftforge.api.distmarker.Dist;
|
||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||
import net.minecraftforge.fml.DistExecutor;
|
||||
|
@ -54,12 +56,21 @@ public class MirrorBehaviour extends AbstractRotatedLightRelayBehaviour<MirrorTi
|
|||
@OnlyIn(Dist.CLIENT)
|
||||
@Nonnull
|
||||
public Quaternion getBufferedRotationQuaternion() {
|
||||
if (bufferedRotationQuaternion == null)
|
||||
if (bufferedRotationQuaternion == null) {
|
||||
bufferedRotationQuaternion = getBeamRotationAround().getUnitVector()
|
||||
.getDegreesQuaternion(getInterpolatedAngle(AnimationTickHolder.getPartialTicks() - 1));
|
||||
bufferedRotationQuaternion.multiply(Vector3f.POSITIVE_Y.getDegreesQuaternion(AngleHelper.horizontalAngle(getBeamRotationAround())));
|
||||
bufferedRotationQuaternion.multiply(Vector3f.POSITIVE_X.getDegreesQuaternion(AngleHelper.verticalAngle(getBeamRotationAround())));
|
||||
}
|
||||
return bufferedRotationQuaternion;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void read(CompoundNBT nbt, boolean clientPacket) {
|
||||
super.read(nbt, clientPacket);
|
||||
bufferedRotationQuaternion = null;
|
||||
}
|
||||
|
||||
@Nonnull
|
||||
@Override
|
||||
public Direction getBeamRotationAround() {
|
||||
|
|
Loading…
Reference in a new issue