찾기
내용으로 건너뛰기
추적
문서의 이전 판을 선택했습니다!
저장하면 이 자료로 새 판을 만듭니다.
미디어 파일
======Performance of Unity shaders====== 사용자의 게임의 전반적인 성능에 영향을 줄 수 있는 몇 개의 요인들이 있습니다. 이 페이지는 [[built-in_shader_guide|Built-in Shaders]]를 위한 성능 고려사항에 대해서 자세히 이야기 할 것입니다. 쉐이더의 성능은 주로 두 가지에 의존합니다: 쉐이더 그 자체와 어떤[[RenderingPaths|Rendering Path]]가 프로젝트 또는 특정 카메라에 의해 사용되어지 입니다. 사용자의 쉐이더를 쓸 때 성능적인 팁을 위해서 [[unity:SL-ShaderPerformance|ShaderLab Shader Performance]] 페이지를 참고하시기 바랍니다. =====Rendering Paths and shader performance===== Unity가 지원하는 렌더링 경로로부터 [[RenderTech-DeferredLighting|Deferred Lighting]]와 [[RenderTech-VertexLit|Vertex Lit]] 경로는 가장 예측 가능한 성능을 가집니다. Deferred lighting에서 각각의 물체는 어떠한 조명이 그것에 영향을 주는 지 상관없이 일반적으로 두 번 그려집니다. 유사하게 정점 조명에서도 각각의 물체는 일반적으로 한 번 그려집니다. 따라서 쉐이더에서 성능의 차이는 주로 그들이 얼마나 많은 텍스쳐를 사용하는지 그리고 그들이 무슨 계산을 하는지에 달려 있습니다. ====Shader Performance in Forward rendering path==== [[RenderTech-ForwardRendering|Forward]] 렌더링 경로에서 쉐이더의 성능은 쉐이더 그 자체와 씬에서의 조명에 달려 있습니다. 다음의 섹션은 자세한 내용을 담고 있습니다. 성능적인 측면에서 볼 때 쉐이더는 두 가지의 기본적인 카테고리가 존재합니다. ''Vertex-Lit'' 그리고 ''Pixel-Lit''. Forward 렌더링 경로에서 ''Vertex-Lit'' 쉐이더는 항상Pixel-Lit 쉐이더보다 저렴합니다. 이러한 쉐이더들은 모든 조명을 한 번에 사용해서 메쉬 꼭지점에 기반해서 조명을 계산하는 것에 의해 작동합니다. 이것 때문에 그 물체위에 얼마나 많은 조명이 비추고 있는지 상관없이 그것은 한 번만 그려져야할 것입니다. ''Pixel-Lit'' 쉐이더는 그려진 각각의 픽셀에서 마지막 조명을 계산합니다. 이것 때문에 물체는 주변과 주요 방향의 조명을 얻기 위해서 한 번만 그려져야 하고 또한 그것 위에 빛나는 추가적인 각각의 조명을 위해서도 한 번만 그려져야 합니다. 그러므로 공식은 N 번의 렌더링 패스이고 N은 물체위에서 빛나는 픽셀 조명의 마지막 갯수입니다. 이것은 명령을 처리해서 그래픽 카드로 보내고 또한 그래픽 카드 위에서 꼭지점을 처리하고 픽셀을 그리기 위해서CPU의 로드를 증가시킵니다. 스크린에서 Pixel-lit의 물체 크기는 그것이 그려지는 속도에 영향을 줄 것입니다. 더 큰 물체일수록 더 느리게 그려질 것입니다. 그래서 pixel lit 쉐이더가 성능 비용을 내나 그 비용은 몇몇의 훌륭한 효과를 허락합니다; 그림자, normal-mapping, 좋은 외관의 반사 하이라이트 그리고 조명 쿠키. 조명은 하나의 픽셀로 (“중요한”) 강요될 수 있고 또 꼭지점/SH (“중요하지 않은”) 모드로도 강요될 수 있다는 것을 명심하시기 바랍니다. Pixel-Lit 쉐이더위에서 빛나는 어떠한 정점 조명도 물체의 꼭지점 또는 전체 물체에 기반해서 계산될 것이고 픽셀 조명과 결합된 렌더링 비용이나 시각 효과로 더해지지 않을 것입니다. =====General shader performance===== [[built-in_shader_guide|Built-in Shaders]]로부터 그들은 증가하는 복잡성의 순서대로 대략 다음처럼 옵니다: * ''Unlit''. 이것은 조명에 의해 영향받지 않는 하나의 텍스쳐 입니다. * ''VertexLit''. * ''Diffuse''. * ''Normal mapped''. 이것은 Diffuse보다 좀 더 비용이 듭니다: 그것은 텍스쳐 (normal map) 하나를 더 추가하고 쉐이더 지시사항을 두 개 더 추가합니다. * ''Specular''. 이것은 반사 하이라이트 계산을 추가합니다. * ''Normal Mapped Specular''. 다시 이것은 Specular보다 비용이 조금 더 듭니다. * ''Parallax Normal mapped''. 이것은parallax normal-mapping 계산을 추가합니다. * ''Parallax Normal Mapped Specular''. 이것은parallax normal-mapping와 반사 하이라이트 계산을 추가합니다. 추가적으로 Unity는 "Mobile" 카테고리 아래에 모바일 플랫폼에 타겟 맞춰진 몇 개의 간단한 쉐이더가 있습니다. 이러한 쉐이더는 다른 플랫폼에서도 역시 작동합니다. 따라서 사용자가 그들의 간단한 기능으로도 괜찮다면 (예. 대략적인 반사의, 물질 당 색상 지원이 없는 등등), 그들을 시도해보는 것도 좋습니다! {{tag>유니티 unity}} * 출처: [[http://unitykoreawiki.com/index.php?n=KrMain.shader-Performance|유니티코리아위키]] (CC BY-NC-SA 2.0)
2+1?
이 필드는 비어 있도록 유지하세요:
저장
미리 보기
취소
편집 요약
참고: 이 문서를 편집하면 내용은 다음 라이선스에 따라 배포하는 데 동의하는 것으로 간주합니다:
CC Attribution-Noncommercial-Share Alike 4.0 International
연결문서
내장 셰이더(Built-in Shader) 가이드
유니티3D ( Unity3D )
재질들과 셰이더들(Materials and Shaders)
Bumped Diffuse
Bumped Specular
Diffuse
Parallax Diffuse
Parallax Bumped Specular
Specular
Vertex-Lit
28개 더 보기...
문서 도구
문서 보기
이전 판
연결문서
맨 위로
다크 모드로 보기
☀️
Toggle Menu
유니티3D ( Unity3D )
너두 고쳐두 됩니다.
사이트 도구
최근 바뀜
미디어 관리자
사이트맵
사용자 도구
등록
로긴
최근 수정된 문서
misuse_topical5
노박
unique_items
dinner_bell
deputy_beagle
ratslayer
one_for_my_baby
alerio
power_fist
제거됨
fixer
climb_ev_ry_mountain
companion
[장비 분실]
crashed_vertibird
brotherhood_t-51b_power_armor
marco
i_forgot_to_remember_to_forget
cateye