전체 글 19

10강 게임데이터 관리

xlsx 파일을 csv 파일로 변경하면 언리얼에서 Import 할 수 있게된다. 위의 이름과 동일한 구조체를 먼저 선언해 줘야한다. ABCharacterStat.h 에 선언 구조체를 선언할 때 FTableRowBase 라는 구조체를 상속받아야 한다. 주의점 : 엑셀 데이터 테이블의 컬럼에는 Name 이라는 이름의 컬럼이 들어가야 한다. 키값이 됨 이 Name 이라는 Key 값들을 이용해 각각에 대해서 접근할 수 있다. 고유한 식별자를 부여 컬럼을 제외한 나머지 데이터들을 구조체에 선언 연산자 오버로딩을 바꾸지 않기 위해 모든 데이터 형식을 float 로 통일 위에서 만든 ABCharacetStat.h 를 상속받는 데이터 테이블 생성 Reimport → CSV 파일 선택 Data Table 을 관리할 별도..

Unreal 2024.02.14

스폰될 Actor 의 위치에 미리 대기할때의 문제

Actor 가 스폰될 지점에 캐릭터가 미리 가서 대기타고있으면 Trigger 가 발동되지 않는 문제가 발생한다. 원래대로라면 나머지 상자들도 사라져야하는데 사라지지 않음 -> Delegate 발동이 되지 않음. void AABStageGimmick::SpawnRewardBoxes() { for (auto& RewardBoxLocation : RewardBoxLocations) { FVector Location = GetActorLocation() + RewardBoxLocation.Value + FVector::UpVector * 30.f; AABItemBox* Box = GetWorld()->SpawnActor(RewardBoxClass, Location, FRotator::ZeroRotator); i..

Unreal 2024.02.13

Collision Resposes 에 따른 상관관계 정리

bool HitDetected = GetWorld()->SweepSingleByChannel(OutHitResult, Start, End, FQuat::Identity, CCHANNEL_ABACTION, FCollisionShape::MakeSphere(AttackRadius), Params); 보다시피 레이를 쏠때의 바탕이 되는 채널의 Default Response 가 Block 일 경우 어떤 물체가 되었던간에 충돌 감지를 하게 됨 Default Response 가 Ignore 이거나 Overlap 일 경우 충돌감지를 하지 않는모습 (특정 프로파일은 충돌감지를 하도록 따로 설정을 해주어야 한다) - 캐릭터의 기본 CollisionProfileName 을 ABCapsule 로 설정한 상태에서 위의 ABA..

Unreal 2024.02.05

JAVA 기본문법 초스피드 (c,c++과 비교)

전역 변수, 전역 함수를 만들 수 없음. 즉 모든 객체는 클래스 안에 존재해야한다. 파일 하나당 public class 한개만 존재해야 한다. (내포 클레스의 경우 예외) package = namespace 의 개념과 비슷 모든 .java 파일에는 java.lang.* 가 자동으로 import 된다. 고로 바로 System 클래스의 기능 사용가능 (java.lang = 기본 패키지) 자바에도 printf 함수가 있음 ( System.out.printf() ) import = include --- java 명령어 --- 컴파일 명령어 => javac -d 실행 명령어 => java -classpath 자바는 char 을 제외한 모든 자료형이 signed 형이다 자바의 String 은 일단 초기화 되면 값 ..

카테고리 없음 2022.04.27

이진탐색과 이진탐색트리

이진탐색 (꼭 트리구조에서만 사용가능한 것이 아님) => 데이터가 "정렬로" 나열있을때 찾는 데이터를 찾기위해 데이터를 반반씩 쪼개며 찾는 방식을말함. ex) 1에서 100 사이에 데이터 40을 찾기위해 1과 100 사이의 50을 기준으로 데이터를 찾아나감. 속도가 logN 이므로 찾는 데이터의 크기가 클 수록 효율이 매우 높아짐. - 오로지 정렬되어있는 데이터에만 적용이 가능 이진탐색트리 - 이진탐색을 사용 할 수 있게 고안된 이진트리 즉 이진탐색을 쓸 수있는 트리구조 - 데이터 입력시 logN 속도. (vector, list 는 N 속도) => 속도 비교표 O(1) => O(logN) => O(N) - 탐색 효율도 logN 속도. (vector, list 는 1 속도) - 트리의 모양 밸런스가 유지되..

연산자 오버로딩의 3가지 형태

3가지 구현중 1가지만 있으면 된다. using namespace std; //산술 연산자 오버로딩 class Cents { int m_value; public: Cents(const int& value) { m_value = value; } const int& getValue() const { return m_value; } const void setValue(const int& value) { m_value = value; } // 1. Cents 의 매개함수의 형태 int operator +(const Cents& c2) { return Cents(this->m_value + c2.m_value).getValue(); } // 2. Cetnts 내부에 있지만 friend 로 인해 외부함수나 다름없는..

C++ unmanaged 2021.11.25