언리얼 Assert
·
[게임 개발] 언리얼엔진 공부/개인 메모
Assert 표준 C++에서 제공조건이 False 일 때 프로그램을 중단.디버깅 중 주로 사용되며 Release 빌드 시 제외 Check언리얼엔진에서 제공Assert와 유사한 기능을 하지만 언리얼엔진에서 제공한다는 차이가 있음USE_CHECKS_IN_SHIPPING 기능을 이용해 릴리즈 빌드에서도 적용 가능"이 변수는 절대로 null이 아니어야 해! 만약 null이면 프로그램을 멈춰!"Verify언리얼엔진에서 제공Check와 유사한 기능을 하지만, 디버그 중에는 프로그램을 종료시키고 릴리즈 빌드의 경우 계속 진행함 "이 함수는 반드시 성공해야 해! 디버깅 중에는 실패하면 프로그램을 멈출 거야. 하지만 릴리즈 빌드에서는 실패해도 프로그램을 계속 실행할 거야."Ensure언리얼엔진에서 제공Verify와 비슷..
[TopDownProject] 1. 탑다운 뷰 구현
·
[게임 개발] 개발 일지/TopDownProject
탑다운 시점 구현구현중 문제 발생탑다운 시점을 구현하기 위해 스프링 암의 회전을 변경하여 위에서 아래를 촬영하는 느낌으로 구현하였다.다만 구현 중 버그가 발생하였는데 다음과 같이  스프링 암이 캐릭터와 함께 회전한다는 점이었고,이는 의도한 사항이 아니기 때문에 수정이 필요하였다. 문제 해결// 월드 좌표계 회전 사용 설정CameraBoom->bInheritPitch = false;CameraBoom->bInheritYaw = false;CameraBoom->bInheritRoll = false; 다음 코드를 추가하여 스프링암이 부모 컴포넌트(여기선 캐릭터)의 회전을 상속 받지 않도록 하여카메라의 회전이 월드 좌표계를 기준으로 설정되었다.즉, 회전이 월드 좌표계에 고정되어 유지되는 것이다. 해당 현상을 수..
모듈 폴더를 인클루드 경로에 설정
·
[게임 개발] 언리얼엔진 공부/이득우의 언리얼 프로그래밍 Part.2
PublicIncludePaths.AddRange(new string[] { "모듈이름" });해당 코드를 모듈.Build.cs 파일에 넣어서 헤더 경로를 찾기 쉽게 할 수 있다.원래라면 헤더파일을 인클루드 하려고 할 때 전체 경로를 작성해야 하지만, 인클루드 경로를 설정 한다면컴파일러가 자동으로 모듈이름의 폴더를 찾아 헤더파일을 인클루드 할 수 있다.
[TopDownProject] 개발 목표
·
[게임 개발] 개발 일지/TopDownProject
기술 스택개발 엔진은 언리얼엔진을 사용하며 프로젝트 시작 시점 (2024.06.18) 에서 가장 최신 버전인언리얼엔진 5.4.2 버전을 사용하였습니다. 개발 목표언리얼 엔진을 이용한 3D 탑다운 시점의 모바일 게임을 만들어 플레이스토어에 업로드 하는 것을 목표로 합니다. 뱀파이어 서바이벌 형식의 탑다운 디펜스 게임을 목표로 하며낮과 밤의 주기로 나눈 게임 플레이를 메인 컨셉으로 합니다. 낮(2분) : 아이템 구매, 퀘스트 수락/완료, 포탑 설치밤(3분) : 몰려오는 적으로 부터 건물 방어, 3분이 모두 끝날 시 보스몹 등장 구현 해야 할 핵심 기능 1. 낮과 밤 주기 시스템 : 주기적으로 낮과 밤이 바뀌며 최종적으로 보스몹을 잡아야 낮으로 변환2. 상점 시스템 : 아이템 구매/판매, 무기 강화3. 퀘스트..
Game Instance
·
[게임 개발] 언리얼엔진 공부/개인 메모
Game Instance 여러 레벨이나 게임모드에서 공유해야 하는 데이터를 관리하기 유용한 클래스 게임 인스턴스는 게임 시작 시 생성되어 게임이 종료될 때까지 유지된다. 중간에 잃어버리면 안되는 데이터를 저장하기에 좋은 공간
언리얼엔진 클라이언트 슈터/플랫포머 포트폴리오
·
[게임 개발] 포트폴리오/슈터-플랫포머
# 슈터 # 플랫포머언리얼엔진 3D 슈터/플랫포머 프로젝트대학 캡스톤디자인2 강의에서 제작 레벨 디자인 및 캐릭터의 이동/점프 관련 프로그래밍은 팀원과 같이 진행하였고이외 부분은 제가 제작 하였습니다. 제작인원 >> 2명 개발 기간 >> 2023 - 04 - 19 ~ 2023 - 06 - 17 포트폴리오 영상https://youtu.be/2I4I4cpcoVQ  깃허브https://github.com/RumPumpumpum/UE_Capstone GitHub - RumPumpumpum/UE_Capstone: 언리얼엔진5 3D 슈터/플랫포머. 캡스톤 디자인 과제로 제작한 게임입니언리얼엔진5 3D 슈터/플랫포머. 캡스톤 디자인 과제로 제작한 게임입니다. Contribute to RumPumpumpum/UE_Ca..
렌더링 파이프라인
·
[게임 개발] CPP 공부/홍정모 그래픽스 새싹코스
https://learn.microsoft.com/ko-kr/windows/uwp/graphics-concepts/graphics-pipeline
[Level2] [C++] 큰 수 만들기
·
[게임 개발] 알고리즘 공부/프로그래머스
링크 https://school.programmers.co.kr/learn/courses/30/lessons/42883 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 입출력 예제 코드 #include #include using namespace std; string solution(string number, int k) { string answer = ""; int cnt = k; while(cnt != 0) { for(int i = 0; i < number.size(); i++) { if(number[i] < number[i+1]) { number..
[실버2] [C++] 11053번: 가장 긴 증가하는 부분 수열
·
[게임 개발] 알고리즘 공부/백준
링크 https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 문제 입출력 예제 코드 #include #include using namespace std; int nums[10001]; int dp[10001]; int main(void) { int n; cin >> n; for (int i = 0; i > nums[i]; } dp[0] = 1;..
[실버3] [C++] 2559번: 수열
·
[게임 개발] 알고리즘 공부/백준
링크 https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 문제 입출력 예제 코드 #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n, k; cin >> n >> k; vector temper(n); vector sum; for (int i = 0; i < n; i++..