반응형

<마야 vray 재질, color space 비활성 해결법>

원하는 재질을 넣을 때, Base Color(=Diffuse Color)를 제외하고, Reflection texture 또는 glossiness, Bump texture 등

color space를 Raw로 바꿔줘야 하는데, 이때 비활성화돼있는 경우가 있다.

이를 해결하는 방법에 대해서 알아보자.

 

먼저! 모델링에 원하는 vray 재질을 넣어준다.

 Basecolor나 Reflection, Refraction, Bump, Normal 등 맞는 위치에 텍스쳐를 연결해 주도록 하자.

 

 

원하는 위치에 텍스쳐를 넣었는데

이때, Color space 가 비활성화 되있다면?

아래 이미지처럼 클릭해도 아무런 반응이 없는 상태가 된다.

 

 

Window → settings/preferences → preferences 클릭!

Preferences 창을 열어 준다.

왼쪽 Categories 메뉴에 Color Management 클릭!

<Color Management Preferences>

Enable Color Management 가 비활성화되어있는 것을 볼 수 있다.

이를 체크해서 활성화해준다.

 

 

다시 아까 비활성화되어있던 texture color space 창을 열어준다.

아래 이미지처럼 color space가 활성화되어 있음을 볼 수 있다.

sRGB라고 되어 있는 것을 클릭해서 Raw로 바꿔 준다.

 

반응형
반응형

unity water 쉐이더 만들기!

 

 여러가지 튜토리얼을 참고, 조합해서 만든 water 쉐이더로, 파도 노말을 블랜드 시켜서 양쪽으로 흘러가게 만들어 주었다. 'Fresnel' 은 바다의 색을 두가지로 (겉면과 안쪽면) 혼합할 수 있어 겉은 노란빛의 색, 깊은 속은 푸른빛으로 설정해 주었다. 

*단, 투명도를 많이 높이게 되면 두가지 혼합 색이 많이 나오지 않음. 

모든 조절이 필요한 fresnel, normal power, glass 등등 property로 설정 후, inspector 창에서도 조절이 가능하게 만들었다. 그 외에도 추가적으로 필요한 쉐이더 그래프를 짰을 경우, proprety로 추가 가능하다. (왠만하면 property로 설정해 inspector에서 조정 가능하게 만드는 것이 좋음) 만약, property로 설정 해주지 않는다면, 매번 shader graph를 켜서, 변경 후 저장해야만 확인 가능하다. 특히 color나 바로바로 변경하면서 확인해야 하는 것들은 이런 과정이 굉장히 번거로워지기 때문에 property를 꼭 사용하는 것이 좋다. 

①lit master -  여기서 사용한 릿 마스터 라는 쉐이더 그래프는 HDRP(고해상도 렌더 파이프라인)로, Pack Manager에서 update 해서 사용 가능하다. (Create → Shder → Lit Graph)

Material Type 도 변경이 가능하며, Standard, Subsurface Scattering, Anisotropy, Iridescene, Specular Color, Translucent 등이 있고 원하는 타입으로 맞춰 사용하면 된다.

②Base Color - Lerp를 이용해서 color 두가지를 더해주고, property로 두가지 색을 지정. Fresnel로 물의 겉과 속으로 컬러로 나눈다는 것을 지정해준다.

③Normal - 파도 치는 것을 현실감 있게 주기 위해 파도 노말 텍스쳐를 불러온다. 같은 텍스쳐 노말을 두번 사용한다. Tilling And Offset으로 uv를 원하는 만큼 타일링 해준다. (x,y 값으로 조정) 

vector와 time 노드를 사용 multiply로 엮어 준다. (vector 값을 property로 만들어 스피드를 제어한다)

④Smoothness - glass 농도를 조절해 준다(property로 꼭 빼놓을 것**)

⑤Alpha - 투명도 조절을 해준다. 이때, Fresnel 을 가져와서 겉-속 까지 자연스럽게 투명하게 만들어 준다.

(이때, One Minus 로 반대로 뒤집어준다**, Fresnel Effect 노드를 보게 되면 겉이 화이트, 속이 블랙이므로 반대로 뒤집어서 사용해야함***)

 더 많은 노드를 효율적으로 사용할 수 있는 'lit master' 노드를 선택하게 되었고, HDRP가 좋은 퀄의 사실적인 어셋을 만들 수있어서 사용하게 되었다. Lit master 안에 많은 옵션 설정이 있고, 그 때문에 water 같은 여러 노드가 필요한 쉐이더 그래프를 짤때는 Lit master가 좋은 것 같다. 여러 튜토리얼을 따라하다 보면 원하는 property가 없어서 주춤할 때가 많다. 어떤 렌더 파이프라인을 선택할지, 어떤 쉐이더 그래프를 사용할지 고민 후에 시작하는 것이 좋다.

 

반응형
반응형

 회사 프로젝트로 유니티 작업을 해보면서, 3D로 구현하는데 필요했던 자료들을 공유하려고 합니다.

 순서는 마야로 시작해서 substance painter 로 텍스쳐, 그 후에 유니티로 가져와 마무리 하는 등으로 작업. 섭스로 작업한 것들은 텍스쳐를 이용해 어느 정도 퀄리티를 낼 수 있지만, 유니티 환경도 섭스 환경과 비슷하게 맞춰 줘야 한다는 점이 한계였다. 유니티에서 좋은 환경을 만들어 내려면 Light 부터 Probe 까지 기본 지식이 필요하고, Inspector 창을 이해하고 사용할 줄 알아야 한다. 애니메이션 같은 경우는 유니티에서 시도해 보았지만, 마야보다 떨어지는 유니티 자체 환경 탓에 마야에서 모두 작업하는 방식을 사용하였다.

 그래프 에디터 등 그래프를 만들어 쉐이더를 구현할 때는 여러가지 유튜브 튜토리얼을 보고 참고 하였으며, 여러가지 필요한 쉐이더들을 조합하여서 구현해 내는 작업을 하였다. 

 ① 이미지에 Water ball + Shark , 두가지 애니메이션을 사용하고 싶을 때 = Update Mode 를 조정. 

 

② unity_gizmos - 작업 할때 불필요한 기지모는 체크를 해제하여 꺼줄 수 있다. 

(translate 사용시 선택되는 불편함, scene 에서의 아이콘 이미지로 인해 작업 불편함)

 

③ 오른쪽 Hierachy 에서 ▼부모 /그아래 - 자식 관계, 맨 왼쪽 pivot 을 center 로 바꿀 시 (부모, 자식 중간 지점에 기준점), povot 으로 바꿀 시 (부모 오브젝트에 기준점)

 

④ Project → Create  클릭 하여 원하는 폴더를 추가 (or 원하는 경로안에서 마우스 오른쪽 버튼 클릭 후 폴더를 추가)

 텍스쳐, Fbx 등 모델링 파일들은 바탕화면에서 드래그 앤 드롭으로 생성 가능.

 

 

<노드 만들때, 가장 많이 사용하는 것>

float - shader 계산 상수 값 정의, min/max 값 정의, texture 따로 없을 경우 color, min/max 로 name 바꿔서 역할, property로 변경 가능

add - texture 2개를 합치는 역할

one minus - 값을 반전 시키는 역할(texture 반전), 1~0,0~1 바꿔줌

 ⑤ Normal 값을 줄 때, 조정 - Default Texture 확인, Unpack Normal Map 확인 

 - subs 에서 작업한 텍스쳐일 경우, Default Texture - White, Unpack Normal Map 체크 해제

 

⑥ Float 노드를 이용해서, 제어 - 반사, 투명, 노말.. 등 최소, 최대값 설정 후 → property로 변경 → 원하는 name변경

 

⑦ 쉐이더 그래프 - Add를 이용해서 추가 할때, R G B 는 각각 X Y Z 값을 뜻함.

 주의) R G B 중 한가지만 연결 하고, 나머지를 연결 안해줄 경우 제데로 쉐이더가 만들어 지지 않음.

 

- Time : 가장 많이 사용하게 되는 property 로, 속도 조절 : Time(t/20) < Time(t) < Time(t*2)

 

⑧ Alpha - 깔끔하게 알파가 빠지지 않을 때, Surface Type - Transparent, Alpha Cutoff 체크 

반응형
반응형

 

 섭스와 마야를 번갈아가면서 작업할 때 가장 많이 쓰게 되는 기능이 있다. 'Project configuration' 마야 작업을 마치고, 섭스 작업까지 완료하였는데, 모델링 수정이 필요할 때!! 눈물을 머금고 모델링을 수정하였는데, 섭스에서 작업한 그대로 덮어 씌우고 싶다면?? 'project configuration'을 사용하면 된다!

 

 이미지를 참고해 설명해보면, 섭스에서 텍스쳐까지 완료한 파일을 열어보면 아래 이미지와 같다. 이렇게 작업을 완료한 섭스 파일 위에, 다시 수정한 모델링을 덮어 지금과 같은 쉐이더를 만들려고 한다.

 

 Edit → Project configuration 클릭해서 수정한 어셋을 불러온다. 불러오게 되면 아래와 같이 쉐이더가 제데로 들어가지 않은 채로 하얗게 나오는 것을 알 수 있다. 내가 원래 작업하던 쉐이더는 비활성화되어서, 레이어도 확인할 수 없는 상태가 되게 된다.

 

이때!! 내가 작업하던 쉐이더를 살리는 법은?? 아래 빨간 박스에  'Settings' 클릭하게 되면 여러 가지 옵션이 나오는데, 여기서 가장 아래에 있는 Reassign Texture Sets을 클릭한다.

 

 

클릭하게 되면 Texture sets Reassignment라는 창이 크게 뜨게 된다. 여기서 맨 왼쪽 lambert1(예시)이라고 되어있는 쉐이더를 클릭 드래그하여 오른쪽 magic_hat(예시)으로 옮겨 바꿔준다. 그 후에 Apply를 눌러 창을 꺼준다.

** Mesh Materials라는 곳 아래를 보면 magig_hat(예시)라고 되어 있는데, 수정을 위해서 가져온 메쉬에 들어간 쉐이더를 뜻한다(하얗게 나오는 쉐이더 = 작업이 되지 않은 쉐이더) 

따라서, lambert(섭스 작업이 완료되었던) 쉐이더를 mesh에 들어가 있는 shader와 바꿔주는 작업을 한 것이다. 

 

 

 이렇게 쉐이더를 잡아주는 작업을 하게 되면, 다시 제대로 들어온 섭스에서의 모습을 확인 할 수 있다. UV가 크게 바뀌었다면 미리 작업 되어있던 LAYER 안에서 다시 잡아주는 작업은 필요하다. 또, 다시 BAKE 하여 원래 작업이 제데로 들어갈 수 있게 하여야 한다. 

 

 

또한, 쉐이더 교체와 동시에 생긴 비활성화된(이미지 ㅁ)  불필요한 쉐이더는 지워주는 작업이 필요하다. 

지워주는 작업은 위와 동일한데, Settings를 눌러 Texture sets Reassignment 창을 다시 띄워준 뒤, 불필요한 쉐이더를 클릭해서 delete 시켜주기만 하면 된다.!

 

 깔끔하게 정리하고, 용량을 최소화하기 위해서는 불필요한 쉐이더를 지워주는 게 좋다.

 섭스 작업 완료 후에도 mesh를 추가하거나 이동, 삭제하는 수정을 해도 위와 같은 방법을 사용하면 편하게 다시 덮어 씌울 수 있다.

 섭스는 텍스쳐를 만드는데 편한 기능들을 너무 많이 갖고 있다. 좋은 seamless texture를 가지고 와서 작업을 할 수도 있고,  작업이 다 되어있는 shader 파일을 가지고 와서 따로 작업할 필요 없이 그대로 사용할 수도 있다.

 짧은 시간 안에 좋은 퀄리티의 쉐이더를 만들 수 있다는 강점 때문에, 텍스쳐의 작업은 대부분 substance painter를 사용하는 편이다. 여러 가지 쉐이더의 조합과 브러시를 잘 사용하여 좋은 퀄의 쉐이더를 만들 수 있도록 하자.

반응형
반응형

 

Maya로 작업하다 보면 클릭이나 마우스 한 번으로 인해, 기본으로 세팅되어 있던 툴바가 사라짐을 알게 되는데요. 생각보다 자주 있는 일인데도, 다시 세팅하기가 기억이 안 나고 힘듭니다. 사라진 ui를 찾는 간단하고 쉬운 방법에 대해 정리해 보겠습니다.

 

1. Windows  → UI Elements 

 가장 간단한 방법으로 원하는 ui elements 를 찾아서 활성화시켜주면 됩니다.

 

2.  Windows → Settings/Preferences → Preferences 

왼쪽 이미지 순서에 맞춰서 Preferences 클릭해 주면 오른쪽 이미지의 창이 뜹니다.

왼쪽 UI Elements 클릭! 오른쪽 빨간 박스에 원하는 ui를 체크해 활성화 시켜주면 됩니다.

 

 ** 이렇게 ui 체크 활성화 하는 방법은 간단한데, 원하는 툴바의 이름을 알아야 체크를 활성화해줄 수 있습니다.

자주 사용하고, 기본으로 세팅되어 있던 ui 이름들을 확인하고 정리 해보도록 하겠습니다.

 

1. Status Line

 

주로 스냅기능이나 Symmetry, 모델링에 shader를 줄 때, 사용하는 툴바입니다. Hypershade, 렌더 시에도 필요하므로 ui가 사라졌을 때는 'Status Line'을 클릭하여 활성화해주면 됩니다.

 

2. Shelf

 

 모델링 할 때, 필요한 기능들을 쉽게 찾아 쓰기 위해 만드는 툴바인데요. 예전 글에서도 썼듯이 내 이름을 넣은 'shelf'를 따로 만들어서 '내가 자주 쓰는 기능'을 찾아 넣어서 쓰면 편리합니다. 

<참고>

2020/08/27 - [Maya] - [Maya]작업 시 편리한 'Shelf' 만들어 사용하기

 

[Maya]작업 시 편리한 'Shelf' 만들어 사용하기

***Maya 작업 시 필요한 메뉴 shelf로 만들어 사용하기! 작업 시 일일이 필요한 메뉴를 찾아 사용하는데 어려움이 있으신 분들을 위한 꿀팁에 대해 알려드려요! 작업할 때 사용하는 것들이 한정적이

bombom3d.tistory.com

 

3. Time Slider

 

 내가 준 키 프레임을 볼 수있는 창으로, 키 프레임 이동, 키 복사 등 애니메이션 관련 툴바입니다. 오른쪽 재생 버튼을 눌러 playblast와 같이 실제 애니메이션 플레이 모습을 바로바로 확인할 수 있는 창입니다.

 

4. Range Slider

 

'Range Slider' 키 프레임을 줄때 구간을 설정할 수 있는 창(첫 프레임-마지막 프레임)으로, fps설정, preferences를 제어할 수 있는 창입니다.

 

5. Command Line

 

Maya 작업을 쉽게 할 수 있는 MEL 스크립트 제어 창입니다. 컴퓨터 언어로 기존 마야 기능만으로는 하기 힘든 부분들을 쉽게 제어 할 수 있게 해주는 기능입니다.

 

6. Help Line

 

 자주 사용하진 않지만, 지금 사용하는 도구의 설명이나 필요한 도움말을 해주는 툴바 입니다.

 

7. Tool Box

 

 Maya를 처음 접하게 될 경우, 제일 많이 쓰게 되는 UI Elements로, 일명 'Tool Box' 어셋을 이동, 선택, 크기, 회전까지 중요한 기능들이 들어있습니다.

Maya를 사용한 시간이 조금 흐르면, 단축키를 이용해서 주로 사용하긴 하지만, 항상 체크를 활성화해놓는 것을 기본으로 해 둡니다.

 이렇게, 항상 기본적으로 세팅되어 있는 UI들에 대해 알아보는 시간이었습니다. 마우스 한 번으로 사라진 UI를 찾아 헤매지 말고, 위에 방법들과 명칭들을 기억하여 빠른 시간 내에 작업을 위한 세팅을 완료할 수 있었으면 합니다.

 

 

반응형
반응형

 

 유니티 작업을 할 때, 애니메이션을 유니티로만 주기가 힘들다는 사실을 느끼게 됩니다. 그래프도 보기 어렵게 되어있을뿐더러 

직접 하나하나 조정하기 힘들기 때문에

 마야에서 애니메이션 작업 후, fbx 파일로 임포트 시켜주는 방법이 가장 편한 방법입니다.

마야는 워낙 애니메이션 잡기에 편한 툴이므로 다룰줄만 안다면, 마야와 함께 사용하는 것이 좋습니다.

생각보다 굉장히 간단하고 쉬운 maya에서 애니메이션이 든 fbx 익스포트 법을 해보겠습니다.

 

 

유니티로 가져가기전 가장 먼저 해야 할 것은 마야에서 가져갈 어셋을 선택 후,  File→Export selection  

아래와 같은 창이 뜨게 됩니다. 

빨간 박스가 애니메이션을 베이크 할 수 있는 체크 박스입니다.

 

 

Bake Animation을 체크해서 활성화해주고

 start - end에 작업한 애니메이션 프레임만큼 숫자를 적어줍니다.

 맞게 적어주었으면, 아래 Export Selection을 눌러서

원하는 경로에 파일을 넣어줍니다.

 

 

 

 

 

 원하는 버전에 unity를 열어서, 원하는 폴더에 fbx를 임포트 시켜줍니다.

 

 

 

임포트 시킨 파일을 눌러 확인하면, 왼쪽 빨간 체크와

마찬가지로 Take001이라고 애니메이션이 따라온 것을

확인할 수 있습니다. (Take 001이 존재하지 않을 시,

MAYA를 다시 열어서 BAKE 체크했는지 확인 후 다시

익스포트 시켜줘야 합니다**)

 

 

 

 

 

 

이제 유니티에서도 내가 잡은 애니메이션을 정상 작동시키기 위한 작업들이 필요합니다. hierarchy 창에서 내가 임포트 한 어셋을 클릭 (아래 이미지 참고). Inspector 창에 Add Component에서 'animator'라고 검색

***Animator를 클릭하여 추가해 줍니다. (오른쪽 이미지 확인)

 

다음은, Project 창에서 원하는 경로에 마우스 오른쪽 클릭 → Create → Animator Controller를 만들어 줍니다.

만들게 되면 New Animator Controller라고 만들어진 것을 볼 수 있습니다. 여러 애니메이션을 넣게 될 경우를 대비해서 

이름을 바꿔줍니다. 

 

아래 순서에 맞게 클릭하여 줍니다.  

① New Animator Controller (이름 임의 변경 Shark) 클릭 

② Animator 창 클릭 

 

순서에 맞게 클릭 시, 위 이미지와 같은 창이 뜨게 됩니다.

이때, 맨 처음 fbx 불러왔을 시에 만들어진 Take001을 드래그하여 넣어줍니다 **

 

Animator 창으로 Take 001을 드래그하게 되면 오른쪽 이미지와 같이 저절로 노란선이 연결됨을 확인할 수 있습니다.

이제 재생 버튼을 누르면 애니메이션이 적용됨을 확인할 수 있습니다.

나중에 애니메이션을 다른 파일로 변경할 경우, Animator 창에 take001을 삭제 후,

원하는 파일을 드래그하신 후, 연결하여 주시면 됩니다.

반응형
반응형

 

 작업하던 프로젝트를 Launcher로 오픈할 때마다, 기본 맵으로 들어가지는데, 이를 해결하는 방법은 아래 '프로젝트 세팅 에디터' 입니다. '프로젝트 세팅 에디터'만 잘 만져 설정해 주면, 수동으로 일일이 찾아 헤매지 않아도 자동적으로 세팅이 됩니다. 

 

 위 이미지 상단 편집프로젝트 세팅 을 눌러 창을 열어 줍니다.

 

 왼쪽 맵&모드 클릭!

박스 'Default Maps' 

→ 에디터 시작 맵 : 프로젝트를 열자마자 오픈이 될 맵을 선택

→ 게임 기본 맵 : 기본이 되는 맵 ( 특별한 이유 없인, 따로 설정하지 x )

 

반응형
반응형


 실시간 렌더, 리얼타임이 점점 중요해지고, 렌더를 기다리지 않는다는 큰 장점이 언리얼, 유니티 관심도를 올리고 있다.  그에 맞춰 공개된 언리얼 엔진 5도 엄청난 화제가 되고 있다. 빠른 실시간 렌더 속도와 많은 어셋들을 고퀄로 구현할 수 있다는 것이 3d 작업을 함에 있어 언리얼을 꼭 배워야겠다는 생각을 든다. 원하는 완벽한 환경을 만들기 위해 기초부터 탄탄히! 배우고, 정리해보자!

 

 언리얼의 시작

 '에픽 게임즈 런처'를  통해 프로그램에 접속  
라이브러리 클릭하게 되면 내가 설치한 버전의 언리얼, 내가 만든 프로젝트 등이 뜬다.

언리얼 엔진 기초 조작법

언리얼 에디터 → 언리얼 실행 시 나오는 창 전체를 뜻함. 

뷰포트 → 내가 작업을 하는 공간, 작업이 보이는 공간. 

 

 

 

뷰포트 조작법

회전 - 우클릭 + 드래그

이동 - 우클릭 + W, A, S, D (위, 왼, 아래, 오)

      - 우클릭 + Q, E (아래, 위)

줌  - 원하는 오브젝트 선택 후 + Z

 

 

 

 

카메라 뷰 설정하는 법 

 - 기본 설정 : 원근 

- 기본 설정 변경 시 → 위, 아래, 왼, 오 등 다양하게 변경 가능 ( 위 이미지 상단에 있는 버튼 클릭 시 변경 가능 )

(카메라 4가지 뷰)

        

 

 

  카메라 속도 조절법

 - 뷰포트 이동 시, 카메라 이동 속도 조절 가능,  빠를 시 아래 빨간 박스를 이용해 카메라 속도 조절

 - 숫자가 낮을수록 느림 

  ex) 속도를 낮추고 싶으면 설정된 4 → 1 

 

 

스냅 기능

- 오브젝트 이동, 회전, 스케일 모두 원하는 길이, 각도, 크기만큼 스냅 걸어 편하게 작업 가능.

- 아래 빨간 박스 안 노란 버튼을 클릭 시 스냅 해제, 노란 버튼 일 때는 스냅 걸려있는 상태.

- Tip. 오브젝트 선택후 v 누르고 이동하면 스냅!

 

 

 

 캐릭터  

- 오른쪽 디테일 창 character movement  클릭 → 세부 사항 조정 가능.   

- 걷는 속도 , 점프력, 달리기 속도 등 조작감 제어하는 곳 

 

 

 

★★ Collision (콜리전) 

 - 오브젝트에 충돌성을 부여 , 콜리전 값이 없으면 충돌체라고 인식을 못함.
   ex) 아바타가 서 있는 바닥에도 콜리 전이 들어감, 콜리전 값을 빼면 아래로 떨어짐. 

- 기본적으로 콜 리젼 되어있는 것을 빼는 법 
 오브젝트 선택 후 → 콜리전 collision presets (default) nocollision
   

 

 

- 보이지 않는 오브젝트 → 게임 만들 때 보이지 않는 벽, 캐릭터 이동시 벽이 보이지 않지만, 콜 리젼은 작동함  
  따라서, 플레이했을 시에  아무것도 없는 것처럼  벽이 보이지 않지만, 통과할 수 없음. 

 



 *오브젝트를 빠르게 바닥에 붙히는 단축키

→ 오브젝트 선택 + End 


          
 

반응형

+ Recent posts