Пример #1
0
    private void applyBody()
    {
        MeshMaterialSet meshSet = AssetManager.instance.bodyMeshes[body];

        updateMeshRenderer(bodyMesh, meshSet.mesh);
        updateMeshMaterials(bodyMesh, meshSet, bodyColour1, bodyColour2);
    }
Пример #2
0
    private void applyHat()
    {
        MeshMaterialSet meshSet = AssetManager.instance.hatMeshes[hat];

        updateMeshFilter(hatMeshFilter, meshSet.mesh);
        updateMeshMaterials(hatMeshRenderer, meshSet, hatColour1, hatColour2);
        updateHatPos();
    }
Пример #3
0
    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();
    }
Пример #4
0
    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();
    }