가끔 프플방 돌아다니다 보면
처음 보는 사람인데 투시 들이대면 좀 뭐라고 할 수가 없는 사람들을 위해
투시의 기본 원리와 그를 막는 방법을 아주 간단히 설명 해보고자 합니다 ...
일단 여기 기본적인 아바타가 있습니다.
아바타의 옷 구조는
몸 -> 수영복 -> 교복 상의 순으로 이루어져 있죠?
게임 내에선 이 옷들의 순서를 보여주는게
바깥에만 입힌다고 되는 것이 아니라 '렌더큐'라는 정의에 의해 들어가게 됩니다.
기본적으로, 불투명한 물체의 경우
2000
반투명의 경우 2450 정도가 시작입니다.
(월드 스카이박스는 1000?인가 1200인가?)
그러면 그게 무엇을 의미할까요?
밖에 나와있는 교복 상의를 극단적으로 렌더큐 1500까지 내려보도록 하겠습니다.
기본 의상의 경우 렌더큐 2000~2450 정도가 할당되어 있습니다.
몸이 투시되는 정도를 넘어서
의상 뒤의 머리카락까지 뚫리고 투명인간이 된 것을 볼 수 있습니다.
즉, 겹쳐져있는 경우 어떠한 경우에서든
'렌더큐 숫자가 낮은 것 먼저' 렌더 된다 라고 보시면 되겠습니다.
보통의 의상의 경우
투명한 부분이 2450 정도 되고,
몸은 불투명 마테리얼이기 때문에 2000의 렌더큐를 가지고 있어서
이를 적절히 설정해서 의상 부분만 날아가게 한다면
아래와 같이 몸만 남겨놓고 의상을 지우는게 가능해집니다.
가끔 그러는 분들이 있어요.
"어차피 Transparent 마테리얼 아니면 안 뚫리는거 아님?"
아닙니다 ~
렌더큐 자체는 Opqauq도 당연히 무시하기 때문에
배열만 잘 해주면 당연히 Opqaue인 마테리얼도 뚫리게 됩니다.
따라서 이를 막기 위해선
근본적인 해결책이 두가지가 있습니다.
1. 대부분의 의상이 2000 초과로 구성되어 있기 때문에 투시는 렌더큐 약 2000 정도를 상정하여 만들어진다.
-> 2000 초과의 모든 마테리얼은 투명 상태가 된다.
-> 바디 자체도 2450 정도까지 올려버려서 투시로 보면 아예 투명인간이 되어버리는 방법
주의: 2500인가 넘으면 해당 마테리얼의 경우
VRChat 카메라의 초점 기능을 사용할 수 없습니다. 카메라에도 렌더 기능이 있기 때문에...
2. 2000 초과의 마테리얼을 지우도록 설계가 되어있다?
-> 모든 옷들을 렌더큐 2000 미만으로 만들어버리면 2000 초과를 상정하고 만들어진 투시의 경우 아무런 효과가 없다.
주의: 1500인가? 그 아래로 내려버리면 스카이박스보다 렌더큐가 낮아지기 때문에 월드의 모든 사물을 관통하고 배경이 보이는 문제가 있으므로
적당히 1900 ~ 정도 쯤으로 내릴 것.