묻고 답해요
148만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
Gameplayability vs Gameplaycue
여러 계산식(방향 , 상태 체크 )이 들어간 hitreaction을 구현하려고 합니다. Gameplayability 과 Gameplaycue 중 어느 구현방식이 최적화와 서버 비용 절감에 도움이 될까요? GameplayAbility로 계산식을 구현하고 ability안에서 cue를 사용해 애니메이션을 실행시키는게 좋을까요? 궁금합니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
콤보 애니메이션 몽타주의 MontageJumpToSection에 대하여
안녕하세요. 하나의 콤보 애니메이션 몽타주에서 섹션으로 점프하는 방식으로 강의 내용이 진행되고 있는데요. 강의 프로젝트 재확인하는 느낌으로 개인 프로젝트를 조금씩 진행하고 있는 중 콤보 공격을 넣기 위해 강의 내용따라 애니메이션 몽타주를 만들었습니다. JumpToSection 을 사용하게 되면 애님 몽타주 내부에서 해당 지점으로 바로 점프해버리다보니 점프 직전 프레임과 이후 프레임간의 모션 차이가 클 경우 상당히 눈에 띄더라구요. 그래서 각 콤보 공격의 단계를 개별 애니메이션 몽타주로 제작하고 다음 콤보 입력시 개별 애니메이션 몽타주 재생을 해봤는데 이 경우는 애니메이션 블렌딩이 되어 자연스럽게 이어지는것 처럼 보였습니다. 여기서 질문인데, JumpToSection 이 직전/직후 프레임간의 애니메이션 블렌딩이 불가능하다면 실제 프로젝트에서는 어떤 상황에서 사용하게 되는지 궁금합니다. 감사합니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
PossessedBy() 함수는 싱글플레이에서는 호출되지 않나요?
PossessedBy 함수가 서버에서만 호출된다면, 싱글플레이용 게임에서는 어느 위치에서 Character 의 ASC 에 PlayerState 의 ASC 를 대입하는게 적절할지 궁금합니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
CommitAbility 함수 관련 질문
안녕하세요 교수님.5.4.4 버전으로 강의를 듣고 있는데, 계속해서 Cost 옵션과 CoolDown이 적용되지 않아 이것저것 찾아보다가 ActivateAbility부분에 해당 코드가 있는것을 발견했습니다.if (!CommitAbility(Handle, ActorInfo, ActivationInfo)) { EndAbility(Handle, ActorInfo, ActivationInfo, false, true); return; }해당 코드를 넣고 난 후 정상적으로 cost와 cooldown이 적용되었습니다.해당 함수는 어떤 기능을 하는 함수인지 궁금합니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
가스 입력함수 AbilityLocalInputPressed() , 태그
교수님 안녕하세요.복습하려고 필요한 부분들만 보고 있습니다.궁금한게 있어서요. (질문해도되나요? ) 가스용 입력함수가 따로 있다고 들었는데,AbilityLocalInputPressed() 함수는 사용하는데 어떤 장단점이 있는지 아시나요? 아레나 플젝에서는 입력바인딩은 네이티브함수로 다 되있어서요.태그는 매틱마다 반드시 검사할수밖에 없을까요? 태그로 상태,조건을 하는데 너무 많이 쓰면 오버헤드가 생긴대서요. 아니면, 태그 사용을 어느정도까지 사용이 안전한지 디버깅이 될까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
GA에서 Attribute를 가져올때 발생하는 C6011 Warning과 관련하여 질문드립니다.
안녕하세요 교수님.좋은 퀄리티의 강의를 제공해주셔서 정말 감사드립니다.저는 현재 언리얼 엔진 5.4.4, Visual Studio 2022 17.12.3 버전으로 강의를 수강하고 있습니다.다름이 아니고 "6강 : 캐릭터 어트리뷰트 설정"의 35분 즈음에 Source와 Target의 AbilitySystemComponent를 가져오고, 해당 ASC에서 AttirbuteSet을 가져오는 부분을 구현하던 도중, 초록색 줄이 나오면서 C6011 Warning이 발생하였습니다.https://learn.microsoft.com/ko-kr/cpp/code-quality/c6011?view=msvc-170이는 null포인터 역참조에 의한 경고임을 확인했습니다.근데, SourceASC의 경우 checked 함수를 통해서 점검하고 가져오기 때문에 null포인터가 발생할 수 없지 않나요? 아니면 check함수가 unreal에서만 사용하는 함수이기 때문에 C++은 이를 인지하지 못하여 저렇게 디레퍼런싱 경고를 띄워주는 것일까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
[Part4-5강] ABGA_AttackHitCheck활성화가 안되는 문제
강좌를 따라하면서 동일하게 진행을 했는데 어째서인지 ABGA_AttackHitCheck::ActivateAbility Begin로그가 찍히지 않습니다. ABGA_AttackHitCheck의 생성자는 호출되는데 ActivateAbility가 호출되지 않는데요. 어느 부분을 체크해봐야 할까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
TA
언리얼에서 어빌리티 시스템을 이용하여 구현중입니다.플레이어가 도끼를 휘둘러 몬스터가 넉백되는 시스템을 구현할때 플레이어가 도끼를 휘두르는 것을 GA, AT, TA로 구현했습니다. (광역 공격)현재 상황은 TA에서 AddForce로 몬스터를 넉백처리 해주는데, AddForce로 몬스터를 넉백하는 것을 몬스터의 넉백 어빌리티로 구현하는것이 좀 더 괜찮은 코드일까요? 아니면 기존처럼 TA에서 몬스터의 넉백을 구현하는 것이 나을까요...?몬스터에게 ASC를 생성하고 어트리뷰트까지 달아준 뒤 넉백 어빌리티를 만드는거는 너무 과한 코드일까라는 생각이 들어서요.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
멀티플레이 게임 구현시 어떤 부분을 고려해야 할까요?
어빌리티 시스템은 이제 어느 정도 사용가능한데멀티플레이 게임 구현시 OSS이용 Steam 타겟입니다. 따로 고려해야 되는 부분이나 팁이 있을까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
게임어빌리티를 멀티플레이로 동기화하는 방법을 알고 싶습니다.
PlayerState 클래스의 생성자에 ASC->SetIsReplicated(true);를 추가하고캐릭터의 SetCharacterControl 함수에 if (!IsLocallyControlled()){return;}를 추가한 뒤캐릭터의 PossessedBy 함수에 SetupGASInputComponent();를 넣었는 데 이걸로는 공격 어빌리티가 완전히 동기화되지는 않더라고요서버역할도 하는 클라이언트(A)에서 공격키를 누르면 다른 클라이언트(B)에서 동기화되는데 클라이언트(B)에서 공격키를 눌렀을 때는 아무일도 일어나지 않습니다.OnRep_PlayerState 함수 안에서도 어빌리티를 등록해줘야 하는 걸까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
안녕하세요. 프로젝트 생성시 GAS 관련 모듈이 나오지 않습니다.
새로운 환경에서 GAS를 실습하고자 프로젝트를 하나 새로 파서 GAS시스템을 적용하고자 하였습니다.처럼 Gameplay관련 모듈을 넣고 빌드를 했는데와 같이 관련 모듈이 나타나지 않는 상황입니다.세팅시 추가적으로 해야할 일이 있을까요??강의 항상 잘 듣고있습니다. 감사합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
MSB3073 오류로 프로젝트 빌드가 불가능합니다.
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 오류 발생
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
NPC HpBar 설정
Player HpBar는 이상이 없었는데 NPC HpBar를 만들 때 ensure를 그대로 사용하면 null값이 나와서 에러가 나더라구요.Player와 NPC가 생성되는 시점이 다른 게 원인인가요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
빌드오류가 계속 나옵니다
vs 도구를 추가로 설치하거나 generate를 계속해주거나일반 프로젝트를 생성하고 source랑 contents를 넣은 뒤 generate를 해줘도 동일합니다강의자료로 해도 깃헙에서 받아도 전부 그렇습니다
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
GA_AttackHitCheck 에서 ExecuteGameplayCue
안녕하세요. AttackHitCheck 어빌리티 안에서 ExecuteGameplayCue 호출할 때 태그를 하드코딩하는 것이 아니라, BP에서 설정한 GameplayCue를 그대로 쓰고싶은데, 어떻게 할 수 있을까요? 꽤 검색했는데 찾기 힘드네요ㅠ ㅠ.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
showdebug abilitysystem 캐릭터 녹색 박스 오류
안녕하세요. 강의 참고해서 프로젝트 작업하고 있습니다.showdebug abilitysystem 를 사용했을 때 녹색 박스의 한 꼭지점이 원점에 고정되어있습니다.다른 곳에 배치한 NPC 또한 마찬가지입니다.혹시 해결방법을 알 수 있을까요?
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
아이패드에서 2강부터 재생 불가
Part.4 게임플레이 어빌리티 시스템 2강 캐릭터와 입력 시스템부터 재생이 안됩니다.다른 파트는 정상적으로 재생됩니다..검색해보니까 인프런에 유사한 증상을 겪는 유저가 종종 있는것 같은데, 한번 살펴봐 주십시오. 실행환경: 아이패드 프로11 3세대브라우저: 크롬과 웨일 (일반/시크릿 모드에서 테스트)
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
다중 타겟액터 설정할때, 자신이 제외가 안됩니다.
안녕하세요. 10강 다중 타겟으로 스킬 데미지 입히는 부분 학습중입니다. 그런데, 스샷처럼 CollisionQueryParams 생성할때 Source Character 를 넣어줘도 Overlaps 정보에보면 자신이 포함되있는 상태로 나옵니다. 실제로 게임 플레이시, 자신도 피해를 입는 상황이고요.. 혹시 어떤부분을 확인해봐야될지 알수있을까요? 감사합니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
State에 Falling을 추가하고 싶습니다.
안녕하세요. 프로젝트 작업 중 점프가 아닌 Falling 스테이트를 부여하고 싶습니다. Effect를 만들어서 강제로 부여해야하는건지 아니면 다른 기능이 있는지 여쭤보고 싶습니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
ArenaBattle 과 ArenaBattleGAS 모듈을 분리하는 이유가 있을까요?
안녕하세요. 강의 듣다보니, ArenaBattle 과 ArenaBattleGAS 모듈이 분리되있는데, 혹시 모듈을 분리하는 특별한 이유가 있을까요? 아니면 GAS 시스템과 기존 제작된 ArenaBattle 을 명시적으로 나누기 위해서 분리한것인가요? 궁금합니다 ^^;