private void applyBody() { MeshMaterialSet meshSet = AssetManager.instance.bodyMeshes[body]; updateMeshRenderer(bodyMesh, meshSet.mesh); updateMeshMaterials(bodyMesh, meshSet, bodyColour1, bodyColour2); }
private void applyHat() { MeshMaterialSet meshSet = AssetManager.instance.hatMeshes[hat]; updateMeshFilter(hatMeshFilter, meshSet.mesh); updateMeshMaterials(hatMeshRenderer, meshSet, hatColour1, hatColour2); updateHatPos(); }
private void applyHair() { MeshMaterialSet meshSet = AssetManager.instance.hairMeshes[hair]; updateMeshRenderer(hairMesh, meshSet.mesh); updateMeshMaterials(hairMesh, meshSet, hairColour1, hairColour2); // if(hairMesh.sharedMesh) hairMesh.sharedMesh.RecalculateBounds(); updateHatPos(); }
private void updateMeshMaterials(Renderer renderer, MeshMaterialSet materialSet, int colour1, int colour2) { List <Material> materials = new List <Material>(); if (materialSet.materials.hasColour1) { materials.Add(AssetManager.GetColouredMaterial(materialSet.materials.colourPalette1.colours[colour1].colour)); } if (materialSet.materials.hasColour2) { materials.Add(AssetManager.GetColouredMaterial(materialSet.materials.colourPalette2.colours[colour2].colour)); } if (materialSet.materials.hasSkin) { materials.Add(AssetManager.GetColouredMaterial(getSkinColor())); } foreach (Material material in materialSet.materials.additionalMaterials) { materials.Add(material); } renderer.sharedMaterials = materials.ToArray(); }