유니티 40

유니티 3D 쿼터뷰 액션게임 - 드랍 무기 입수와 교체

유니티 3D 쿼터뷰 액션게임 만들기 👾 드랍 무기 입수 / 교체 👾 1. 오브젝트 감지 ✏️ Player가 무기에 접근 인지 트리거 된 아이템을 저장하기 위한 변수선언 ✏️ 트리거 이벤트인 OnTriggerStay, Exit 사용 📌 OnTriggerStay() Wepon 태그를 조건으로 하여 로직 작성 무기 영역에 다가가면, other 변수에 저장 📌 OnTriggerExit() 무기 영역에서 벗어나면, nearObject는 없음을 표시 해당 영상은 OnTriggerEnter이어서 Stay와 숫자가 다를 수 있음 2. 무기 입수 🔻 무기와의 인터렉션을 위한 bool 값 선언 bool iDown; 🔻 Interaction 버튼 입력 Input Manager에서 Interaction button 생성 / ..

유니티 2022.04.20

유니티 3D 쿼터뷰 액션 게임 - 아이템 만들기 / Prefeb / Light Effect / Particle Effect

유니티 3D 쿼터뷰 액션게임 만들기 👾 아이템 만들기 👾 1. 아이템 준비 기존 Prefeb 아이템 추가 📣 아이템의 자식 Mesh Object에서 크기 및 위치 조정 매쉬가 포함된 오브젝트의 위치, 각도 조절하기 2. 라이트 이펙트 🔻 새 자식 오브젝트를 만들고 Light 컴포넌트추가 ✏️ Light 📌 Type : 광원 타입 Point 📌 Range : 빛의 범위 📌 Color : 빛의 색상 📌 Intensity : 빛의 세기 3. 파티클 이펙트 🔻 새 자식 오브젝트를 만들고 Particle System 추가 📣 색상이 마젠타 이라면 재질을 못찾았다는 의미 ! 🔻 Renderer에서 Material을 찾아서 연결 (Default-Line) 📌 Emission : 파티클 입자 출력양 📌 Shape : ..

유니티 2022.04.19

유니티 3D 쿼터뷰 액션게임 만들기 - 플레이어 점프 / 회피

유니티 3D 쿼터뷰 액션게임 만들기 👾 플레이어 점프 / 회피 1. 코드 정리 🔻 기능에 따라 구분되도록 함수 분리 Update() : 함수 호출 GetInput() : 버튼 입력 Move() : Player 이동값 설정 Turn() : Player 방향 설정 2. 점프 , 착지, 회피 구현 ✏️ 점프 버튼 입력 / 출력 / 한 번 만 점프하기 - Player가 점프할 수 있도록 Rigidbody를 선언 - 버튼 입력을 받는 jDown / 점프 중임을 구분하는 Jumping - Jump()는 점프버튼을 누르면서, 점프를 하고 있지 않을 때 실행됩니다 - OnCollision--()은 Player이 Floor를 만나면 점프하지 않은 상태이므로, 한 번 만 점프가 가능하다 ✏️ 회피 및 착지 애니메이션 -..

유니티 2022.04.19

유니티 3D 쿼터뷰 액션게임 - 플레이어 이동

유니티 3D 쿼터뷰 액션게임 만들기 👾 플레이어 이동 1. 지형 만들기 ✏️ 지형 만들기 - Floor , Wall 4개 만들어서 플레이어가 움직일 공간 만들기 - 현재 시점에서 보이지 않는 두 벽은 Mesh Renderer를 비활성화하여 겉보기를 감춥니다 ✏️ 텍스처 넣기 - Albedo 옆 원을 눌러 텍스처 이미지 선택 - Tiliing 개수를 높여 패턴 만들기 2. 플레이어 만들기 ✏️ Player에 필요한 컴포넌트 Rigidbody + Collider + Script 🔻 Player Collider의 크기와 반지름을 조정하여 Player와 비슷한 크기로 만듭니다 ✏️ 플레이어 상하좌우 이동 로직 - Input Axis 값을 받을 전역변수 선언 - moveVec 는 Player가 움직이는 Vecto..

유니티 2022.04.18

유니티 Roll-a-ball 간단한 게임 만들기

유니티 기초 3D 게임 만들기 간단한 공굴리기 게임 만들기 *게임 개발은 계획부터 차근차근 ! 유니티에서 기초적인 튜토리얼 'Roll-a-ball' Roll-a-ball 설명 #1. 게임 이름 굴러서 아이템 먹기 #2. 장르 캐주얼 액션 #3. 목표 지형을 뛰어넘어 굴러서 아이템을 먹고 목표지점에 도달 #4. 구성 공(Player), 아이템(Item), 지형(Platform), 결승점 (Point) 1. 플레이어 생성 및 조작 구를 생성하여 Player로 지정해주고, 할당 스크립트와 Rigidbody 컴포넌트를 추가합니다 ✏️ Player 상하좌우 조작 - Rigidbody 선언 및 초기화 - 방향 조작 로직 ✏️ Player Jump - Input 버튼 중, Jump (space바) 가능하도록 설정 -..

유니티 2022.04.17

유니티 게임 인터페이스 UI 기초 / Canvas / Text / Image / Button

TIL 📝 게임 인터페이스 UI 📝 Canvas 📝 Screen 📝 Text / Image 📝 Button / Anchor 유니티 게임 인터페이스 UI 기초 👩‍💻 캔버스 📌 Canvas UI가 그려지는 도화지 역할 컴포넌트 모든 UI 요소가 캔버스 오브젝트의 자식입니다 🔻 Hierarchy - UI 컴포넌트를 추가할 수 있습니다 🔻 Canvas를 추가하면 흰 색 캔버스가 씬 창에 나타납니다. 2D를 활성화시켜 화면을 정면에서 바라볼 수 있습니다 👩‍💻 스크린 📌 Screen 게임이 표시되는 화면, 해상도로 크기 결정 🔻 Canvas를 추가하면 흰 색 직사각형이 씬 창에 나타납니다. 2D를 활성화시켜 화면을 정면에서 바라볼 수 있습니다 마우스 커서도 스크린 좌표계에 포함됩니다 👩‍💻 텍스트 UI..

유니티 2022.04.13

유니티 물리 충돌 이벤트 / OnCollision-- / OnTrigger--

TIL 📝 물리 충돌 이벤트 📝 OnCollision-- 📝 트리거 이벤트 📝 OnTrigger-- 👩‍💻 물리 충돌 이벤트 Ball이 다른 Ball과 충돌했을 때 Meterial Color가 변하는 물리 충돌 이벤트를 구현해보겠습니다 줄무늬 공 : Ball_1 나머지 공 : Ball_2 ~ Ball_5 색이 변하는 나머지 검은 색 공에게 적용할 스크립트를 새로 생성합니다 📌 오브젝트의 재질 바꾸기 오브젝트의 재질 접근은 MeshRenderer를 통해서 합니다 즉, MeshRenderer - Materials - otherBall에 접근해서 Albeo 색을 바꾸는 로직이 필요합니다 마찬가지로 선언 -> 초기화 -> 호출 과정이 필요합니다 📍 선언 MeshRenderer mesh; Material ma..

유니티 2022.04.12

유니티 물체 이동하기 AddForce / ForceMode / AddTorque

TIL 📝 Rigidbody 📝 물체 속도 설정해서 움직이기 📝 물체에 힘을 가해서 움직이기 📝 버튼 입력으로 움직이기 📝 회전력을 주어 움직이기 👩‍💻 RigidBody 물리효과를 받기 위한 컴포넌트 RigidBody를 가지게 되면 중력의 영향을 받습니다 🔎 RigidBody를 이용하여 오브젝트를 움직이는 여러 방법을 살펴보겠습니다 🔻 Rigidbody component를 Ball 에 추가한 후, Rigidbody를 변수로 가져오기 위해서 스크립트를 새로 만들어 추가합니다 가운데 있는 줄무늬 공이 오늘의 메인 오브젝트 입니다 Ball Script 👩‍💻 코드 흐름은 선언 -> 초기화 -> 호출 📍 선언 Rigidbody rigid; 변수명 rigid 인 Rigidbody component 선언 📍 초..

유니티 2022.04.11

유니티 오브젝트 중력과 충돌 / Material / Collider / RigidBody 기초

TIL 📝 중력 적용하기 📝 충돌 영역 정하기 📝 리지드 바디 설정 📝 재질 만들기 📝 물리 재질 만들기 👩‍💻 중력 적용하기 유니티는 컴포넌트 기반 게임 엔진으로, 필요한 기능을 조립하는 방식으로 오브젝트를 꾸려나갑니다 📌 RigidBody 물리효과를 받기 위한 컴포넌트 RigidBody를 가지게 되면 중력의 영향을 받습니다 🔻 캡슐 오브젝트에 Rigidbody를 추가하고 플레이 캡슐 오브젝트에 Rigidbody를 추가하고 플레이 👩‍💻 충돌 영역 정하기 📌 Collider 물리효과를 받기위한 컴포넌트 (오브젝트에 초록색으로 그어진 영역) Collider를 비활성화/삭제하면 계속해서 아래로 빠집니다 🔻 Collider 비활성화 체크해제 🔻 비활성화 후 아래로 계속 내려가는 캡슐 ✏️ 또 다른 사실 Co..

유니티 2022.04.11

유니티 목표지점으로 이동하기 - (Vector3) MoveTowards / SmoothDamp / Lerp / Slerp

[ 목표 지점으로 이동하기 ] & [ 이동 함수 ] Vector3 클래스에서 제공하는 이동 함수 MoveTowards / SmoothDamp / Lerp / Slerp > position 과 Translate 비교 ! - transform.position Wolrd 좌표 값 , 월드 좌표를 기준으로 물체를 이동 Vector에 해당하는 좌표로 이동 - transform.Translate Local 좌표 값 , 물체를 기준으로 물체를 이동 Vector값을 현재 위치에 더하는 함수 = 해당 오브젝트를 Vector3에 넣은 좌표값 만큼 이동 1. MoveTowards ( 단순 등속 이동 ) 기본 형식 Vector3.MoveTowards(현재위치, 목표위치, 속도); MoveTowards의 매개변수는 (현재위치,..

유니티 2022.04.09