3d umg ui

Hello, I am trying to find what the best solution for creating 3D ui widgets that have components that are placed and animated in z-space. My primary

Upon some digging, I found that there used to be a bit of software called Scaleform that was packaged with UDK for a while, and maybe UE4 as a plugin, but it seems that has been discontinued and looks like perhaps the source code was given to existing customers before that happened?

This is a video of Scaleform in use and it shows the kind of thing that I am after as far as what these 3D UI widgets might look like.

I know you can place UI created with UMG using a WidgetComponent in your scene and it will exist in worldspace, though in order to have components be at different z-depths in 3d space, you would have to break up your UI design and use multiple WidgetComponents to place and animate them which was mentioned as being expensive.

I’d imagine making my own meshes for the UI components and rendering them could also become expensive, let alone time consuming to develop and iterate on.

I did find a framework on the marketplace that looked possibly promising (LGUI (Lex GUI) - 3D UI System for UE4 in Code Plugins - UE Marketplace), though based upon some questions the developer answered and the description, it sounds like it was primarily made as a “make it work like it does in Unity”, and it didn’t sound like it was made with performance in mind other than “I have use LGUI for several projects and it never be the bottleneck of performance.” which seems a bit subjective. The asset also sits at about $100, so I’d have to look at it further before giving it a try.

There was also mention of the newer SMeshWidget as a pretty performant way of drawing hardware instanced UI. Though it sounds much more technical and possibly draws in screenspace which wouldn’t be ideal for VR if that’s the case.

Any other suggestions? Would using WidgetComponents be reasonable if you aren’t dealing with massively complex setups? Would each one be its own draw call and thus add up quickly?

I’d say if you want a 3D interface, you’re either looking at:

  1. Widget components

  2. Making something in the world that looks like an interface ( you can give the BP a camera and special lighting so it looks like UMG )

  3. Something like that marketplace plugin

I don’t think you need to worry about performance, unless something has been terribly written…