본문 바로가기

C#10

Chapter 2-6. 무기 : Weapon Manager Chapter 2. 무기 Weapon Manager 🚖 무기 교체 📜WeaponManager.cs Holder에 붙인다. 매니저이니만큼 모두가 공유할 수 있는 static 멤버들을 가지고 있다. static 클래스 변수 접근이 쉽고 게임 내내 메모리에 남아 있다. 공유 되야 하므로. 따라서 남발하면 안되고 적재적소에 사용 하기를 권장 무기 교체 여러 무기들의 동작 관리 using System.Collections; using System.Collections.Generic; using UnityEngine; public class WeaponManager : MonoBehaviour { public static bool isChangeWeapon = false; // 무기 교체 중복 실행 방지. (Tru.. 2024. 3. 11.
Chapter 2-5. 무기 : 크로스헤어 Chapter 2. 무기 크로스헤어 🚖 크로스헤어 UI 만들기 CrossHair 빈 게임 오브젝트. 크로스 헤어를 나타내는 아래 5 가지 UI 요소들을 부모로서 묶는다. 크로스 헤어를 나타내는 5 가지의 이미지 UI 요소. 위치를 크로스헤어에 맞게 각각 설정해주었다. Dot 크로스 헤어 가운데 점. 크기 3 X 3. Line Right 크로스 헤어 오른쪽 선. 크기 20 X 3. Line Left 크로스 헤어 왼쪽 선. 크기 20 X 3. Line Up 크로스 헤어 위쪽 선. 크기 3 X 20. Line Down 크로스 헤어 아래쪽 선. 크기 3 X 20. 🚖 크로스헤어 애니메이션 동작에 따라 크로스헤어가 벌어지거나 투명해지는 등등 변화를 줄 것이라 애니메이션이 필요하다. 발사할 때 크로스 헤어가 벌어짐.. 2024. 3. 11.
Chapter 2-4. 무기 : 총알 HUD Chapter 2. 무기 총알의 상태를 알 수 있는 HUD 🚖 총알 HUD 만들기 캔버스 총알 HUD 를 그릴 종이 마련 캔버스 추가 Create - UI - Canvas Canvas의 Render Mode는 Screen Space -Overlay 로 해준다. 캔버스는 언제나 게임 화면 위에 덮어 씌워 그려지게 된다. ### 이미지 왼쪽 하단에 현재 총알 상태를 나타낼 배경 이미지 캔버스 위에 이미지 UI 를 추가해준다. 이미지 UI 는 Sprite 만 추가할 수 있다. 이미지 UI에 추가할 이미지 파일 설정 Texture Type 을 Sprite 로 설정 이미지 크기 맞추기 예를 들어 Sprite 이미지 파일의 너비 높이가가 182 x 38 이라면 182 를 커버할 수 있도록 Max Size를 256으.. 2024. 3. 11.
Chapter 2-3. 무기 : 총 피격 구현 Chapter 2. 무기 총 피격 구현 총알이 맞는 곳의 피격 효과 🚖 피격 위치 확인 📜GunController.cs // 추가한 멤버 변수 private RaycastHit hitInfo; // 총알의 충돌 정보 [SerializeField] private Camera theCam; // 카메라 시점에서 정 중앙에 발사할 거라서 private void Shoot() // 실제 발사 되는 과정 { // 발사 처리 currentGun.currentBulletCount--; currentFireRate = currentGun.fireRate; // 연사 속도 재계산 PlaySE(currentGun.fire_Sound); currentGun.muzzleFlash.Play(); // 피격 처리 Hit(); /.. 2024. 3. 11.
Chapter 2-2. 무기 : 총 구현 2️⃣ (재장전, 정조준, 반동) Chapter 2. 무기 총 구현 🚖 재장전 📜Gun.cs public int reloadBulletCount; // 총의 재장전 개수. 재장전 할 때 몇 발씩 될지. 총의 종류마다 다름. public int currentBulletCount; // 현재 총 안의 탄창에 남아있는 총알의 개수. public int maxBulletCount; // 총알을 최대 몇 개까지 소유할 수 있는지. public int carryBulletCount; // 현재 총 바깥에서 소유하고 있는 총알의 총 개수. 📜GunController.cs using System.Collections; using System.Collections.Generic; using UnityEngine; public class GunContro.. 2024. 3. 11.
Chapter 2-1. 무기 : 총 구현 1️⃣ (애니메이션, 파티클, 오디오) Chapter 2. 무기 총 구현 🚖 총 플레이어에게 붙이기 서브 머신건을 들고 있는 팔 모델 프리팹을 씬에 임포트 한다. 이름은 “SubMachineGun1”로 바꿔준다. Player Main Camera Weapon Camera Holder (📜HandController.cs, 📜GunController.cs) Handle Holder 서브 머신건 트랜스폼을 맞추기 위해 잠깐 비활성화 해두었다. Hand (📜Hand.cs) Gun Holder 빈 게임 오브젝트로 총 오브젝트를 자식으로 두며 총의 트랜스폼을 대신 담당 한다. 위치 (0, -0.8, 0), 회전 (0, 90, 0) 👈 기본 팔 붙일 때와 마찬가지로 Y축 90도 회전시켜 줌. SubMachineGun1 (📜Gun.cs) 트랜스폼은 원점으로.. 2024. 3. 11.