voila, j'ai une centaine de matériaux ( et textures associées ou non ), et je les charges en asynchrone ( je met une texture de base des resources en attendant la fin du téléchargement).
mon problème est que si je récupère bien le matérial voulu, il manque toujours la texture ( qui est pourtant bien affichée en dépendance dans le .manifest ) et le shader standard semble cassé :
je n'ai pas réussit à trouver de solution , si quelqu'un a une idée, j'en serai ravi ^^
prob au téléchargement de Material depuis un asset bundle
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :
Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé
Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie
Exemple :
[DB-RS] Mouvement perso multijoueur
prob au téléchargement de Material depuis un asset bundle
┬─┬ノ(º - ºノ) - (╯°□°)╯︵ ┻━┻
Re: prob au téléchargement de Material depuis un asset bundl
Le code de ton builder serais pas du luxe ...
Re: prob au téléchargement de Material depuis un asset bundl
pas faux, j'ai simplement repris celui du live training :
Edit : j'ai trouvé le problème des textures j'avais commenté l'appel à la fonction de telechargement des textures >< par contre le rendu bizarre dans l'éditeur du shader standard reste étrange.
Edit 2 : il me semblait que les dépendances étaient incluse dans le bundle pourtant
Edit 3 : bon en fait ça marche en random quand je télécharge les dépendance à la main, et si je ne le fait pas, il manque le mainTexture du material, T_T, je comprends plus rien >< , il faut que je remette à la main la texture dans le material ? ( dans ce cas, l'essetbundle d'un material est quasi inutile ><
Code : Tout sélectionner
using UnityEngine;
using UnityEditor;
using System.Collections;
using System.IO;
public class AssetBundleMenu
{
[MenuItem("AssetBundles/Clear Cache")]
static void ClearCache()
{
Caching.CleanCache ();
}
[MenuItem("AssetBundles/Build for PC")]
static void TogglePCBuild ()
{
EditorPrefs.SetBool("buildPC", !EditorPrefs.GetBool("buildPC", false));
}
[MenuItem("AssetBundles/Build for PC", true)]
static bool TogglePCBuildValidate ()
{
Menu.SetChecked("AssetBundles/Build for PC", EditorPrefs.GetBool("buildPC", false));
return true;
}
[MenuItem("AssetBundles/Build for OSX")]
static void ToggleOSXBuild ()
{
EditorPrefs.SetBool("buildOSX", !EditorPrefs.GetBool("buildOSX", false));
}
[MenuItem("AssetBundles/Build for OSX", true)]
static bool ToggleOSXBuildValidate ()
{
Menu.SetChecked("AssetBundles/Build for OSX", EditorPrefs.GetBool("buildOSX", false));
return true;
}
[MenuItem("AssetBundles/Build for Web")]
static void ToggleWebBuild ()
{
EditorPrefs.SetBool("buildWeb", !EditorPrefs.GetBool("buildWeb", false));
}
[MenuItem("AssetBundles/Build for Web", true)]
static bool ToggleWebBuildValidate ()
{
Menu.SetChecked("AssetBundles/Build for Web", EditorPrefs.GetBool("buildWeb", false));
return true;
}
[MenuItem("AssetBundles/Build for iOS")]
static void ToggleiOSBuild ()
{
EditorPrefs.SetBool("buildiOS", !EditorPrefs.GetBool("buildiOS", false));
}
[MenuItem("AssetBundles/Build for iOS", true)]
static bool ToggleiOSBuildValidate ()
{
Menu.SetChecked("AssetBundles/Build for iOS", EditorPrefs.GetBool("buildiOS", false));
return true;
}
[MenuItem("AssetBundles/Build for Android")]
static void ToggleAndroidBuild ()
{
EditorPrefs.SetBool("buildAndroid", !EditorPrefs.GetBool("buildAndroid", false));
}
[MenuItem("AssetBundles/Build for Android", true)]
static bool ToggleAndroidBuildValidate ()
{
Menu.SetChecked("AssetBundles/Build for Android", EditorPrefs.GetBool("buildAndroid", false));
return true;
}
[MenuItem("AssetBundles/Build Asset Bundles")]
static void BuildAssetBundles()
{
// Bring up save panel
string path = EditorUtility.SaveFolderPanel ("Save Bundle", "", "");
if (path.Length != 0)
{
if(EditorPrefs.GetBool("buildPC", false))
BuildBundle(path + "/PC", BuildTarget.StandaloneWindows);
if(EditorPrefs.GetBool("buildOSX", false))
BuildBundle(path + "/OSX", BuildTarget.StandaloneOSXUniversal);
if(EditorPrefs.GetBool("buildWeb", false))
BuildBundle(path + "/Web", BuildTarget.WebPlayer);
if(EditorPrefs.GetBool("buildiOS", false))
BuildBundle(path + "/iOS", BuildTarget.iOS);
if(EditorPrefs.GetBool("buildAndroid", false))
BuildBundle(path + "/Android", BuildTarget.Android);
}
}
static void BuildBundle(string path, BuildTarget target)
{
if (!Directory.Exists (path))
Directory.CreateDirectory (path);
BuildPipeline.BuildAssetBundles (path, BuildAssetBundleOptions.None, target);
}
}
Edit : j'ai trouvé le problème des textures j'avais commenté l'appel à la fonction de telechargement des textures >< par contre le rendu bizarre dans l'éditeur du shader standard reste étrange.
Edit 2 : il me semblait que les dépendances étaient incluse dans le bundle pourtant
Edit 3 : bon en fait ça marche en random quand je télécharge les dépendance à la main, et si je ne le fait pas, il manque le mainTexture du material, T_T, je comprends plus rien >< , il faut que je remette à la main la texture dans le material ? ( dans ce cas, l'essetbundle d'un material est quasi inutile ><
┬─┬ノ(º - ºノ) - (╯°□°)╯︵ ┻━┻