UE4 & Spout problems (black textures, memory share and texture share)


#1

Dear Lightact!

I am following Your tutorial and now I am trying to send something from UE4 to Lightact. Everything is setup as in the tutorial video.

But when I press Start button in UE4 I got an error - Cannot create DirectX/OpenGL interop - and I don’t know how to avoid it…

Have You got any tips?
Thanks


#2

Hi @milosz.galit,

I remember seeing this error once before, but I don’t remember what was the cause of it. However, doing a quick Google search brought me to this page.

Can you please let me know what kind of setup you are using? Especially the GPU.

Also, does Spout Demo Receiver/Sender work together as suggested on the page above?

Thanks,
Mitja


#3

Thanks for your answer!

But I had been on the page before I posted here. And I had done everything step by step.

However after few restarts the error disappeared. I don’t know how :slight_smile:. Anyway my canvas in Lightact is always black.

Here is a screen with configuration.


Of course the Render to Canvas node is set - in my example to Canvas 1
And marker covers layer. :slight_smile:


#5

Hi,

I’m glad that it worked. :slight_smile:

It looks like you entered 1920 x 1080 in the Render to canvas node, which I’m not sure its correct. The x & y signify top left corner not the width and height. So in most cases they are both set to 0.

Try connecting a simple Color to texture node to Render to canvas node to test whether the render to canvas is done correctly.

Please also make sure that in the Render to canvas node, parent canvas has to be selected in its properties on the right.


#6

The Color to texture node works!
So there must be some problem with communication between UE4 and LightAct.

Thanks a lot for your quick replies! :slight_smile:


#7

Hi,

Can you try something for me?

If you insert a Texture invert node as shown below
texture%20invert%20node%20using

Does the texture appear (please make sure only A is selected)? Because from the fact that there is 1920 x 1080 px written below Render to canvas node it seems the texture is coming from UE4 but the alpha is 0.

If the above suggestion solved your problem then you probably have SceneColor (HDR) in RGB, Inv Opacity in A selected in the properties of your Scene capture component in UE4.
capture%20source

Cheers,
M


#8

Sadly it is still black…


#9

Interesting.

If you want, feel free to send over the .la project file so I can have a look.

Some other things to check:

  • Can you see UE4 output in the Spout demo receiver program. If you don’t know what that is, you can download it on Spout website.
  • If we focus on what’s displaying below the Render to canvas node for a moment and not what’s on the canvas: do you see anything at all if you play with the checkboxes on the Texture invert node?

#10

The problem is in the UE4, the Spout Demo Receiver receives the black screen too.

Ok, so my project is in the newest UE - 4.20.3. Should I go to 4.19?

Answering your question - when I play with with the checkboxes the Canvas changes his color - with checked Red - it’s Red etc.


#11

OK, I see.

I’m successfully running UE 4.20.2, so I doubt that spout stopped working in UE 4.20.3.

Which UE4 project are you running? Did you try with the UE4 sample project available on our website or did you create one from scratch?


#12

I’m running on my own scratch. I cannot open the Sample Project in Visual Studio 2017 so now I’m downloading the 2015 version. :slight_smile:
And now I will try to build my own scratch in 4.19 :slight_smile:


#13

Good morning!

Sadly, even with VS2015 and UE 4.19.2 I still receive only black color.

Best wishes,
Miłosz


#14

Good morning Milosz,

Just to confirm that spout is working on your computer: could you please confirm that if you run Spout Sender and Spout Receiver demo applications the textures are passed between the 2 apps?

2nd: could you please post a screenshot of your Render target window and the properties of your Scene capture 2D componenet in UE4 as shown below.

scene%20capture%20properties

3rd: please run DirectX Diagnostic Tool and past the screenshot of the first tab please

And lastly, please let me know your system specs - especially the GPU.

Thanks!
Mitja


#15

Well,
1st - There are screenshots where Lightact and Spout Sender/Receiver works.
a. receiving in Lightact

b. receiving in Spout

2nd.
a. screenshot with configuration of my RenderTarget

b. screenshot with Scene Capture Component 2D

3rd. DirectX Diagnostic Tool

4th. System Specs
Win 10 64bit Pro
Intel Core i7-6700HQ
16GB RAM
nVidia GTX1060
And all works on SSD.

Thanks!
Miłosz


#20

After a few more to and fros in PM, what turned out to be the solution was:

I think your spout might be set to Memory share instead of Texture share.

I’ve been able to reproduce your error. In Spout2 folder, where you have Demo/spout receiver/sender programs, there is also a SPOUTDXMODE folder. In there, there is a program called SpoutDXmode.exe. Run it please. It should look like this:
SpoutDXmode

Please make sure you have Texture share enabled and not Memory share.

Because when I looked again at your Spout receiver screenshots, I saw that it says Memoryshare whereas in mine it says Textureshare

spout%20receiver