본문 바로가기

게임 프로그래밍

UE5 GameMode Setup Code GameMode란? https://docs.unrealengine.com/4.27/ko/InteractiveExperiences/Framework/GameMode/ 게임 모드와 게임 스테이트 Game Mode, 게임 모드와 Game State, 게임 스테이트에 대한 개요입니다. docs.unrealengine.com 플레이중인 게임의 정보를 처리하는 클래스는 크게 Game Mode (게임 모드)와 Game State (게임 스테이트), 둘입니다. 가장 제약이 없다는 게임일지라도 토대가 되는 규칙들이 있으며, 이러한 규칙들이 게임 모드를 이룹니다. 가장 기본적인 수준에서 이러한 규칙에 포함되는 것은 다음과 같습니다: 존재하는 플레이어와 관람자의 수는 물론, 허용된 플레이어와 관람자 최대 수 플레이어가 게임.. 더보기
언리얼5 코딩표준 코딩 표준이란 게임개발 기업마다 프로젝트에 맞는 코딩 표준이 존재합니다 코딩표준이 사용되는 이유는 개발자들이 협업시 서로 다른 코딩 스타일로 발생되는 이슈또는 저하되는 작업 가독성을 방지하기위해 효율적인 코드의 사용을 권장하게끔 기업에서 지정하는것이 코딩표준을 지키는 이유입니다. 코딩표준의 옳바른 사용법 코딩 표준의 옳바른 사용법은 자신이 작성된 코드와 다른사람이 작성한 코드를 비교하였을 시 단 한사람이 작업한것처럼 보인다면 옳바르게 코딩 표준을 지키고 있는것입니다. 다른 예시로 자신이 사용하는 코드 스타일이 더욱 퍼포먼스가 좋을수있다 해서 기업에서 사용하는 코딩 표준을 지키지않는다면 이는 좋은 코딩습관이 될 수 없습니다. 언리얼 코딩표준 코딩표준이 기업에서 사용되는것과 같이 언리얼 코딩 표준이 존재합니.. 더보기
3 스텟 구현 + 공격력 AttackSystem 공격 이벤트를 서비스하는 엑터 타입 클래스 콤보 공격 구현 초기 기획과 동일하게 몽타주 노티파이 커스텀 이벤트를 활용하여 구현완료 몬스터 충돌 구현 raycast와 Apply Damage 함수 활용 구현완료 적 Hit 시 다수의 raycast Hit 이벤트가 발생하여 0.2초간의 간격으로 Hit를 다시 호출 가능하게끔 제한했다. 스텟 스텟은 모든 유닛이 상속받을 부모 클래스 baseCharacter에서 접근가능 공격력 변수 정수형 attack Hit 이벤트 호출시 baseCahracter에서 참조하여 AttackSystem 함수에 호출된다. 체력 변수 정수형 maxHp 캐릭터의 최대 체력, 추후 체력바 UI의 정규화의 기준값을 위해 필요하여 추가함. 정수형 curHp 캐릭터의 현제.. 더보기
1_2 이동(Locomotion) + 레벨디자인 레벨 디자인 리소스 전부 퀵셀 브릿지 작업 애니메이션 작업중 이슈 언리얼 도큐먼트를 보면 공격 애니메이션 루트모션 활성화시 몽타주 재생에서 플레이어가 자연스럽게 전진 하는모습을 확인할수있지만 내 경우에는 공격 애니메이션에 모션이 있음에도 루트 모션 활성화시 다리 애니메이션이 어색하고 전진하지 않으며 재자리에서 애니메이션이 진행중이었다 모션 워핑을 활용하여 문제를 해결하려 시도했지만 직진은 하지만 매우 어색했다. 문제 파악 내 전사 스켈레톤의 구조는 pelvis가 최상위 루트로 되어있었다. 믹사모 모델들도 최상위 소켓이 root가 아닌 다른 이름으로 되어있으면 정상적인 루프모션 활성화가 동장되지않는것으로 보인다. 루트모션 활성화시 어색했다는것을 확인했다. 해결 방법 내 전사 스켈레톤의 최상위 pelvis .. 더보기
1_1 이동(Locomotion) + 애니메이션 구현 이동 구현 입력 이벤트 언리얼 5.2에 지원하는 향상된 입력 기능을 활용하여 입력 이벤트를 받아 구현진행 구현간 이슈 및 수정사항 애니메이션 리타겟팅 내가 준비한 전사 애니메이션은 발도 애니메이션이 없어 믹사모에서 지원하는 Draw 에니메이션을 사용하였으나 전사 스켈레톤의 구조와 믹사모 스켈레톤의 구조가 달라 bone crash 이슈 발생 문제 해결 전사 IK릭, 믹사모 IK릭을 , 왼팔,오른팔,머리,왼다리,오른다리,root 6개의 구조 기준으로 리타게터를 생성 믹사모는 모델은 TPos기준 전사는 APos 기준이라 별도의 좌표 수정 Montage Animation Slot 이동중 발도 몽타주 재생 시 다리가 움직이지않음 문제 해결 발도 애니메이션 상체 하체 분리, 블랜딩을 활용하여 Player의 Velo.. 더보기
언리얼5.2 몬스터헌터 기획 구현 리스트 이동(Locomotion) + 애니메이션 구현 걷기 MoveDirection: Forward,Back,Left,Right 뛰기 MoveDirection: Forward,Back,Left,Right 벽 타기 MoveDirection: Up,Down,Left,Right 빠른 벽타기 MoveDirection: Up,Down,Left,Right 죽음 체력 0이하의 경우 발생 숨쉬기 특정 이벤트 상태가 없을 경우 발생 발도 숨쉬기 모드에서 공격 버튼 클릭시 발생 공격 검 좌 마우스 클릭 시 공격 공격은 최대 3단계 콤보 공격 가능 이동 불가능 우 마우스 클릭 시 몬스터 락온 스텟(몬스터 공용 사용) 체력 체력이 0이하 소진될 시 게임 오버 기본 공격력 -7 ~ +7의 범위 내 적에게 데미지를 입한다... 더보기
[게임 기획 아이디어] 횡스크롤 MMORPG Aron 게임 제목: Aron 기획의도: 온라인 게임을 좋아하는 사람이라면 누구든 LOL(리그오브레전드)라는 게임을 접해보거나 또는 들어는 보았을거라 생각한다. 나 또한 게임 개발자이자 롤을 무척이나 좋아하는 게이머 중 한명이다. 롤은 대한민국 기준 2011년 12월 4일 공식 서비스 진행하고 12년이 지난 지금까지도 대중들에게 사랑 받고있다 그럼 12년간 점유율 1등으로 자리잡고있는 롤의 재미요소는 무엇일까? 게임 개발자 입장으로써 롤의 재미요소가 무엇인가를 분석보고 싶어졌다. 내가 분석한 롤의 재미요소를 담은 게임은 당연히 재미있을까? 이 또한 궁금증이 생겨서 AronProject를 생각하게되었다 지금부터 쓰는글은 내 기준에서 생각하는 롤의 재미요소를 적은것이고 AronProject에 담게될 예정이다. 내가 .. 더보기
게임 메커니즘 아이디어 프로젝트명: 뉴어스 장르: 개척지,시뮬레이션, mmorpg 플레이 인원 수: 4 스토리 여러분은 외계행성에서 불시착한 생존자입니다. 플레이어들은 서로의 협력으로 외계행성에서 생존과 연구를 병행해가며 업적 3가지를 활성화하여 게임을 클리어 하는것이 목적입니다. 게임 규칙 1. 플레이어는 하나의 폰을 선택하여 컨트롤할수있는 권한을 가지게됩니다. 2. 게임에서 플레이어는 4~5의 인원으로 플레이 가능합니다. 3. 폰의 선택은 유저들의 선택이 무작위로 선택됩니다. 4. 게임에서는 반드시 4개의 폰 타입이 포함되어있습니다. 게임 오버 1. 한명의 플레이어가 죽으면 즉시 게임은 개척자들의 실패로 끝 2. 식량의 갯수가 -1 이하 일경우 그 즉시 실패로 끝 턴 1. 한턴의 시간흐름은 1분이다. 2. 한턴동안 플레이어.. 더보기