public void OnLoad() { Debug.Log("Example Mod: Hello, World!"); var monkey = BundleManager.GetAssetBundle("monkey").LoadAsset <Mesh>("monkey"); var basicModel = GameObject.CreatePrimitive(PrimitiveType.Cube); var basicModelTransform = basicModel.transform; basicModel.GetComponent <MeshFilter>().sharedMesh = monkey; basicModelTransform.position = Vector3.zero; basicModelTransform.localScale = Vector3.one * 4.0f; basicModelTransform.rotation = Quaternion.Euler(-90.0f, 0.0f, 0.0f); }
// Si el assetbundle que se desea desplegar si esta cargado en // la cache entonces se muestra como hijo del prefabBundleGameObject. // Si el assetbundle no existe entonces se destruye el // prefabBundleGameObject para evitar tener objetos vacios. Si todo // sale bien, el prefabBundleGameObject que contiene el modelo es // enfocado e inicializado para subscribirse al evento onModelClick. public IEnumerator DisplayAssetBundleInPrefabBundle(GameObject prefabBundleGameObject, string id) { PrefabBundle _prefabBundle = prefabBundleGameObject.GetComponent <PrefabBundle>(); AssetBundle assetBundle = _bundleManager.GetAssetBundle(id); if (assetBundle == null) { Debug.Log("Null assetBundle"); //Destroy(prefabBundleGameObject); yield break; } bool assetBundleCorrctlyDisplayed = _prefabBundle.DisplayAssetBundleInPrefabBundle(assetBundle); yield return(null); // Si todo el proceso de instanciado del modelo salio bien, // se inicializa el OnModelClick del prefabBUndle if (assetBundleCorrctlyDisplayed) { InitOnModelClick(prefabBundleGameObject); } }
public void OpenScene(string abName, string sceneName) { AssetBundle sab = assetBundleManager.GetAssetBundle(abName); SceneManager.OpenScene(sceneName); }