Fix perspective transformations for left-handed items, disable ModelAnimationDebug until model loading is fixed.

This commit is contained in:
RainWarrior 2016-03-10 03:38:58 +03:00
parent 873899a62b
commit 173cec4149
4 changed files with 11 additions and 8 deletions

View File

@ -44,7 +44,7 @@
- ItemCameraTransforms itemcameratransforms = p_184394_2_.getItemCameraTransforms();
- ItemCameraTransforms.func_188034_a(itemcameratransforms.getTransform(p_184394_3_), p_184394_4_);
+ // TODO: check if negative scale is a thing
+ p_184394_2_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_184394_2_, p_184394_3_);
+ p_184394_2_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_184394_2_, p_184394_3_, p_184394_4_);
- if (this.func_183005_a(itemcameratransforms.getTransform(p_184394_3_)))
- {
@ -59,7 +59,7 @@
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
this.setupGuiTransform(p_184390_2_, p_184390_3_, p_184390_4_.isGui3d());
- p_184390_4_.getItemCameraTransforms().applyTransform(ItemCameraTransforms.TransformType.GUI);
+ p_184390_4_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_184390_4_, ItemCameraTransforms.TransformType.GUI);
+ p_184390_4_ = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(p_184390_4_, ItemCameraTransforms.TransformType.GUI, false);
this.renderItem(p_184390_1_, p_184390_4_);
GlStateManager.disableAlpha();
GlStateManager.disableRescaleNormal();

View File

@ -38,7 +38,7 @@
}
- ibakedmodel.getItemCameraTransforms().applyTransform(ItemCameraTransforms.TransformType.GROUND);
+ ibakedmodel = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(ibakedmodel, ItemCameraTransforms.TransformType.GROUND);
+ ibakedmodel = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(ibakedmodel, ItemCameraTransforms.TransformType.GROUND, false);
this.itemRenderer.renderItem(itemstack, ibakedmodel);
GlStateManager.popMatrix();
}
@ -47,7 +47,7 @@
}
- ibakedmodel.getItemCameraTransforms().applyTransform(ItemCameraTransforms.TransformType.GROUND);
+ ibakedmodel = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(ibakedmodel, ItemCameraTransforms.TransformType.GROUND);
+ ibakedmodel = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(ibakedmodel, ItemCameraTransforms.TransformType.GROUND, false);
this.itemRenderer.renderItem(itemstack, ibakedmodel);
GlStateManager.popMatrix();
- GlStateManager.translate(0.0F * f, 0.0F * f1, 0.09375F * f2);

View File

@ -90,7 +90,6 @@ import com.google.common.base.Objects;
import com.google.common.base.Optional;
import com.google.common.collect.Maps;
@SuppressWarnings("deprecation")
public class ForgeHooksClient
{
//private static final ResourceLocation ITEM_GLINT = new ResourceLocation("textures/misc/enchanted_item_glint.png");
@ -360,6 +359,7 @@ public class ForgeHooksClient
modelLoader.onPostBakeEvent(modelRegistry);
}
@SuppressWarnings("deprecation")
public static Matrix4f getMatrix(ItemTransformVec3f transform)
{
javax.vecmath.Matrix4f m = new javax.vecmath.Matrix4f(), t = new javax.vecmath.Matrix4f();
@ -382,10 +382,12 @@ public class ForgeHooksClient
return m;
}
public static IBakedModel handleCameraTransforms(IBakedModel model, ItemCameraTransforms.TransformType cameraTransformType)
@SuppressWarnings("deprecation")
public static IBakedModel handleCameraTransforms(IBakedModel model, ItemCameraTransforms.TransformType cameraTransformType, boolean leftHandHackery)
{
if(model instanceof IPerspectiveAwareModel)
{
// FIXME: left hand hackery
Pair<? extends IBakedModel, Matrix4f> pair = ((IPerspectiveAwareModel)model).handlePerspective(cameraTransformType);
if(pair.getRight() != null) multiplyCurrentGlMatrix(pair.getRight());
@ -393,7 +395,7 @@ public class ForgeHooksClient
}
else
{
model.getItemCameraTransforms().applyTransform(cameraTransformType);
ItemCameraTransforms.func_188034_a(model.getItemCameraTransforms().getTransform(cameraTransformType), leftHandHackery);
}
return model;
}
@ -573,6 +575,7 @@ public class ForgeHooksClient
}
}
@SuppressWarnings("deprecation")
public static Optional<TRSRTransformation> applyTransform(ItemTransformVec3f transform, Optional<? extends IModelPart> part)
{
if(part.isPresent()) return Optional.absent();

View File

@ -64,7 +64,7 @@ import org.apache.commons.lang3.tuple.Pair;
import com.google.common.collect.ImmutableMap;
@Mod(modid = ModelAnimationDebug.MODID, version = ModelAnimationDebug.VERSION)
//@Mod(modid = ModelAnimationDebug.MODID, version = ModelAnimationDebug.VERSION)
public class ModelAnimationDebug
{
public static final String MODID = "forgedebugmodelanimation";