프로그래밍2016. 4. 24. 23:22

 

 

일단 유니티 상단에 adit - preferences 에서 스크립트 에디터를 monodevelop으로 설정해준다 . 모노디벨롭은 유니티에서 지원하는 프로그램이다.

 

 

 

 

 

Aessets창에서 오른쪽마우스클릭- creat - c#스크립트를 눌러 스크립트를 생성해준다.

 

 

 

 

 

 

 

그리고 생성한 스크립트를 누르면 이렇게 모노디벨롭창이 뜨게 된다 위사진은 초기화면이다.

 

 

 

 

 

 

 

 

6행의 int numberA = 10; 는 간단하게말하면 변수를 지정하고 값을 10으로 입력한것이다.

 

그리고 void start 밑에

 

nemberA의 값을 20으로 입력했는데 이것은 변수의값이 항상 변할수있다는것이다.

그리고 10행에 Debug.Log (numberA); 는

nemberA의 값을 콘솔창에 띄우라는명령어이다.

 

 

 

 

 

 

 

 

 

스크립트파일을 세이브하고 유니티로 돌아가서 플레이를 눌러보면 콘솔창에 아까지정한 nemberA의 값인

20이 나오는것을 볼수있다.

 

 

 

 

 

 

이번엔 오브젝트에 스크립트를 넣어보도록하겠다. 큐브를 하나 만들고 거기에 스크립트를하나 만들어

드래그해서 넣어준다.

 

 

 

 

 

9행의 void OnMouseDown() {

Debug.Log ("마우스가 눌렸다");

}

은 함수인데 말그대로 큐뷰에 마우스가 눌리면 콘솔창에 "마우스가 눌렸다"라는 표시가 나온다

 

OnMouseUp은 마우스가 떼일때 함수가 실행되는것이고

OnMoseEnter는 마우스가 큐뷰 범위내에 들어오면 함수가실행되는것이고

OnMouseExit는 마우스가 범위밖에 나가면실행되는것이다,.

 

 

 

 

 

 

 

 

 

 

플레이를 누르고 큐브에 마우스를 이리저리 해보면 지정했던 함수들이

실행된다

Posted by daniel9811
그래픽 디자인/3dmax2016. 3. 31. 20:57

 

 

3d맥스를 3d모델링 캐릭터를 가져온다. 애니메이션을 주려는 캐릭터가아닌 다른 캐릭터는 delete을 누르고 제거해준다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

캐릭터를 선택하고 modify 옆에 3번째 메뉴를 선택하고 Geometry를 누르고 필요없는 bone(뼈대)들을 제거해준다

 

 

 

 

 

 

 

 

 

 

 

밑에 애니메이션 플레이 버튼을 오른쪽마우스로 클릭해주고 end time을 20으로 바꿔준다

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

팔이 너무 벌어진것같으니 팔의 뼈대를 선택하고 E를눌러 로테이션으로 x좌표를 움직여 팔을 몸쪽에 붙여준다.

다시오른쪽 상단의 메뉴에서 4번째 아이콘을누르고 paramaters을 눌러준다. 그리고 팔쪽의 bone(뼈대)를 선택해주고 오른쪽메뉴에 copy/paste를 눌러주고

밑에 첫번째 copy아이콘을 누르고 3번째아이콘인 Opposite를 눌러준다

 

 

 

 

 

 

 

 

 

그렇게하면 상대편팔도 아까 옮긴팔처럼 위치가 바뀐다.

 

 

 

 

 

 

 

 

 

 

 

거추장스러우니까 칼도 지워주도록하겠다. 이제 애니메이션을 만들것인데 밑에 Auto key를나 단축키n을눌러 화면에 빨간테두리가 생기면

그때부터 애니메이션제작이 시작되는것이다. 0프레임에서 캐릭터가 걷기위해 발을 내딜려고하는 동작을 만들어준다.

 

 

 

 

 

 

 

그리고 이걸 8프레임에 똑같이 복사를 복사를 해주는데 주위할점은 0프레임과 동작은 같지만 서로다른발이야한다 0프레임에서 다리의 뼈대를 선택하고

8프레임으로 가서 아까와 같은방식으로 opposite를 눌러 다른쪽발에 적용되도록해준다. 

그리고 스크린샷이없지만 캐릭터가 그전프레임에서 발을 내딛는 장면을 설정해줫다면 4프레임과 12프레임에서는 발을 내딛는 장면을 만들어준다.서로다른발로.

그리고 16프레임은 처음 0프레임과 똑같이해준다

 

 

 

 

 

그리고 팔도 다리처럼 0프레임 4프레임 8프레임 12,16프레임에 자연스럽게 움직이도록 해준다.

 

 

 

 

 

 

 

 

 

 

그리고 플레이를 해보면 걷는모션이 완성된것을 볼수있다. 이처럼 bone을 이용하면 쉽게 캐릭터의 움직임을 만들수있다.

 

 

 

 

이건 유니티에 방금만든 애니메이션을 적용시킨것이다.

 

'그래픽 디자인 > 3dmax' 카테고리의 다른 글

오크통3D모델링 모작하기  (0) 2016.04.23
3dmax 애니메이션 만들기  (0) 2016.03.23
3dmax Light 렌더링 하기  (0) 2016.03.18
Posted by daniel9811
언리얼,유니티2016. 3. 30. 22:55

 

 

 

유니티를 실행하고 새프로젝트를 만든다. 제목은 ballgame이라고했다. 3d로만든다

 

 

 

 

 

 

왼쪽메뉴에 creat - 3d object - sphere를 눌러서 게임에서 사용할 공을 만든다

 

 

 

밑에 큐브를 눌러 직육면체를 만들고

 

 

 

 

 

 

R을누르고 드래그하면 스케일을 늘리고 줄일수있는데 큐브를 선택한상태에서 R을누르고 x축을누르고 넓혀준다.

 

 

 

 

 

 

그리고 우측메뉴에 add component를 누르고 physics를 눌러 물리값을 만들어준다.

 

 

 

 

 

rigidbody로 만든다

 

 

 

 

 

 

그리고 위쪽상단에 플레이를 눌러 실행시켜보면 공이 물리값을받아 중력이작용해 아래로 떨어지는것을 볼수있다.

 

 

 

 

 

공을 튕기게 만들어주기위해 creat - physic material을 누르고 생성해준다

 

 

 

 

 

그리고 오른쪽에 bounce combine을 멕시멈으로 바꿔준다 그러면 공이 끝없이 튕기는것을 볼수있다.

 

 

 

 

 

아까 aaa physic material을 만든부분에서 오른쪽마우스클릭 해서 자바스크립트를 생성해준다. 그리고 원하는 스크립트를 입력한뒤세이브하고 나간다

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

그리고 바닥에 스크립트를 드래그해서 적용시켜준다.

 

 

 

 

 

 

그리고 실행하면 아까 키보드 좌,우키를 누르면 바닥이 기울어지는것을 스크립트로 입력했었는데

그대로 실행되고있다

 

 

 

 

3d맥스로 캐릭터를 불러와 고개를 끄덕이는 간단한 애니메이션을 만들어서 유니티에 적용해보겠다.

 

 

 

 

 

 

아까의 공처럼 이애니메이션캐릭터에 물리값을 적용시키면 고개를 끄덕이며 점프하는 캐릭터를 볼수있다

Posted by daniel9811
게임이론2016. 3. 29. 19:59

드로우콜(drawcoll)이란 cpu가 그래픽 API(운영체제와프로그램사이의 언어)를 호출해서 gpu에게 렌더링을 요청하는것을 말한다.

 

유니티같은 프로그램에서 material을 1개그리면 drawcall1 이된다. 즉 드로우콜은 material의 개수에따라 증가한다.

 

mesh1과 매쉬2를 material1로 만들면 drowcall1이고, mesh1과 mesh1를 각각 다른 material로 만들면 drowcall2가된다.

 

드로우콜이 많을수록 material을 gpu로 전송하는 수가 많아지기때문에 과부하가걸려 렌더링이 느려진다.

 

따라서 드로우콜을 최대한 줄이는것이 성능향상에 큰 도움이된다.

 

스프라이트들을 스프라이트시트에 모두모으면 단한번의 드로우콜로 모든스프라이트들을 렌더링할수있다,

 

게임에 사용하는 스프라이트들이 많을수록 성능이 향상된다.

 

 

 

 

'게임이론' 카테고리의 다른 글

빌보드(Billboard)  (0) 2016.04.13
LOD(Level of Detail)  (0) 2016.04.06
Ridefilm <라이드 필름>  (0) 2016.03.22
최적화의 필수 culling기법  (0) 2016.03.20
VR,가상현실(Virtual Reality)현황과 가상현실게임  (0) 2016.03.17
Posted by daniel9811
공지사항2016. 3. 10. 21:31

c언어,c++ 기반으로한 게임제작,프로그래밍 포스팅시작합니다.

 

게임제작에 사용되는 엔진: 언리얼엔진4,unity

 

그래픽: 3dmax,포토샾

 

 

Posted by daniel9811