유니티(Unity) 조이스틱 버튼 입력 사용하기(InputManager) 1)프로젝트 설정(project settings)에서 InputManager를 확인합니다.입력 관리자(InputManager)에서 사전설정된 몇가지 유형의 컨트롤(키, 버튼, 가상축 )을 확인할수있습니다. https://docs.unity3d.com/2021.3/Documentation/Manual/class-InputManager.html 2)Fire1(Fire2)에서 Positive Button에 joystick button 0(joystick button 1)으로 사전설정된 컨트롤을 확인합니다. 3)씬에 게임오브젝트를 생성하고 새로운 스크립트를 추가합니다. Input.GetKeyUp함수 또는 Input.GetButtonUp함수..
유니티(unity)에서 UI 마우스 클릭 이벤트 사용하기(IPointerClickHandler, OnPointerClick) IPointerClickHandler, OnPointerClick를 사용한 마우스 클릭 이벤트 감지 1)씬에 UI 게임오브젝트를 추가하고 구성합니다(Canvas, Panel) UI 마우스 클릭 이벤트 감지를 사용하려면 씬에 이벤트 시스템이 존재해야합니다(EventSystem) 2)캔버스(Canvas) 오브젝트에 Graphic Raycaster 컴포넌트가 존재하는지 확인합니다. 그래픽 레이캐스터에서 후면 그래픽 레이캐스트를 사용할지 설정하고(Ignore Reversed Graphics) 레이캐스트 차단 마스크를 설정합니다(Blocking Mask) 3)클릭 이벤트를 사용할 UI 게임..
유니티(Unity) 자식 오브젝트 컴포넌트 가져오기(GetComponentInChildren함수) 다수의 자식 오브젝트가 존재하는 경우 특정한 타입의 컴포넌트를 가지는 게임 오브젝트의 컴포넌트를 가져오기 1)다수의 자식 오브젝트(child)를 가지는 부모 오브젝트(parent)를 준비합니다. 한 개의 자식 오브젝트에 컴포넌트를 추가합니다. 2)새로운 스크립트에서 GetComponentInChildren함수를 사용하여 자식 오브젝트의 컴포넌트를 가져오고 게임오브젝트의 이름을 출력합니다. 3)스크립트를 부모 오브젝트에 추가합니다. 4)게임을 시작하면 다수의 자식 오브젝트중에서 특정한 타입의 컴포넌트(Rigidbody)를 가진 게임오브젝트의 이름을 출력합니다(해당 컴포넌트를 가지는 자식 오브젝트가 두개이상이면..
유니티 빌드 오류 currently selected scripting backend(IL2CPP) is not installed 1)프로젝트를 빌드할때 콘솔 윈도우에서 아래 오류 문구를 표시합니다. currently selected scripting backend(IL2CPP) is not installed 2)또는 build settings의 현재 선택한 플랫폼에 대해 동일한 오류 문구를 표시합니다. 3)유니티 허브의 설치(installs) 메뉴에서 현재 프로젝트의 유니티 에디터 버전의 설정 버튼을 클릭합니다. 4)add modules를 선택합니다. 5)플랫폼에 대한 build support(IL2CPP)를 선택하고 install을 클릭하면 해당 모듈을 설치합니다. 6)설치가 완료되면(installed..
유니티 조이스틱 및 게임 컨트롤러 입력 자료모음 Input.GetAxis 조이스틱 입력 장치에 대해서 가상 축의 값을 반환하는 함수, 조이스틱의 스틱 위치에 따라서 -1에서 1사이의 실수값을 반환합니다. 조이스틱의 중간 위치에있으면 0값을 반환합니다. https://docs.unity3d.com/ScriptReference/Input.GetAxis.html xbox 컨트롤러 사용자 입력 설정 https://learn.unity.com/tutorial/configuring-an-xbox-controller-for-user-input-2019-3#
유니티에서 가져오기(import)한 3D 모델의 축 변환(axis conversion) (유니티 버전 2021.3.6f1) 1)3D 맥스에서 모델을 준비합니다. 2)FBX export 옵션의 advanced options에서 axis conversion의 Up Axis를 Z-up으로 변경하고 내보내기합니다(export) 3)내보내기한 3D 모델을 유니티에서 가져오기합니다. 모델의 축이 정상적으로 설정되어있지않은것을 확인할수있습니다. 4)모델의 가져오기 설정(import settings)에서 bake axis conversion에 체크하고 적용합니다(apply) 5)씬에 모델을 추가하고 확인합니다. 오브젝트의 트랜스폼 회전(rotation)값이 초기화(0, 0, 0)되어 있고 축이 정상적으로 설정되어있는것..
유니티에서 3D 메시(mesh)에서 방출하는 파티클 시스템 만들기(Shuriken) 1)새로운 파티클시스템을 생성합니다. 2)파티클시스템의 속성을 설정합니다(start lifetime, start speed, start size, max particles, emission rate over time) 3)파티클시스템에서 사용할 모델의 메시(mesh)와 텍스처를 준비합니다. 4)shape 모듈에서 shape의 mesh, type의 triangle를 선택합니다. texture에서 모델의 텍스처를 참조합니다. 5)모델의 메시에서 파티클이 방출되는것을 확인할수있습니다.
유니티 메시 클래스(Mesh) 레퍼런스 모음 메시 클래스 mesh클래스 메시를 생성하거나 수정할수있는 클래스정점과 다수의 삼각형 배열을 포함합니다. Mesh.vertices https://docs.unity3d.com/ScriptReference/Mesh-vertices.html Mesh.triangles https://docs.unity3d.com/ScriptReference/Mesh-triangles.html Mesh.GetTriangles https://docs.unity3d.com/ScriptReference/Mesh.GetTriangles.html Mesh.GetIndices https://docs.unity3d.com/ScriptReference/Mesh.GetIndices.html Mesh...
유니티에 가져오기한(import) 3D오브젝트의 회전(rotation) 재설정 1)3D맥스(3D프로그램)에서 3D모델을 준비합니다. 2)상단의 file 메뉴에서 export의 export selected를 선택합니다(fbx 파일형식) 3)FBX 내보내기(export) 옵션에서 axis conversion의 up axis를 확인합니다. 기본 옵션 Y-up을 선택하고 확인합니다. 4)유니티에서 3D모델을 가져오기합니다(import) 가져오기한 3D 모델의 회전이 설정되어있는것을 확인할수있습니다. 5)씬에 오브젝트를 추가하고 회전(rotation)을 확인합니다. 6)회전(rotation)의 값을 초기화하면 오브젝트도 회전합니다. 7)3D맥스에서 모델의 회전을 반대방향으로 설정합니다. 8)utilities의 r..
유니티(unity) 비주얼이펙트 그래프(VFX graph)에서 파티클스트립(particle strip) 사용하기 (사용 버전 - Unity 2021.3.6f1, URP 12.1.7, Visual Effect Graph 12.1.7 ) 1)새로운 비주얼이펙트그래프를 생성하고 spawn의 rate 수치와 initialize particle의 capacity 수치를 높입니다. 2)initialize particle에서 set position(shape:arc sphere)를 추가합니다. 3)update particle에서 conform to sphere와 turbulence를 추가하고 속성을 설정합니다. 4)update particle에서 trigger event rate(over time)을 추가합니다. 5..
유니티(unity) 비주얼이펙트 그래프(VFX graph)에서 SDF 사용하기 (사용 버전 - Unity 2021.3.6f1, URP 12.1.7, Visual Effect Graph 12.1.7 ) 3D모델의 SDF를 생성하고 비주얼이펙트그래프에서 SDF를 설정하는 방법 SDF bake tool을 사용하여 3D 모델의 SDF 생성하기 1)프로젝트에 3D모델 에셋을 가져오기하고 메시(mesh)를 확인합니다. 2)상단의 window 메뉴에서 visual effects의 utilities에서 SDF Bake Tool로 이동합니다. SDF Bake Tool 3)Model Source에서 Mesh를 선택하고 Mesh에서 SDF를 생성할 메시(Mesh)를 설정합니다. 하단에서 해당 메시와 박스 미리보기를 확인할수..
유니티 리모트(unity remote) 앱을 사용하여 실시간 모바일 테스트하기(안드로이드, ios) (사용버전 - Unity 2021.3.6f1, unity remote 5) Unity Remote를 사용하면 안드로이드 또는 ios 기기를 사용하여 프로젝트를 빌드할 필요없이 에디터의 플레이모드에서 실시간으로 게임을 테스트할 수 있습니다. https://docs.unity3d.com/kr/2019.4/Manual/UnityRemote5.html 1)모바일 기기를 데이터 케이블을 사용하여 pc에 연결합니다. (안드로이드의 경우 USB디버깅허용, 아이폰의 경우 아이튠즈 설치) 2)유니티 에디터의 프로젝트 설정(project settings)에서 editor로 이동합니다. unity remote의 device에..