[Unity]Animation

Dog발자·2024년 3월 4일

Unity

목록 보기
3/3

1. 게임 모델링의 역사

1. 가공되지 않음. 원시적인 포멧

obj = fbx = 모델링 파일 확장자
.bitmap : 이미지를 비트로 그대로 저장
.wav : 사운드 정보
.txt : 문자 정보
.ASE : 정적의 정보

1. Ascil scone export

2. parsing

데이터를 파싱한다.

3. .md1 -> .md2

정적정보, 애니매이션 정보를 Vertex Animation(30초 프레임이면 모든 애니매이션의 1초에 30번을 위치까지 전부다 저장을 한다. 불려오는 것을 한번만 하기 때문에 편하다.)

구조체와 포인터를 쓴다.

http://tfc.duke.free.fr/coding/md2-specs-en.html

4. SMD(StudioModel Data)

캐릭터 모델링의 뼈본을 만든다. 걷는 모습에다가 스킨만 바뀌면 돌아간다.
뼈대가 몇 도를 돌아가는 것만 저장.

연산량이 많다(행렬 연산이 뼈대마다 돌아간다)

5. 모델을 받아오면

모델 파싱 -> 유니티 형태로 바뀌어준다.

1유닛 = 1m
유니티의 기준으로 유닛 단위로 만들어진다.

Scene : 가지고 올 때 스케일을 비율을 바꿀거냐
Convert Units : 유니티 단위로 바꿀꺼냐
Bake Axis Conversior:
Preserve Hierarchy By : 본 계층 구조를 갖고 올껀지?

Mesh Compression : 메시를 압축할꺼냐, 안 할 꺼나
Read/Write : 모델정보를 다시 쓸꺼냐?

  • 하지만 바꿀필요가 없으면 하지 않는게 좋다. 메모리에 원본, 복사본이 둘다 올라가기 때문이다.

Generate Colliders : Colliders 를 자동으로 만들꺼냐? 그래픽에서 안 만들어 줬으면 없다.

Weld Veritices : 모델링 할 때

Normals : Norlmals값을 할꺼냐? 만들어주는것을 가져올 꺼냐?

모델마다 아바타
모델마다 스킨마다 가중치가 들어감. -> 찟어지지 않기 위해서 들어감


왼쪽이 스킨, 오른쪽이 뼈대

스킨은 정적
뼈대는 뼈가 어떻게 움직이는지 정보만 저장하고 있다.(애니매이션)

스킨 + 뼈대 = 아바타

모델마다 아바타가 있어야 됩니다.

(출처:https://www.pinterest.com/pin/488781365809210702/)
요즘은 얼굴에 bone이 스물개이상 들어갑니다. 게임마다 각각 다르다.


Source Take :
human_male_blocking_01를 넣으면 싸움 모션이 된다


skinned Mesh Renderer : 스킨을 애니매이션을 할려면 이게 꼭 필요하다.


animator : 애니매이션을 돌려준다
animation: 애니매이션을 해준다.


Apply Root Motion 이것은 루트 모션에서 만들어 지는 건데
단점은 본체가 가만이 있는데 모델만 간다.


애니매이션이 없가나, 본이 없다면 이렇게 된다.

mecanim

모션이 있으면
걷다가 -> 때리는 모션을 자연스럽게 만들려면
중간단게에서 애니매이션을 보관을 하게 된다.

모션이 많아 지면 이렇게 만들어진다.

이 동작을 하게 된 후에 보관이 된다.


Has Exit Time : 애니매이션을 하고 바로 바꿀 꺼냐?


상체 하체 Layer

0개의 댓글