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

Support for Twist Bones (Additional Torsion) in the VRIK #1601

Open
Mattyrogue opened this issue Jan 15, 2021 · 8 comments
Open

Support for Twist Bones (Additional Torsion) in the VRIK #1601

Mattyrogue opened this issue Jan 15, 2021 · 8 comments
Labels
Avatar System Avatar Related Enhancement New feature or request

Comments

@Mattyrogue
Copy link

Is your feature request related to a problem? Please describe.

Presently, NeosVR has no support for Twist Bones, leading to some confusion for long-time creators setting up avatars when they ask why their avatar isn't 'bending their arm like x/y'.

While the IK in Neos is good, if not incredibly robust, it stands to reason that the additional torsion and twist points provided by twist bones could enhance avatars further, allowing for even more natural movement and less edge cases in the IK 'breaking' and producing weird bends and shapes.

Additional context

I've been trying to get in touch with such creators, for examples and use cases of twist bones, apparently these are commonplace in any Valve official IK rig (such as the Metrocop from Half Life: Alyx) and in a number of upmarket Gumroad/Booth VR avatars (such as ZaWoo's 'Rascal Rabbit')

Included citation of twist bones;
https://cascadeur.com/help/twist_bones (Twist Bone Documentation on Cascadeur)
https://blogs.unity3d.com/2014/05/26/mecanim-humanoids/ (Mecanim Humanoid, utilizes Twist Bones)
https://youtu.be/LTQ9gyeaeWI (Blender)
https://youtu.be/UC_voh3sGy4 (3ds Max)
https://vrcat.club/threads/tutorial-guide-twist-bones-what-are-they-and-how-do-you-use-them.3622/ (VRChat discussion)

Models making extensive use of Twist Bones;
https://gumroad.com/zawoo#XKOLP (ZaWoo Rascal Rabbit)

Further citation and documentation needed.

@Mattyrogue Mattyrogue added the Enhancement New feature or request label Jan 15, 2021
@TehTurk
Copy link
Collaborator

TehTurk commented Jan 15, 2021

This wouldn't be a bad addition, but it'd also be a matter of when previously I had asked that Twist Bones would typically be ignored from IK setups currently #1301 due to them false rigging or identify as hand or arm bones due to how the importer will use it for heuristics. I'm aware twist bones could also be technically setup in a fashion with Logix but I can also understand how this might be unideal.

@TehTurk TehTurk added the Avatar System Avatar Related label Feb 2, 2021
@InsaneGrox
Copy link

Bit unrelated, but it is indeed possible to do these using logiX, it's slightly jank, but I did do it on my avatar.
https://youtu.be/gk_J5w9KwAs
(still want official support for them though)

@shiftyscales
Copy link
Contributor

Regarding twist bones, Frooxius has noted before that:

The IK is based on the actual body being the one that provides the natural restrictions. It makes it more performant that way and better behaved for the most part, as you don't have to solve the constraints or worry about the "virtual body constraints" not perfectly aligning with your real body ones.

https://discord.com/channels/402159838827905024/477711742001086505/679179580015378462

This has also come up on issues like #1507. I definitely understand the appeal for twist bones, particularly to allow content creators to ensure their model moves and acts in the way they want it to, but it's generally easier/better to work with the existing systems as much as possible than trying to work around them.

All the more so if the official systems can be improved/extended to behave better/be even more robust.

@Aerizeon
Copy link

@shiftyscales Well, considering the LogiX method is the only thing i've seen that makes your wrists not look like they were ran over by a truck in some poses, I feel that the performance impact argument isn't really that great - the LogiX will be more expensive than having a system built in, that has adjustments for constraints.

@TehTurk
Copy link
Collaborator

TehTurk commented Apr 25, 2021

Maybe having access to Generalized IK Systems? It's not like they need to be apart of the VRIK inherently I know access to them as been wanted for a lil bit. With Twist bones being auto setup when doing Avatar Setup.

@shiftyscales
Copy link
Contributor

@Aerizeon - hence why I mentioned issues like #1507 to help improve the system, which lessens the needs to work around it with other solutions like twist bones in the first place. Also what do you mean 'performance impact argument'? Where/when did I say anything on performance? Are you misreading something?

@3x1t-5tyl3
Copy link

3x1t-5tyl3 commented Apr 27, 2021

I'm certain that @Aerizeon meant the quote from Froox you quoted @shiftyscales . An excerpt of which states "It makes it more performant that way"

@shiftyscales
Copy link
Contributor

Yeah, but that quote (in context) is outside of the scope of this issue. @3x1t-5tyl3 - Frooxius was just providing insight on why the system was designed the way it was, not comparing it to what users would make in Logix. I was using it, like the one in #1507 to note why the system was built the way it was.

As far as generalized IK systems/components, @TehTurk had mentioned, #1677 had already been opened for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Avatar System Avatar Related Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants