새로운 환경에서 GAS를 실습하고자 프로젝트를 하나 새로 파서 GAS시스템을 적용하고자 하였습니다. 처럼 Gameplay관련 모듈을 넣고 빌드를 했는데 와 같이 관련 모듈이 나타나지 않는 상황입니다. 세팅시 추가적으로 해야할 일이 있을까요?? 강의 항상 잘 듣고있습니다. 감사합니다.
C4067 전처리기 지시문 다음에 예기치 않은 토큰이 있습니다. 줄 바꿈 문자가 필요합니다. C4668 '__has_feature'은(는) 전처리기 매크로로 정의되어 있지 않으므로 '#if/#elif'에 해당하는 '0'으로 바뀝니다. MSB3073 ""C:\Program Files\Epic Games\UE_5.4\Engine\Build\BatchFiles\Build.bat" ArenaBattleEditor Win64 Development -Project="C:\Users\Runner\Downloads\UnrealGAS1-10\UnrealGAS1-10\ArenaBattleGAS.uproject" -WaitMutex -FromMsBuild -architecture=x64" 명령이 종료되었습니다(코드: 6). 안녕하세요, 강의 자료 깃허브를 통해 브랜치 10 의 프로젝트를 다운 받아 열어보려고 하는 데 빌드가 되지 않아 프로젝트 실행조차 되지 않고 있습니다. 아래에 해결을 위해 시도한 내용들도 함께 작성하니 도움 부탁 드립니다. 새해 복 많이 받으세요.^^ <시도한 내용들> Binaries 삭제 후 Generate, Visual Studio에서 리빌드/빌드 -> MSB3073 오류 발생 uproject에서 VisualStudioTools 플러그인 확인 후 1번 과정 재진행 -> 해당 플러그인이 없음을 확인했으나 여전히 MSB3073 오류 발생 언리얼 마켓플레이스(Fab)에서 Visual Studio Integration Tool 다운 후 1번 과정 재진행 -> uproject에 VisualStudioTools 플러그인이 존재했으나 여전히 MSB3073 오류 발생 다른 브랜치로 다운 받은 프로젝트 실행 -> 브랜치 1, 2 등 다른 브랜치의 프로젝트로 다운 받아 실행해도 MSB3073 오류 발생
[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)
영상에 당시 최신버전인 5.3으로 진행되어 5.3 branch을 다운받았으나 내부 코드가 바뀌었는지 당장 1주차에서 진행되는 Launch.h 코드 자체가 없습니다. 그나마 LaunchWindows.cpp 코드와 유사하여 그 코드로 보는 중이긴한데 이런식으로 공부하는게 맞나요?
안녕하세요. 10강 다중 타겟으로 스킬 데미지 입히는 부분 학습중입니다. 그런데, 스샷처럼 CollisionQueryParams 생성할때 Source Character 를 넣어줘도 Overlaps 정보에보면 자신이 포함되있는 상태로 나옵니다. 실제로 게임 플레이시, 자신도 피해를 입는 상황이고요.. 혹시 어떤부분을 확인해봐야될지 알수있을까요? 감사합니다.
안녕하세요, GA, GE 등은 그래도 객체 정보를 담을 수 있게 C++에서 기본적인 작업을 하고 BP로 만든 객체를 세팅해주고 구현이 되는데, GC는 BP로 만든 객체를 세팅 없이 Tag로 바로 발동 되는 거 같습니다. AbilitySystem에서 GamePlayCue로 설정된 Tag의 Asset들을 Tracking하여 따로 관리하는 것일까요?
5.1 버전의 강의를 다 듣고, 5.4 깃허브 업데이트 되어서 다시 복습하다가 제목과 같이 스킬 사용할 때 범위 시각화(배포용) 기능을 구현해보고 싶더라구요. 일단, 캐스캐이드가 Legacy 기능이다보니 나이아가라로 다른 스킬 구현은 완료했고, 스킬의 범위를 바닥에 표현하고 싶은데 GAS 프레임워크에서 스킬 범위를 표기할 때 좋은 class가 따로 구현되어 있을까요? 현재 나이아가라 데칼을 써서 해볼까 실험은 하고있는데, 정석적인 방법(?)이 있다면 먼저 그런 방법으로 해보고 싶어서 질문드려요.
선생님 안녕하세요. C++ 코드로는 UABGA_Jump::ActivateAbility(); UABAT_JumpAndWaitForLanding::CreateTask(); JumpAndWaitForLanding->ReadyForActivation(); UABAT_JumpAndWaitForLanding::Activate(); 와 같은 일련의 코드 흐름이 이해가 가는데, UFUNCTION(BlueprintCallable, Category = "Ability|Tasks", meta = (DisplayName = "JumpAndWaitForLanding", HidePin = "OwningAbility", DefaultToSelf = "OwningAbility", BlueprintInternalUseOnly = "TRUE")) static UABAT_JumpAndWaitForLanding* CreateTask(UGameplayAbility* OwningAbility); UABAT_JumpAndWaitForLanding* CreateTask()를 Blueprintcallable로 변경하시면서 블루프린트에서 CreateTask가 호출되도록 변경하셨는데. JumpAndWaitForLanding->ReadyForActivation(); 함수를 주석 처리하셨는데도 불구하고, UABAT_JumpAndWaitForLanding::Activate() 함수가 호출되는 이유를 잘 모르겠습니다. void UGameplayAbility::ActivateAbility() { if (bHasBlueprintActivate) K2_ActivateAbility(); 개인적인 생각으로는 블루프린트 노드를 사용하게 되면 K2_ActivateAbility()가 호출되는걸로 봐서는 이 함수 내부에서 추가로 AbilityTask의 Activate함수를 호출해주는것 같은데, 함수 내부를 볼 수가 없습니다. 혹시 어떤 원리로 UABAT_JumpAndWaitForLanding::Activate()가 호출되는지 알수있을까요? 감사합니다.
[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)
안녕하세요 빌드 시 아래 에러가 발생하는데 혹시 해결 방법을 알고 계실까요? Error C2338 static_assert failed: 'error STL1001: Unexpected compiler version, expected MSVC 19.40 or newer.' 구글링을 해보고 있긴 한데 혹시 해결 방법을 알고 계실까 하여 문의 드립니다.
첫번째로, 무한 무적을 제거하는 블루프린트 게임 이펙트인 BPGE_InvincibleRemove에서 기존의 5.3 이전 버전에서는 교수님이 제작해주신 동영상대로 진행해도 문제가 없지만, 제가 사용하는 버전인 5.4 버전과 같은 5.3 이후의 버전에서는 해당 과정을 적용할 수 없었습니다. 따라서 검색을 통해 다음과 같이 진행하였습니다. 참고링크 https://www.reddit.com/r/UnrealEngine5/comments/18h7wip/how_to_remove_gameplay_tags_with_a_gameplay/?rdt=35472 위와 같이 구성하여 확인한 결과, 무적 태그가 잘 삭제되고 무적이 해제되는 것을 확인하였습니다. 정확한 방법은 아닌것 같지만 동작하는데 문제가 없기에 이 설정을 유지하고 있습니다. 두번째로, 광역 스킬을 담당하는 블루프린트 게임 어빌리티인 BPGA_Skill에서 기존의 5.3 이전 버전에서는 쿨다운과 코스트에 연결될 GE를 연결만 해줘도 문제없이 동작하지만, 마찬가지로 5.4 버전에서는 쿨다운과 코스트가 작동하지 않음을 확인하였습니다. 검색을 해본 결과, 다음과 같이 진행하였습니다. 참고링크 https://forums.unrealengine.com/t/adding-cooldowns-to-abilities-with-the-gameplay-ability-system-in-5-3/1612390 기존의 쿨다운과 코스트에 사용하는 GE를 연결하고 이벤트 그래프에서 위와 같이 노드를 연결한 결과 정상적으로 쿨다운과 코스트가 적용되는 것을 확인하였습니다. 혹시 더 나은 설정 방법이나 개선점이 있다면 무엇이 있는지 알 수 있을까요? 추가적으로 캐릭터나 애니메이션에서 사용할 수 있는 물리 요소들을 Attribute Set에서 관리하는 것이 나은지, Character에서 관리하는 것이 나은지 궁금합니다.