Exemple #1
0
        public static void LoadRecipe(Compartment rootCompartment)
        {
            // Flatten all the hierarchy
            //SceneManager.Get.Compartments = CompartmentUtility.GetCompartments(rootCompartment);
            SceneManager.Get.IngredientGroups = CompartmentUtility.GetIngredientGroups(rootCompartment);
            //SceneManager.Get.ProteinIngredients = CompartmentUtility.GetProteinIngredients(rootCompartment);

            for (var i = 0; i < SceneManager.Get.IngredientGroups.Count; i++)
            {
                for (var j = 0; j < SceneManager.Get.IngredientGroups[i].Ingredients.Count; j++)
                {
                    var ingredient = SceneManager.Get.IngredientGroups[i].Ingredients[j];

                    AddProteinIngredient(ref ingredient);
                    SceneManager.Get.ProteinInstanceCount += ingredient.nbMol;
                    SceneManager.Get.IngredientGroups[i].NumIngredients += ingredient.nbMol;
                }
            }

            ColorManager.Get.InitColors();
        }
Exemple #2
0
        public static void LoadCellPackRecipe(string path = null)
        {
            SceneManager.Get.ClearScene();

            if (string.IsNullOrEmpty(path) || !File.Exists(path))
            {
                path = MyUtility.GetInputFile("json", GlobalProperties.Get.LastRecipeFileLoaded);
            }

            if (path == null || !File.Exists(path))
            {
                return;
            }
            GlobalProperties.Get.LastRecipeFileLoaded = path;

            var rootCompartment = CompartmentUtility.DeserializeJson(path);

            CompartmentUtility.PostProcessSceneGraph(rootCompartment);

            LoadRecipe(rootCompartment);

            //CPUBuffers.Get.CopyDataToGPU();
        }