J'utilise la librairie three.js pour travailler dans WebGL. Dans mon cas, j'ai deux objets dans ma scène, j'aimerais mettre à jour mes objets sur l'écran de manière indépendante. J'utilise des shaders pour modifier la couleur de mes objets, je voudrais modifier la valeur d'un paramètre uniforme de mon fragment shader et appliquer le shader uniquement sur un de mes objets. Je voudrais appliquer un "drawElements" sur mon mesh et le dessiner avec le nouveau paramètre. Quand je fais "renderer.render (scene, camera);" Je mets à jour tous les objets, et ce n'est pas ce que je veux. Comment puis-je faire cela? Pourrais-tu m'aider s'il te plait ?Mettre à jour un objet et un seul, sur l'affichage
1
A
Répondre
0
Si vous utilisez une version antérieure à la version R.53, vous avez besoin de cloner vos uniformes pour votre deuxième shaders:
shaderB = shaderA.clone();
shaderB.uniforms = THREE.UniformsUtils.clone(shaderA.uniforms);
Un meilleur choix est de mettre à jour à la version actuelle, R.53. Dans ce cas, le clonage des uniformes est fait pour vous, et ce qui suit devrait être suffisant:
shaderB = shaderA.clone();
Questions connexes
- 1. Doctrine: comment mettre à jour un objet
- 2. Mettre à jour un seul élément dans ItemsSource d'un DataGrid
- 3. comment mettre à jour un seul champ au lieu de créer un autre objet - django 1.4
- 4. Comment mettre à jour un seul champ dans l'objet has_many
- 5. Comment mettre à jour seul objet dans SQL LINQ
- 6. Modifier/Mettre à jour un seul champ GridView
- 7. Comment faire pour mettre DACPAC à jour un seul schéma?
- 8. Comment mettre à jour plusieurs colonnes avec un seul statment
- 9. Comment mettre à jour un seul champ en utilisant EF4
- 10. EmberJS - Comment mettre à jour un objet dans un tableau
- 11. mettre à jour plusieurs formulaires en utilisant un seul bouton
- 12. Lier un objet GridView à un seul objet
- 13. Liaison de données à un objet - comment mettre à jour un objet/une liaison?
- 14. Dans PlayFramework avec Morphia, comment mettre à jour un objet?
- 15. Créer un seul objet
- 16. Comment passer un seul objet [] à un objet params []
- 17. Mise à jour et sélection en un seul passage
- 18. Mettre à jour un updatePanel sans mettre à jour l'autre?
- 19. Puis-je mettre à jour un objet Amazon S3 existant?
- 20. comment mettre à jour un objet en utilisant linq?
- 21. Comment mettre à jour un objet avec nhibernate + nhibernate fluent?
- 22. Comment mettre à jour un objet Javascript avec une fonction
- 23. Mettre à jour un objet toutes les x millisecondes
- 24. Sunspot Solr correspondant à un seul objet
- 25. mettre à jour un panneau
- 26. Comment mettre à jour un objet en utilisant Entity Framework
- 27. Objectif-c: Comment mettre à jour un objet dans NSMutableArray?
- 28. Impossible de mettre à jour un objet sans une transaction
- 29. Comment mettre à jour un objet mongodb via mongoose?
- 30. forme imbriquée pour mettre à jour has-many parent ET créer un objet enfant * single *
Merci pour votre réponse, je travaille avec la dernière version (version r53). C'est une bonne idée, donc mon objet a son propre shader mais après quand je veux juste en redessiner un, alors comment puis-je le faire? Si j'utilise le rendu, je réutiliserai tous mes objets, non? – lanfeustXIII
J'essaie de comprendre votre question ... 1. Est-il vrai que chaque objet a son propre shader, et que tous les shaders fonctionnent correctement? 2. Est-il vrai que vous voulez re-rendre l'écran, mais seulement redessiner l'un des objets? Est-ce que les objets se chevauchent sur l'écran? – WestLangley
En fait j'essaie d'adapter ce code (http://egraether.com/demos/booleans.html) pour être compatible avec THREE.js.Comme je l'ai dit j'ai deux objets et je voudrais appliquer une soustraction entre eux. Ce code utilise des shaders et fait la soustraction booléenne en utilisant un gabarit GL et des tampons de profondeur. Concernant ma première question, il s'agissait du rendu des objets qui est appliqué dans l'exemple, il redessine à chaque fois un seul objet et pas les deux. commander avec quelques modifications pour créer la soustraction. Je rencontre quelques difficultés pour adapter ce code à three.js et particulièrement pour redessiner seulement 1 objet. – lanfeustXIII