Bonjour,
J'ai un petit soucis quand je veux charger un mesh dynamiquement aprés la création de ma scène (et le placement de mon éclairage)
Voici ce que j'obtiens :
Voici ce que je devrais obtenir (même code sauf que ici la fonction de chargement du mesh est appelé avec la création de la light) :
Mon code pour charger le mesh :
public int AddNode(string name, vector3d pos, vector3d rot, int speed) { AnimatedMesh mesh = this.LoadMesh(name); lock (m_scene) { AnimatedMeshSceneNode nouveau = m_scene.AddAnimatedMeshSceneNode(mesh); nouveau.AnimationSpeed = speed; nouveau.Position = pos; nouveau.Rotation = rot; nouveau.ID = nouveau.GetHashCode(); nouveau.Render(); return nouveau.ID; } }
Ajout d'une light
public int AddLight(vector3d pos, Colorf col)
{
lock (m_scene)
{
LightSceneNode light = m_scene.AddLightSceneNode(null, pos, col, 100000f, -1);
light.ID = light.GetHashCode();
return light.ID;
}
}
Hors ligne
Je me répond à moi même :
Le problème ci dessus apparait que quand j'utilise un Color.White comme couleur de ma light. Quand je passe à Color.TransparentWhite plus de différence... bizarre
Hors ligne
Je me re-répond : en faite avec le problème ne se produit pas dans le cas suivant uniquement =>
Je charge le mesh et l'ajoute à la scène, j'ajoute la light, je supprime le mesh et je le réaffiche (il est bien réaffiché sans bug).
Hors ligne
personne n'a déjà rencontré ce cas?
Hors ligne
J'ai trouvé d'où venait le soucis. La méthode d'ajout de mesh était appelé dans un autre thread ce qui mettais irrlicht en rogne visiblement
Hors ligne
Justement, mon problème c'est que la variable Text de l'EditBox est vide (null), même si il y a quelque chose d'afficher dedans.
Par contre, je ne sait pas si mon problème vient que j'utilise .NET CP, ou que le tuto que je regarde est pour le C++ (sur le Site du Zero).
Hors ligne
j'essaye de comprendre le lien avec une EditBox et le problème originel du topic mais je ne voie pas ... uhm étrange
ton soucis viens surment du warp irrlicht .NET qui n'est pas officielement supporter, le mieux serait que tu passe directement en c++ ...
même s'il y a mono sous linux pour la compatibiliter ça ne vaut pas du natif, et niveaux performance également
Hors ligne