平滑直升机和装甲车第三人称准星
This commit is contained in:
parent
58198e1c3e
commit
ee7b194bca
2 changed files with 4 additions and 4 deletions
|
@ -149,7 +149,7 @@ public class HelicopterHudOverlay {
|
|||
|
||||
}
|
||||
|
||||
Matrix4f transform = getVehicleTransform(mobileVehicle);
|
||||
Matrix4f transform = getVehicleTransform(mobileVehicle, event.getPartialTick());
|
||||
float x0 = 0f;
|
||||
float y0 = 0.65f;
|
||||
float z0 = 0.8f;
|
||||
|
@ -244,9 +244,9 @@ public class HelicopterHudOverlay {
|
|||
preciseBlit(guiGraphics, ModUtils.loc("textures/screens/helicopter/heli_driver_angle.png"), k + diffY, l + diffX, 0, 0.0F, i, j, i, j);
|
||||
}
|
||||
|
||||
public static Matrix4f getVehicleTransform(VehicleEntity vehicle) {
|
||||
public static Matrix4f getVehicleTransform(VehicleEntity vehicle, float partialTicks) {
|
||||
Matrix4f transform = new Matrix4f();
|
||||
transform.translate((float) vehicle.getX(), (float) vehicle.getY() + 1.45f, (float) vehicle.getZ());
|
||||
transform.translate((float) Mth.lerp(partialTicks, vehicle.xo, vehicle.getX()), (float) Mth.lerp(partialTicks, vehicle.yo + 1.45, vehicle.getY() + 1.45), (float) Mth.lerp(partialTicks, vehicle.zo, vehicle.getZ()));
|
||||
transform.rotate(Axis.YP.rotationDegrees(-vehicle.getYRot()));
|
||||
transform.rotate(Axis.XP.rotationDegrees(vehicle.getXRot()));
|
||||
transform.rotate(Axis.ZP.rotationDegrees(vehicle.getRoll()));
|
||||
|
|
|
@ -327,7 +327,7 @@ public class VehicleHudOverlay {
|
|||
renderKillIndicator(guiGraphics, w, h);
|
||||
|
||||
} else if (Minecraft.getInstance().options.getCameraType() == CameraType.THIRD_PERSON_BACK && !ClientEventHandler.zoomVehicle) {
|
||||
Vec3 p = RenderHelper.worldToScreen(new Vec3(player.getX(), player.getY(), player.getZ()).add(iLand.getBarrelVec(event.getPartialTick()).scale(192)), cameraPos);
|
||||
Vec3 p = RenderHelper.worldToScreen(new Vec3(Mth.lerp(event.getPartialTick(), player.xo, player.getX()), Mth.lerp(event.getPartialTick(), player.yo + player.getEyeHeight(), player.getEyeY()), Mth.lerp(event.getPartialTick(), player.zo, player.getZ())).add(iLand.getBarrelVec(event.getPartialTick()).scale(192)), cameraPos);
|
||||
// 第三人称准星
|
||||
if (p != null) {
|
||||
poseStack.pushPose();
|
||||
|
|
Loading…
Add table
Reference in a new issue