BlenderTools icon indicating copy to clipboard operation
BlenderTools copied to clipboard

Send2ue 2.4.3 "No instance of UnrealEditor found" on Debian 12

Open Nanzikambe opened this issue 1 year ago • 2 comments

Steps to Reproduce the Problem:

  • Addon: Send to Unreal
  • Click Pipeline -> Exports -> Push Assets
  • See error "No instance of UnrealEditor found" after a short delay with no additional info
  • Error Log: None other than the error in "No instance of UnrealEditor found" in a popup
  • OS: Debian GNU/Linux 12 (bookworm) x86_64
  • Addon Version: Send to Unreal 2.4.3
  • Blender Version: Blender 3.6.12
  • Unreal Version: 5.4.2-33871570+++UE5+Release-5.4

Stuff already tried:

  • UE_2024-06-23_17-50-18 0.0.0.0 addresses were 127.0.0.1, I changed as per feedback in issue 695 this had no effect
  • tried Blender 4.x, same result
  • additionally tried send2ue versions: 2.4.3_v4fixes_28-03 and 2.4.5 with both Blender 3.6 and 4.x, same result

Work around:

Found a fix that's fairly self explanatory:

  • Edit send2ue/dependencies/remote_execution.py and change 127.0.0.1 to 0.0.0.0 for the following constant declarations (at the top) DEFAULT_MULTICAST_BIND_ADDRESS and DEFAULT_COMMAND_ENDPOINT, as shown here: UE2_2024-06-23_18-03-12
  • closed Blender
  • deleted all .pyc files in send2ue sub directories
  • started Blender and "Push Assets" works once more (note a restart is needed, using System > Reload scripts in Blender does not seem to reliably reload changed addons)

Observations:

  • From reading descriptions of similar issues in Windows and Mac I think (but did not verify) loopback multicast behavior (127.0.0.1) differs on Linux as compared to Mac or Windows, using sudo ss -tunlp | egrep 6766 I could see UE upon first install was listening on 127.0.0.1,however using tcpdump -i lo port 6766I could only packets sent by send2ue, never a response until implementing the workaround above so both UE and Blender bind to 0.0.0.0, then I was able to see the packet response with tcpdump -- but not on loopback.
  • Also related
  • The following settings work but seem to interact with this problem somehow as well when set to 0 (in /etc/sysctl.conf)
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.lo.rp_filter = 1
net.ipv4.conf.eth0.rp_filter = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
  • Probably needs further investigating how these interact with the problem
  • also note setting the kernel command-line ipv6.disable=1 or disabling ipv6 will cause UE to not start at all

Nanzikambe avatar Jun 23 '24 16:06 Nanzikambe

The project is not maintaned anymore.

See this community fork instead:

https://github.com/poly-hammer/BlenderTools

MoravianLion avatar Jun 23 '24 20:06 MoravianLion

Thank you! I finally got the addon to work in Linux thanks to your workaround. In addition to your workaround, I also needed to set my Multicast Bind Address in the Unreal Project settings in the Remote Execution section. Setting that to 0.0.0.0 was what finally made it work for me.

lowpolyness avatar Sep 04 '24 11:09 lowpolyness