コード例 #1
0
 public void LoadAllYarnMaterials()
 {
     string [] fileEntries = Directory.GetFiles(Application.persistentDataPath + "/yarnMaterials", "*.yarnMaterial");
     foreach (string fileName in fileEntries)
     {
         ScriptableYarnMaterial sym = LoadYarnMaterial(fileName);
         dropdownYarnMaterials.CreateNewItem(sym.name, null);
     }
 }
コード例 #2
0
    public ScriptableYarnMaterial LoadYarnMaterial(string fileName)
    {
        ScriptableYarnMaterial scriptableYarnMaterial = null;

        if (File.Exists(fileName))
        {
            string json = File.ReadAllText(fileName);
            scriptableYarnMaterial = JsonConvert.DeserializeObject <ScriptableYarnMaterial>(json);
        }

        return(scriptableYarnMaterial);
    }
コード例 #3
0
    public void SaveYarnMaterial(ScriptableYarnMaterial yarnMaterial)
    {
        if (!Directory.Exists(Application.persistentDataPath + "/yarnMaterials"))
        {
            Directory.CreateDirectory(Application.persistentDataPath + "/yarnMaterials");
        }

        JsonSerializerSettings jss = new JsonSerializerSettings();

        jss.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;
        try
        {
            string json = JsonConvert.SerializeObject(yarnMaterial, jss);
            File.WriteAllText(Application.persistentDataPath + "/yarnMaterials/" + yarnMaterial.name + ".yarnMaterial", json);
        }
        catch (Exception e)
        {
            Debug.LogError(e.Message);
        }
    }