집에 있는 맥 컴퓨터를 사용을 너무 오랫동안 하지 않아서 비번이 기억 나지 않는 경우에 반드시 알아두면 도움이 됩니다. 하드에 있는 내용이 중요한 것이 있다면 이 방법을 사용해서는 안됩니다. 컴퓨터를 켜고 아래의 북구 방법에 따라서 버튼을 누르고 있어야 합니다. 로컬 북구 시스템 : command + R인터넷 복구 시스템 : command + option + R 위 화면처럼 나와서 한참동안 진행이 될 것입니다. 빠르게 복구 하는 방법은 로컬 복구로 사용하면 된다. 하지만 로컬 복구 정보가 있는 파티션에 문제가 생겼다면 인터넷 복구를 선택해야 합니다.그리고 로컬 복구는 컴퓨터에 설치된 가장 최신 버전으로 설치 되지만 인터넷 복구는 처음 제품을 구입할때 제공되는 버전으로 설치됩니다. 인터넷 복구는 당연히 인..
오디오 클립(Audio Clip) 오디오 클립 은 오디오 소스가 사용하는 오디오 데이터를 포함합니다. Unity 는 모노, 스테레오 및 멀티 채널의 오디오 에셋(최대 여덟 개 채널)을 지원합니다. Unity 에서 임포트할 수 있는 오디오 파일 포맷은 .aif, .wav, .mp3, 및 .ogg 입니다. Unity 는 .xm, .mod, .it, 및 .s3m 형식의 트래커 모듈도 임포트할 수 있습니다. 웨이브폼 미리보기를 에셋 임포트 인스펙터에서 볼 수 없다는 점을 제외하고는 트래커 모듈 에셋은 Unity 의 다른 오디오 에셋과 동일한 기능을 합니다. # 기본옵션 - Force To Mono이 옵션을 활성화하면 패킹 전에 멀티 채널 오디오가 모노 트랙으로 믹스다운됩니다. - Normalize이 옵션을 활성..
[물리엔진 최적화] # Fixed Update 주기 조절 - FixedUpdate()는 Update와 별도로 주기적으로 불리며, 주로 물리 엔진 처리 - 디폴트는 0.02초, 즉 1초에 50번 호출합니다. - TimeManager에서 수정이 가능합니다. - 게임에 따라 0.2초 정도(혹은 이상)로 수정해도 문제 없습니다. # 물리 엔진 설정 - Static Object [1] 움직이지 않는 배경 물체는 Static으로 설정합니다. - 충돌체의 이동 [1] 리지드 바디가 없는 고정 충돌체를 움직이면 CPU 부하가 발생합니다 - 물리 월드 재구성 [2] 이럴 경우에 리지드 바디를 추가하고 IsKinematic 옵션을 사용. - Maximum Allowed timestep 조정 [1] 시스템에 부하가 걸려 지..
[CPU 처리 과정 이해] - CPU는 중앙처리 장치로서 대상을 화면에 그려야 할 방법을 결정합니다.- GPU는 그래픽 처리 장치로서 CPU 지시에 따라서 화면을 그립니다.- 그래서 렌더링 과정에서 어떤 작업 흐름에 따라서 처리되는지 살펴봅니다. # 매 프레임 렌더링 될때마다 CPU의 할 일 - CPU는 오브젝트의 렌더링 여부를 결정하기 위해, Scene안의 모든 오브젝트를 검사합니다. 검사 과정에서 특정 기준에 해당 하는 오브젝트만 렌더링됩니다. 예를 들어, 카메라 뷰 프러스텀(Frustum)내에 위치되면 렌더링하고 그 외 오브젝트는 cull 처리 됩니다. - CPU는 렌더링 되는 모든 오브젝트에 정보를 수집하여, 드로우 콜(Draw Call)이라는 명령 단위로 정렬합니다. 드로우 콜에는 단일 메쉬가 ..
Instantiate 는 아주 유용하다. 오브젝트를 복세하는 것입니다. original 매개 변수에 명시된 개체를 복제하여 position에 명시된 위치에 복제품을 위치시키며, rotation 변수에 따라 회전 값을 설정한 후 개체를 반환합니다. 에디터에서 복사하여 하나 더 만드는 기능과 같은 역화를 합니다. 만일 게임 오브젝트, 컴포넌트 또는 스크립트 인스턴스가 넘겨진 경우, Instantiate 함수를 사용하면 소속된 게임 객체 계층을 하위객체도 빠짐없딩 통째로 복제합니다. // 각각 떨어진 2개 조립유닛 10카피를 예로 설명합니다. var prefab : Transform; for (var i : int = 0;i
Unity 에디터에서 인스펙터를 이용하여 컴포넌트 속성을 언제든 쉽게 변경할 수 있습니다. 하지만 코딩으로 직접 제어하기 위해서 필요한 컴포넌트의 접근이 필요합니다. 그렇지 않으면 미리 변수를 만들어서 에디터에서 미리 변수와 연결 시켜 놓아도 좋지만 변수가 너무 많아 질 수 있습니다. 그리고 오브젝트를 코딩으로 생성과 소멸을 할 수 있게끔 구성하여 만들 수 있을려면 코딩으로 어느 정도의 접근을 해야 합니다. 에디터 사용하지 않아도 코딩으로 다 할 수 있지만 적절하게 분리해서 사용하는 센스가 있어야 겠지요. 유니티에 있는 설명서를 참조해서 정리하도록 하겠습니다. 자신에 GetComponent 사용 가장 단순하고 자주 사용하는 경우, 클래스로 컨포너트를 인스터스한 경우에, 쉽게 사용할 수 있습니다. void..