본문 바로가기

프로젝트22

조준 방향 기반 탄착군 구현 개요게임에서 총을 사용할 때, 단순히 발사 이펙트와 사운드만으로는 타격감을 충분히 표현하기 어렵다특히 총기마다 고유한 손맛을 구현하기 위해선, 탄알의 퍼짐이나 반동 등 총기의 물리적 특성을 실제 게임플레이에 반영하고 싶었다 이 글은 그중에서도 ‘탄착군(총알의 퍼짐 범위)’을 구현하기 위해 어떤 고민을 거쳤고 어떻게 해결하였는지 기록한 회고 글이다  기획적 필요성과 기술적 고려디자인 의도대표적으로, 미니건을 사용하는 적 스페셜 유닛이 빠른 속도로 플레이어를 향해 정확하게 총알을 퍼붓는 장면을 목격한 후, 이 문제의 심각성이 더욱 명확해졌다그 상황은 단순히 위협적인 연출을 넘어서, 플레이어 입장에서 회피 불가능한 불합리함으로 느껴졌고, 이는 즉시 밸런스 관점에서 수정이 필요하다 판단되었다 이 경험을 통해, .. 2025. 4. 6.
키움 증권 Open API 신청 및 등록 방법 1. API 다운로드링크에 들어간다 2. OPEN API 사용 신청절차에 따라 OPEN API 신청 진행 3. OpenAPI+ 관련 모듈 다운로드 및 설치  다운로드 된 실행파일 실행 및 설치그 후 경로 찾아가기 (별도로 경로 지정하지 않았다면 C:\OpenAPI) 이후 KOA 스튜디오 다운로드 다운 받은 파일 압축 해제 후 내용 확인 사용방법 체크 수행 완료 4. 실행 체크 폴더 내 opversionup 실행 파일 관리자 권한으로 실행 KOAStudioSA 실행 실행 확인, 이후 로그인 확인 진행 좌 상단 파일 => Open API 접속로그인까지 진행해서 확인하기 그 전에, KOAStudio를 사용하기 위해서는 상시모의투자 신청을 완료해야 함  5. C# 프로젝트 셋업 프로젝트 생성개발 환경은 Visu.. 2025. 4. 3.
운빨존많겜 인게임 클론 프로젝트 소개 개요Github Link111퍼센트사의 대표작 운빨존많겜 인게임(전투) 시스템을 모작한 프로젝트입니다짧은 시간 내 최대한 유사한 수준의 완성도로 구현하는 것을 목표로 구현하였습니다 프로젝트 기간25.03.05 - 25.03.09 (5일)최초 프로젝트 시작 커밋 (initial commit)마지막 구현 커밋 (chore: 오류 방지) 개발 환경Unity 2D URP 22.3.39f1, macOS Sequoia 15.3.2UniTask, UniRx, DOTWeen, Input SystemRider 2024.3.3 플레이 영상 링크운빨존많겜 인게임 시스템 모작 (클리어)운빨존많겜 인게임 시스템 모작 (게임오버) 주요 구현UniRx와 MVP 패턴을 이용한 UI 시스.. 2025. 3. 14.
AI Player 동작 구현 개요프로젝트에서 플레이어와 함께 싸우는 AI Player가 어떻게 동작하도록 구현했는지 소개하는 글이다  내용기본적으로 에너미와 유닛 프리팹 구조글에 쓰인 것처럼 Root - BTController - OtherController 구조는 같다따라서 핵심이 되는 AIBTController 클래스만 소개하겠다 AIBTControllerAI의 의사 결정을 구조화한 클래스다// AIBTController 내부 CreateTree 메서드private BehaviorTree CreateTree(GameObject owner){ BehaviorTree bt = new BehaviorTreeBuilder(owner) .Selector("최우선 행동 선택") // 1. 유닛 합성이 .. 2025. 3. 14.
유닛 배치 필드 구현 개요유저가 직접 조작하는 유닛 배치 필드 구현 회고, 그리고 소개하는 글이다  내용유닛 배치 필드 소개 플레이어가 소환한 유닛이 배치되고, 유닛 배치 변경 및 플레이어 입력을 받아 특정 동작을 수행할 수 있는 영역이다 이 글을 통해 소개하고 싶은 부분은 UnitPlacementNode와 UnitGroup을 이용하여 어떻게 내부 상태를 관리하는지이다  UnitPlacementNode UnitPlacementNode는 유닛이 배치되는 단일 노드로, 각 사이드에 18개씩 존재하여 유닛 배치를 관리하는 역할을 한다 유닛의 배치 상태를 관리하고, 유닛 추가 및 삭제, 그리고 위치 조정을 처리한다. 또한 내부의 UnitGroup 클래스를 통해 유닛의 등급, 타입, 개수 등을 관리하며, 배치 가능 여부를 판단할 수 .. 2025. 3. 14.
에너미와 유닛 재활용을 위한 풀링 시스템 개요프로젝트에서 구현한 풀링 시스템을 소개하는 글이다  내용ObjectPoolBaseUnityEngine.Pool.ObjectPool을 기반으로 한 오브젝트 풀링 관리 추상 클래스다제약 조건을 걸어 Component 타입을 내부에서 사용할 수 있게 하였다 일관된 패턴을 사용함으로서 개발자의 러닝 커브를 줄이고 필요에 따라 메서드를 오버라이드하여 특정 풀링 로직을 커스텀할 수 있게 하였다public abstract class ObjectPoolBase : MonoBehaviourBase where T : Component{ private ObjectPool objectPool; [SerializeField] private T prefab; [SerializeField.. 2025. 3. 14.
반응형