Hello together,
is there a way to render Text? For example a digital clock…
Thanks
Carl
Hello together,
is there a way to render Text? For example a digital clock…
Thanks
Carl
This is reguest also on my menu!
Hi all! Thanks for your question! I’ve brought this up with the development team and I expect them to respond soon!
Hi Both,
So there is current 2 main options for you
if you need 2d overlay text on the viewport you can use omni.ui, there is a workflow where if you create a ui.Window that is named “Viewport” like the viewport one, the content of that Window will be “merge” with the viewport and you will be able to be integrated into the viewport rendering
you will be able to do more than just text, effectively any omni.ui.Widget can be rendered there. but only 2D
Second if you need 3D then it is a little more tricky as currently you need to use USD Geometry and MDL texture.
you can generate MDL Texture Texture using something like OIIO for example.
for simple numbers and clean animation for a Digital Clock for example you can use workflow and update/animatie the UV of the polygon that have the MDL with time assigned to it.
Let me know what of those is what you are after and we can go into more details if needed
Finally coming in the Fall probably there will be a new API that will enable to do UI in the 3D space that will include Text and more we are not yet ready to give too much details as it is still being designed
Thanks
please can you share some more links to the 2d overlay text solution?
Thank you for the information.
I need to implement a dimension line like this…
…so I need it in 3d-space.
I’ll generate small jpgs and use thos as textures, as a workaround and then switch to omni-ui when it is possible to use it in 3d.
Thanks
Carl
in the latest create we have a good example on the 2D overlay workflow
omni.kit.viewport_widgets_manager : Viewport Widgets Manager
window = ui.Window("Viewport")
window.detachable = False
with window.frame:
# .... some ui code like
with ui.HStack():
ui.Spacer()
ui.Label("Some)
ui.Spacer()
you don’t need to use that Height Level API , that is usef by the collaboration manager but this is a good examples for 2D
@c.bickmeier : for 3d and what you are showing here it will be complicate with 21.3
you can check the above post as we do track the 3d position of object and project that in screen space but doing both text and line/arrows is not gonna work well or be hard
for 21.4 we are working ona new Manipulator and Overlay 3D system that will make that easier
thanks for the info… will wait for 21.4 then :-)