분류 전체보기

[Unreal_블루프린트]#23_Weapon Change, Scroll 액션 이벤트 Unreal 블루프린트 개발 중 "Weapon Change" 구현에 대해 알아보겠습니다. "블루 프린트" 활용에 대한 내용입니다. Scroll 액션 매핑 1. Scroll 액션 매핑 추가 Player 1. Skills(F_WizardSkill) 배열 생성 1. Skill(BP_WizardSkill 타입) BP_WizardSkill을 상속하는 BP_WizardSkill_Heal, BP_WizardSkill_Warp, 그리고 BP_WizardSkill_Throw 중 하나를 담도록 합니다. 2. ThrowItem(BP_ThrowItem) BP_ThrowItem을 상속하는 BP_Fireball과 BP_Iceball 중 하나를 담..
[Unreal_블루프린트]#22_Wizard Skills Unreal 블루프린트 개발 중 "Wizard Skills"에 대해 알아보겠습니다. "블루 프린트" 활용에 대한 내용입니다. 상속 모델 Heal 1. BP_WizardSkill_Heal 클래스 세팅을 통해 Parent Class를 "BP_WizardSkill"로 설정합니다. 2. BP_WizardSkill::Spell 구현 1. BPI_Weapon::SetCanMove "BPI_Weapon" 인터페이스에서 제공하고 "BP_Player"에서 상세 구현을 진행했던 "Set Can Move"를 호출합니다. 2. BP_Player의 애님 몽타주 재생 "BP_WizardSkill"에서 제공하는 "GetOwner To Wizard"를 통해 "BP_Player..
[Programmers 알고리즘, C++]#Level 2_이진 변환 반복하기 Programmers 알고리즘 문제 풀이, Level 2_이진 변환 반복하기 이진 변환 알고리즘과 STL 알고리즘을 활용하여 풀이하는 문제입니다. 문제 풀이 #include #include #include using namespace std; bool Pred(char c) { return c == '0'; } vector solution(string s) { vector answer; int delete0Cnt = 0; int decToBinCnt = 0; vector tmpV; while(s != "1") { // 1. 0 제거, for 문을 돌면서 삭제하면 String에 직접적인 변화 for(int i=0; i 이진 변환 ..
[Programmers 알고리즘, C++]#Level 2_JadenCase 문자열 만들기 Programmers 알고리즘 문제 풀이, Level 2_JadenCase 문자열 만들기 cctype 제공 함수를 활용하여 풀이하는 문제입니다. 문제 풀이 /* * #include 제공 함수 주의할 점 : islower(), isdigit(), isupper() 등의 함수는 반환 값이 int입니다. if(islower(str[i]) == true)는 정상적으로 수행되지 않습니다! */ #include #include #include using namespace std; string solution(string s) { string answer = ""; bool changeCheck = true; if (isdigi..
[Programmers 알고리즘, C++]#Level 1_정수 내림차순 정렬 Programmers 알고리즘 문제 풀이, Level 1_정수 내림차순 정렬 char int 간 변환과 string 정수 간 변환을 활용하여 풀이하는 문제입니다. 문제 풀이 // 1. char to int = -'0' // 2. int to char = +'0' // 3. stoi, stol, stof, stod 활용 #include #include #include using namespace std; long long solution(long long n) { long long answer = 0; vector v; string str = to_string(n); for(int i=0; i char 변환을 위해 + '0' 해줍..
[BOJ 알고리즘, C++] #10816_숫자 카드 2, lower_bound, upper_bound BOJ 알고리즘 문제 풀이, 10816_숫자 카드2 정렬 알고리즘을 통해 주어진 숫자 카드가 존재하는지 탐색합니다. 문제 풀이 1. Map 컨테이너 활용 // 1. Map 컨테이너를 활용했지만, 2번 코드보다 소요 시간과 메모리 사용량이 비교적 훨씬 높음... #include #include #include typedef long long ll; using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, M; // 숫자 + 개수 map m; vector v; cin >> N;..
[Unreal_블루프린트]#21-2_Interface, No Combo Unreal 블루프린트 개발 중 "Interface"에 대해 알아보겠습니다. "블루 프린트" 활용에 대한 내용입니다. 상속 계층 그래프 Wizard 1. BP_Wizard 1. Parent Class 설정 : BP_Weapon 클래스 세팅 -> Parent Class를 BP_Weapon으로 설정합니다. 2. 변수 생성 Wizard 공격 모드가 갖는 세 가지 스킬을 변수로 생성합니다. 각각 "BP_WizardSkill", "BP_WizardSkill_Heal", "BP_WizardSkill_Warp", 그리고 "BP_WizardSkill_Throw"를 참조합니다. 3. BeginPlay 이벤트 먼저, Combat Type 상태 변경과 ..
[Unreal_블루프린트]#21_Interface, Combo 관련 클래스 Unreal 블루프린트 개발 중 "Interface"에 대해 알아보겠습니다. "블루 프린트" 활용에 대한 내용입니다. Interface 1. 상속 계층 디자인 Weapon ( 무기 혹은 공격 방식 ) : 최상위 클래스, 인터페이스 클래스 Character의 공격 방식에 따라서 크게 검을 휘두르는 "Sword" 공격 방식과 "Wizard(마법)" 공격 방식을 구현했습니다. 우리는 OOP를 위해 상위 클래스 혹은 인터페이스 클래스 "Weapon (공격 무기)"를 구현해보겠습니다. 잘 알다시피, C++의 인터페이스 클래스는 자세한 "구현"이 없는 순수 가상 메서드를 정의해두어 이를 상속하는 하위 클래스들이 순수 가상 메서드를 직접 오버..
[디자인 패턴] #12_Component Pattern, 컴포넌트 패턴 게임 디자인 패턴 중 "디커플링 패턴"에 대해 알아보겠습니다. "게임 프로그래밍 패턴"의 14 항목, "컴포넌트"에 해당하는 내용입니다. 개념 1. 의도 한 객체가 여러 분야의 기능들을 "커플링" 없이 다룰 수 있도록 합니다. 복잡한 상속 관계를 통해 여러 기능들을 상속받아 사용하기보다, 각 기능 별 컴포넌트 클래스를 작성하고 해당 클래스 객체를 데이터 멤버로 두어 "디커플링"합니다. 패턴 1. 컴포넌트 패턴 한 객체에 필요한 다양한 분야의 기능들을 별도의 컴포넌트 클래스로 옮겨놓고, 이를 필요로 하는 객체는 단순히 "컴포넌트들의 컨테이너" 역할을 합니다! 2. 왜 필요한가? class Player { public: Player():..
[Basic C++] #58_포인터, 배열과 포인터, 포인터 연산 C++의 "포인터"에 대해 알아보겠습니다. "전문가를 위한 C"의 22 항목, "효과적인 메모리 관리"에 해당하는 내용입니다. 포인터 개념 1. 포인터? 포인터는 단순히 메모리 위치를 계산하는 주 솟값입니다. 2. "*"를 활용한 역 참조 "*" 연산자를 활용하면 포인터를 역 참조할 수 있습니다. 여기서 역 참조란 단순히 포인터가 가리키는 메모리 주소에 들어있는 값을 가져올 수 있습니다. 3. "&"를 활용한 참조 "&" 연산자를 활용하면 어떤 값이 저장되어 있는 메모리의 주솟값을 가져옵니다. 보통 포인터 변수에 "&a" 값을 넣어줌으로써 "a"라는 변수의 메모리 주소 값을 넘겨줍니다. 배열과 포인터 1. 배열 == 포인터, but ALL..
Hardii2
'분류 전체보기' 카테고리의 글 목록 (36 Page)