Open Flashfyre opened 6 days ago
Alternatively, adding a new billboard mode value in the same way as Y-Billboard but allowing rotations on the z-axis would possibly work even better, and be more compatible with other nodes and avoid breaking compatibility.
Describe the project you are working on
I am working on a project that makes extensive use of billboard text in a 3D space, complete with animations of said text.
Describe the problem or limitation you are having in your project
It is currently not impossible without a complex solution to rotate a Label3D with billboard enabled. I cannot apply rotations in animations of my labels without trying to simulate billboard mode with this one difference, which has so far proven unsuccessful.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Add a Rotation property (float, in degrees) on Label3D that appears right under Offset, which already exists and does the same thing as I'm requesting except for position instead of rotation.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
When you change the rotation, the text will be rotated independent of its transform so that it will work in billboard mode. Ideally, there should also be a Vector2 for anchor position so it can be rotated from any origin and not just the center.
If this enhancement will not be used often, can it be worked around with a few lines of script?
No, this request is due to this being a limitation I have been unable to overcome.
Is there a reason why this should be core and not an add-on in the asset library?
It should be a part of Label3D or even a base 3D node considering that there is no reason it should be impossible to rotate a billboarded object in 2D, since it is still facing the camera. I am not sure how it would work for non-labels though if applied on that level, and it would be a mostly useless property unless billboard mode is enabled, but since Offset exists on Label3D it makes sense to add a Rotation property to go with it.