public void LoadFromFile(string name)
    {
        TextAsset atlasText = Resources.Load(name) as TextAsset;

        string[] materials = atlasText.text.Split('#');

        foreach (var material in materials)
        {
            string[] materialData = material.Split('\n');

            int   id            = Int32.Parse(materialData[0].Split(':')[1]);
            int   stateOfMatter = Int32.Parse(materialData[1].Split(':')[1]);
            float red           = Int32.Parse(materialData[2].Split(':')[1]);
            float green         = Int32.Parse(materialData[3].Split(':')[1]);
            float blue          = Int32.Parse(materialData[4].Split(':')[1]);

            StateOfMatter matter = stateOfMatter == 0 ? StateOfMatter.GAS : StateOfMatter.SOLID;

            if (matter == StateOfMatter.GAS)
            {
                airMaterials.Add((byte)id);
            }

            this.AddVoxelMaterial((byte)id, new VoxelMaterial(new Color(red / 255f, green / 255f, blue / 255f, 1), matter));
        }
    }
Example #2
0
 public VoxelMaterial(Color color, StateOfMatter stateOfMatter)
 {
     this.color         = color;
     this.stateOfMatter = stateOfMatter;
 }