Skip to content

Conversation

@gratefulforest
Copy link
Contributor

Resolves #3698

This is a known issue confirmed by HatKid after the release of the build actor tool as something that came up during testing.

There is a problem which is you can't go over 255 vertices or faces in a single collision primitive. The solution then is to split a single object into two different primitives. This is what's done in the real game.

The problem here is that the build actor tool also doesn't support splitting an object into multiple objects in Blender. If you do, any subsequent objects appear invisible. This is because the pipeline for building materials is single-object. If you have a material on multiple objects in Blender, only one gets built and any subsequent uses get skipped as they were presumed to have already been built.

This simple fix adds an additional check to check both materials AND objects when building materials.

This is a pretty important fix, as there's no way to get around the 255 hex limit, so at that point you have no choice but to separate objects into two separate Blender objects. At this point, it doesn't make sense to not be able to display the same material on multiple Blender objects.

This affects BOTH collision meshes as well as visual meshes.

This is also a particular issue for non-armature actors.

Here is an example of others stumbling across this problem. The solution found was to make sure all objects were in a single object.

Before this PR:

without_fix.mp4

After this PR:

with_fix.mp4

@OpenGOALBot
Copy link
Collaborator

Can one of the admins verify this patch?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

[Jak 1] Actors appear invisible

2 participants