inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

9강 44:59 부분에서 질문이 있습니다.

해결됨

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

현재 버전(5.6)에서 modifier op 는 Add가 아니라 Add(Base) 로 기재되어 있는데, 그럼에도 불구하고 강의의 내용과 똑같이 Current Value만을 변경합니다. 그렇다면 현재 버전의 Add(Base) 에서 Base 는 무슨 의미일까요...? 설명이 잘못된건가요? 마치 Base 에 Add를 하는 것 같아서 오히려 혼동을 불러일으키는 느낌인데

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
hush park 댓글 2 좋아요 0 조회수 121

8강 24:22 CurrentAttributeSet 질문입니다.

해결됨

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

정석적으로 코드를 변경하기 전에 에디터를 실행하려 하면 ensure(CurrentAttributeSet); 부분에서 에러가 발생하는데, 해당 시점에 CurrentAttributeSet 이 null 이라 에러가 발생하는 것이라면, 이를 피하기 위해 정석적으로 변경 한 후에 똑같은 시점에서 if문을 통과하는 방식으로 바꾼것 까진 이해했습니다. 1. 근데 에디터 실행 시점에는 해당 CurrentAttriabuteSet 이 null 이었다가, 게임 시작 시점에는 값이 채워지는데 이유가 무엇인가요? 게임 시작시점에는 문제 없으나 에디터를 실행할때 ensure 구문으로 인해 위와 같은 불필요한 크래쉬가 발생한다면, 그냥 ensure을 안쓰고 if문으로 처리하는게 일반적인가요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
hush park 댓글 2 좋아요 0 조회수 103

ASC 에서 AttributeSet 함수에 대한 mutable 반환 함수가 없는 이유

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

안녕하세요. UABGA_AttackHitCheck::OnTraceResultCallback 구현에서 질문 드릴 게 있습니다. UABCharacterAttributeSet* TargetAttribute = const_cast<UABCharacterAttributeSet*>(TargetASC->GetSet<UABCharacterAttributeSet>()); 게임 로직 만들면서 AttributeSet 의 값을 변경해야 할 경우가 많을 것 같은데요. ASC 에서 변경가능한 AttributeSet 의 참조나 mutable 포인터를 반환하는 함수를 구현하지 않은 이유가 있나요? const_cast 로 억지로 const 를 벗겨내는 게 자연스럽게 느껴지진 않아서요. 다른 곳에서 값을 변경하게 코드를 작성해야 하는 디자인 측면이 있는 건지, 경험적인 정책 측면이 있는 건지 궁금해서 질문 드렸습니다.

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
제정민 댓글 2 좋아요 0 조회수 116

21번 강의와 22번 강의가 이어지지 않습니다.

해결됨

언리얼 엔진 5 핵심 용어와 구조, 단숨에 이해하기!

제목 그대로 이어지지 않는 것 같습니다. 확인 부탁드립니다

  • unreal-engine
  • unreal-engine5
강강 댓글 2 좋아요 0 조회수 107

Layered blend per bone에 대해 질문 있습니다!

해결됨

언리얼 엔진 5 핵심 용어와 구조, 단숨에 이해하기!

Blend Depth : 총 몇 단계 자손 본까지 blend 대상으로 포함을 시키겠다. ex pelvis(3) : pelvis로부터 3단계 자손까지 blend 대상으로 포함 ex thigh_r(-1) : 이 본과 그 하위에 있는 본들을 이 blend 대상으로부터 제외 (허벅지 밑에 하위에 종속되어 있는 본들은 다 블렌드를 하지 않을 것) 강의를 들으며 정리한 내용입니다. 제가 잘 이해했는지 헷갈려서 질문드립니다. Base Pose가 재생되는 기본 포즈이고 , Blend Poses 0의 포즈에서 Layer setup을 통해 pelvis(3) 즉 3단계 자손까지 blend 한다. (하지만 음수인 thigh_l , thigh_r의 자손들은 blend하지 않는다.) 라고 이해하면 될까요?

  • unreal-engine
  • unreal-engine5
giiback 댓글 2 좋아요 0 조회수 158

AActor를 APhysicsVolume으로 Cast가 되는 이유

미해결

[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)

안녕하세요! 아래 코드는 UPrimitiveComponent의 UpdatePhysicsVolume 함수인데, 컴포넌트의 owner인 액터를 가져와서 그대로 Cast<APhysicsVolume>을 했는데, 액터가 캐릭터일 수도 있을 텐데 이게 어떻게 가능한 것인지 모르겠습니다... 감사합니다 // haker: just get the owner Actor and compare Physics Volume's priority APhysicsVolume* V = Cast<APhysicsVolume>(OtherComponent->GetOwner()); if (V && V->Priority > BestPriority) { if (V->IsOverlapInVolume(*this)) { BestPriority = V->Priority; BestVolume = V; } }

  • unreal-engine
  • unreal-engine5
댓글 1 좋아요 0 조회수 99

IMC 매핑 관련 질문이 있습니다!

해결됨

언리얼 엔진 5 핵심 용어와 구조, 단숨에 이해하기!

IA_Move에서 Negate(부정)설정 중 XYZ 박스를 모두 체크하는 것은 특별한 이유가 있나요? (그렇게 하지 않아도 사용하지 않는 축의 영향을 받지 않기 때문에 그런 것으로 이해했습니다.) IA_Move 설정에서 후방 이동(S)과 마우스 Y축 부정의 개념이 살짝 혼동이 생겼습니다. (IA_Look에서 설명해주셨을 때 "엔진에서 Y 축의 양수는 아래 방향을 의미한다."는 말을 듣고 나니, IA_Move의 Y는 그럼 S키 입력에 부호를 바꾸는 것이 아니라(Negate) W키를 반전해야 하는 거 아닌가? 라는 생각이 들어서요.. W,S는 캐릭터를 기준으로 전방, 후방 값이기에 화면을 기준으로 한 Y축 방식과는 다르다고 해석하면 될까요?)

  • unreal-engine
  • unreal-engine5
  • mapping-context
GRANULE 댓글 1 좋아요 0 조회수 118

AActorComponent의 RegisterComponentWithWorld()에서 이어지는 Activate()에 관한 질문입니다

미해결

[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)

안녕하세요! Activate() 이후 PrimaryComponentTick.SetTickFunctionEnable()이 호출되는데, 이후 GameWorld인지 Owner가 있는지 여부 등을 따져가며 RegisterAllComponentTickFunctions()를 호출할 때도 결국 SetupActorComponentTickFunction()을 통해 인자로 전달된 PrimaryComponentTick의 SetTickFunctionEnable()이 호출됩니다. 왜 이렇게 같은 과정이 굳이 두 번이나 이루어지는지 궁금합니다 물론 두 번째 단계에서는 등록 여부를 확인하여 걸러지지만 실행 조건을 살펴보아도 GameWorld가 아니라는 조건 때문에 두 번 실행될 가능성이 있는 것 같아 질문드립니다. 읽어주셔서 감사드립니다.

  • unreal-engine
  • unreal-engine5
최현수 댓글 2 좋아요 0 조회수 133

디폴트로 추가되는 데이터가 존재하지 않아 문의드립니다.

해결됨

언리얼 엔진 5 핵심 용어와 구조, 단숨에 이해하기!

언리얼 5.6 버전으로 깔고 진행하는데 강좌를 보면 콘텐츠 브라우저 / 콘텐츠 폴더에 기본으로 생성 되서 들어가는 데이터가 있는 것 같은데(World, Level, Scene 강좌에서 보여졌던 의자 파티클 이 있는 레벨) 존재하지 않아서 문의 드립니다.

  • unreal-engine
  • unreal-engine5
평온하게 댓글 2 좋아요 0 조회수 208

C++과 에디터 로직 기능의 사용처 구분

해결됨

언리얼 엔진 5 핵심 용어와 구조, 단숨에 이해하기!

영상 참조 [2:07] 실무에서 게임을 개발할 때 C++을 안쓰고 에디터 기능인 Behavior Tree, Blackboard만으로 로직을 만들어야 하는 경우가 있을까요? 두 방식을 각각 어떤 로직에 쓰는 것이 적합할 지 궁금합니다.

  • unreal-engine
  • unreal-engine5
  • 게임개발
  • 개발기초
hallo7230 댓글 1 좋아요 0 조회수 177

SetupGASInputComponent 함수 호출위치가 이해가안갑니다.

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

void AABGASCharacterPlayer::PossessedBy(AController* NewController) { Super::PossessedBy(NewController); AABGASPlayerState* GASPS = GetPlayerState<AABGASPlayerState>(); if (GASPS) { ASC = GASPS->GetAbilitySystemComponent(); ASC->InitAbilityActorInfo(GASPS, this); int32 InputId = 0; for (const auto& StartAbility : StartAbilites) { FGameplayAbilitySpec StartSpec(StartAbility); StartSpec.InputID = InputId++; ASC->GiveAbility(StartSpec); SetupGASInputComponent(); } } } 위 코드에서 제생각에는 서버에서는 input과 관련된 처리가 전혀 필요가 없기 때문에 SetupGASInputComponent 를 안넣어도 될것같은대요. 혹시 꼭 넣으셔야만 하는 이유가있을까요? (그리고 for문안에 두신건 단순 실수이신것 같습니다.) => for문안에 넣으셨던 것은 나중에 수정해주셨네요. 확인했습니다. 클라는 참고로 아래코드를 씁니다. void AABGASCharacterPlayer::SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) { Super::SetupPlayerInputComponent(PlayerInputComponent); SetupGASInputComponent(); }

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
파일로 댓글 3 좋아요 0 조회수 176

[GAS] Player State에 대해 궁금한 점이 있습니다.

해결됨

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

안녕하십니까. 1강 2강 4강을 수강한 학생입니다. 다름아니라, 6강에서 NonPlayer의 경우에는 ASC와 AttributeSet을 직접 들고 있는 이유가 궁금해서 질문을 드리게 되었습니다. Player의 경우에는 Owner를 PlayerState로 설정하고 Avatar를 Character로 설정하는 것이 네트워크 멀티 플레이어 환경에서 적합하다고 저번 시간에 학습했는데, NonPlayer는 그렇게 하지 않는 이유가 궁금합니다. 언리얼 엔진에서도 Player State 클래스만 제공해주고 NonPlayer State 클래스는 제공하지 않던데, 이 부분도 멀티 플레이 부분과 연관이 있을까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
김민재 댓글 2 좋아요 0 조회수 173

UE5.3.2 빌드시 에러

미해결

[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)

해당영상이 5.3.2로 진행되고있어 ue5.3.2 버전 풀소스 다운받아 빌드하려고하니 에러가 납니다. UE5프로젝트만 빌드했는데 아래와 같은 에러로 빌드실패가 나와서 진행을 할수 없습니다. visual studio 2022 최신업데이트된 버전 쓰고있습니다. 어떻게하면 좋을까요? 1>------ 빌드 시작: 프로젝트: UE5, 구성: Development_Editor x64 ------ 1>Using bundled DotNet SDK version: 6.0.302 1>Running UnrealBuildTool: dotnet "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" -Target="UnrealEditor Win64 Development" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild 1>Log file: D:\UnrealEngine-5.3.2-release\Engine\Programs\UnrealBuildTool\Log.txt 1>Building UnrealEditor and ShaderCompileWorker... 1>Using Visual Studio 2022 14.36.32548 toolchain (C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.36.32532) and Windows 10.0.26100.0 SDK (C:\Program Files (x86)\Windows Kits\10). 1>Determining max actions to execute in parallel (6 physical cores, 12 logical cores) 1> Executing up to 6 processes, one per physical core 1> Requested 1.5 GB memory per action, 4.26 GB available: limiting max parallel actions to 2 1>------ Building 372 action(s) started ------ 1>[1/372] Compile [x64] Module.RenderCore.2.cpp 1>D:\UnrealEngine-5.3.2-release\Engine\Source\Runtime\RenderCore\Private\RenderGraphPrivate.cpp(195): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>[2/372] Compile [x64] Module.RenderCore.2.cpp 1>D:\UnrealEngine-5.3.2-release\Engine\Source\Runtime\RenderCore\Private\RenderGraphPrivate.cpp(195): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>[3/372] Compile [x64] Module.AudioSynesthesiaCore.cpp 1>D:\UnrealEngine-5.3.2-release\Engine\Plugins\Runtime\AudioSynesthesia\Source\AudioSynesthesiaCore\Private\PeakPicker.cpp(17): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>[4/372] Compile [x64] Module.LiveLink.cpp 1>D:\UnrealEngine-5.3.2-release\Engine\Plugins\Animation\LiveLink\Source\LiveLink\Private\LiveLinkClient.cpp(1711): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>[5/372] Compile [x64] attention_ fusion.cc 1>D:\UnrealEngine-5.3.2-release\Engine\Plugins\Experimental\NNERuntimeORTCpu\Source\ThirdParty\onnxruntime\Onnxruntime\Private\core\optimizer\attention_fusion_helper.h(767): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>[6/372] Compile [x64] Module.PoseSearch.cpp 1>D:\UnrealEngine-5.3.2-release\Engine\Plugins\Experimental\Animation\PoseSearch\Source\Runtime\Private\PoseSearchLibrary.cpp(41): error C4756: 상수 산술 연산에서 오버플로가 발생했습니다. 1>Total time in Parallel executor: 36.97 seconds 1>Total execution time: 39.04 seconds 1>C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets(44,5): error MSB3073: "..\..\Build\BatchFiles\Build.bat -Target="UnrealEditor Win64 Development" -Target="ShaderCompileWorker Win64 Development -Quiet" -WaitMutex -FromMsBuild" 명령이 종료되었습니다(코드: 6). 1>"UE5.vcxproj" 프로젝트를 빌드했습니다. - 실패 ========== 빌드: 0개 성공, 1개 실패, 10개 최신 상태, 0개 건너뜀 ========== ========== 빌드이(가) 오전 7:04에 완료되었으며, 40.529 초이(가) 걸림 ==========

  • unreal-engine
  • unreal-engine5
댓글 1 좋아요 0 조회수 532

AnimNotify를 GA에서 받는방법이 있을까요?

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

AnimNotify신호를 GA의 함수로 받고싶은데 방법이있을까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
댓글 2 좋아요 0 조회수 110

ABP의 skeleton 오류

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

Git에서 https://github.com/ideugu/UnrealGAS1/tree/main 다운받아서 실행하는데 에디터 실행을 누르면 Anim Blueprint 'ABP_ABCharacter'의 skeleton을 찾을 수 없다고 나오면서 실행이 안 됩니다.

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
HYANG 댓글 1 좋아요 0 조회수 138

장판스킬을 만들때 콜리전설정

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

수업내용은 아니 장판 스킬을 만들고싶은데 구상한바로는 액터를 생성하고 capsuleComponent를 붙여서 Overlap이 발생할때 데미지를 주는 방식으로 만들려고하는데요 Collision부분에서 걸리는게 있습니다. 지금 이 장판액터는 몬스터나 플레이어들만 Overlap이 되고 나머지는 무시를 해야하는데요 이러면 장판액터가 바닥에고정되어있지않고 땅으로 꺼지는현상이 발생합니다. PhysicsSimulate를 꺼도 이런현상이 발생합니다 바닥이랑만 Block되게 만드는 방법도 있지만 혹시 다른방법이 있을까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
ereum999 댓글 2 좋아요 0 조회수 208

어빌리티의 쿨다운 GameEffect에 대하여

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

안녕하세요. GAS Ability 의 Cooldown GameplayEffect (이하 GE) 를 등록하는 부분에 대해 질문이 있습니다. 먼저 실습을 5.4 버전으로 진행하고 있음을 알립니다. 강의 내용에서는 Cooldown GE 적용 시 Cooldown GE BP 를 생성하여 HasDuration 옵션으로 GameplayTag 를 설정 Cooldown을 적용하려는 GA의 Ability Block Tag 에 Cooldown GE에 설정한 GameplayTag를 추가 위와 같이 진행을 해주셨는데, 5.4에서는 2번 과정이 불필요했습니다. 엔진 코드 내부에서는 CheckCooldown 함수 내부에서 Cooldown GE 의 GrantedTag로 직접 쿨다운 체크를 하는걸로 보입니다. 이 부분이 5.4가 되면서 개선된 부분일까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
Kyoungsoo Nam 댓글 2 좋아요 0 조회수 302

다음 엔진강의 계획된게 있을까요

미해결

[Rookiss University] Haker님의 UE5 소스코드 분석 시리즈 #1 (게임 프레임워크)

혹시 다음 언리얼엔진 강의 계획되신게 있으실까요? ㅠ 너무 좋은 강의라 생각해 문의 드려요

  • unreal-engine
  • unreal-engine5
taehyung kim 댓글 2 좋아요 0 조회수 216

GAS 구조로 멀티 플레이 게임을 제작할려고 하는데요

해결됨

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

현재 파트1부터 4까지 강의를 다 마친 상태입니다. GAS 구조의 멀티 RPG게임을 제작할려는데 파트3 네트워크 내용들 만으로도 GAS 멀티 게임 구현이 가능할까요? 아니면 더 배워야 할 것들이 있을까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
임성우 댓글 2 좋아요 0 조회수 272

5.4버전 기준으로 Remove Gameplay Effect With Tags가 안 보입니다.

미해결

이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템

tag는 안되지만 GE를 중지시키는 건 옵션이 있네요 Tag로 중지하는 건 5.4에는 없는걸까요?

  • unreal-engine
  • ue-blueprint
  • unreal-engine5
  • 언리얼-c++
  • gas
임성우 댓글 3 좋아요 0 조회수 333

인기 태그

인프런 TOP Writers

주간 인기글