nDisplay can't run in packaged application with setting projection type=mesh

I set the Projection type = mesh in the nDisplay configuration file, and run the project with the UE4.25 editor, it work normally.But when I packaged the project to an application, it didn’t work.When run, an information box will pop up with the content “Assertion failed:At>= 0 && ats & lt;Num() [File:d:\build++ue4+ sync\engine\ Source \ Runtime \engine\public\RawIndexBuffer. H][Line:177]”.
How can I solve this problem?

310219-ndisplayrunerror.png

There isn’t a lot of documentation on nDisplay yet, unfortunately.

I don’t think the Mesh projection policy will actually run under a PIE session, as the viewport you have set to ‘Projection Type = mesh’ will not be created unless the built version of your game is launched with the nDisplay launcher (or you run your build with all the command line arguments the nDisplay launcher normally passes). That’s why you don’t see the error in editor. Nothing is happening.

However, to solve your problem: Make sure the mesh you pass in to the ‘Assign Warp Mesh To Viewport’ blueprint node has ‘Allow CPU access’ enabled on it (you should be able to find this under the Static Mesh editor). That way the buffer data associated with the mesh will be accessible in the packaged build.

1 Like