//Find matching bones in character model private void MatchBones(ModelRenderer modelRenderer) { renderer = mesh.GetComponentInChildren <SkinnedMeshRenderer>(); SkinnedMeshRenderer renderer2 = modelRenderer.GetComponentInChildren <SkinnedMeshRenderer>(); Dictionary <int, int> boneMap = new Dictionary <int, int>(); for (int i = 0, j = 0; i < Model.Skeleton.Bones.Length; i++, j++) { if (Model.Skeleton.Bones[i].Name == modelRenderer.Model.Skeleton.Bones[j].Name) { boneMap.Add(i, j); } else { i--; } } Transform[] bones = new Transform[boneMap.Count]; Matrix4x4[] bind = new Matrix4x4[boneMap.Count]; for (int i = 0; i < bones.Length; i++) { bones[i] = renderer2.bones[boneMap[i]]; bind[i] = renderer2.sharedMesh.bindposes[boneMap[i]]; } renderer.bones = bones; renderer.rootBone = renderer2.rootBone; renderer.sharedMesh.bindposes = bind; }
private bool onProcessAnimationFrame(ModelRenderer modelRenderer, DataEntityHandle handle, GameObject avatarInstance) { string displayName = dataEntityCollection.GetComponent <DisplayNameData>(handle).DisplayName; if (pendingRenderRequests.ContainsKey(displayName)) { Texture2D image = modelRenderer.Image; if (UseCache) { if (!string.IsNullOrEmpty(pendingRenderRequests[displayName].Context)) { avatarImageCacher.SaveTextureToCache(handle, pendingRenderRequests[displayName].Context, image); } else { Log.LogErrorFormatted(this, "Could not add image to cache, context string not found for display name: {0}", displayName); } } pendingRenderRequests.Remove(displayName); dispatchImageReady(handle, image); } modelRenderer.Destroy(); UnityEngine.Object.Destroy(avatarInstance); return(false); }
private IEnumerator renderSprite(string unlockID) { AssetRequest <GameObject> assetRequest = Content.LoadAsync <GameObject>(unlockID); yield return(assetRequest); GameObject itemModel = Object.Instantiate(assetRequest.Asset); itemModel.transform.rotation = Quaternion.Euler(ITEM_MODEL_ROTATION); CameraCullingMaskHelper.SetLayerIncludingChildren(itemModel.transform, "IconRender"); if (unlitTextureShader == null) { unlitTextureShader = Shader.Find("Unlit/Texture"); } Material mat = new Material(unlitTextureShader) { mainTexture = itemModel.GetComponent <Renderer>().sharedMaterial.mainTexture }; itemModel.GetComponent <Renderer>().material = mat; itemModel.AddComponent <ResourceCleaner>(); ModelRenderer modelRenderer = new ModelRenderer(new ModelRendererConfig(itemModel.transform, MODEL_RENDER_OFFSET, new Vector2(256f, 256f)) { FrameObjectInCamera = true }); yield return(new WaitForEndOfFrame()); callback(Sprite.Create(modelRenderer.Image, new Rect(0f, 0f, modelRenderer.Image.width, modelRenderer.Image.height), Vector2.zero), null); modelRenderer.Destroy(); }
public virtual void Update(IUpdateArgs args) { var now = DateTime.UtcNow; if (RenderEntity || ShowItemInHand) { ModelRenderer.Update(args, KnownPosition); } if (ShowItemInHand) { //ItemRenderer?.World = ItemRenderer?.Update(args.GraphicsDevice, args.Camera); } if (now.Subtract(LastUpdatedTime).TotalMilliseconds >= 50) { LastUpdatedTime = now; try { OnTick(); } catch (Exception e) { Log.Warn($"Exception while trying to tick entity!", e); } } }
public ModelSign() { this.signBoard = new ModelRenderer(this, 0, 0); this.signBoard.addBox(-12.0F, -14.0F, -1.0F, 24, 12, 2, 0.0F, "Board"); this.signStick = new ModelRenderer(this, 0, 14); this.signStick.addBox(-1.0F, -2.0F, -1.0F, 2, 14, 2, 0.0F, "Stick"); }
public ModelBox(ModelRenderer par1ModelRenderer, int par2, int par3, float par4, float par5, float par6, int par7, int par8, int par9, float par10) { PosX1 = par4; PosY1 = par5; PosZ1 = par6; PosX2 = par4 + (float)par7; PosY2 = par5 + (float)par8; PosZ2 = par6 + (float)par9; VertexPositions = new PositionTextureVertex[8]; QuadList = new TexturedQuad[6]; float f = par4 + (float)par7; float f1 = par5 + (float)par8; float f2 = par6 + (float)par9; par4 -= par10; par5 -= par10; par6 -= par10; f += par10; f1 += par10; f2 += par10; if (par1ModelRenderer.Mirror) { float f3 = f; f = par4; par4 = f3; } PositionTextureVertex positiontexturevertex = new PositionTextureVertex(par4, par5, par6, 0.0F, 0.0F); PositionTextureVertex positiontexturevertex1 = new PositionTextureVertex(f, par5, par6, 0.0F, 8F); PositionTextureVertex positiontexturevertex2 = new PositionTextureVertex(f, f1, par6, 8F, 8F); PositionTextureVertex positiontexturevertex3 = new PositionTextureVertex(par4, f1, par6, 8F, 0.0F); PositionTextureVertex positiontexturevertex4 = new PositionTextureVertex(par4, par5, f2, 0.0F, 0.0F); PositionTextureVertex positiontexturevertex5 = new PositionTextureVertex(f, par5, f2, 0.0F, 8F); PositionTextureVertex positiontexturevertex6 = new PositionTextureVertex(f, f1, f2, 8F, 8F); PositionTextureVertex positiontexturevertex7 = new PositionTextureVertex(par4, f1, f2, 8F, 0.0F); VertexPositions[0] = positiontexturevertex; VertexPositions[1] = positiontexturevertex1; VertexPositions[2] = positiontexturevertex2; VertexPositions[3] = positiontexturevertex3; VertexPositions[4] = positiontexturevertex4; VertexPositions[5] = positiontexturevertex5; VertexPositions[6] = positiontexturevertex6; VertexPositions[7] = positiontexturevertex7; QuadList[0] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex5, positiontexturevertex1, positiontexturevertex2, positiontexturevertex6 }, par2 + par9 + par7, par3 + par9, par2 + par9 + par7 + par9, par3 + par9 + par8, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); QuadList[1] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex, positiontexturevertex4, positiontexturevertex7, positiontexturevertex3 }, par2, par3 + par9, par2 + par9, par3 + par9 + par8, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); QuadList[2] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex5, positiontexturevertex4, positiontexturevertex, positiontexturevertex1 }, par2 + par9, par3, par2 + par9 + par7, par3 + par9, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); QuadList[3] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex2, positiontexturevertex3, positiontexturevertex7, positiontexturevertex6 }, par2 + par9 + par7, par3 + par9, par2 + par9 + par7 + par7, par3, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); QuadList[4] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex1, positiontexturevertex, positiontexturevertex3, positiontexturevertex2 }, par2 + par9, par3 + par9, par2 + par9 + par7, par3 + par9 + par8, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); QuadList[5] = new TexturedQuad(new PositionTextureVertex[] { positiontexturevertex4, positiontexturevertex5, positiontexturevertex6, positiontexturevertex7 }, par2 + par9 + par7 + par9, par3 + par9, par2 + par9 + par7 + par9 + par7, par3 + par9 + par8, par1ModelRenderer.TextureWidth, par1ModelRenderer.TextureHeight); if (par1ModelRenderer.Mirror) { for (int i = 0; i < QuadList.Length; i++) { QuadList[i].FlipFace(); } } }
private void UpdateModelParts() { if (ModelRenderer == null) { return; } ModelRenderer.GetBone("body", out _body); ModelRenderer.GetBone("rightArm", out _rightArmModel); ModelRenderer.GetBone("leftArm", out _leftArmModel); ModelRenderer.GetBone("leftLeg", out _leftLegModel); ModelRenderer.GetBone("rightLeg", out _rightLegModel); ModelRenderer.GetBone("leftSleeve", out _leftSleeveModel); ModelRenderer.GetBone("rightSleeve", out _rightSleeveModel); ModelRenderer.GetBone("leftPants", out _leftPantsModel); ModelRenderer.GetBone("rightPants", out _rightPantsModel); ModelRenderer.GetBone("jacket", out _jacketModel); ModelRenderer.GetBone("head", out _head); if (ModelRenderer.GetBone("hat", out EntityModelRenderer.ModelBone hat)) { foreach (var c in hat.Parts) { c.ApplyHeadYaw = true; c.ApplyYaw = false; c.ApplyPitch = true; } } }
public ModelBiped(float modelSize, float p_i1149_2_, int textureWidthIn, int textureHeightIn) { this.leftArmPose = ModelBiped.ArmPose.EMPTY; this.rightArmPose = ModelBiped.ArmPose.EMPTY; this.textureWidth = textureWidthIn; this.textureHeight = textureHeightIn; this.bipedHead = new ModelRenderer(this, 0, 0, ModelPart.Head); this.bipedHead.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, modelSize, "Head"); this.bipedHead.setRotationPoint(0.0F, 0.0F + p_i1149_2_, 0.0F); this.bipedHeadwear = new ModelRenderer(this, 32, 0, ModelPart.Helmet); this.bipedHeadwear.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, modelSize + 0.5F, "Headwear"); this.bipedHeadwear.setRotationPoint(0.0F, 0.0F + p_i1149_2_, 0.0F); this.bipedBody = new ModelRenderer(this, 16, 16, ModelPart.Chest); this.bipedBody.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, modelSize, "Body"); this.bipedBody.setRotationPoint(0.0F, 0.0F + p_i1149_2_, 0.0F); this.bipedRightArm = new ModelRenderer(this, 40, 16, ModelPart.RightArm); this.bipedRightArm.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, modelSize, "Right Arm"); this.bipedRightArm.setRotationPoint(-5.0F, 2.0F + p_i1149_2_, 0.0F); this.bipedLeftArm = new ModelRenderer(this, 40, 16, ModelPart.LeftArm); this.bipedLeftArm.mirror = true; this.bipedLeftArm.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, modelSize, "Left Arm"); this.bipedLeftArm.setRotationPoint(5.0F, 2.0F + p_i1149_2_, 0.0F); this.bipedRightLeg = new ModelRenderer(this, 0, 16, ModelPart.RightLeg); this.bipedRightLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, modelSize, "Right Leg"); this.bipedRightLeg.setRotationPoint(-1.9F, 12.0F + p_i1149_2_, 0.0F); this.bipedLeftLeg = new ModelRenderer(this, 0, 16, ModelPart.LeftLeg); this.bipedLeftLeg.mirror = true; this.bipedLeftLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, modelSize, "Left Leg"); this.bipedLeftLeg.setRotationPoint(1.9F, 12.0F + p_i1149_2_, 0.0F); }
public ModelWitch(float p_i46361_1_) : base(p_i46361_1_, 0.0F, 64, 128) { this.field_82901_h = (new ModelRenderer(this, ModelPart.Head)).setTextureSize(64, 128); this.field_82901_h.setRotationPoint(0.0F, -2.0F, 0.0F); this.field_82901_h.setTextureOffset(0, 0).addBox(0.0F, 3.0F, -6.75F, 1, 1, 1, -0.25F, "Wart"); this.villagerNose.addChild(this.field_82901_h); this.witchHat = (new ModelRenderer(this, ModelPart.Helmet)).setTextureSize(64, 128); this.witchHat.setRotationPoint(-5.0F, -10.03125F, -5.0F); this.witchHat.setTextureOffset(0, 64).addBox(0.0F, 0.0F, 0.0F, 10, 2, 10, "Hat Base"); this.villagerHead.addChild(this.witchHat); ModelRenderer modelrenderer = (new ModelRenderer(this, ModelPart.Helmet)).setTextureSize(64, 128); modelrenderer.setRotationPoint(1.75F, -4.0F, 2.0F); modelrenderer.setTextureOffset(0, 76).addBox(0.0F, 0.0F, 0.0F, 7, 4, 7, "Hat Piece"); modelrenderer.rotateAngleX = -0.05235988F; modelrenderer.rotateAngleZ = 0.02617994F; this.witchHat.addChild(modelrenderer); ModelRenderer modelrenderer1 = (new ModelRenderer(this, ModelPart.Helmet)).setTextureSize(64, 128); modelrenderer1.setRotationPoint(1.75F, -4.0F, 2.0F); modelrenderer1.setTextureOffset(0, 87).addBox(0.0F, 0.0F, 0.0F, 4, 4, 4, "Hat Piece"); modelrenderer1.rotateAngleX = -0.10471976F; modelrenderer1.rotateAngleZ = 0.05235988F; modelrenderer.addChild(modelrenderer1); ModelRenderer modelrenderer2 = (new ModelRenderer(this, ModelPart.Helmet)).setTextureSize(64, 128); modelrenderer2.setRotationPoint(1.75F, -2.0F, 2.0F); modelrenderer2.setTextureOffset(0, 95).addBox(0.0F, 0.0F, 0.0F, 1, 2, 1, 0.25F, "Hat Piece"); modelrenderer2.rotateAngleX = -0.20943952F; modelrenderer2.rotateAngleZ = 0.10471976F; modelrenderer1.addChild(modelrenderer2); }
private void Warm(GraphicsDevice device) { modelrenderer = new ModelRenderer(device); material = new BasicEffect(device); material.VertexColorEnabled = true; is_warm = true; }
public void SetBodyRotation(Vector3 rotation) { if (ModelRenderer.GetBone("body", out var head)) { head.Rotation = rotation; } }
public ModelGuardian() { this.textureWidth = 64; this.textureHeight = 64; this.guardianSpines = new ModelRenderer[12]; this.guardianBody = new ModelRenderer(this, ModelPart.Chest); this.guardianBody.setTextureOffset(0, 0).addBox(-6.0F, 10.0F, -8.0F, 12, 12, 16, "Front"); this.guardianBody.setTextureOffset(0, 28).addBox(-8.0F, 10.0F, -6.0F, 2, 12, 12, "Right"); this.guardianBody.setTextureOffset(0, 28).addBox(6.0F, 10.0F, -6.0F, 2, 12, 12, true, "Left"); this.guardianBody.setTextureOffset(16, 40).addBox(-6.0F, 8.0F, -6.0F, 12, 2, 12, "Top"); this.guardianBody.setTextureOffset(16, 40).addBox(-6.0F, 22.0F, -6.0F, 12, 2, 12, "Bottom"); for (int i = 0; i < this.guardianSpines.Length; ++i) { this.guardianSpines[i] = new ModelRenderer(this, 0, 0, ModelPart.LeftArm); this.guardianSpines[i].addBox(-1.0F, -4.5F, -1.0F, 2, 9, 2, "Spine"); this.guardianBody.addChild(this.guardianSpines[i]); } this.guardianEye = new ModelRenderer(this, 8, 0, ModelPart.Helmet); this.guardianEye.addBox(-1.0F, 15.0F, 0.0F, 2, 2, 1, "Eye"); this.guardianBody.addChild(this.guardianEye); this.guardianTail = new ModelRenderer[3]; this.guardianTail[0] = new ModelRenderer(this, 40, 0, ModelPart.LeftLeg); this.guardianTail[0].addBox(-2.0F, 14.0F, 7.0F, 4, 4, 8, "Tail"); this.guardianTail[1] = new ModelRenderer(this, 0, 54, ModelPart.LeftLeg); this.guardianTail[1].addBox(0.0F, 14.0F, 0.0F, 3, 3, 7, "Tail"); this.guardianTail[2] = new ModelRenderer(this, ModelPart.LeftLeg); this.guardianTail[2].setTextureOffset(41, 32).addBox(0.0F, 14.0F, 0.0F, 2, 2, 6, "Tail"); this.guardianTail[2].setTextureOffset(25, 19).addBox(1.0F, 10.5F, 3.0F, 1, 9, 9, "Tail"); this.guardianBody.addChild(this.guardianTail[0]); this.guardianTail[0].addChild(this.guardianTail[1]); this.guardianTail[1].addChild(this.guardianTail[2]); }
public static IEnumerator RenderOutfit(DCustomOutfit outfit, Color beakColor, Color bodyColor, Color bellyColor, ImageBuilderCameraData cameraData, GameObject avatarGO, Func <ModelRenderer, bool> onProcessModel, AvatarAnimationFrame animationFrame = null) { AvatarModel avatarModel = avatarGO.GetComponent <AvatarModel>(); avatarModel.BeakColor = beakColor; avatarModel.BodyColor = bodyColor; avatarModel.BellyColor = bellyColor; avatarModel.ClearAllEquipment(); avatarModel.ApplyOutfit(outfit); AvatarView avatarView = avatarGO.GetComponent <AvatarView>(); yield return(new WaitUntil(() => avatarView.IsReady)); ModelRendererConfig renderConfig = new ModelRendererConfig(avatarGO.transform, cameraData.ModelOffset, new Vector2(cameraData.IconSize, cameraData.IconSize)); avatarGO.transform.Rotate(cameraData.ModelRotation); renderConfig.FieldOfView = cameraData.FieldOfView; ModelRenderer modelRenderer = new ModelRenderer(renderConfig); modelRenderer.RotateCamera(cameraData.CameraRotation); if (animationFrame != null) { Animator component = avatarGO.GetComponent <Animator>(); component.Play(animationFrame.StateName, animationFrame.Layer, animationFrame.Time); } do { yield return(null); }while (onProcessModel(modelRenderer)); }
public ModelPrefab() : base() { Name = "ModelPrefab-" + System.Guid.NewGuid(); renderer = AddComponent <ModelRenderer>(); collider = AddComponent <SphereCollider>(); }
public ModelMagmaCube() { for (int i = 0; i < this.segments.Length; ++i) { int j = 0; int k = i; if (i == 2) { j = 24; k = 10; } else if (i == 3) { j = 24; k = 19; } this.segments[i] = new ModelRenderer(this, j, k); this.segments[i].addBox(-4.0F, (float)(16 + i), -4.0F, 8, 1, 8, "Segment " + i); } this.core = new ModelRenderer(this, 0, 16); this.core.addBox(-2.0F, 18.0F, -2.0F, 4, 4, 4, "Core"); }
public SceneContext(IFileSystem fileSystem, ICommandContext commandContext, ModelRenderer modelRenderer, string shadersDirectory) { GlobalResourceCache = new ResourceCache(fileSystem, shadersDirectory); MapResourceCache = new ResourceCache(fileSystem, shadersDirectory); TextureLoader = new TextureLoader(commandContext); ModelRenderer = modelRenderer ?? throw new ArgumentNullException(nameof(modelRenderer)); }
public ModelMagmaCube() { Field_40345_a = new ModelRenderer[8]; for (int i = 0; i < Field_40345_a.Length; i++) { sbyte byte0 = 0; int j = i; if (i == 2) { byte0 = 24; j = 10; } else if (i == 3) { byte0 = 24; j = 19; } Field_40345_a[i] = new ModelRenderer(this, byte0, j); Field_40345_a[i].AddBox(-4F, 16 + i, -4F, 8, 1, 8); } Field_40344_b = new ModelRenderer(this, 0, 16); Field_40344_b.AddBox(-2F, 18F, -2F, 4, 4, 4); }
public Renderer(DefaultPlatform platform, GraphicSettings graphicSettings) { this.platform = platform; var resolution = GetResolution(graphicSettings); Window = platform.CreateWindow(new Size(resolution.Width, resolution.Height), graphicSettings.Mode, graphicSettings.BatchSize, Game.Settings.Graphics.DisableWindowsDPIScaling, Game.Settings.Game.LockMouseWindow, Game.Settings.Graphics.DisableWindowsRenderThread); Context = Window.Context; TempBufferSize = graphicSettings.BatchSize; SheetSize = graphicSettings.SheetSize; WorldSpriteRenderer = new SpriteRenderer("WorldSpriteRenderer", this, Context.CreateShader("combined")); // каждый имеет vertex массив, VAO это tempbuffer. WorldRgbaSpriteRenderer = new RgbaSpriteRenderer(WorldSpriteRenderer); WorldRgbaColorRenderer = new RgbaColorRenderer(WorldSpriteRenderer); WorldModelRenderer = new ModelRenderer(this, Context.CreateShader("model")); // каждый имеет vertex массив, VAO это tempbuffer SpriteRenderer = new SpriteRenderer("SpriteRenderer", this, Context.CreateShader("combined")); // каждый имеет vertex массив, VAO это tempbuffer. RgbaSpriteRenderer = new RgbaSpriteRenderer(SpriteRenderer); // эти пишут в родительский VBO RgbaColorRenderer = new RgbaColorRenderer(SpriteRenderer); // эти пишут в родительский VBO FontSpriteRenderer = new SpriteRenderer("FontSpriteRenderer", this, Context.CreateShader("text")); // каждый имеет свой vertex массив, VAO это tempbuffer. ImguiSpriteRenderer = new SpriteRenderer("ImguiSpriteRenderer", this, Context.CreateShader("combined")); // для ImGui PixelDumpRenderer = new PixelDumpRenderer("ImguiSpriteRenderer", this, Context.CreateShader("combined")); // для ImGui sproc = new ShaderIF_API(); IntPtr context = ImGui.CreateContext(); ImGui.SetCurrentContext(context); RendererVertexBuffer = Context.CreateVertexBuffer(TempBufferSize, "Renderer"); }
public ModelBat() { this.textureWidth = 64; this.textureHeight = 64; this.batHead = new ModelRenderer(this, 0, 0, ModelPart.Head); this.batHead.addBox(-3.0F, -3.0F, -3.0F, 6, 6, 6, "Head"); ModelRenderer modelrenderer = new ModelRenderer(this, 24, 0, ModelPart.Head); modelrenderer.addBox(-4.0F, -6.0F, -2.0F, 3, 4, 1, "Right Ear"); this.batHead.addChild(modelrenderer); ModelRenderer modelrenderer1 = new ModelRenderer(this, 24, 0, ModelPart.Head); modelrenderer1.mirror = true; modelrenderer1.addBox(1.0F, -6.0F, -2.0F, 3, 4, 1, "Left Ear"); this.batHead.addChild(modelrenderer1); this.batBody = new ModelRenderer(this, 0, 16, ModelPart.Chest); this.batBody.addBox(-3.0F, 4.0F, -3.0F, 6, 12, 6, "Body"); this.batBody.setTextureOffset(0, 34).addBox(-5.0F, 16.0F, 0.0F, 10, 6, 1, "Feet"); this.batRightWing = new ModelRenderer(this, 42, 0, ModelPart.RightArm); this.batRightWing.addBox(-12.0F, 1.0F, 1.5F, 10, 16, 1, "Right Wing"); this.batOuterRightWing = new ModelRenderer(this, 24, 16, ModelPart.RightArm); this.batOuterRightWing.setRotationPoint(-12.0F, 1.0F, 1.5F); this.batOuterRightWing.addBox(-8.0F, 1.0F, 0.0F, 8, 12, 1, "Right Outer Wing"); this.batLeftWing = new ModelRenderer(this, 42, 0, ModelPart.LeftArm); this.batLeftWing.mirror = true; this.batLeftWing.addBox(2.0F, 1.0F, 1.5F, 10, 16, 1, "Left Wing"); this.batOuterLeftWing = new ModelRenderer(this, 24, 16, ModelPart.LeftArm); this.batOuterLeftWing.mirror = true; this.batOuterLeftWing.setRotationPoint(12.0F, 1.0F, 1.5F); this.batOuterLeftWing.addBox(0.0F, 1.0F, 0.0F, 8, 12, 1, "Left Outer Wing"); this.batBody.addChild(this.batRightWing); this.batBody.addChild(this.batLeftWing); this.batRightWing.addChild(this.batOuterRightWing); this.batLeftWing.addChild(this.batOuterLeftWing); }
public ModelVillager(float p_i1164_1_, float p_i1164_2_, int p_i1164_3_, int p_i1164_4_) { this.villagerHead = (new ModelRenderer(this, ModelPart.Head)).setTextureSize(p_i1164_3_, p_i1164_4_); this.villagerHead.setRotationPoint(0.0F, 0.0F + p_i1164_2_, 0.0F); this.villagerHead.setTextureOffset(0, 0).addBox(-4.0F, -10.0F, -4.0F, 8, 10, 8, p_i1164_1_, "Head"); this.villagerNose = (new ModelRenderer(this, ModelPart.Head)).setTextureSize(p_i1164_3_, p_i1164_4_); this.villagerNose.setRotationPoint(0.0F, p_i1164_2_ - 2.0F, 0.0F); this.villagerNose.setTextureOffset(24, 0).addBox(-1.0F, -1.0F, -6.0F, 2, 4, 2, p_i1164_1_, "Nose"); this.villagerHead.addChild(this.villagerNose); this.villagerBody = (new ModelRenderer(this, ModelPart.Chest)).setTextureSize(p_i1164_3_, p_i1164_4_); this.villagerBody.setRotationPoint(0.0F, 0.0F + p_i1164_2_, 0.0F); this.villagerBody.setTextureOffset(16, 20).addBox(-4.0F, 0.0F, -3.0F, 8, 12, 6, p_i1164_1_, "Body"); this.villagerBody.setTextureOffset(0, 38).addBox(-4.0F, 0.0F, -3.0F, 8, 18, 6, p_i1164_1_ + 0.5F, "Cloak"); this.villagerArms = (new ModelRenderer(this, ModelPart.LeftArm)).setTextureSize(p_i1164_3_, p_i1164_4_); this.villagerArms.setRotationPoint(0.0F, 0.0F + p_i1164_2_ + 2.0F, 0.0F); this.villagerArms.setTextureOffset(44, 22).addBox(-8.0F, -2.0F, -2.0F, 4, 8, 4, p_i1164_1_, "Arms Right"); this.villagerArms.setTextureOffset(44, 22).addBox(4.0F, -2.0F, -2.0F, 4, 8, 4, p_i1164_1_, "Arms Left"); this.villagerArms.setTextureOffset(40, 38).addBox(-4.0F, 2.0F, -2.0F, 8, 4, 4, p_i1164_1_, "Arms Center"); this.rightVillagerLeg = (new ModelRenderer(this, 0, 22, ModelPart.RightLeg)).setTextureSize(p_i1164_3_, p_i1164_4_); this.rightVillagerLeg.setRotationPoint(-2.0F, 12.0F + p_i1164_2_, 0.0F); this.rightVillagerLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, p_i1164_1_, "Right Leg"); this.leftVillagerLeg = (new ModelRenderer(this, 0, 22, ModelPart.LeftLeg)).setTextureSize(p_i1164_3_, p_i1164_4_); this.leftVillagerLeg.mirror = true; this.leftVillagerLeg.setRotationPoint(2.0F, 12.0F + p_i1164_2_, 0.0F); this.leftVillagerLeg.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, p_i1164_1_, "Left Leg"); }
public ModelCape() { this.bipedCape = new ModelRenderer(this, 0, 0); this.bipedCape.setTextureSize(64, 32); this.bipedCape.addBox(-5.0F, 0.0F, -1.0F, 10, 16, 1, 0, "Cape"); this.bipedCape.rotateAngleY = (float)(Math.PI); }
public void SetLegRotation(Vector3 rotation, bool isLeftLeg) { if (ModelRenderer.GetBone(isLeftLeg ? "leftleg" : "rightleg", out var head)) { head.Rotation = rotation; } }
public ModelOcelot() { this.setTextureOffset("head.main", 0, 0); this.setTextureOffset("head.nose", 0, 24); this.setTextureOffset("head.ear1", 0, 10); this.setTextureOffset("head.ear2", 6, 10); this.ocelotHead = new ModelRenderer(this, "head"); this.ocelotHead.addBox("main", -2.5F, -2.0F, -3.0F, 5, 4, 5); this.ocelotHead.addBox("nose", -1.5F, 0.0F, -4.0F, 3, 2, 2); this.ocelotHead.addBox("ear1", -2.0F, -3.0F, 0.0F, 1, 1, 2); this.ocelotHead.addBox("ear2", 1.0F, -3.0F, 0.0F, 1, 1, 2); this.ocelotHead.setRotationPoint(0.0F, 15.0F, -9.0F); this.ocelotBody = new ModelRenderer(this, 20, 0); this.ocelotBody.addBox(-2.0F, 3.0F, -8.0F, 4, 16, 6, 0.0F, "Body"); this.ocelotBody.setRotationPoint(0.0F, 12.0F, -10.0F); this.ocelotTail = new ModelRenderer(this, 0, 15); this.ocelotTail.addBox(-0.5F, 0.0F, 0.0F, 1, 8, 1, "Tail"); this.ocelotTail.rotateAngleX = 0.9F; this.ocelotTail.setRotationPoint(0.0F, 15.0F, 8.0F); this.ocelotTail2 = new ModelRenderer(this, 4, 15); this.ocelotTail2.addBox(-0.5F, 0.0F, 0.0F, 1, 8, 1, "Tail End"); this.ocelotTail2.setRotationPoint(0.0F, 20.0F, 14.0F); this.ocelotBackLeftLeg = new ModelRenderer(this, 8, 13); this.ocelotBackLeftLeg.addBox(-1.0F, 0.0F, 1.0F, 2, 6, 2, "Back Left Leg"); this.ocelotBackLeftLeg.setRotationPoint(1.1F, 18.0F, 5.0F); this.ocelotBackRightLeg = new ModelRenderer(this, 8, 13); this.ocelotBackRightLeg.addBox(-1.0F, 0.0F, 1.0F, 2, 6, 2, "Back Right Leg"); this.ocelotBackRightLeg.setRotationPoint(-1.1F, 18.0F, 5.0F); this.ocelotFrontLeftLeg = new ModelRenderer(this, 40, 0); this.ocelotFrontLeftLeg.addBox(-1.0F, 0.0F, 0.0F, 2, 10, 2, "Front Left Leg"); this.ocelotFrontLeftLeg.setRotationPoint(1.2F, 13.8F, -5.0F); this.ocelotFrontRightLeg = new ModelRenderer(this, 40, 0); this.ocelotFrontRightLeg.addBox(-1.0F, 0.0F, 0.0F, 2, 10, 2, "Front Right Leg"); this.ocelotFrontRightLeg.setRotationPoint(-1.2F, 13.8F, -5.0F); }
public void SetArmRotation(Vector3 rotation, bool isLeftArm) { if (ModelRenderer.GetBone(isLeftArm ? "leftarm" : "rightarm", out var head)) { head.Rotation = rotation; } }
public ModelSign() { SignBoard = new ModelRenderer(this, 0, 0); SignBoard.AddBox(-12F, -14F, -1F, 24, 12, 2, 0.0F); SignStick = new ModelRenderer(this, 0, 14); SignStick.AddBox(-1F, -2F, -1F, 2, 14, 2, 0.0F); }
public ModelCreeper(float p_i46366_1_) { int i = 6; this.head = new ModelRenderer(this, 0, 0, ModelPart.Head); this.head.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, p_i46366_1_, "Head"); this.head.setRotationPoint(0.0F, (float)i, 0.0F); //this.creeperArmor = new ModelRenderer(this, 32, 0, ModelPart.ChestArmor); //this.creeperArmor.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, p_i46366_1_ + 0.5F); //this.creeperArmor.setRotationPoint(0.0F, (float)i, 0.0F); this.body = new ModelRenderer(this, 16, 16, ModelPart.Chest); this.body.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, p_i46366_1_, "Body"); this.body.setRotationPoint(0.0F, (float)i, 0.0F); this.leg1 = new ModelRenderer(this, 0, 16, ModelPart.LeftLeg); this.leg1.addBox(-2.0F, 0.0F, -2.0F, 4, 6, 4, p_i46366_1_, "Leg 1"); this.leg1.setRotationPoint(-2.0F, (float)(12 + i), 4.0F); this.leg2 = new ModelRenderer(this, 0, 16, ModelPart.RightLeg); this.leg2.addBox(-2.0F, 0.0F, -2.0F, 4, 6, 4, p_i46366_1_, "Leg 2"); this.leg2.setRotationPoint(2.0F, (float)(12 + i), 4.0F); this.leg3 = new ModelRenderer(this, 0, 16, ModelPart.LeftArm); this.leg3.addBox(-2.0F, 0.0F, -2.0F, 4, 6, 4, p_i46366_1_, "Leg 3"); this.leg3.setRotationPoint(-2.0F, (float)(12 + i), -4.0F); this.leg4 = new ModelRenderer(this, 0, 16, ModelPart.RightArm); this.leg4.addBox(-2.0F, 0.0F, -2.0F, 4, 6, 4, p_i46366_1_, "Leg 4"); this.leg4.setRotationPoint(2.0F, (float)(12 + i), -4.0F); }
public void NullModelDrawnWontThrow() { var modelRenderer = new ModelRenderer(Resolve <Drawing>()); Assert.DoesNotThrow( () => { modelRenderer.Draw(new List <DrawableEntity>(new Model[] { null })); }); }
public ModelEnderman() : base(0.0F, -14F) { IsCarrying = false; IsAttacking = false; float f = -14F; float f1 = 0.0F; BipedHeadwear = new ModelRenderer(this, 0, 16); BipedHeadwear.AddBox(-4F, -8F, -4F, 8, 8, 8, f1 - 0.5F); BipedHeadwear.SetRotationPoint(0.0F, 0.0F + f, 0.0F); BipedBody = new ModelRenderer(this, 32, 16); BipedBody.AddBox(-4F, 0.0F, -2F, 8, 12, 4, f1); BipedBody.SetRotationPoint(0.0F, 0.0F + f, 0.0F); BipedRightArm = new ModelRenderer(this, 56, 0); BipedRightArm.AddBox(-1F, -2F, -1F, 2, 30, 2, f1); BipedRightArm.SetRotationPoint(-3F, 2.0F + f, 0.0F); BipedLeftArm = new ModelRenderer(this, 56, 0); BipedLeftArm.Mirror = true; BipedLeftArm.AddBox(-1F, -2F, -1F, 2, 30, 2, f1); BipedLeftArm.SetRotationPoint(5F, 2.0F + f, 0.0F); BipedRightLeg = new ModelRenderer(this, 56, 0); BipedRightLeg.AddBox(-1F, 0.0F, -1F, 2, 30, 2, f1); BipedRightLeg.SetRotationPoint(-2F, 12F + f, 0.0F); BipedLeftLeg = new ModelRenderer(this, 56, 0); BipedLeftLeg.Mirror = true; BipedLeftLeg.AddBox(-1F, 0.0F, -1F, 2, 30, 2, f1); BipedLeftLeg.SetRotationPoint(2.0F, 12F + f, 0.0F); }
public ModelIronGolem(float p_i46362_1_, float p_i46362_2_) { int i = 128; int j = 128; this.ironGolemHead = (new ModelRenderer(this, ModelPart.Head)).setTextureSize(i, j); this.ironGolemHead.setRotationPoint(0.0F, 0.0F + p_i46362_2_, -2.0F); this.ironGolemHead.setTextureOffset(0, 0).addBox(-4.0F, -12.0F, -5.5F, 8, 10, 8, p_i46362_1_, "Head"); this.ironGolemHead.setTextureOffset(24, 0).addBox(-1.0F, -5.0F, -7.5F, 2, 4, 2, p_i46362_1_, "Nose"); this.ironGolemBody = (new ModelRenderer(this, ModelPart.Chest)).setTextureSize(i, j); this.ironGolemBody.setRotationPoint(0.0F, 0.0F + p_i46362_2_, 0.0F); this.ironGolemBody.setTextureOffset(0, 40).addBox(-9.0F, -2.0F, -6.0F, 18, 12, 11, p_i46362_1_, "Chest"); this.ironGolemBody.setTextureOffset(0, 70).addBox(-4.5F, 10.0F, -3.0F, 9, 5, 6, p_i46362_1_ + 0.5F, "Waist"); this.ironGolemRightArm = (new ModelRenderer(this, ModelPart.RightArm)).setTextureSize(i, j); this.ironGolemRightArm.setRotationPoint(0.0F, -7.0F, 0.0F); this.ironGolemRightArm.setTextureOffset(60, 21).addBox(-13.0F, -2.5F, -3.0F, 4, 30, 6, p_i46362_1_, "Right Arm"); this.ironGolemLeftArm = (new ModelRenderer(this, ModelPart.LeftArm)).setTextureSize(i, j); this.ironGolemLeftArm.setRotationPoint(0.0F, -7.0F, 0.0F); this.ironGolemLeftArm.setTextureOffset(60, 58).addBox(9.0F, -2.5F, -3.0F, 4, 30, 6, p_i46362_1_, "Left Arm"); this.ironGolemLeftLeg = (new ModelRenderer(this, 0, 22, ModelPart.RightLeg)).setTextureSize(i, j); this.ironGolemLeftLeg.setRotationPoint(-4.0F, 18.0F + p_i46362_2_, 0.0F); this.ironGolemLeftLeg.setTextureOffset(37, 0).addBox(-3.5F, -3.0F, -3.0F, 6, 16, 5, p_i46362_1_, "Right Leg"); this.ironGolemRightLeg = (new ModelRenderer(this, 0, 22, ModelPart.LeftLeg)).setTextureSize(i, j); this.ironGolemRightLeg.mirror = true; this.ironGolemRightLeg.setTextureOffset(60, 0).setRotationPoint(5.0F, 18.0F + p_i46362_2_, 0.0F); this.ironGolemRightLeg.addBox(-3.5F, -3.0F, -3.0F, 6, 16, 5, p_i46362_1_, "Left Leg"); }
private void Form1_Shown(object sender, EventArgs e) { Stopwatch sw = new Stopwatch(); sw.Start(); var model = ModelFiles.GetAfricanHeadModel(); //var model = ModelFiles.GetDiabloModel(); sw.Stop(); var renderer = new ModelRenderer(new ShadowShaderRenderer(model, pictureBox1)); //var renderer = new ModelRenderer(new NoToneShaderRenderer(model, pictureBox1)); //var renderer = new ModelRenderer(new ToonShaderRenderer(model, pictureBox1)); //var renderer = new ModelRenderer(new NormalMapShaderRenderer(model, pictureBox1)); renderer.Render(); InfoViewer.ShowDiagnosticInfo ($"Loading Time: {sw.Elapsed.TotalMilliseconds:f2} ms", new PointF(10, 10), Graphics.FromImage(pictureBox1.Image)); InfoViewer.ShowDiagnosticInfo ($"Triangles Count: {model.FacesV.Count}", new PointF(10, 50), Graphics.FromImage(pictureBox1.Image)); InfoViewer.ShowDiagnosticInfo ($"Resolution: {pictureBox1.Width} X {pictureBox1.Height}", new PointF(10, 70), Graphics.FromImage(pictureBox1.Image)); }
public ModelBox(ModelRenderer modelrenderer, string name, int i, int j, float f, float f1, float f2, int k, int l, int i1, float f3) { sizeOfs = f3; texX = i; texY = j; Name = name; x = f; y = f1; z = f2; xMax = f + k; yMax = f1 + l; zMax = f2 + i1; field_40679_h = new PositionTextureVertex[8]; field_40680_i = new TexturedQuad[6]; float f4 = f + k; float f5 = f1 + l; float f6 = f2 + i1; f -= f3; f1 -= f3; f2 -= f3; f4 += f3; f5 += f3; f6 += f3; if (modelrenderer.mirror) { float f7 = f4; f4 = f; f = f7; } var positiontexturevertex = new PositionTextureVertex(f, f1, f2, 0.0F, 0.0F); var positiontexturevertex1 = new PositionTextureVertex(f4, f1, f2, 0.0F, 8F); var positiontexturevertex2 = new PositionTextureVertex(f4, f5, f2, 8F, 8F); var positiontexturevertex3 = new PositionTextureVertex(f, f5, f2, 8F, 0.0F); var positiontexturevertex4 = new PositionTextureVertex(f, f1, f6, 0.0F, 0.0F); var positiontexturevertex5 = new PositionTextureVertex(f4, f1, f6, 0.0F, 8F); var positiontexturevertex6 = new PositionTextureVertex(f4, f5, f6, 8F, 8F); var positiontexturevertex7 = new PositionTextureVertex(f, f5, f6, 8F, 0.0F); field_40679_h[0] = positiontexturevertex; field_40679_h[1] = positiontexturevertex1; field_40679_h[2] = positiontexturevertex2; field_40679_h[3] = positiontexturevertex3; field_40679_h[4] = positiontexturevertex4; field_40679_h[5] = positiontexturevertex5; field_40679_h[6] = positiontexturevertex6; field_40679_h[7] = positiontexturevertex7; field_40680_i[0] = new TexturedQuad(new[] { positiontexturevertex5, positiontexturevertex1, positiontexturevertex2, positiontexturevertex6 }, i + i1 + k, j + i1, i + i1 + k + i1, j + i1 + l, modelrenderer.textureWidth, modelrenderer.textureHeight); field_40680_i[1] = new TexturedQuad(new[] { positiontexturevertex, positiontexturevertex4, positiontexturevertex7, positiontexturevertex3 }, i + 0, j + i1, i + i1, j + i1 + l, modelrenderer.textureWidth, modelrenderer.textureHeight); field_40680_i[2] = new TexturedQuad(new[] { positiontexturevertex5, positiontexturevertex4, positiontexturevertex, positiontexturevertex1 }, i + i1, j + 0, i + i1 + k, j + i1, modelrenderer.textureWidth, modelrenderer.textureHeight); field_40680_i[3] = new TexturedQuad(new[] { positiontexturevertex2, positiontexturevertex3, positiontexturevertex7, positiontexturevertex6 }, i + i1 + k, j + i1, i + i1 + k + k, j + 0, modelrenderer.textureWidth, modelrenderer.textureHeight); field_40680_i[4] = new TexturedQuad(new[] { positiontexturevertex1, positiontexturevertex, positiontexturevertex3, positiontexturevertex2 }, i + i1, j + i1, i + i1 + k, j + i1 + l, modelrenderer.textureWidth, modelrenderer.textureHeight); field_40680_i[5] = new TexturedQuad(new[] { positiontexturevertex4, positiontexturevertex5, positiontexturevertex6, positiontexturevertex7 }, i + i1 + k + i1, j + i1, i + i1 + k + i1 + k, j + i1 + l, modelrenderer.textureWidth, modelrenderer.textureHeight); if (modelrenderer.mirror) { for (int j1 = 0; j1 < field_40680_i.Length; j1++) field_40680_i[j1].flipFace(); } }
public void NullModelDrawnWontThrow() { var modelRenderer = new ModelRenderer(Resolve<Drawing>()); Assert.DoesNotThrow( () => { modelRenderer.Draw(new List<DrawableEntity>(new Model[] { null })); }); }
public void addChild(ModelRenderer modelrenderer) { if (childModels == null) childModels = new List<ModelRenderer>(); childModels.Add(modelrenderer); }