From 3f199816f83b44006d91e71c73793cb222ee0e3e Mon Sep 17 00:00:00 2001 From: UnknownShadow200 Date: Sat, 12 Sep 2015 09:43:03 +1000 Subject: [PATCH] Fix sheep model. --- ClassicalSharp/Model/ModelCache.cs | 2 +- ClassicalSharp/Model/SheepModel.cs | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ClassicalSharp/Model/ModelCache.cs b/ClassicalSharp/Model/ModelCache.cs index cc8d758d2..f01569656 100644 --- a/ClassicalSharp/Model/ModelCache.cs +++ b/ClassicalSharp/Model/ModelCache.cs @@ -15,7 +15,7 @@ namespace ClassicalSharp.Model { } public void InitCache() { - vertices = new VertexPos3fTex2fCol4b[384]; + vertices = new VertexPos3fTex2fCol4b[24 * 12]; vb = api.CreateDynamicVb( VertexFormat.Pos3fTex2fCol4b, vertices.Length ); cache["humanoid"] = new PlayerModel( game ); } diff --git a/ClassicalSharp/Model/SheepModel.cs b/ClassicalSharp/Model/SheepModel.cs index bcecce959..6634f0dfa 100644 --- a/ClassicalSharp/Model/SheepModel.cs +++ b/ClassicalSharp/Model/SheepModel.cs @@ -8,7 +8,6 @@ namespace ClassicalSharp.Model { public class SheepModel : IModel { public bool Fur = true; - int furTextureId; public SheepModel( Game window ) : base( window ) { vertices = new VertexPos3fTex2fCol4b[partVertices * 6 * ( Fur ? 2 : 1 )]; @@ -80,7 +79,11 @@ namespace ClassicalSharp.Model { DrawRotate( 0, 0.75f, -0.3125f, p.rightLegXRot, 0, 0, RightLegFront ); DrawRotate( 0, 0.75f, 0.4375f, p.rightLegXRot, 0, 0, LeftLegBack ); DrawRotate( 0, 0.75f, 0.4375f, p.leftLegXRot, 0, 0, RightLegBack ); + // Need to draw the two parts separately. + graphics.DrawDynamicIndexedVb( DrawMode.Triangles, cache.vb, cache.vertices, index, index * 6 / 4 ); graphics.AlphaTest = true; + index = 0; + if( Fur ) { graphics.BindTexture( cache.SheepFurTexId ); DrawPart( FurTorso );