본문 바로가기

전체 글49

Unreal GAS(GameplayAbilitySystem) Documentation 번역글 4부 4.7 AbilityTask4.7.1 AbilityTask 정의GameplayAbility는 한 프레임에서만 실행됩니다. 이로 인해 유연성이 제한됩니다. 시간이 지남에 따라 발생하는 작업이나 특정 시점에 호출되는 델리게이트에 반응해야 하는 작업을 수행하기 위해 우리는 AbilityTask라는 지연 작업을 사용합니다. GAS는 기본적으로 여러 종류의 AbilityTask를 제공합니다:RootMotionSource로 캐릭터 이동을 위한 작업애니메이션 몽타주를 재생하는 작업Attribute 변경에 반응하는 작업GameplayEffect 변경에 반응하는 작업플레이어 입력에 반응하는 작업그 외의 작업들UAbilityTask 생성자는 게임 전역에서 동시에 실행할 수 있는 최대 1000개의 AbilityTask만을 .. 2023. 6. 25.
[C++ 키워드] const, constexpr const 변수변수 앞에 const 키워드를 붙이면 해당 변수의 값은 바뀔 수 없다.말하자면 생김새는 변수지만 본모습은 상수인 셈.const int a = 0;a = 10; // Error 이러한 특성을 이용하면 const를 #define처럼 사용하는 것도 가능하다.const double PI = 3.1415926535;원주율처럼 절대 바뀔 일이 없는 값을 #define으로 선언할지 const 변수로 선언할지 고를 수 있다. const 포인터와 const 레퍼런스const 포인터int* IntPtr = nullptr;IntPtr = new int[10];IntPtr[0] = 10;위처럼 동적 메모리를 할당받기 위해선 포인터를 사용해야 한다. 그렇다면 여기서 IntPtr에 할당해준 int형 배열의 값이 바.. 2023. 6. 22.
[백준 15482]한글 LCS 문제링크 #include #include using namespace std; int LCS[3003][3003]; int main() { string str1 = {}; string str2 = {}; cin >> str1 >> str2; int n = str1.size(); int m = str2.size(); int offset = 3; for (int i = 3; i 2023. 6. 19.
[백준 11404] 플로이드 문제링크 #include using namespace std; int main() { int n = 0; cin >> n; int m = 0; cin >> m; long long city[101][101] = {}; for (size_t i = 0; i > a >> b >> c; city[a][b] = min(c.. 2023. 6. 9.
Unreal GAS(GameplayAbilitySystem) Documentation 번역글 3부 4.6 GameplayAbility4.6.1 GameplayAbility 정의GameplayAbility(GA)는 게임에서 액터가 수행할 수 있는 모든 행동이나 스킬입니다. 예를 들어, 질주하면서 총을 쏘는 것처럼 둘 이상의 GameplayAbility를 동시에 활성화할 수도 있습니다. GameplayAbility는 블루프린트 또는 C++에서 구현할 수 있습니다.GameplayAbility의 예시:점프질주총 발특정 초마다 수동으로 공격 막기포션 사용문 열기자원 수집건물 건설GameplayAbility로 구현해서는 안 되는 것들:기본적인 움직임 입력UI와의 상호작용 - GameplayAbility를 사용하여 상점 아이템 구매이는 규칙이 아니라 권장 사항일 뿐입니다. 설계와 구현은 다를 수 있습니다. Gam.. 2023. 6. 6.
Unity 스카이박스 머티리얼 동적으로 변경하는 방법 public Material skyboxMaterial; // Use this for initialization void Start () { RenderSettings.skybox = skyboxMaterial; }​ 2023. 6. 3.
언리얼 C4430 오류 언리얼로 작업 후 빌드를 하니 C4430 에러가 떴다. C4430: missing type specifier - int assumed. Note: C++ does not support default-int 내가 방금 무슨 짓을 했는지도 기억이 안나서 단순히 언리얼 오류인가? 생각한 후 프로젝트 파일을 삭제하고 다시 빌드해봤다. 그러나 똑같았다... (당황) 에러 코드를 누르면 계속 AIController.h로 가는 이유가 뭘까 고민하던 도중에 AIController 코드에서 뭔가 잘못된 게 아닐까라는 생각이 들었다. 그래서 에픽 게임즈 런처를 켜고 엔진 코드를 재검증하였다. 그러다가 내가 리샤퍼로 자동 코드 수정 중에 실수로 엔진 코드까지 수정해버린 사실을 알아차렸다... 만약 엔진이나 플러그인 코드를 .. 2023. 5. 30.
Unreal GAS(GameplayAbilitySystem) Documentation 번역글 2부 4.5 Gameplay Effect4.5.1 Gameplay Effect 정의 GameplayEffect(GameplayEffect, GE)는 Ability가 자신을 포함한 다른 객체의 Attribute 및 GameplayTag를 변경하기 위한 수단입니다. 즉각적인 Attribute 변화를 일으킬 수 있거나(예: 피해나 치유) 이동 속도 증가나 기절과 같은 장기적인 상태 버프/디버프를 적용할 수도 있습니다. UGameplayEffect 클래스는 단일 GameplayEffect를 정의하는 데이터 전용 클래스입니다. 추가적인 로직은 GameplayEffect에 포함되지 않아야 합니다. 보통 디자이너는 UGameplayEffect의 여러 블루프린트 자식 클래스를 생성하여 사용합니다.  GameplayEffec.. 2023. 5. 27.
[백준 11726] 2×n 타일링 문제링크 #include using namespace std; int dp[1001] = { 1, 1 }; int main() { int n = 0; cin >> n; if (n 2023. 5. 26.