모바일에서 사용하는 쉐이더들에 대한 총 집합 설명입니다. 일종의 규약일 수도 있겠지요.
첨부터 잡고 갔으면 좀 더 편했을텐데 아시잖습니까 ;;; 그게 그렇게 할 수가 없었어요
어쨌거나 지금에서라도 잡고 갑니다.
참고로, 기존에 제작된 모든 씬에서 원터치로 일정 쉐이더를 일정한 쉐이더로 교체해주는 스크립트가 이미 만들어져 내장되어 있습니다. 기존에 작업하신 것들을 모두 다 다시 해야 하나..? 라는 걱정은 안하셔도 됩니다 :) 간편하게 바꿀 수 있어요.
쉐이더를 만들때마다 일일히 장비에 돌려서 퍼포먼스 테스트를 해보는 것은 역부족이었습니다. 때문에 감각적으로 (…) 모바일용으로 맞겠다 싶게 만들어 놓고 추후 수정하는 방법으로 하겠습니다. 즉 이제부터는 테스트가 진행될 예정입니다.
사용하실때 편의를 위해서, (Terrain쉐이더를 제외한 ) 모든 쉐이더를 Mobile 폴더로 모아 놓았습니다. 이제부터 이 안에 있는 쉐이더만 사용하시면 됩니다.
내일 뒤의 접미어 _ipad 를 전부 _mobile 로 바꿔 놓겠습니다.
==============================================================================================================
모바일 쉐이더 정리
일반적으로 사용하실 모바일 쉐이더는 아래와 같습니다. 다른 쉐이더가 필요하시면, 요구해 주세요. 옮겨드리거나 만들어 드립니다. (유료아이템으로 판매예정중 … )

위에서 블럭친 쉐이더들이 삼품 모바일에서 쓰이는 쉐이더들입니다. 몇몇 쉐이더는 기본내장되어 있는 관계로 건드리질 못했습니다. 깔끔하게 안보이게 하고 싶었는데…
하나하나 설명을 드리지요. 무거움 설명도 드립니다.
대부분 매우 가볍습니다만..
Mobile / Background
- 1g (매우 가벼움. g 는 제가 맘대로 만든 쉐이더의 무게 용어)
- Z write 를 하지 않기 때문에 소팅이 엉망이 됩니다.
- 기본 내장되어 있는 쉐이더입니다.
- 라이팅 계산도 무시합니다. 즉 배경용으로만 사용되어야 할 쉐이더입니다. 스카이박스 같은..
Mobile / Bumped Specular
Mobile / Bumped Specular (1 directional light)
- 노말맵이 사용되는 쉐이더이지만, 현재 우리의 메인 라이트가 not important 모드 - 버텍스라이트 전용 모드 - 로 이루어져 있기 때문에, 사용해도 효과가 나오지 않습니다. 때문에 사용금지.
Particles
각종 이펙트를 위한 쉐이더가 있습니다만, 동일한 쉐이더를 따로 제작해서 드렸기 때문에 사용할 필요가 없습니다.
Skybox
6개의 텍스쳐를 넣어 스카이박스를 만드는 쉐이더입니다만, 역시 Background 쉐이더를 사용하면 되기 때문에 패스.
Mobile / TKBG_Mineral_ipad
- 실제 사용되는 쉐이더중 가장 무거운 쉐이더입니다. (쉐이더만으로는 심지어 캐릭터보다 더!) 약 5g 으로 쳐드리죠.
- 외각이 일정 색상으로 반짝반짝 빛나며 애니메이션도 됩니다. 투명은 인식 안하고, 알파 채널은 외각 빛나는 부분을 컨트롤할때 사용됩니다.
- 광산이나, 특별히 이뻐야 할 인상적인 오브젝트에 사용하시면 되겠습니다. 단 폴리곤이 좀 있어야 외각이 제대로 나옵니다.

Mobile / TKBG_Water_ipad
물용으로 제작된 쉐이더입니다.
- 꽤 가벼운 편이며, 약 2 g 정도로 쳐드릴 수 있습니다.
- 텍스쳐는 한 장사용하고, 흘러가는 기능은 그대로입니다.
- 투명도를 조절할 수 있는 알파 조절자가 있습니다.
- 추가로, 버텍스 칼라로 투명도를 추가로 조절할 수 있기 때문에 부드럽게 사라지는 물도 만들 수 있습니다. 버텍스 칼라를 검은색으로 칠하면 사라집니다.

TKEffect 폴더 ===========================================
Mobile/TkEffect/TkEffect_FlowAdd_ipad
- 모바일용 플로우 쉐이더입니다. 대부분의 기능이 동일하게 들어가 있어서, 현재 제작된 모바일 쉐이더중에서는 상대적으로 무거운 편입니다. 그래도 파티클을 쓰는 것 보다는 훨씬 낫지만 말이죠. 약 4g 정도로 볼 수 있겠습니다.
- 두 이미지를 합해서 밝게 만들어 줍니다. 두 이미지는 각각의 UV 를 가지고 있습니다.
- Rotation 기능도 가지고 있고, 버텍스 알파에 의한 투명도 기능도 있습니다. 거기에 tint 칼라까지 있으니… web용과 거의 같은 기능을 가진 쉐이더입니다. 상대적으로야 무겁지만, 걱정하실 필요는 없겠습니다.

Mobile/TkEffect/TkEffect_FlowMulti_ipad
- 두 이미지를 합하여 어두운 색으로 만들어 줍니다.

Mobile/TkEffect/TkEffect_FlowStandard_ipad
- 두 이미지를 합하여 보통의 결과를 내어 놓습니다.

Mobile/TkEffect/TkEffect_ParticleAdd_ipad
- 이펙트용 기본 쉐이더로, 이펙트 쉐이더중 가장 가벼운 종류입니다. 2g 정도.
- Add모드로, 밝아집니다.
- 알파가 아니라 색상으로 투명도를 조절하기 때문에 TintColor로 전체 투명도를 조절할 수 있습니다.

Mobile/TkEffect/TkEffect_ParticleMulti_ipad
- 위와 마찬가지지만, 어두워지는게 특징입니다.
- 역시 알파가 아닌 색상으로 조절합니다.

Mobile/TkEffect/TkEffect_ParticleStandard_ipad
- 위 두 개와 다른점은 알파채널로 투명도를 조절한다는 것입니다.
- 밝아지지도 않고 어두워지지도 않아서, 연기같은 간단한 이펙트를 만들때 주로 사용합니다.
Mobile/TkMobile_Char_ipad
- 캐릭터용이라 매우 무거워보이지만, 사실은 가장 가볍습니다. 1g .
- 빛에 영향을 받지 않는 Unlit 쉐이더로 만들어져서, 주변의 라이트에 영향을 받지 않고 단지 텍스쳐만 보여집니다.
이것은 어차피 라이트를 거의 쓰지 않는 모바일의 특성에 맞추기 위해서입니다. 캐릭터도 매우 작고 말이죠. - 알파도 사용하지 않고, 빛도 받지 않는 초 간단한 쉐이더.

Mobile/Unlit_Alpha_ipad
- 역시 매우 가벼운 쉐이더입니다. 아이폰에서는 알파에 대한 부담이 그리 크지 않은가 보네요. 1g
- Unlit 쉐이더는 라이트 계산을 전혀 하지 않아서, 매우 가볍습니다.
- 알파 블렌딩 쉐이더입니다.

Mobile/Unlit_Cutout_ipad
- Cutout 은 Alpha Testing과 같은 말입니다. 칼같이 알파를 떨어뜨립니다.
- 역시 가볍습니다. Unlit 이므로 라이팅 계산도 하지 않구요.

Mobile/Unlit_ipad
라이팅 계산을 하지 않고 텍스쳐만 보여주는 쉐이더입니다.
가장 가벼우며, 사실상 지금은 캐릭터 쉐이더와 완전히 동일합니다.

Mobile/Vertexlit
- 버텍스 라이팅 쉐이더입니다. 라이트 계산이 들어가기 때문에 약간 무겁지만, 그렇게 심하진 않습니다. 2g
- 빛 받는 느낌을 주어야 하는 오브젝트에는 이걸 사용하시면 됩니다.
- 뒤에 _ipad 접미어가 붙지 않은 이유는, 제가 만든게 아니라 기본 내장되어 있는 쉐이더이기 때문입니다.
- 그래서 전 건드린게 없어용.

Mobile/Vertexlit_Alpha_ipad
- 모바일 쉐이더용 버텍스라이트에서 알파블렌딩이 지원됩니다.
- emittance 가 있어서, 과하게 어두워지는 부분을 좀 밝게 한다던가 발광하게 할 수 있습니다.
Mobile/Vertexlit_Cutout_ipad
- 모바일 쉐이더용 버텍스라이트에서 알파테스팅이 지원됩니다.
- emittance 가 있어서, 과하게 어두워지는 부분을 좀 밝게 한다던가 발광하게 할 수 있습니다.
즉 건물이나 오브젝트를 제작하실 때에는 주로 Mobile/Vertexlit 쉐이더를 메인으로 사용하십시오.
만약 건물이 좀 투명한 느낌이라 살짝 빛나게 하고 싶으시거나 어두운 영역을 없애고 싶으시다면
Mobile/Vertexlit_Alpha_ipad 나 Mobile/Vertexlit_Cutout_ipad 쉐이더를 사용하셔서 Emittance 값으로 조정하십시오.
깃발이나 나무 등에도 위 두 개의 쉐이더를 사용하시는게 좋습니다.
만약 완전히 빛 방향과의 영향을 없애고 텍스쳐만으로 보이고 싶으시다면 Unlit로 시작되는 쉐이더를 사용하십시오. 이 쉐이더들은 철저하게 빛과는 상관없이 텍스쳐의 색상을 보여줄 것입니다. 아마도 갈대같은 식물류에 주로 사용될 것입니다.
이펙트에 사용되는 가장 기본적인 쉐이더는 Mobile/TK_Effect/TkEffect_ParticleStandard_ipad 일 겁니다. 이미지의 알파를 이용해서 투명하게 배경과 합성되지요.
그렇지만 불이나 마법 같은 고급 이펙트를 만들기 위해서는 TkEffect_ParticleAdd_ipad 나 TkEffect_ParticleMulti_ipad 쉐이더를 이용해서 밝게 혹은 어둡게 만들어 주어야 할 것입니다. 이 두 쉐이더는 알파를 사용하지 않습니다.

