게임 65

[Unity3D] AnimationEvent 사용

AnimationEvent라는 것이 있음. 1. Component/Miscellaneous/Animation 를 해서 Animation 컴포넌트를 게임오브젝트에 추가하고 2. Animation 컴포넌트에 원하는 AnimationClip 파일을 추가한 후3. Scene 왼쪽 하단에 있는 Animations 탭 오른쪽에 있는 애니메이션 목록 탭에서 원하는 클립 선택한 후4. 위 스크린 샷 하단에 말풍선으로 PlaySound 라고 써있는 부분에서 마우스 우클릭을 하면 Add AnimationEvent 라는 게 있다. 클릭!5. 그리고 Animation 컴포넌트가 있는 게임오브젝트(현재 게임오브젝트)에 원하는 Monobehaviour를 상속 받은 스크립트를 추가한다.6. 그 스크립트에 있는 함수를 원하는 애니메..

게임/Unity3D 2013.05.03

[Unity3D] Monobehavior 상속받은 스크립트 변수 보이기 제어 (System.NonSerialized, System.Serialized)

System.NonSerialized - public 선언된 변수 위에다 쓰면 오브젝트에 붙였을 시 인스펙터 창에서 보이지 않는다. 그렇기 때문에 제어는 되는데 인스펙터 창으로는 제어 불가능한 변수를 만들게 됨. System.Serialized - 구조체로 만든 객체 같은 건, 멤버 변수가 public으로 선언되어 있다고 해도 인스펙터 창에선 볼 수 없다.그렇지만 이 옵션을 넣어주면 보이게 됨. 다음은 사용 방법이다. [System.Serialized]struct B{public int n;}class A{[System.NonSerialized]public int a; B b;}

게임/Unity3D 2013.05.02

[Unity3D] 팁. 되도록이면 싱글턴을 쓰지 말고.. Dontdestroy뭐시기 함수로 남겨두는 걸 추천한다.

보통 C++에서는 XXXXManager 같이, 프로그램이 죽을 때까지 언제든지 살아있어야 하는 전역변수같은 객체를 쓸 때 그냥 싱글턴 같은 걸 쓸 것이다. 하지만 유니티에서는 내가 만든 DDO파일을 이용해서 게임오브젝트에다가 넣어두면 그 오브젝트는따로 Destroy 함수로 없애지 않는 한 씬이 변경되도 사라지지 않고 남아 있게 된다. 그렇기 때문에 싱글턴과 같은 효과를 볼 수 있으며, 가지고 있는 변수의 값을 알고 싶을 때 인스펙터 창에서 그냥 볼 수 있다. 따로 디버깅이나 로그를 찍을 필요 없이 말이다. 이건 그저 내 생각이므로 좋은 방법이 아닐 수도 있다.

게임/Unity3D 2013.05.02

[Unity3D] 유니티는 C++로 만들어져 있다.

출처 : 게임개발포에버 http://www.gamedevforever.com/203 요즘들어 Unity가 인기를 많이 끌고 있고, 저도 어쩌다 유니티를 주무르는 동안에 발견한 내용들을 짧게짧게 블로그에 올려볼 생각입니다. 유니티를 체계적으로 배우시고 싶다면 아마 게임개발포에버에서 도플광어님이 연재하시는 글을 보시는게 젤 좋을겁니다. 자, 그렇다면 오늘의 짧은 정보는... 과연 Unity는 어떤 언어로 작성되었나? 입니다. Unity가 Mono를 이용해서 .NET 프레임워크를 자체적으로 지원하고, 저희가 유니티에서 사용할 수 있는 스크립트 언어도 C# 이다보니 '유니티가 C#으로 작성 되었구나. 그럼 이 엔진이 속도가 너무 느리지 않을까?' 라는 걱정을 하는 분들이 계실겁니다. (저도 그랬다는..) 그래서..

게임/Unity3D 2013.04.22
반응형