today I am trying to implement name plates for each mesh in my scene. These nameplates shall appear, if i click on a mesh (maybe leftclick) and disappear, if I click it again (maybe rightclick).
I already looked in some other threads here and found some infos about using GUI features to achieve this. In general I can implement the nameplates through GUI features, but this gives me huge performance issues due to the big amount of meshes I have in my scene.
So, do you have other suggestions how to do it?
Some more information, that might be helpfull: The shape, position, color and textures of my meshes are all set through a JSON file, that is created in a certain software.
Using dynamictextures does apparently not do the trick, because if I use these, I loose the actual color and texture.
I also tried to add a simple plate in front of each mesh during creation, but that kinda breaks it.
Can you provide a PG that shows your issue?
Due to the complexity of my project and the fact, that we are devoloping it with Angular, its difficult to create a PG
But my trys to use the GUI were inspired from this : https://playground.babylonjs.com/#41IFI5#16
Can you create the plate when the user clicks the mesh?
Also, to maintain performance, you can keep a list of created plates and dispose the oldest when an arbitrary number of plates is reached.
Yes, the creation of the plates is possible. But if i click more than maybe 4-5 meshs, the performance suffers.
You should not get a performance drop with 4-5 plates. Sorry to insist but if you could copy/paste your code in a PG that would help me debug your issue.
sry for not replying in a while. I had to do other stuff. But now I am back for this projekt
Recently I thought about using the Bounding box of a Mesh to display the name of the mesh.
Any ideas if that is possible? Adding some text on one side of the cube should do the trick, but I dont know, if thats possible …
At the same time I am trying to use a GUI Button as a nameplate. Leftclick on a mesh, the button should appear and rightlick on a mesh, the button should disappear.
The creation of the button works, but I dont know how to delete it.
with billboarded holographic buttons you can do that:
mesh plates | Babylon.js Playground (babylonjs-playground.com)
Performance seems ok with 100 plates.