인터페이스 기반 아이템 클래스 구현_2_아이템 스폰 및 레벨 데이터 관리
·
내배캠/Unreal Engine
DataTable 만들기https://dong-grae.tistory.com/134 DataTable 만들기(CSV, Unreal)DataTable에 사용할 구조체 만들기https://dong-grae.tistory.com/135 데이터 테이블에 사용할 구조체 만들기Item 클래스의 데이터를 정리한다고 했을 때,어떤 아이템이 몇 %확률로 스폰되는지를 코드로 직dong-grae.tistory.com       아이템 스폰 및 레벨 데이터 관리// ItemSpawnVolume.h#pragma once#include "CoreMinimal.h"#include "GameFramework/Actor.h"#include "ItemSpawnRow.h"#include "ItemSpawnVolume.generated.h..
데이터 테이블에 사용할 구조체 만들기
·
내배캠/Unreal Engine
Item 클래스의 데이터를 정리한다고 했을 때,어떤 아이템이 몇 %확률로 스폰되는지를 코드로 직접 하드 코딩하면 매번 수정할 때마다 빌드를 해줘야하는 번거로움이 있다. 언리얼 엔진의 데이터 테이블을 사용하면, 이를 엑셀(csv)나 JSON파일로 관리해서 엔진안으로 임포트하고, 코드나 블루프린트에서 쉽게 불러 쓸 수 있다.만약 데이터의 수정이 필요하다면 기획자나 디자이너도 엑셀에서 숫자만 바꾸어, 엔진에서 reimport만 해주면 되어 편리하게 수정할 수 있다.struct는 class가 아니기에 부모 클래스를 선택할 수 없다.따라서 None을 선택한다 #pragma once#include "CoreMinimal.h"class STRIKEZONE_API ItemSpawnRow{public: DefaultRo..
DataTable 만들기(CSV, Unreal)
·
내배캠/Unreal Engine
DataTable에 사용할 구조체 만들기https://dong-grae.tistory.com/135 데이터 테이블에 사용할 구조체 만들기Item 클래스의 데이터를 정리한다고 했을 때,어떤 아이템이 몇 %확률로 스폰되는지를 코드로 직접 하드 코딩하면 매번 수정할 때마다 빌드를 해줘야하는 번거로움이 있다. 언리얼 엔진의 데이터dong-grae.tistory.com       CSV파일 작성 및 언리얼 임포트 엑셀 시트에 1행 2열부터 Key값으로 사용할 값을 Column 이름으로 작성한다. 1행 1열은 언리얼 엔진에서 자동으로 "RowName"으로 인식하기 때문이다.2행부터 각 아이템의 정보를 한 줄씩 기록한다.경로는 각 클래스를 우클릭하여, "Copy Reference"를 눌러 경로를 복사할 수 있다.만약..
인터페이스 기반 아이템 클래스 구현_1_인터페이스 설계
·
내배캠/Unreal Engine
Item 인터페이스// ItemInterface.h#pragma once#include "CoreMinimal.h"#include "UObject/Interface.h"#include "ItemInterface.generated.h"UINTERFACE(MinimalAPI)class UItemInterface : public UInterface{ GENERATED_BODY()};class STRIKEZONE_API IItemInterface{ GENERATED_BODY()public: UFUNCTION() virtual void OnItemOverlap( UPrimitiveComponent* OverlappedComponent, AActor* OtherActor, UPrimitiveComponen..
JadenCase 문자열 만들기
·
공부/Code Cata
https://school.programmers.co.kr/learn/courses/30/lessons/12951 *초기 코드#include #include #include using namespace std;string solution(string s) { string answer = ""; bool capitalize = true; for (char ch : s) { if (ch == ' ') { answer += ' '; capitalize = true; } else { if (capitalize) { if (!..
최대값과 최솟값
·
공부/Code Cata
https://school.programmers.co.kr/learn/courses/30/lessons/12939 #include #include #include #include #include using namespace std;string solution(string s){ stringstream ss(s); int blank_cnt = count(s.begin(), s.end(), ' '); set list; for (int i = 0; i > str; list.insert(stoi(str)); } string answer = to_string(*(list.begin())) + " " + to_string(*(--list.end())); return..