본문 바로가기

정보/유니티15

유니티 최적화 기법 출처 - http://vallista.tistory.com/entry/Unity-%EA%B2%8C%EC%9E%84-%EC%B5%9C%EC%A0%81%ED%99%94-%EA%B8%B0%EB%B2%95 프로젝트를 하고 완성이 될 무렵, 게임이 굉장히 괴랄한 프레임을 뿌려대며 제대로 굴러가지 않기 시작했다. 필자의 컴퓨터는 사양이 굉장히 좋다고 자부할 수 있는 컴퓨터였다. 유니티 에디터가 잘못인지 소스코드 상에서 문제가 있는 것인지 보기 위해 탐색을 시작하게 되었고. 프로파일러를 통해 개선할 부분을 다수 개선하였다. 이 밑부터는 내가 경험한 것을 바탕으로 최적화를 한 방법에 대해 서술한다. - 프로젝트 진행시 참고했던 박민근 님의 유니티 최적화 테크닉을 참고하였다. - http://www.slideshare... 2015. 10. 13.
게임개발시 퍼포먼스 향상 시키기 - 코루틴과 오프젝트 풀 웬만한 업데이트 함수에 사용되는 내용들은 대부분 코루틴으로 변환해서 사용이 가능하다. 코루틴 관련 포스팅 >> http://magris.tistory.com/13 https://sunhyeon.wordpress.com/2012/11/20/376/ 업데이트함수를 최대한 줄이고 이부분들을 코루틴으로 바꿔서 진행하니 퍼포먼스가 굉장히 올라갔다. 업데이트함수들은 항상 대기를 하기 때문에 메모리를 많이 잡아먹지만 코루틴은 선언하기 전에는 메모리를 잡아먹지 않아서 굉장히 잘 써먹는 중 오프젝트 풀은 유니티 안에서 Instantiate 와 Destroy 함수를 쓰지 않고 오브젝트를 켰다 껐다 하는 방식으로 사용하기 때문에 총알이나 동전 계속 리젠되는 몬스터 같은 경우에 사용하기 좋다. 물론 다시 켜질때 처음 상태로 .. 2015. 3. 22.
유니티 프레임 관련 이동 transform.position = new Vector3(float, float, float); - 절대좌표를 기준으로 위치시킴(순간이동) transform.translate(new Vector3(float, float, float)); - 상대좌표를 기준으로 위치시킴(매 프레임마다 값만큼 이동) 회전 transform.rotation = Quaternion.Euler(float, float, float); - 절대좌표를 기준으로 회전시킴(순간 회전) transform.Rotate(float, float, float); - 상대좌표를 기준으로 회전시킴(매 프레임마다 값만 큼 회전) 프레임 고정 1) 'Edit -> Project Settings -> Time'을 선택 후 'InsPector'에서 .. 2014. 12. 30.
[IT 북포럼/저자 특강] 따라하면서 배우는 NGUI 유니티 2D 게임 프로그래밍 2014. 12. 16.