VRIK(FinalIK)를 적용하면 VRM의 흔들림(VRM Spring Bone)의 움직임이 이상해질 때의 대처
원인
VRIK의 FixTransforms
는 흔들림의 계산 결과를 덮어 쓰고 있기 때문이었습니다.
VRIK의 FixTransforms
가 어떤 것인가라고 하면, 소스 코드에는 이하와 같이 써 있었습니다.
If true, will fix all the Transforms used by the solver to their initial state in each Update. This prevents potential problems with unanimated bones and animator culling with a small cost of performance. Not recommended for CCD and FABRIK solvers.
IK로 계산되지 않은 각 Transform의 값을 매 프레임 초기 값으로 재설정하는 기능입니까?
이것은 흔들림의 Transform 값을 덮어 쓴 것 같습니다.
빼낼 수 있다면 그걸로 해결할 것 같지만, 제 경우에는 오프라고 메쉬가 풀 풀고 있었기 때문에 붙인 채로의 대처를 생각했습니다.
해결 방법
Spring Bone의 실행 순서를 FixTransforms
보다 나중에 설정한다.
ProjectSetttings>ScriptExecutionOrder
를 다음과 같이 설정하십시오.
FinalIK는 가져올 때 기본값 이후에 실행되도록 설정됩니다.
그래서 SpringBone을 그것보다 나중에 실행하도록 지정해 주면 됩니다.
기타 신경 쓰는 곳
Animator가 설정되어 있는 경우에는 이를 통해 제어할 수 있으므로 확인해 보십시오.
(Animator 컴포넌트의 Controller가 null이면 아무것도 해주지 않을 것입니다.)
참고
SmoothJoint는 자산으로 머리를 흔들어 설정하면 어제는 흔들렸는데 오늘은 흔들리지 않는거야! 라고 생각하면, 어쩐지 VRIK와 경합해 스크립트 실행 순서로 움직이거나 움직이지 않거나 하고 있는 것 같다. SmoothJoint의 ScriptExecutionOrder를 FinalIK보다 나중에 움직였다. VRIK의 FixTransform 기능이 머리 흔들림을 멈추는 느낌 - 해양 프로그램 (@kaigyoPG) 2018년 1월 30일
Spring Bone의 실행 순서를
FixTransforms
보다 나중에 설정한다.ProjectSetttings>ScriptExecutionOrder
를 다음과 같이 설정하십시오.FinalIK는 가져올 때 기본값 이후에 실행되도록 설정됩니다.
그래서 SpringBone을 그것보다 나중에 실행하도록 지정해 주면 됩니다.
기타 신경 쓰는 곳
Animator가 설정되어 있는 경우에는 이를 통해 제어할 수 있으므로 확인해 보십시오.
(Animator 컴포넌트의 Controller가 null이면 아무것도 해주지 않을 것입니다.)
참고
SmoothJoint는 자산으로 머리를 흔들어 설정하면 어제는 흔들렸는데 오늘은 흔들리지 않는거야! 라고 생각하면, 어쩐지 VRIK와 경합해 스크립트 실행 순서로 움직이거나 움직이지 않거나 하고 있는 것 같다. SmoothJoint의 ScriptExecutionOrder를 FinalIK보다 나중에 움직였다. VRIK의 FixTransform 기능이 머리 흔들림을 멈추는 느낌 - 해양 프로그램 (@kaigyoPG) 2018년 1월 30일
SmoothJoint는 자산으로 머리를 흔들어 설정하면 어제는 흔들렸는데 오늘은 흔들리지 않는거야! 라고 생각하면, 어쩐지 VRIK와 경합해 스크립트 실행 순서로 움직이거나 움직이지 않거나 하고 있는 것 같다. SmoothJoint의 ScriptExecutionOrder를 FinalIK보다 나중에 움직였다. VRIK의 FixTransform 기능이 머리 흔들림을 멈추는 느낌 - 해양 프로그램 (@kaigyoPG) 2018년 1월 30일
거의 이것과 같은 내용이었습니다.
Reference
이 문제에 관하여(VRIK(FinalIK)를 적용하면 VRM의 흔들림(VRM Spring Bone)의 움직임이 이상해질 때의 대처), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nkjzm/items/57d6fe67eb35abc9eb4e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)