CPVR Glen
Topic Author
Posts: 5
Joined: 23 Jan 2024, 17:39

NoesisWorldUI not rendering

23 Jan 2024, 22:37

I'm having some issues getting a simple UI to show using NoesisWorldUI in my Unreal 5.1.1 project. This is the XAML:
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      xmlns:local="clr-namespace:CPVRGUI.UI.Noesis"
      mc:Ignorable="d" 
      d:DesignHeight="450" d:DesignWidth="800"
      Title="ExamplePage">

    <Grid Background="White">
        <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" FontSize="36">
            This is a test!!!!
        </TextBlock>
    </Grid>
</Page>
It's a C++ project which I've added the necessary module dependencies and #include to the header file.

As far as I can tell, I have followed the first steps guide on the documentation to the letter and the plugin is installed correctly. But the test UI I have created fails to display at all when it's added to a NoesisWorldUI component. I can get it to show if I create a NoesisView and then add that to a Widget component instead, but I would like to get the WorldUI working as it's a VR project and I feel it would be more suitable.

Further to the above, a few more issue that are less pressing:
  • Nothing shows in the editor viewport before playing. I can't even see the Widget component version of the UI until I hit play. (I'm wondering if this is expected as you've used arrows to represent the orientation of the UI in the WorldSpaceUI level sample, is there a way to preconstruct the UI at all if so?)
  • Editing the NoesisView asset and saving/compiling often crashes Unreal. The last two times it did this, it was after I had changed the XAML between mine and the Hello World sample and after I had enabled, then disabled, PPAA. I haven't tested this extensively but I feel it probably crashes regardless of what you change, seems random.
  • I can't see the LogNoesis category in the output log settings. I might have been able to figure out what's wrong if that was at least working!
Any help would be greatly appreciated. I have so far tried removing and reinstalling the plugin to the project and deleting the Intermediate folder among other, probably, obvious things that I've forgotten.
 
User avatar
jsantos
Site Admin
Posts: 3925
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisWorldUI not rendering

24 Jan 2024, 12:26

First of all, have you tried the WorldUI sample included in the plugin? Does it work for you?
 
CPVR Glen
Topic Author
Posts: 5
Joined: 23 Jan 2024, 17:39

Re: NoesisWorldUI not rendering

24 Jan 2024, 12:43

I have tried it in your sample project to see if it was a Unreal version issue, but I realise I haven't actually tried the sample in my project yet.

I've given it a go, imported the WorldSpaceUI sample in the project and added it to my test actor. Unfortunately it still fails to show in the viewport or in play.

Image

On another note, I did manage to get the logging working by moving the #include. It hasn't fixed the issue though sadly and I'm not seeing any errors or warnings from it.
 
User avatar
jsantos
Site Admin
Posts: 3925
Joined: 20 Jan 2012, 17:18
Contact:

Re: NoesisWorldUI not rendering

24 Jan 2024, 21:26

I have tried it in your sample project to see if it was a Unreal version issue, but I realise I haven't actually tried the sample in my project yet.
Just to make sure I am following. Does our sample project work correctly?
On another note, I did manage to get the logging working by moving the #include. It hasn't fixed the issue though sadly and I'm not seeing any errors or warnings from it.
Could you ellaborate on this? What #include was moved.

Thank you!
 
CPVR Glen
Topic Author
Posts: 5
Joined: 23 Jan 2024, 17:39

Re: NoesisWorldUI not rendering

24 Jan 2024, 23:37

I have tried it in your sample project to see if it was a Unreal version issue, but I realise I haven't actually tried the sample in my project yet.
Just to make sure I am following. Does our sample project work correctly?
On another note, I did manage to get the logging working by moving the #include. It hasn't fixed the issue though sadly and I'm not seeing any errors or warnings from it.
Could you ellaborate on this? What #include was moved.

Thank you!
Apologies, reading back I realise I haven't been particularly clear.

The sample project works fine, I tested the WorldUI sample level in 5.1.1 to make sure it wasn't an issue with the version I'm using. Before my last reply, I copied the WorldSpaceUI sample folder with the XAML and its resources to my project to test, but the same issue occurs.

As for the NoesisRuntime include, it was originally in our project's header file (BP_VR.h), but I've recompiled after moving it to BP_VR.cpp and the log filter now shows. Nothing else seems to have changed though.

Many thanks.

Edit: I have also tested the WorldUI asset in the plugin and had the same result. It appeared blank so I presumed that's why it wasn't showing, it's an empty Grid > Canvas as far as I can see from the source XAML. That's why I made my example one in the OP.

This post appears to be related, it's unfortunate they never replied: viewtopic.php?p=15392&hilit=Worldui#p15384
 
CPVR Glen
Topic Author
Posts: 5
Joined: 23 Jan 2024, 17:39

Re: NoesisWorldUI not rendering

25 Jan 2024, 19:52

I have been testing a few other things to see what the issue might be, I'll list them below along with what I've already tried so everything is in one place, but I think I've figured out where the issue stems from:

  • Created a new 5.1.1 VR template project
    1. Created project and opened it for the first time
    2. Closed the project and copied the NoesisGUI plugin to the Plugins folder in the project
    3. Attempted to open the project, was met with shader compilation errors. The workers were crashing.
    4. Removed the plugin and opened the project, it opened fine.
    5. Re-added the plugin and switched the project version to 5.2.1.
    6. UE prompted to rebuild the below modules that had been modified with a different version of UE, I confirmed.
      • NoesisRuntime
      • NoesisBlueprint
      • NoesisEditor
    7. Project rebuilds shaders and eventually loads. Confirmed the plugin was loaded.
    8. Added sample WorldUI (ObjectPanel.xaml) to a sphere, but it didn't show in play.
  • Created a new 5.2.1 VR template project
    1. Created project and opened it for the first time
    2. Closed the project and copied the NoesisGUI plugin to the Plugins folder in the project
    3. UE prompted to rebuild the below modules that had been modified with a different version of UE, I confirmed.
      • NoesisRuntime
      • NoesisBlueprint
      • NoesisEditor
    4. Project builds shaders and loads. Confirmed the plugin was loaded.
    5. Added the same sample UI to the same sphere, but the same issue occurred.
    6. Closed project and switched version to 5.1.1, recompiled the same modules as prompted.
    7. Shader compilation crashes again.
  • Added plugin to existing 5.1.1 project
    1. Added plugin to plugins folder
    2. Added #include to project (first BP_VR.h, then BP_VR.cpp later. Didn't make a difference so won't detail it).
    3. Added modules to the build.cs file.
    4. Opened project, UE prompted to rebuild the below modules that had been modified with a different version of UE, I confirmed.
      • NoesisRuntime
      • NoesisBlueprint
      • NoesisEditor
    5. Project opens, confirmed the plugin was enabled.
    6. Added my example XAML to content, created view, and added view to a widget component. Works fine.
    7. Added a NoesisWorldUI component to a test actor and set the XAML to my example. UI didn't render in the viewport or in play.
    8. Tested the same with the WorldUI in the plugin content and the sample ObjectPanel in the sample project, same problem.
    9. Disabled forward rendering, same problem
    10. Enabled separate translucency, same problem.
  • Created a new 5.1.1 first-person template project
    1. Created project and opened it for the first time
    2. Closed the project and copied the NoesisGUI plugin to the Plugins folder in the project
    3. UE prompted to rebuild the below modules that had been modified with a different version of UE, I confirmed.
      • NoesisRuntime
      • NoesisBlueprint
      • NoesisEditor
    4. Project rebuilds shaders and eventually loads. Confirmed the plugin was loaded.
    5. Added sample WorldUI (ObjectPanel.xaml) to a cube and it showed up in play.
It seems the plugin doesn't like VR projects, or maybe just ones that derive from the VR template (which mine does). I'm hoping this is fixable, we're evaluating Noesis for use in our project with a view to get a license if it fits with what we're trying to do.

Thanks again.
 
User avatar
hcpizzi
Site Admin
Posts: 321
Joined: 09 Feb 2012, 12:40

Re: NoesisWorldUI not rendering

26 Jan 2024, 18:28

Hi,

I've been looking into this. Turns out the VR template turns off a rendering feature called Separate Translucency that we counted on to render in world space. I believe that simply choosing MSAA as the antialiasing method also disables it. I've figured out how to make it work, but I need to test it more thoroughly, as well as testing those shader compile errors with older versions of the engine.

If you want to test what I've got so far, please create a ticket in our bug tracking portal, and I'll attach a patch for you to test. That way you'll also be notified once the solution makes it to our codebase.

Thanks
 
CPVR Glen
Topic Author
Posts: 5
Joined: 23 Jan 2024, 17:39

Re: NoesisWorldUI not rendering

29 Jan 2024, 10:53

Hi,

I've been looking into this. Turns out the VR template turns off a rendering feature called Separate Translucency that we counted on to render in world space. I believe that simply choosing MSAA as the antialiasing method also disables it. I've figured out how to make it work, but I need to test it more thoroughly, as well as testing those shader compile errors with older versions of the engine.

If you want to test what I've got so far, please create a ticket in our bug tracking portal, and I'll attach a patch for you to test. That way you'll also be notified once the solution makes it to our codebase.

Thanks
Ah that's great, I've created a ticket here: https://www.noesisengine.com/bugs/view.php?id=3050

I did wonder if it was separate translucency because the buffer debug indicated that it was the only thing the UI showed up on, so I enabled it in my existing project but I think I forgot to disable MSAA, which I also did separately. Would be happy to test with the patch and see if it works.

Who is online

Users browsing this forum: Bing [Bot] and 6 guests