Skip to content

Conversation

@Mugen87
Copy link
Collaborator

@Mugen87 Mugen87 commented May 5, 2021

Fixed #20318.
Fixed #19912.

Description

This PR changes how skinning in three.js works. Similar to InstancedMesh which enables instanced rendering, SkinnedMesh enables skinning. A separate material property is not necessary anymore. This simplifies the code and also fixes conceptual issues in context of override materials and post processing.

More details in #18533 (comment).

@mrdoob
Copy link
Owner

mrdoob commented May 5, 2021

Sweet! So much red! 😀

@mrdoob mrdoob added this to the r129 milestone May 5, 2021
@mrdoob mrdoob merged commit 8c21891 into mrdoob:dev May 5, 2021
@mrdoob
Copy link
Owner

mrdoob commented May 5, 2021

Thanks!

@will-ca
Copy link

will-ca commented May 5, 2021

Oh, cool.

Will old applications/configuration files that have skinning:true now raise errors though, or is it just deprecated?

@mrdoob
Copy link
Owner

mrdoob commented May 5, 2021

It is just deprecated.

@makc
Copy link
Contributor

makc commented May 6, 2021

but skinning:false will stop working, right? this guy will be out of luck:
Screen Shot 2021-05-06 at 19 32 58

@Mugen87
Copy link
Collaborator Author

Mugen87 commented May 6, 2021

but skinning:false will stop working, right?

Yes. It's not possible to retain this flexibility.

However, the user should achieve the same result by just creating an instance of Mesh.

@will-ca
Copy link

will-ca commented May 6, 2021

The last comment on #19912 (comment) ties the failure with scene.overrideMaterial to another issue with SSAOPass. I didn't file a separate issue, but I also noticed that SSAOPass didn't work on SkinnedMesh()s. The SSAO shading would be based on an undeformed mesh.

Does this change also fix that?

@Mugen87
Copy link
Collaborator Author

Mugen87 commented May 7, 2021

Yes, I think so.

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

Labels

None yet

Projects

None yet

4 participants