추가 : 그리고 이건 유니티 2019 버전의 버그로 결론지어짐. 그리고 이것만이 문제가 아님 . 두둥.
float thisZ = LinearEyeDepth(projection.z / projection.w, _ZBufferParams);
값의 차이 .
이것은
#ifdef SHADER_API_D3D11
thisZ = thisZ;
#else
thisZ = thisZ*2;
#endif
해주자 거의 차이가 없어졌다. 뭐야.. 모바일에서 2만 곱해주면 된다고????
그리고 놀랍게도
float sceneZ = LinearEyeDepth(SAMPLE_DEPTH_TEXTURE(_CameraDepthTexture,
sampler_CameraDepthTexture, projection.xy / projection.w), _ZBufferParams);
의 차이는 거의 없었다. 이 공식은 건드릴 필요가 없다.
뭐야 이게..
그래서 위에처럼 *2 해준 것만으로 해결되었다.
기기마다 다를지 모르겠지만 일단 갤럭시 8에서는 위와 같은 문제가 있었고 , 저렇게 해결하였다.
반응형
'유니티 엔진' 카테고리의 다른 글
닥터 프로스트 배경작업을 위한 유니티 연구 이야기 (0) | 2021.09.16 |
---|---|
모바일에서의 알파 블렌딩과 테스팅 (1) | 2021.08.01 |
엔진버그. 터레인 에디터 문제 (0) | 2021.01.13 |
학생들을 위한 엔진기초 강의자료 모음. 비번은 카페 번호와 동일 (0) | 2021.01.09 |
유니티 특정 API 로 에디터 돌리기 실패시 팁 (0) | 2021.01.08 |
댓글