원문: https://docs.vrchat.com/v2019.1.4/docs/avatar-dynamic-bone-limits
Dynamic Bone은 고성능을 요구하는 상당히 무거운 컴포넌트입니다. 그리고 또한 아바타 제작자들이 남용하기 쉬운 것이기도 합니다. VRChat에서는 사용자가 아바타에 허용되는 Dynamic Bone의 개수를 제한하는 방법을 제공합니다.
Dynamic Bone 제한 온/오프(Toggling the Dynamic Bone Limits)
Safety 메뉴의 우상단에 위치한 Performance Options 메뉴를 통해 Dynamic Bone 제한을 켜고 끌 수 있습니다. UI의 위치는 아직 확정된 것이 아니며 이후 추가 될 성능 옵션이 있을 때 변경될 수 있습니다.
Performance Options를 클릭하여 성능 옵션창을 활성화하면 현재 사용가능한 옵션들에 대한 세부 사항을 확인할 수 있습니다. 현시간부로는 다이나믹 본 제한 시스템만 제공되고 있습다.
Limit Dynamic Bone Usage를 클릭하여 해당 기능을 켜고 끌 수 있습니다. 창을 닫으면 변경사항이 적용되며 기존의 Safety 시스템을 변경 했을 때처럼 아바타를 다시 로딩하는 과정을 거쳐야 합니다.
또한 성능 옵션창 우측을 통해 현재 설정값을 확인할 수 있으며 View Documentation 버튼을 눌러서 지금 이 안내 페이지에 접속할 수 있습니다.
값 이름 |
설명 |
기본 값 |
Max Affected Transforms |
만약 아바타가 설정된 값보다 Max Affected Transforms가 더 많으면 모든 Dynamic Bone과 Dynamic Bone Collider가 아바타에서 비활성화됩니다. |
32 |
Max Collision Checks |
아바타 Dynamic Bone Collider Checks가 설정값보다 더 크면 모든 Dynamic Bone Collider 가 아바타에서 비활성화됩니다. |
8 |
위 값들이 정확히 무엇을 의미하는지에 대한 세부 설명은 아바타 성능 랭킹 시스템에 대한 개발자 도큐먼트를 참고하십시오.
아바타 개발자가 이 제한을 넘어서 다른 사람들에게 최대한 많이 기본 값으로 다이나믹 본을 적용한 아바타를 보여주고 싶다면, 아바타 최적화 팁을 확인하기 바랍니다.
Dynamic Bone 제한 수정하기 (Modifying the Dynamic Bone Limits)
사용자가 원한다면 다이나믹 본 제한을 사용자 정의할 수 있습니다. 이 값을 수정하는 것은 아바타의 파티클 시스템 제한에서의 작업과 유사합니다. 이 설정은 같은 파일에서 동작합니다.
재시작 필요
이 값을 수정하는 것은 효과를 적용하기 위해 게임 재시작이 필요합니다.
|
%AppData%..LovalLowVRChatrchat 경로상에 있는 conjig.json 파일을 덧씌우거나 수정하면 기본 값을 무시할 수 있습니다.
파일이 존재하지 않으면 config.json 이름의 파일을 새로 만드십시오.
파일 확장자가 txt 가 아닌 json 임에 유의하십시오. Notepad++를 통해 파일을 수정하는것을 권장합니다.
다이나믹 본 제한 구성 옵션 (Dynamic Bone Limits Configuration Options)
아래의 값들은 다이나믹 본 제한 시스템에서 사용자가 변경할 수 있는 변수들입니다.
완전히 비활성화 하기
값을 0으로 설정하면 아바타의 모든 Dynamic Bone 관련 컴포넌트가 비활성화됩니다.
|
변수명 |
설명 |
기본 값 |
dynamic_bone_max_affected_transform_count |
Dynamic Bone Transforms 최대값을 바꿉니다. 이 설정값을 초과하는 아바타는 모든 Dynamic Bone과 Dynamic Bone Collider가 비활성화됩니다. |
32 |
dynamic_bone_max_collider_check_count |
Dynamic Bone Collider Transform Check 최대값을 바꿉니다. 이 설정값을 초과하는 아바타는 모든 Dynamic Bone Collider가 비활성화됩니다. |
8 |
설정 예시
설정에 사용되는 config.json 파일의 에시들입니다. 이것들을 복사해서 쓸 수도 있습니다. 이 설정을 적용하기 위해서는 VRChat을 재시작해야 한다는 것을 명심하세요.
만약 모든 다이나믹 본을 비활성화 시킨다면 다음과 같이 하면 됩니다. 아바타 파티클 시스템 제한의 설정은 무시할 수 있다는 점을 상기하기 바랍니다.
JSON |
{ "dynamic_bone_max_affected_transform_count" : 0, "dynamic_bone_max_collider_check_count" : 0 }
|
아바타 파티클 시스템 제한을 사용하고 있는 사용자라면 파일이 다음과 같이 보일 것입니다.
JSON |
{
"betas": [
"particle_system_limiter"
], "ps_max_particles": 50000, "ps_max_systems": 200, "ps_max_emission": 5000, "ps_max_total_emission": 40000, "ps_mesh_particle_divider": 60, "ps_mesh_particle_poly_limit": 50000, "ps_collision_penalty_high": 50, "ps_collision_penalty_med": 30, "ps_collision_penalty_low": 10, "ps_trails_penalty": 10, "dynamic_bone_max_affected_transform_count" : 0, "dynamic_bone_max_collider_check_count" : 0
}
|