반응형

원문 : http://www.hourences.com/book/tutorialsue3mated3.htm

정보
소개 : 세번째 메트리얼 튜토리얼에서는 UE3 메트리얼에디터에서 몇가지 랜덤 사례를 보여줍니다. 자세한 설명을 이론이 아니라 실제 사용합니다
대상 : 언리얼 엔진 유저
플랫폼 : 언리얼 엔진 3
마지막 업데이트 : 2007년 9월
관련 링크 : 메트리얼에디터1
 메트리얼 에디터2
 물 튜토리얼 1 - 외부
 물 튜토리얼 2 - 내부
 Material Expressions

소개
하나의 속성을 가지고 연습하면 복합적이고 기술,이론적인 설명으로 인하여 하나의 속성을 연습을 통해 빨리 배울수 있으며 어떻게 그들을 만드는지에 대해 예제를 제공합니다.
*** 그냥 연습하는게 빨리 배울수 있다는 이야기 같습니다. 중요한 내용은 아니니 패스..-_-;;***

예제
메트리얼 Instances
빠르고 쉽게 기존의 메트리얼과 유사하고 비슷한 메트리얼을 셋업 하지 않고 만들때 메트리얼 인스턴트가 사용할 수 있습니다.
*** 이런식의 표현은 정말 우울하네요 뭐이리 꼬아 놓았는지*****


재질 인스터스를 사용하게 되면 재질을 구성하기 위한 전체적인 셋업 과정없이 쉽고 빠르게 변화를 줄 수 있습니다.
부모-자식 간의 관계설정을 통해 원래의 재질 정보를 그대로 계승했기 때문입니다.
이러한 방법의 가장 큰 잇점은 부모가 되는 재질 정보를 수정하거나 바꿨을때 번거로운 추가 작업없이 그대로 자식이 되는 재질들도 따라서 바뀌기 때문입니다.
*** 부가인생님이 수정해 주셨습니다***
설정은 매우 간단합니다. regular 메트리얼을 만드는 설정은 아래의 예제와 같습니다

사용자 삽입 이미지

텍스쳐 샘플에서 오리지날 텍스쳐에 블루 색을 증가 시킵니다. 특별한것은 Constant3Vector 를 사용하지 않았다는것에 있지만, Vector Parameter 를 사용했습니다. 모든 Parameter의 수치를 조정하여 인스턴스 메트리얼을 변화 시킬수 있습니다. Regular expressions 는 사용될수 없습니다
Vector Parameter 의 Parameter Name를 ("tutorialexamplename")으로 하고 색상을 파란색으로 설정합니다.메트리얼 에디터를 닫으신후 MaterialInstanceConstant 를 생성합니다.(생성한 매트리얼을 오른쪽 클릭-> New MaterialInstanceConstant).

더블클릭하여 세부 내용을 보시면 아래의 그림과 같이 보여질것입니다
사용자 삽입 이미지

Vector Parametervalues 를 변경하여 새로운 매트리얼을 생성할수 있습니다.
ScalarParameter 와 TextureParameter 도 비슷하게 작동 합니다.
***설명하자면 약간씩 다른 색의 매트리얼(원본은 같은)을 만들고자 할때 텍스쳐를 따로 만드는것이 아니라.벡터 파라미터 값을 변경하여 새로운 매트리얼을 쉽게 만드는것입니다***

거리에 따라 변하는 매트리얼
PixelDepth 를 사용하여 카메라가 가까이 오면 fade out 되는 메트리얼을 만들수 있습니다.이것은 detailtexturing 나 macrotexturing 보다 well 합니다.***좋다는이야기인지 안좋다는건지...well이 좋다는 의미던가요?*** 이 메트리얼의 속성에서 Translucent 로 설정해 주셔야 합니다
사용자 삽입 이미지

거리에 따라 변하는 매트리얼을 통해 보이는 가짜 포그
DestDepth 를 사용해 매트리얼을 통해 보이는 가짜 포크를 만들수 있습니다.거리에 따른 색상은 Constant3Vector 에 의해 결정됩니다. Constant 와 DestDepth 로 거리를 조정할수 있습니다.이것은 물표면에서 큰효과를 보일수 지만,플레이어가 안에 들어갈수 없습니다.
이 메트리얼 또한   Translucent 으로 랜더링 해야 합니다
사용자 삽입 이미지

Deriving Specularity of a Diffuse Texture
***디퓨즈 텍스쳐로 스펙큘러를 얻어내기 인데 맞는지 모르겠네요***
speculatity 를 추가적으로 작업하지 않고 디퓨즈를 사용하는 것이 가능합니다. 종종 아티스트가 가져올 별도의 specularity 텍스쳐는 파일 및 메모리 크기를 늘리는데 이것은 정말 필요하지 않습니다.특히 tilting 텍스쳐의 경우입니다

이것은 블랙과 화이트의 specularity 텍스쳐를 모두 사용합니다. 나의 생각으로는 세미 desaturated 텍스쳐를 중간에 사용합니다.
이 예제에서도 그것을 보여주고 있습니다
사용자 삽입 이미지

이 디퓨즈 텍스쳐는 contrast 의 영향을 받으며, 이것은 contrast와 Desaturation 의 영향을 받아 대조를 더합니다. 만약 satisfactionary 결과를 좀더 구체적으로 하려면 power 수준을 변경하여 표현할수 있습니다
*** 이부분은 정말 뭐라고 말하기가 여려운 부분이네요 밑에 있는 Constant가 흰색이고 Desaturation 부분이 검은색부분을 담당하여 준다고 하면 좀 쉬우려나요?ㅎ_ㅎ;;***

Parallax Map 에서의 메모리 절약 - Technique by Aevirex
대개의 Parallax map은 하나의 embedded 로 노말맵 안에 알파맵이 들어가 있거나 separate 텍스쳐를 import  합니다. 두 방법은 더 많은 콘텐츠를 로드 합니다. parallax map을 포함하는 RGB체널이 들어간 노말맵을 사용하여 GPU power에 추가되는 expense 제거. separate를 필요치 않는 3의 택스쳐를 이용한 매트리얼이 필요합니다, 또는 메모리 문제가 강화된 알파채널이 들어간 노말맵을 사용합니다
***이부분은 정말 뭐라고 해석을 해야 막막하네요 parallax map 이라는건 정말 생소하군요***
Parallax Map 이 포함된 블로 채널 노말맵 을 포토샵에서 배치합니다. 당신은 블루채널을 BumpOffset 으로 에디터에 가져옵니다. 당신은 노말맵없이 블루채널을 했지만, 편집기에서 노말맵을 다시 얻으려면 편집기에서 재구성해야 할것입니다.또는 마지막으로 오는것을 close 합니다. 빨간색과 초록색을 수정하여 채널과 함께 블랜딩하여 원래의 블루채널을 재현합니다. 빨간색과 녹색의 조합으로 블루채널을만드는것에 대한 정보가 있습니다
사용자 삽입 이미지
무모하게 일부 메모리 및 디스크 공간을 절약하기 위해, 그리고 당신의 레벨이 다운로드 하는데 300MB라면, 이 기술은 디퓨즈에서 specularity 를 유도 합니다.매트리얼 튜토리얼 두번쩨에서 설명한것 처럼. 레벨에서의 파일사이즈를 매우 작게 할수 있습니다. 4개의 풀 텍스쳐가 필요한것인데. 이것은 단지 2개를 씁니다. 절반의 파일사이즈입니다.
***파일사이즈를 작게 한다는 내용인듯 한데 용어가 어렵네요...***

CellShading- Technique by Aevirex
CellShading 은 아주 복잡한 설정을 합니다. 이 매트리얼은 기본적으로 만들어진 두개의 큰그룹으로 나뉩니다.이 아이디어는 환경조명 정보(포지션) 그리고 모서리 에 일치하는 정보입니다.이와같은 매트리얼은 오직 lit viewport에 표시 됩니다
*** 셀세이딩이라고 들어는 봤는데 구체적으로 어떤것인지 좀더 찾아봐야 겠습니다***
사용자 삽입 이미지
사용자 삽입 이미지
최상의 결과를 위해서는 lightingmodel을 mlm_nondirection 으로 해야 합니다.

***후....여기까지 어느정도 매트리얼 에디터에 대한것이 완성된것 같습니다..일도 하고 이것도 하려니 아무래도 시간이 좀 많이 걸리는듯 합니다. 영어 울렁증은 안고쳐 지는군요. 오시는 분들 뭔가 궁금하시거나 왜 이건지에 대한 말씀들은 너무 없으신거 같슴다....(해석을 열라 잘했....퍽퍽)***
반응형
반응형

원문 : http://www.hourences.com/book/tutorialsue3mated2.htm
튜토리얼 - UE3 MATERIAL EDITOR - PART 1
요약
소개 : 두번째 메트리얼 에디터에 집중하여 UE3 메트리얼 에디터에 대한 고급 예제를 설명할것입니다. 설명을 이론적으로가 아니라 실제 사용합니다
대상 : 언리얼엔진 사용자 - 초보자와 중급
대상 : 언리얼엔진 사용자 - 매우 기초 스킬이 필요
플랫폼 : 언리얼엔진 3
관련 링크 : 메트리얼에디터1
 메트리얼 에디터3
 물 튜토리얼 1 - 외부
 물 튜토리얼 2 - 내부
 매트리얼 Expressions
소개
이 튜토리얼에서는 첫번째 메트리얼을 가지고 약간더 복잡한예제를 함께 할것입니다. 복잡할수록 당신은 복잡한 기술과 이론적인 속성에 대한 이해가 빨리 될수 있습니다.
예제
핫스팟 사이즈
Specularity hotspot 을 변화시키는 것은 매우 쉽게 됩니다

사용자 삽입 이미지

그림에 표시된데로 연결하기만 하면 Comstant 노드를 SpecularityPower에 연결하고 그값을 변경합니다. 0응 매우 넓은 핫스팟을 보여주며, 255는 매우 미세하고 날카로운 핫스팟이 표현됩니다.리얼리티한 매트리얼을 만들기 위해서는 강도와 크기는 중요합니다.금속은 매우 강한것이 아니라 작은 집중 강조가 필요하며 목재에서는 매우 큰것이 아니라 매우 부드러운 특징을 가지고 있습니다. Specularity를 조정하면 매우 현실적인 매트리얼을 만들수 있습니다

Making Something Wave
알고 계시겠지만 UE3에서는 진동효과가 있습니다***택스쳐 흔들림을 말합니다*** 만약 당신이 뭔가에 웨이브를 주고 싶다면, 예를 들어 잔디 매트리얼같은. 당신은 최대 시간과 사인을 연결하는 표현을 하면됩니다. 앞서 설명한 대로, 시간은 사인과 결합하면 됩니다. 이건은 기본적 방향으로 지속적으로 플립애니메이션이 됩니다
사용자 삽입 이미지
***에 흔들리는 효과인데 위아래로 움직이게 된다면. 사인함수에 시간 값을 적용하여 해당 값을 가지고 위아래로 움직이는 효과를 표현하는 것입니다***

Simulating Motion
또 다른 번진방볍은로 시뮬레이션 모션은 displace 의 일부가 스크롤 그라데이션이나 다른 패턴을 사용하는 메트리얼입니다.그라데이션을 몇초마다 스크롤 하며 표면모양을 흔들며 이동하고 내려갑니다. 이기술은 나무잎이나 잔디를 만들수 있고 파도나 공기 물등의 것들을 위해 유용한 합니다.
예를 들어 플래그 및 기타유형의 섬유를 나타내고자 할때 이기술은 매우 훌륭합니다
사용자 삽입 이미지
이 예제에서 BumpOffset bump suface으 정보를 사용하여 최고의 heightmap을 할수 있습니다. 이경우에는 heightmap은 간단한 그라데이션이 지속적으로 함께 스크롤됩니다. 좀더 다양한 구름 패턴이나 swirlt 그라데이션이 있습니다. 더나은 결과를 제공합니다. 두개의 다른 그라디언트를 적용한것을 고려할수있습니다 . 현재는 임의의 결과 입니다
bumpoffset 노드는 heightratio 속성을 제어하여 최대 높이를 늘리거나 줄일수 있습니다. 그것은 상당한 효과를 볼수 있습니다

Fading two textures
Sine 사용 - 시간을 사용하여 지속가능한 텍스쳐 하나에 페이드 효과를 적용하여 시뮬레이션과 같은 색상과 강도를 변경할수 있습니다
사용자 삽입 이미지
사인을 대체해서- 시간을 하나의 vectorparameter 하면  일부 트리거를 통하여 kismet 스크립트로 조작할수 있습니다

Increasing a texture's bloom strength
(텍스쳐의 bloom강도 높이기)
A텍스쳐에 bloom 을 주었는데 충분하지 않을경우, 메트리얼 에디터에서 당신은 강도를 수정할수 있습니다. Multiply 항목을 추가하고 Constant 항목을 추가합니다. Constant 항목의 보통 최대값은 1.0000000 이상으로 할수 있습니다. 아무것도 나타내지 않기 위해서는 1.0000000을 하지 않습니다. 아무것도 나타내지 않기 위해서는 Constant에서 1.000000값은 흰색이지만 bloom 에 영향을 미칠것입니다. bloom 증가는 텍스쳐에 라이트와 같은 효과를 주는 램프와 같습니다
사용자 삽입 이미지

Automatic Fade Out(자동 페이드아웃)

ue3 에서는 모서리 근처에 자동으로 표면을 자동으로 사라질수 있는 아주 멋진 그래픽기능을 제공합니다. 파티클에 모두 사용할수 있습니다.(잘 알려진 문제를 방지합니다. 지오메트리에서 디스플레이 될때 컷되는)또는 물이나 안개와 같은 것들에 대한 더 많은 고급suface를 할수 있습니다. 부드럽고 좋은 표면의 물은 표면에 엣지 부분에서 다 많은 모션을 많이 합니다. 대신 모서리에 있는 알파 레이어등을 수동으로 제어했던것을 이제 엔진에서 처리할수 있습니다
사용자 삽입 이미지

이 메트리얼은 사라질때 다른 오브젝트 입니다. 페이드아웃의 강도는 DepthBiasedAlpha의 세부 설정에 있습니다. 저의 예제에서는 BiasScale 는 128입니다.
이 매트리얼은 translucent로 설정해야 합니다. 왼쪽에 있는 메트리얼을 선택하시고 아래 등록정보를 보시면 랜더링 모드가 있습니다. 나의 첫번째 메트리얼을 참조하여 튜토리얼을 보시면 투명한 매트리얼을 어떻게 설정하는지 나와있습니다
***
사용자 삽입 이미지
***

Flickering Texture
(깜빡이는 택스쳐)
당신은 택스쳐를 만들수 있습니다, 또는 일부 마스크나 파츠를 빼낼수 있습니다. 깜빡이거나 펄스형식이 될수 있습니다. 이것은 큰 가짜 번개 이팩트, 별 비슷하게 만들기, 램프 혹은 기타 유사한 표면등을 만들수 있습니다.이것은  Sine 와 Time으로 노느를 연결하여 만들수 있습니다
Time 노드의 시간으로 Sine 노드의 속도를 결정합니다. 속성을 설정하여 깜빡을 조정할수 있어야 합니다.1.0은 기본입니다, 낮은 깜빡임 속도를 보여 주고 숫자를 올리면 느리게 됩니다
내 예제를 포시면 Add node에 Constant 1.125 노드와 함께 시간 효과가 함께 링크되어 있습니다. 이 결과는 다음을 보정(혼합된 알파를 사용한 택스쳐)실제 텍스쳐보다 상단에 있습니다. 이 경우 결과는 매우 추악합니다 그러나 같은 셋업 으로 작은 라이트를 이용한 디퓨즈 텍스쳐를 입히고 라이트를 올리면 매우 좋아진다.
사용자 삽입 이미지

Static reflection/Cubemap
가짜 싸구려 반사효과에 정적 큐브맵은 사용된다.Generic 브라우져로 이동하여 상위 메뉴의 File->New 를 클릭한후 이름과 패키지를 적는다 . Factory 의 드롭다운 리스트에서 CubeMap을 선택합니다. 더블클릭하여 해당 속성창을 여신후 Generic 브라우져에서 6개의 이미지를 선택하여 채우시면 됩니다
사용자 삽입 이미지
그후 속성창을 닫으신후, 새로운 매트리얼을 생성하고 매트리얼 에디터를 열어 수정합니다. TextureSample 로 방금 만든 큐브맵을 Generic 브라우저에서 선택하여 TextureSample 에 Cubemap을 적용합니다
마지막으로 cubemap 이 카메라 움직임에 응답하기 위해 CameraVector 를 표현하고 그림과 같이 연결합니다
스크린샷을 보십시오
사용자 삽입 이미지
또한 이것으로 CameraVector대신  ReflectionVector 를 사용할수 있습니다. 두 유형의 차이는 매우 작습니다.
ReflectionVector 는 사용하는 축이 다릅니다


*** 예제로 쓰이는 데이터를 올립니다.. 그라데이션데이터가 없어서 아주그냥 고생했....다운 받으신후 Generic 브라우저에서 오픈하시면 됩니다. 메트리얼 데이터는 삭제하고 텍스쳐들만 올립니다***
반응형

+ Recent posts