본문 바로가기

Unity40

VR을 위한 카메라 회전값 설정 Y축 기준(Yaw), X축 기준(Pitch), Z축 기준(Roll)의 회전값은 각각 x, y값이 변한다. void Update () { #마우스 Y, X의 이동값을 mx, my로 지정 #마우스 Y는 Y축 기준의 회전값이므로 X값이 변한다. X도 마찬가지 float mx = Input.GetAxis("Mouse Y"); float my = Input.GetAxis("Mouse X"); RX += mx * sensitivity * Time.deltaTime; RY += my * sensitivity * Time.deltaTime; RX = Mathf.Clamp(RX, -60, 60); transform.eulerAngles = new Vector3(-RX, RY, 0); #endif } 2020. 8. 30.
특정 객체를 Play 모드에서 사라지게 만들기 상황에 따라서 물리적 계산을 하되, 화면에서 사라져 보이는 상태로 만들기. (예: 게임에서 특정지역 밖으로 캐릭터가 진입하지 못하게 벽체 형태를 만들고 Collider를 부여한 형태) 1. 별도의 Layer를 생성하고, 벽체 형태(+Collider)의 객체를 해당 Layer에 위치 시킨다. 2. Main Camera의 Inspector 뷰에서 Culling Mask 부분을 선택하고, 사라지게 할 객체들이 놓여있는 Layer를 선택해제 한다. 2020. 8. 30.
Input Manager (키보드 입력, 마우스 클릭, 조이스틱 등) Edit-Project Settings - Input Manager카테고리내에서 확인 가능. Key: 실제 키보드 상의 키, 예) W, Shift, space bar 등 Buttons: 물리적 콘트롤러의 버튼, 예) Xbox One 컨트롤러의 X 버튼 등 Virtual Axis: 매핑되어 있는 버튼이나 키. Axis는 -1~1의 값을 받는다. (중립값은 0). Mouse delta (한 frame내 마우스를 움직인 정도)는 마우스의 움직임 정도에 따라-1보다 작을 수 있으며 1보다 클 수 있다. Input Manager에서 각 Axis의 설정값 설명 구분 설명 Name Axis 이름. 이 이름을 사용해서 Script에서 접근 가능 Negative/Positive Button 키보드의 키, 마우스/조이스틱.. 2020. 8. 11.
Unity Scripting References 스크립팅 관련 자료 2020.2 버전 기준 Scripting References 영어: docs.unity3d.com/2020.2/Documentation/ScriptReference/ Unity - Scripting API: Welcome to the Unity Scripting Reference! This section of the documentation contains details of the scripting API that Unity provides. To use this information, you should be familiar with the basic theory and practice of scripting in Unity which is explain docs.unity3d.com 한국어: doc.. 2020. 8. 10.
Oculus Quest에 로드된 App 삭제하기: adb 활용 1. Unity-Preferences에 들어간다. 2. External Tools에서 Andriod SDK의 위치를 Copy Path를 클릭해서 복사한다. 3. Mac의 Terminal 앱을 열고 아래와 같이 명령어를 입력한다. cd /Applications/Unity/Hub/Editor/2019.4.6f1/PlaybackEngines/AndroidPlayer/SDK 4. 아래의 명령어를 입력해서 리스트를 확인한다. ls -la 5. 아래의 명령어를 입력한다. cd platform-tools ./adb devices Quest가 컴퓨터와 연결되어 있고, Quest의 Developer Mode가 활성화 되어 있다면 아래와 같이 연결된 Quest Device를 볼 수 있다. 6. 아래의 명령어를 입력하면 Q.. 2020. 8. 6.
Rhino to Unity 내보내기 Rhino에서 아래 사항을 미리 준비한다. 1. Layer별로 객체를 이동시킨다. Layer가 상위 GameObject가 되며, 그 Layer 내부의 객체들이 하위 GameObject가 된다. 2. Layer별로 Material을 부여하면, 그대로 Unity에 딸려온다. (Unity는 기본적으로 무작위/알파벳 순으로 Hierarchy가 정렬되므로 Layer이름 앞에 숫자를 부여하는게 좋다.) 3. MotionBuilder(.fbx.)로 Export 한다. Save Geometry Only 옵션을 선택하지 않으면 Rhino 각 View의 카메라가 GameObject로 생성되므로, Save Geometry Only를 선택한다. 저장 시 그 외의 옵션은 그냥 OK로 넘어간다. 4. Unity의 Project .. 2020. 8. 6.
추천 Project 폴더 구조 Unity 프로젝트 제작시 아래와 같은 폴더 구조를 추천 01.Scenes: 생성된 Scenes 02.Scripts: 각종 Scripts 03.Prefabs: Hiearchy의 Model을 이 폴더로 Dragging시 Prefabs으로 자동 변환 04.Images: 각종 이미지 모음 (Materials라는 하위 폴더를 만들어서 Scene에 사용된 재질을 모아두는 폴더) 05.Models: Import한 3d모델 06.Sounds: 소리 07.Animations: 움직임 데이터 08.Effects: 각종 특수효과 Resources(대소문자, 복수형 필수): Unity에서 지정한 특수 폴더로서 Resources에 있는 데이터는 빌드 시 무조건 포함됨. 하지만 일반적인 Data와는 다르게 메모리를 점유하지 않.. 2020. 8. 6.
Rhino to Unity 축 변환 Rhino 모델을 Unity로 Motion FBX 파일로 불러들이면 아래와 같은 축변환이 발생한다. Z축: +Z축이 +Y축으로 변환 X축: -X축이 +X축으로 변환 Y축: +Y축이 -Z축으로 변환 Rhino 모델 준비 시, Z축은 신경쓰지 말고, X축 방향만 뒤집으면 됨. 2020. 8. 6.
Unity에서 Oculus Quest 사용하기 01 - Unity Setting (Mac용 Unity 2019.4.6f1 LTS기준) 출처: medium.com/@sofaracing/how-to-develop-for-oculus-quest-on-macos-with-unity-5aa487b80d13 1. Andriod Build Suppor가 설치되어 있지 않다면, Unity Hub의 Installs 패널에서 Add Modules를 통해서 Andriod Build Support를 설치한다. 하위의 Andriod SDK & NDK Tools와 OpenJDK 모두 선택되었는지 확인한다. 2. Unity Asset Store에서 Oculus Integration를 다운로드, 모든 항목을 Import 한다. 3. 설치 중에 뜨는 창에서 모두 Yes를 클릭한 후, 최종적으로 Unity를 Res.. 2020. 8. 5.
Mecanim - 01. Humanoid 생성/설정 1. Humanoid로 rig의 animation type을 변경한다. 2. Configure 버튼을 눌러서 Skeleton상황을 확인한다. (실선 원 마크가 된 부분은 필수 15개 bone, 점선의 원 마크는 추가적인 옵션 bone) 3. 인체 각 부위에 대한 세부 내용을 확인할 수 있다. 4. Muscles & Settings 탭에 가서 슬라이드바를 이동하여 움직임을 확인할 수 있다. 5. Per-Muscles Settigns에서 가동 범위를 지정할 수 있다. 6. Monster 3d 모델을 선택하고, inspector에서 animaion탭에서 지정된 animation을 확인할 수 있다. 7. Loop이 필요한 animation의 경우, Loop 옵션을 선택한다. (idle, walk, attack .. 2020. 8. 5.
Order of Execution for Event Functions docs.unity3d.com/Manual/ExecutionOrder.html Unity - Manual: Order of Execution for Event Functions Understanding Automatic Memory Management Order of Execution for Event Functions Running a Unity script executes a number of event functions in a predetermined order. This page describes those event functions and explains how they fit into the execution se docs.unity3d.com docs.unity3d.com/Manual/E.. 2020. 8. 4.