Unity/PROJECT_S

-
오늘은 디펜스 시스템인 센트리 건을 구현하려 한다. 센트리 건 모델을 직접 만들어서 프로젝트 진행이 지체됐다. 먼저 플레이어의 총기와 센트리 건의 발사 디테일을 위해 총기 반동을 다시 구현했다. (총알 생성 방식을 오브젝트 풀링 방식으로 수정해서 기존 총기 반동 코드는 삭제했다.) Procedural Recoil System | Unity Tutorial 총기 반동 시스템을 디테일하게 구현하는 방법이 있어 참고했다. Recoil.cs using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; public class Recoil : MonoBehaviour { Vector3..
[Unity] PROJECT_S / 23.09.11오늘은 디펜스 시스템인 센트리 건을 구현하려 한다. 센트리 건 모델을 직접 만들어서 프로젝트 진행이 지체됐다. 먼저 플레이어의 총기와 센트리 건의 발사 디테일을 위해 총기 반동을 다시 구현했다. (총알 생성 방식을 오브젝트 풀링 방식으로 수정해서 기존 총기 반동 코드는 삭제했다.) Procedural Recoil System | Unity Tutorial 총기 반동 시스템을 디테일하게 구현하는 방법이 있어 참고했다. Recoil.cs using System.Collections; using System.Collections.Generic; using Unity.VisualScripting; using UnityEngine; public class Recoil : MonoBehaviour { Vector3..
2023.09.11 -
적 스폰이나 총알 발사 같은 오브젝트 생성과 삭제를 많이 하다 보면 성능 저하가 있다고 한다. 그래서 오늘은 오브젝트 풀링으로 적 스폰과 총알 발사를 구현하기 위해 코드를 수정하려 한다. 또, 총알 충돌 감지를 정확히 하려고 레이캐스트를 이용하는 등 자잘한 코드나 설정도 수정했다. 오브젝트 풀링🏊으로 소환하기 [유니티 뱀서라이크 06] 오브젝트 풀링을 구현하는데 '골드메탈'님의 강좌가 많이 도움이 되었다. 골드메탈 유니티 엔진으로 게임 개발을 다루는 창작&교육🎓채널입니다. 프로그래밍, 그래픽 등 게임 개발에 관련된 다양한 분야의 컨텐츠를 진행하는데요, '게임 개발의 민주화' 유니티 정신을 이어받아 www.youtube.com PoolManager.cs using System.Collections; usi..
[Unity] PROJECT_S / 23-08-31적 스폰이나 총알 발사 같은 오브젝트 생성과 삭제를 많이 하다 보면 성능 저하가 있다고 한다. 그래서 오늘은 오브젝트 풀링으로 적 스폰과 총알 발사를 구현하기 위해 코드를 수정하려 한다. 또, 총알 충돌 감지를 정확히 하려고 레이캐스트를 이용하는 등 자잘한 코드나 설정도 수정했다. 오브젝트 풀링🏊으로 소환하기 [유니티 뱀서라이크 06] 오브젝트 풀링을 구현하는데 '골드메탈'님의 강좌가 많이 도움이 되었다. 골드메탈 유니티 엔진으로 게임 개발을 다루는 창작&교육🎓채널입니다. 프로그래밍, 그래픽 등 게임 개발에 관련된 다양한 분야의 컨텐츠를 진행하는데요, '게임 개발의 민주화' 유니티 정신을 이어받아 www.youtube.com PoolManager.cs using System.Collections; usi..
2023.08.31 -
다음 기능들을 구현하려는데 문제가 발생하여 먼저 수정했다. 빈 오브젝트를 삭제하고 하위 오브젝트였던 캡슐 오브젝트를 Player로 변경했다. 그리고 카메라 상위 오브젝트로 빈 오브젝트를 생성했다. Player_Ctrl.cs using System.Collections; using System.Collections.Generic; using UnityEditor.SceneManagement; using UnityEngine; using UnityEngine.UIElements; public class Player_Ctrl : MonoBehaviour { Vector3 moveVec; // 플레이어의 이동 방향을 저장하는 변수 float moveSpeed; // 플레이어의 이동 속도를 설정하는 변수 Rigi..
[Unity] PROJECT_S / 23-08-22다음 기능들을 구현하려는데 문제가 발생하여 먼저 수정했다. 빈 오브젝트를 삭제하고 하위 오브젝트였던 캡슐 오브젝트를 Player로 변경했다. 그리고 카메라 상위 오브젝트로 빈 오브젝트를 생성했다. Player_Ctrl.cs using System.Collections; using System.Collections.Generic; using UnityEditor.SceneManagement; using UnityEngine; using UnityEngine.UIElements; public class Player_Ctrl : MonoBehaviour { Vector3 moveVec; // 플레이어의 이동 방향을 저장하는 변수 float moveSpeed; // 플레이어의 이동 속도를 설정하는 변수 Rigi..
2023.08.22 -
카메라 시점과 플레이어 오브젝트의 색상을 변경했다. (전에 사용한 빨간색은 적 오브젝트에 사용할 예정이다.) 그리고 직사각형 오브젝트는 플레이어 캠프로 사용하기 위해 만들었다. Player_Ctrl.cs #region 플레이어 회전 // 마우스 위치를 화면에서 광선으로 변환 Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; // 광선이 물체와 충돌 여부를 위한 변수 // 광선이 물체와 충돌하는지 확인 if (Physics.Raycast(ray, out hit, 100)) { // 플레이어가 바라볼 방향 벡터를 계산 Vector3 rotateVec = hit.point - rotateObject.transform.pos..
[Unity] PROJECT_S / 23-08-21카메라 시점과 플레이어 오브젝트의 색상을 변경했다. (전에 사용한 빨간색은 적 오브젝트에 사용할 예정이다.) 그리고 직사각형 오브젝트는 플레이어 캠프로 사용하기 위해 만들었다. Player_Ctrl.cs #region 플레이어 회전 // 마우스 위치를 화면에서 광선으로 변환 Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; // 광선이 물체와 충돌 여부를 위한 변수 // 광선이 물체와 충돌하는지 확인 if (Physics.Raycast(ray, out hit, 100)) { // 플레이어가 바라볼 방향 벡터를 계산 Vector3 rotateVec = hit.point - rotateObject.transform.pos..
2023.08.21 -
프로젝트는 유니티 2022.3.7f1 버전으로 진행했으며 3D 템플릿으로 생성했다. 우선 Plane으로 바닥과 임시로 플레이어를 대체할 Capsule을 만들었다. 대부분 오브젝트들의 3D 모델은 나중에 추가할 예정이다. 그다음 탑뷰를 구현하기 위해 빈 오브젝트를 만들고 하위 오브젝트로 캡슐과 메인 카메라를 넣었다. Player_Ctrl.cs using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UIElements; public class Player_Ctrl : MonoBehaviour { Vector3 moveVec; // 플레이어의 이동 방향을 저장하는 변수 float moveSpe..
[Unity] PROJECT_S / 23-08-18프로젝트는 유니티 2022.3.7f1 버전으로 진행했으며 3D 템플릿으로 생성했다. 우선 Plane으로 바닥과 임시로 플레이어를 대체할 Capsule을 만들었다. 대부분 오브젝트들의 3D 모델은 나중에 추가할 예정이다. 그다음 탑뷰를 구현하기 위해 빈 오브젝트를 만들고 하위 오브젝트로 캡슐과 메인 카메라를 넣었다. Player_Ctrl.cs using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UIElements; public class Player_Ctrl : MonoBehaviour { Vector3 moveVec; // 플레이어의 이동 방향을 저장하는 변수 float moveSpe..
2023.08.18 -
여름방학 시작과 동시에 실력 향상과 프로젝트 경험을 위해 게임 개발을 시작했다. 개발할 게임의 이미지는 머릿속에 다 그려져 있지만, 기획 내용은 거의 적지 않았다. 기획이 중요한 건 알지만 백문이 불여일견이라고 개발에 중점을 두었다. 일단 적어놓은 기획 내용은 아래와 같다. 장르 탑뷰 / 생존 / 디펜스 콘셉트 플레이어는 몰려오는 좀비들을 막기 위해 장비를 갖추고 방어 요소들을 건설하여 일정 시점까지 버텨야 함. 특징 기존 디펜스 게임에 플레이어를 직접 조작할 수 있다는 특징과 생존을 결합하여 플레이어가 자신만의 생존 전략을 선택하고 개발할 수 있음. 아직 게임 명은 안 정했기 때문에 이 게임의 코어가 될 'Sentry Gun'의 이니셜을 따와 프로젝트 명을 정했다.
[Unity] PROJECT_S / 23-08-16여름방학 시작과 동시에 실력 향상과 프로젝트 경험을 위해 게임 개발을 시작했다. 개발할 게임의 이미지는 머릿속에 다 그려져 있지만, 기획 내용은 거의 적지 않았다. 기획이 중요한 건 알지만 백문이 불여일견이라고 개발에 중점을 두었다. 일단 적어놓은 기획 내용은 아래와 같다. 장르 탑뷰 / 생존 / 디펜스 콘셉트 플레이어는 몰려오는 좀비들을 막기 위해 장비를 갖추고 방어 요소들을 건설하여 일정 시점까지 버텨야 함. 특징 기존 디펜스 게임에 플레이어를 직접 조작할 수 있다는 특징과 생존을 결합하여 플레이어가 자신만의 생존 전략을 선택하고 개발할 수 있음. 아직 게임 명은 안 정했기 때문에 이 게임의 코어가 될 'Sentry Gun'의 이니셜을 따와 프로젝트 명을 정했다.
2023.08.17