Dad72 Posted May 31, 2017 Share Posted May 31, 2017 When I use this line, my scene did not display and the GUI either. BABYLON.GUI.AdvancedDynamicTexture.CreateForMesh() If I use that line, my scene display but not the GUI. BABYLON.GUI.AdvancedDynamicTexture.CreateFullscreenUI() This happens only when using the line (AdvancedDynamicTexture). I do not know what I can do of bad. I added BABYLON.GUI in a function which is loaded when I load my terrain. I do nothing special. I'll post a PG if I find the origin of the problem. Quote Link to comment Share on other sites More sharing options...
Dad72 Posted May 31, 2017 Author Share Posted May 31, 2017 I try to reproduce it from a export the playground in a zip, but I noticed in the zip, the AdvancedDynamicTexture unavailable. In made there is no extension in the zip. Otherwise, I think the problem is because I uses several canvas and engine on my project. I tried several solutions and I found that the problem with several canvas. I can not reproduce it on the playground that has a single canvas. Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted May 31, 2017 Share Posted May 31, 2017 I cannot help without a repro Quote Link to comment Share on other sites More sharing options...
Dad72 Posted May 31, 2017 Author Share Posted May 31, 2017 How to create a repro? The playgroung not several canvas with several engine. It is impossible for me to reproduce or test if it is indeed that. I can create a separate page if necessary and try to reproduce the bug and send the link to you. But I am sure that there is a bug somewhere, because when I use the same function in a dynamic texture, it works. Works: let dynamicTextureEtiquetePortail = new BABYLON.DynamicTexture("DTEP", 512, global.scene, true); dynamicTextureEtiquetePortail.hasAlpha = true; let textureContext = dynamicTextureEtiquetePortail.getContext(); let size = dynamicTextureEtiquetePortail.getSize(); textureContext.clearRect(0, 0, size.width, size.height); textureContext.font = "bold 230px Calibri"; textureContext.fillStyle = "white"; textureContext.fillText(name, ((size.width - textureContext.measureText(name).width) / 2), size.height); dynamicTextureEtiquetePortail.update(); let MaterialEtiquetePortail = new BABYLON.StandardMaterial("MEP", global.scene); MaterialEtiquetePortail.diffuseTexture = dynamicTextureEtiquetePortail; MaterialEtiquetePortail.ambientColor = BABYLON.Color3.White(); let EtiquetePortail = BABYLON.MeshBuilder.CreatePlane("EP", {width: 4, height: 1, subdivisions: 1}, global.scene); EtiquetePortail.billboardMode = BABYLON.Mesh.BILLBOARDMODE_ALL; EtiquetePortail.material = MaterialEtiquetePortail; EtiquetePortail.parent = portail; EtiquetePortail.position.y += 3.0; not work (Basically I did the same in function but using BABYLON.GUI) let planeEtiquete = BABYLON.MeshBuilder.CreatePlane("EP", {width: 4, height: 1, subdivisions: 1}, global.scene); planeEtiquete.parent = portail; planeEtiquete.position.y += 3.0; let advancedTexture = BABYLON.GUI.AdvancedDynamicTexture.CreateForMesh(planeEtiquete, 512, 512); let etiquete = new BABYLON.GUI.TextBlock(); etiquete.text = name; etiquete.fontName = "Calibri"; etiquete.color = "white"; etiquete.fontSize = 200; advancedTexture.addControl(etiquete); The first code works. the second does not. Maybe you have an idea of what could be the cause. Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted May 31, 2017 Share Posted May 31, 2017 Please create a link with a ref to .max to I can debug online Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Ok, j'ai reproduit le probleme et je t'ai mis les .max pour Babylon et pour GUI. Sur le lien, tu verras sur gauche un bouton pour rafraîchir, un checkbox et un menu pour charger le terrain. - Charger le terrain avec le checkbox décocher te permet de voir le resultat que je devrais avoir. (sur le boite tu peut voir écrit "Start" qui est créer avec une DynamicTexture) - Ensuite, si tu rafraîchi et que tu coche la case maintenant puis charge le terrain, tu peut voir que rien ne ce charge, la scene est planter. C’est le même code, sauf que j'utiliser AdvancedDynamicTexture. et c’est appartement quand j'utilise cela : BABYLON.GUI.AdvancedDynamicTexture.CreateForMesh(); car si je met ca en commentaire, ca fonctionne. Je t'ai mis des commentaires dans le code. Le lien est ici: http://www.babylon.actifgames.com/Bug/index.html Je t'ai fait un zip aussi si tu a besoin : http://www.babylon.actifgames.com/Bug/test.zip Je pense que on est sur un bug bien cacher. Ah et ce n’est pas a cause de ce que je pensais au début, le faite d'avoir plusieur canvas et plusieurs moteur. Merci Deltakosh Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 1, 2017 Share Posted June 1, 2017 C'est impossible a debugger comme ca...Tu fais quelque chose dans ton code apres avoir charge le terrain? genre parcourir les materiaux ? Car je cree un materiau pour le GUI. Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 1, 2017 Share Posted June 1, 2017 Tu peux me faire un truc sans php? vraiment une scene a la con sans tout le bordel de php autour? Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Je ne fait rien de spécial, je charge une box et a ce moment j'appelle la fonction ligne 276 qui crée rune etiquette au dessus de la box. comme tu peut le voir si le checkbox n’est pas cocher. Je charge le terrain a la ligne 227. Apres avoir charger le terrain, je charge les objets sur la scene ligne 243. (la box) ensuite je créer l'étiquette quand la box est créer. Tout le reste du code, est juste pour charger la scene et le materiel de terrain. Donc inutile pour toi, mais utiles pour recréer ce que j'ai fait sur mon editeur. Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 J’ai que un fichier php tres basic qui appelle un fichier babylon. cela ne tes pas utile pour le probleme. Mais oui je vais te faire ca. j'en ai pour 10 minutes. Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Voila, je t'ai retirer la partie php Le lien mis à jour: http://www.babylon.actifgames.com/Bug/index.html le zip mis a jour : http://www.babylon.actifgames.com/Bug/Bug.zip Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 1, 2017 Share Posted June 1, 2017 404 sur le zip Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Opps, j'avais changer le nom. J’ai éditer le lien. Désoler Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Si tu veux je suis en train de faire une scene sans le terrain (ca diminue beaucoup au niveau du code) Juste la boite et l’étiquette. Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 1, 2017 Share Posted June 1, 2017 ha ouais Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Voila sans le terrain. j’ai fait au plus simple. Version sans bug avec l'utilisation de DynamicTexture http://www.babylon.actifgames.com/Bug/index1.html Et la version avec le bug et l'utilisation de AdvancedDynamicTexture (j'ai une scene toute blanche) http://www.babylon.actifgames.com/Bug/index2.html Dit moi si tu veux les zip avec, mais il suffit juste de copier le code source du .html, le reste du zip ne change pas. Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 1, 2017 Author Share Posted June 1, 2017 Je vient d’éditer le fichier index2.html ou je fait encore plus simple. Tout est dans une seule classe. J’espère que ca t'aideras a debugger. J'ai retirer aussi deux ballise meta pour ce qui concernait le shaderBuilder et le CustomMaterial au cas il il ferais un conflit (mais ca ne change rien) Je retirer le chargement de la boite et je ne charge que l’étiquette. J'ai tenter aussi de retirer la partie Jquery qui créer mon Layout, mais pareil. Lien mis a jour: http://www.babylon.actifgames.com/Bug/index2.html Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 1, 2017 Share Posted June 1, 2017 Ok je viens de pousser le fix Quote Link to comment Share on other sites More sharing options...
Dad72 Posted June 2, 2017 Author Share Posted June 2, 2017 Ça fonctionne. Merci DK de ton temps. GameMonetize 1 Quote Link to comment Share on other sites More sharing options...
GameMonetize Posted June 2, 2017 Share Posted June 2, 2017 Merci de ton aide! Dad72 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.