TouchEngine For UE 5.1, DX12 support, preliminary Vulkan support, what's next - 2022-12-19 13:07

TouchEngine For UE 5.1, DX12 support, preliminary Vulkan support, what’s next

Link to main site

2 Likes

Fantastic news! Look forward to continued updates. Requiring PIE mode is still the major showstopper for our virtual production needs but will continue to explore the potential of TouchDesigner to Unreal workflows.

@JetXS I’ve started to use the Unreal Plugin 5.1 release and it’s mostly working great so far. I am seeing a strange behavior where when I duplicate the TouchEngineUESamp level (so I can mess things up while leaving the original level untouched), the frame rate in Touch seems to drop significantly. In my new level which I created by opening the Sample level and Saving As a different name, in the Editor I can move around and shoot with no performance issues but when I activate any of the examples there is significant stuttering in the Chop output from Touch Engine. Is there a setup step I may have missed in creating this new level? Thanks!

Hey @mattrossalbatross

I moved your post here as it is a more recent thread dedicated to this new release :slight_smile:

the frame rate in Touch seems to drop significantly

You mean in the TouchEngine ?

Or do you have another instance of Touch running on your machine that gets affected ?

If you look at the task manager, how many Unreal processes do you see ? How many TouchEngine processes ?

When “copy pasting” the whole project, I think things should be fine overall. What you might want to do is empty the cache of the project by removing some of the temporary build / cache folders such as:

  • Intermediate
  • Binaries
  • DerivedDataCache
  • Saved
  • Plugins/TouchEngine/Intermediate

Then you can either recompile everything using Visual Studio or start the project which will likely trigger a recompile as well.

Best,
Michel

Hi Michel @JetXS

Specifically it was the Chop output from TouchEngine embedded with Unreal that was having performance issues. So the same instances I had flying around in my sample level(I’ve been working off of Sample06) very smoothly, were slow and stuttery in the new level, and I saw this effect on all of the samples. I took your suggestion and closed my project and reopened (I was not prompted to recompile). Once I reopened the project the problem was solved!

I’m curious if this would be reproducible on other machines though and where the issue is coming from. It’s not a big deal to restart the project but it is still interesting behavior.

I will investigate further and try to reproduce with a copy of the full project like you did.

Thanks for the report,

Best,
Michel

@mattrossalbatross

I took your suggestion and closed my project and reopened (I was not prompted to recompile)

You should be prompted to recompile when starting the project, after having deleted the folders I mentioned in the previous message.

I am unable to reproduce so far.

If it occurs again on your end. I’d suggest to make sure all samples are unloaded, and then move to Sample 01 and load only this one.

Read on the texture what’s the FPS, if it comes in as 60 then the issue could be with resources available on the machine in some cases.

Take a good look at the task manager in that case and get an idea of what is going on / using resources when that occurs before getting back to us :slight_smile:

Thanks,
Michel

Hi @JetXS I wanted to follow up with some questions about the roadmap with TouchEngine. My main one is if it is a focus of the Derivative team right now in building upon it for Production use. There are some use cases that I would love to use it for (for example Reading in Azure Point Cloud Data in Touch Engine and rendering it in Unreal). In attempting to explore this use case I ran into some performance issues in trying to instance more then a couple of thousand instances. Additionally the Blueprints setup for instancing is only for position and missing the other parameters we’ve come to use on the Geo object. I’m not even saying I expect there has to be one to one functionality(I’m referring to the Blueprint in the touch engine samples which spawns instances in a sphere), but I’m curious if this is a focus for the Derivative team right now, or just getting the first big release out the door was the milestone. More documentation and building upon that TouchEngine Samples Github Project would be very valuable. Thanks!