Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Combine mesh sockets #525

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

bengHinterland
Copy link

Requires #524 to work

Fix the fact that sockets would not work with combine mesh when the parent empty has more than one children
Also made the get socket function work recursively if meshes are combined.

I am not sure the way I know if combine mesh is used is very elegant, since probably the main code should not be aware if an extension exists or not, but I didn't see any other way to make it work without a lot of refactoring. Maybe the get socket function could be overloadable in an extension ?

fixing wrong asset path for future get_asset
made sockets work with combine mesh
@james-baber
Copy link
Contributor

@bengHinterland thanks for the fix. Ill do some testing, and well try and get these changes merged in soon!

@bengHinterland
Copy link
Author

Any news on this ? We're still using it locally, apparently there's conflict now with the latest changes

@james-baber
Copy link
Contributor

Resolving the merge conflicts is pretty straight forward. I held off in merging since this is referencing an extension in the core module. I am going to see what can be done to isolate this to the extension. Also we need to write tests for this too.

I have another large PR incoming that I'll see if I can re-factor this into.

@james-baber
Copy link
Contributor

james-baber commented Jan 26, 2023

Linking this for reference of the original bug report
#523

}
combined = False
mesh_name = mesh_object_param.name
if hasattr(bpy.context.scene.send2ue.extensions,"combine_meshes"):
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry just got some time to look at this. So if I am understanding correctly, we want to recurse all children of the asset look for sockets, if it is to be combined?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Allo ! Sorry for the delay
Yes I remember I was working on something like that

Copy link

@Olninyo Olninyo Jul 20, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just looking into this functionality again too, and even using default pipeline settings I'm getting the error:

  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\dependencies\rpc\factory.py", line 221, in run_function_remotely
    return remote_function(*args)
  File "C:\Program Files\Blender Foundation\Blender 3.5\3.5\python\lib\xmlrpc\client.py", line 1122, in __call__
    return self.__send(self.__name, args)
  File "C:\Program Files\Blender Foundation\Blender 3.5\3.5\python\lib\xmlrpc\client.py", line 1464, in __request
    response = self.__transport.request(
  File "C:\Program Files\Blender Foundation\Blender 3.5\3.5\python\lib\xmlrpc\client.py", line 1166, in request
    return self.single_request(host, handler, request_body, verbose)
  File "C:\Program Files\Blender Foundation\Blender 3.5\3.5\python\lib\xmlrpc\client.py", line 1182, in single_request
    return self.parse_response(resp)
  File "C:\Program Files\Blender Foundation\Blender 3.5\3.5\python\lib\xmlrpc\client.py", line 1354, in parse_response
    return u.close()
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\dependencies\rpc\client.py", line 55, in close
    raise exception(exception_message)
RuntimeError: The D:/XXXXXXXXXX does not exist in the project!

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\operators.py", line 71, in modal
    raise error
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\operators.py", line 61, in modal
    function(*args, **kwargs)
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\core\ingest.py", line 50, in create_static_mesh_sockets
    UnrealRemoteCalls.set_static_mesh_sockets(
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\dependencies\rpc\factory.py", line 248, in wrapper
    return rpc_factory.run_function_remotely(function, args)
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\dependencies\rpc\factory.py", line 226, in run_function_remotely
    raise exception.__class__(stack_trace).with_traceback(call_traceback)
  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\core\ingest.py", line 50, in create_static_mesh_sockets
    UnrealRemoteCalls.set_static_mesh_sockets(
RuntimeError: The D:/XXXXXXXXXX does not exist in the project!  File "C:\Users\ollys\AppData\Roaming\Blender Foundation\Blender\3.5\scripts\addons\send2ue\dependencies\unreal.py", line 1402```

which it appears may have been in issue in the past as well, but was resolved.

would love to have this socket functionality in some form, with combine meshes would be even better.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was logged in my personal account I didn't see this ! I'm going to try and fix that are update this PR in the coming weeks hopefully

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Weeks turned into months but I have abot of time now

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants