전체 글 (144) 썸네일형 리스트형 언리얼 엔진 C++ 공부 1일차(폴더, 빌드, 라이브코딩, 빌드 문제 복구하기) 솔루션 구조 내 주요 폴더언리얼엔진으로 C++을 열면 위와 같이 5개의 폴더가 기본적으로 있다. Engine 폴더언리얼 엔진 자체 소스 코드와 리소스가 담긴 폴더.에디터 작동, 엔진 코어 관련 코드가 포함되어 있지만 초급 단계에서는 수정할 일이 없다. Games 폴더(중요!)직접 만든 프로젝트 코드가 모두 들어있는 폴더.내부에는 Source, Config, .uproject 파일 등이 있으며, C++로 작성하는 게임 로직을 이 폴더에서 가장 많이 다루게 된다. Programs 폴더엔진 동작에 필요한 유틸리티 프로그램이나 서버 모듈이 담겨있는 폴더.초급 단계에서는 볼 일이 없다. Rules 폴더엔진과 게임 등 각 모듈의 빌드 규칙을 정의해 놓은 파일이 모여있는 폴더. 모듈 의존성, 플러그인 활성화 여부, .. 팀 프로젝트(텍스트 기반 RPG 게임 제작 프로젝트) 장르 : 콘솔 기반 텍스트 RPG개발 목적 : C++ 학습 및 팀 협업 과제 수행개발 기간 : 25년 09월 04일 ~ 25년 09월 11일(1주일) 팀 프로젝트로 텍스트 RPG 게임을 제작을 했다.처음 하는 팀 프로젝트라 협업을 하기 위해 팀원끼리 변수, 함수의 이름을 어떻게 선언할건지(매개변수를 제외한 모든 이름을 파스칼 표기법으로 하기로 함)와 깃허브 사용법을 익히게 됐는데 초반에는 깃허브 쪽에서 충돌도 많이 발생하고 문제가 좀 있었지만 계속 사용하니 문제가 발생하지 않고 어느정도 익숙해졌다.조원이 6명이여서 기능을 6가지(캐릭터, 몬스터, 아이템, 상점, 진행(로그), 배틀) 로 나누어서 각 담당을 했는데 내가 담당한 것은 아이템 이다.필수 기능1. 캐릭터 생성 및 관리 원하는 이름으로 캐릭터를 .. 프로그래머스(문자열 다루기 기본) 문제 설명 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이상, 길이 8 이하인 문자열입니다. s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다. 입출력 예 s return "a234" false "1234" true1. 문자열의 길이 4, 6을 확인2. 문자열 길이가 4, 6일 때 s의 문자열을 순회하여 숫자인지 확인(아스키 코드를 이용함)3. s의 원소(문자)가 숫자면 1을, 아니면 0을 곱함(true = 1, false = 0 을 이용함) #include #include .. 프로그래머(약수의 개수와 덧셈) 문제 설명 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ left ≤ right ≤ 1,0001. left부터 right까지의 수를 구함 2. 그 수들의 약수를 구함 3. 약수의 개수가 짝수면 더하고 홀수면 뺌 문제를 보고 위처럼 구현 순서를 생각해서 작성을 했다.#include #include using namespace std;// 1. left부터 right까지의 수를 구함// 2. 그 수들의 약수를 구함// 3. 약수의 개수가 짝수면 더하고 홀수면 뺌int solution(int left, int .. 4번 과제 복습(연금술 공방 관리 시스템 구현) 이번에 해볼 과제는 다음과 같은 순서로 진행 됩니다.1. 제공된 연금술 공방의 물약 관리 프로그램 코드를 분석2. 제공된 코드를 활용해서 간단한 물약 이름 검색 기능을 추가한다.3. 물약 지급/공병 반환 기능(도전 기능)을 추가한다. 제공된 연금술 공방의 물약 관리 프로그램 코드#include #include #include // PotionRecipe 클래스: 재료 목록을 vector으로 변경class PotionRecipe {public: std::string potionName; std::vector ingredients; // 단일 재료에서 재료 '목록'으로 변경 // 생성자: 재료 목록을 받아 초기화하도록 수정 PotionRecipe(const std::string& nam.. 3번 과제 복습(인벤토리 시스템 구현) 과제 목표가 동적 메모리 할당과 해제를 직접 관리하며 템플릿 클래스를 활용하여 벡터의 핵심 동작 원리를 이해하기 였는데 이번 복습에서는 벡터를 활용해서도 구현해 볼 예정이다.필수 기능`Inventory` 클래스 구현`Item` 뿐만 아니라, `Weapon`, `Potion` 등 어떤 타입의 객체든 저장할 수 있도록 템플릿 클래스로 작성합니다. 클래스 이름: `Inventory` 템플릿: `template `를 사용하여 어떤 타입(`T`)의 데이터든 처리할 수 있도록 합니다. 멤버 변수 (private)`T* pItems_`: 아이템 객체들을 저장할 동적 배열을 가리키는 포인터입니다. `new T[]`를 통해 메모리를 할당받습니다. `int capacity_`: 인벤토리가 최대로 저장할 수 있는 공간의 크.. 2번 과제 복습(전직 시스템과 전투 시스템) 필수기능1. Player라는 기본 클래스를 정의 합니다. Player 클래스에는 `attack()`이라는 순수 가상 함수를 포함합니다. `attack()` 함수는 무기를 휘두르기만 하는 기본적인 공격 함수입니다. 2. Player 클래스를 상속받아 다양한 직업 클래스를 생성합니다. 예) Warrior, Magician, Thief, Archer 3. 각 직업 클래스에서 `attack()`함수를 **재정의**(오버라이딩)하여 해당 직업의 공격을 출력하면 됩니다! 4. 메인 함수에서 Player 타입의 포인터 배열을 선언하고, 해당하는 번호를 입력하면 (1. 전사 2. 마법사 3. 도적 4. 궁수) Warrior, Magician, Thief, Archer를 각각 배열의 원소로 선언합니다. → 이후 Pla.. 1번 과제 복습(상태창 구현) 전에 비해 얼마나 코딩실력이 성장이 됐는지 알아보기 위해 그동안 했던 과제들을 처음부터 새로 작성하여 복습해보려 한다.필수기능1. HP, MP, 공격력, 방어력을 크기 4의 int형 배열로 선언 및 0으로 초기화합니다. (배열 이름이 status라면 status[0]은 체력, status[3]은 방어력) 2. HP와 MP를 입력받고, HP나 MP가 하나라도 50 이하의 숫자를 입력받을 경우 다시 입력받습니다. 3. HP와 MP에 값을 입력받은 후 공격력과 방어력을 입력받습니다. 공격력이나 방어력이 하나라도 0 이하의 숫자를 입력받을 경우 다시 입력 받습니다.4. call by pointer를 사용해봅시다. HP, MP포션은 5개씩 기본 지급되며, HP, MP 포션 개수로 5를 저장합니다. 함수는 다음과.. 이전 1 ··· 4 5 6 7 8 9 10 ··· 18 다음