묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결언리얼 엔진4 입문 (C++ 기반)
델리게이트 관련 질문입니다!
선생님 제가 직접 델리게이트 함수를 이용하여 기능을 하나 추가해보려는 과정중에 문제가 하나 발생했습니다. 델리게이트 함수에 적절하게 파리미터값을 준거 같은데 자꾸 언리얼에서 인식을 못하고있습니다. 제가 뭔갈 실수한걸까요? 2틀째 원인을 못찾고있습니다. ㅠㅠ아래 그림을 보시다시피 public쪽 선언하는 부분에서 인식을 못하고있습니다. 원래라면 델리게이트쪽 에서 FStateTypeChanged가 초록색으로 되면서 밑에도 자동입력목록에 FStateTypeChanged가 없습니다DECLARE_DYNAMIC_MULTICAST_DELEGATE_TwoParams(FStateTypeChanged, EStateType, InPrevType, EStateType, InNewType); public: UPROPERTY(BlueprintAssignable) FStateTypeChanged OnStateTypeChanged;
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
shouler view의 Look 방향이 quater view에 그대로 적용되고 캐릭터가 방향을 바꾸지 않습니다.
앞으로도 문제가 자꾸 생길 것 같은데 문제가 생길 경우 디버깅하는 방법을 알려주시면 감사드리겠습니다.
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
AssetManager 챕터 강의 중 "FSoftObjectPath GetAssetPathByName(const FName& AssetName)" 함수 Return Type 관련 질문이 있습니다.
AssetManager 챕터 강의 중, 다음의 두 함수를 추가하게 되는데, FSoftObjectPath GetAssetPathByName(const FName& AssetName);const FAssetSet& GetAssetSetByLabel(const FName& Label);첫번째 함수인 "FSoftObjectPath GetAssetPathByName(const FName& AssetName);" 경우에는왜 "const FAssetSet& GetAssetSetByLabel(const FName& Label);" 처럼 "FSoftObjectPath&" Return 타입이 아닌, "FSoftObjectPath" Return 타입으로 작업하셨는지 문의 드려봅니다.
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
30분 이후부터 한동안 까만 화면나오는데요
안녕하세요. 자막만 나오고,화면 안나오는 구간이 있습니다.제거에서만 그런건지 게시글을 봐도 이전사례가 없습니다. 도와주세요.ㅠ
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
오류 MSB3073 가 뜹니다.
심각도 코드 설명 프로젝트 파일 줄 비표시 오류(Suppression) 상태 세부 정보오류 MSB3073 "F:\UE_5.4\Engine\Build\BatchFiles\Build.bat HelloUnrealEditor Win64 Development -Project="F:\LeeProject\UnrealProgrammingPart1\HelloUnreal.uproject" -WaitMutex -FromMsBuild -architecture=x64" 명령이 종료되었습니다(코드: 6). HelloUnreal C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets 44 (vs 2022)sln 파일만을 실행 후 빌드를 진행했을 때 이 에러가 뜹니다. 프로젝트 폴더에 binaries 폴더가 보이지 않아서 지워볼 수 없는 상태입니다.라이브코딩 활성화 때문이라는 글도 어디선가 본거같은데, 비활성화를 위해 엔진을 켜면 "HelloUnreal could not be compiled. Try rebuilding from source manually.", 'HelloUnreal' 게임 모듈을 찾지 못했습니다. 이 모듈이 존재하는지, 컴파일 되었는지 확인해 주시기 바랍니다." 라는 에러가 떠서 엔진을 킬 수가 없습니다.도저히 해결 방법을 모르겠습니다.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
WBP_HpBar의 Parent Class를 설정
강의 내용 중 WBP_HpBar의 Parent Class를 설정하는 부분에서, WBP_HpBar의 Parent Class를 ABGASHPBarUserWidget으로 변경하고 있는데, WBP_HpBar 위젯은 ArenaBattleGAS가 아닌 ArenaBattle 모듈쪽에 있는 것으로 보여서 ArenaBattle쪽 위젯이 GAS쪽 클래스를 부모로 가지는 건 모듈 간 의존성 부분에서 좋지 않은 방법이 아닐까? 라는 생각이 들었어요. 해당 부분은 강의 내용처럼 저렇게 설정해도 문제가 없는 것인지, 혹은 더 좋은 방법이 있을지 궁금합니다!
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
10강 싱글톤 수업
싱글톤 수업을 보고 따라서 코드를 작성했는데 마지막에 라이브코딩을 하고난뒤에 결과물을 보니까 ui의 체력이 갑자기 반으로 줄어서 이상하다 했더니 캐릭터의 모든 수치가 0으로 되어있는데 이런경우는 어떤게 문제인지 아시나요? 혹시몰라서 선생님 코드와 비교해서 문제점은 찾아봤지만 다른건 찾지 못했습니다.
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
언리얼 엔진 5.4.3 Notify 두번 호출
리슨 서버(호스트)의 액터가 공격하면 Notify는 정상적으로 한번 호출되는데 클라이언트의 액터가 공격요청을하면 서버에서 Notify로그가 두 번 호출됩니다. (두번 공격 되는 현상) 5.4.3에서만 일어나는 문제일까요? 프로젝트를 다운 받아서 버전이랑 헤더 수정만 하고 실행해도 똑같은 현상이 발생하네요. 리슨 서버 액터에서 공격시 출력 로그클라에서 공격시 출력 로그
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
GameModeBase 클래스가 자동으로 생성되지 않습니다..
왜인지 모르겠는데, 6:53 부분에서 게임모드 베이스의 키워드를 복사해서 붙여넣기 하라고 나와있지만 저는 Source 폴더에 있는 UnrealInterface 에 UnrealInterface.h 와 .cpp 둘다 보이지 않습니다. 이유가 무엇인지 궁금합니다... 저만 그런건가요
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
콤보액션 관련해서 질문 남깁니다
디버그를 할때 EffectiveFrameCount 에 Num=4 가 지정되 있는대 이것이 4개의 항목이 안에 있다는 의미가 맞을까요?? 그리고 콤보엑션에서 다음콤보로 넘어가지 않을때에 어느부분을 봐야하나요?? CurrentCombo는 정상적으로 1에서 2로 바뀝니다
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
간단한 프로젝트에서 포즈 워핑을 연습하던 도중 문제가 발생했습니다.
교수님의 강의에 언제나 큰 도움을 얻고 있습니다.기존의 질문을 GAS 강의에서 작성하였으나, 강의 주제와 맞지 않다고 판단하여 다시 작성하게 되었습니다. 제가 겪고 있는 문제를 글로 설명드리기 보다는 직접 보여드리는 것이 나을 것 같아 동영상으로 대체하였습니다.아래의 링크는 현재 발생하고 있는 문제를 담은 유투브 링크입니다.https://www.youtube.com/watch?v=SC1bD4pls3U C++ 클래스로 만든 애님 인스턴스에서 파생된 애니메이션 블루 프린트를 사용해포즈 워핑을 연습하고 있던 도중 영상과 같은 문제가 발생했습니다. 가속도에 따라 발을 디디는 속도가 달라지게끔 설계하였지만, 영상처럼 애니메이션이 굳어버리는 문제가 발생하였습니다.문제가 발생하고 있는 원인을 찾기 위해 로그를 찍어 확인한 결과, LogTemp: Warning: Accelation : X=-2048.000 Y=0.000 Z=0.000LogTemp: Warning: bHasAccelation : trueLogTemp: Warning: Accelation : X=0.000 Y=0.000 Z=0.000LogTemp: Warning: bHasAccelation : false 문제가 발생하는 시점부터 로그가 위와 같이 찍히는 것을 확인할 수 있었습니다.Accelation과 bHasAccelation은 다음의 코드에 의해 값이 결정됩니다. Accelation = Movement->GetCurrentAcceleration() * FVector(1.0f, 1.0f, 0.0f);bHasAccelation = !Accelation.IsNearlyZero(0.001f); 제가 생각해본 문제의 원인은 가속도가 MaxAccelation 이상을 넘어가면 가속도를 0으로 초기화하는 것이라고 생각하고 있습니다.혹시 제가 생각한 것이 문제의 원인이 맞는 것일까요?만약 맞다면 가속도가 MaxAccelation에 도달했을때 어떻게 값을 조절해야 하는지 궁금합니다.제가 생각한 부분에서 문제가 없다면, 어느 부분에서 문제가 발생할 수 있는지 알려주시면 감사하겠습니다.
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
5강 캐릭터 콤보액션에서 콤보액션데이터가 안잡히는대 왜그런건가요
24분 부분에 콤보액션데이터를 설정하는곳이 안잡힙니다.데이터에셋은 만들었고 cpp에서 빠진부분이 있는건가요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
강의 진행이 어떻게 되는건지 질문드립니다
1강부터 14강까지 잘따라오다가 15강 21분 29초부터BP_ABPlayerController 블루프린트를 켜보니 이렇게 구현되어있는 화면이 나오는데강사님하고 전혀 다른화면이 나옵니다. 강사님이 15강에 올려주신 파일에서 가져와서 실습을 진행해야하는건가요 ?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
VS 자동완성 관련 질문 드립니다.
UPROPERTY 안의 속성이나 BeginPlay() 와 같은 상속받아 사용하는 함수들에 대해 Visual Studio 에서 자동완성을 하려고 한다면 어떻게 해야 하나요? 인터넷을 뒤져도 찾을 수가 없어서 여기에 질문 남깁니다..!!
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
Vector 25:57
블루프린트에서 월드에 있는 Sphere를 Target으로 설정할 수 없고 R1Actor를 직접 월드에 배치한 경우만 스피어를 타겟으로 설정할 수 있는 이유가 뭔가요?
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
UObject의 'Outer'가 무엇인지 궁금합니다.
안녕하세요 교수님, 강의를 듣고 공부 겸 포트폴리오 하나 만드려고 열심히 코딩하고 있습니다만,NewObejct<>()의 첫번째 인자인 Outer의 개념이 무엇인지 궁금해서 질문합니다. 엔진 코드나 공식 문서를 찾아봐도 그냥 이 'Object this object resides in' 정도의 설명만 적어져 있고, 자세한 Outer의 역할이 작성되어 있지 않습니다.엔진 코드를 자세히 분석해보기는 너무 어렵고,, 그래서 구글링을 해보았더니 Outer는 Outer Chain, 계층 구조를 표시하는데 유용하다고 합니다.ex) 월드 -> 레벨 -> 액터 -> 컴포넌트. 등 이런 계층 구조를 유지하고 필요할 때 사용하기 위하여 outer를 지정해야 한다는 것 까지는 이해가 갑니다만,종종 'GC'에도 관여한다는 사람도 있고 아니라는 사람도 있어서 궁금해서 질문을 올립니다. GC는 1. UPROPERTY() 2. FGCObject 상속 후 구현 3. RootSet의 경우에만 GC와 참조 카운트에 영향을 미치는 것이 아닌가요? GC에 관여하지 않는 것이 맞다면, Outer의 목적은 대체 무엇인가요? 단순히 계층 구조의 표현과 필요할 시 사용을 위한 용도인 것인가요? 'Owner'같은 경우는 Part3. 강의에서 오너십과 커넥션 관련 판별에서 유용하게 사용되는 것을 알겠지만Outer는 정확한 목적을 모르겠습니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
아이템박스에서 배열 빈경우,
안녕하세요.아이템박스인걸로 봐서, 처음 아이템랜덤으로 어셋매니저사용할때 내용인거같은데, 지금 크래쉬가 나서 보니 이부분인데요.//ItemBox.cpp void AABItemBox::PostInitializeComponents(){ Super::PostInitializeComponents(); UAssetManager& Manager = UAssetManager::Get(); TArray<FPrimaryAssetId> Assets; Manager.GetPrimaryAssetIdList(TEXT("ABItemData"), Assets); ensure(0 < Assets.Num()); int32 RandomIndex = FMath::RandRange(0, Assets.Num() - 1); FSoftObjectPtr AssetPtr(Manager.GetPrimaryAssetPath(Assets[RandomIndex])); if (AssetPtr.IsPending()) { AssetPtr.LoadSynchronous(); } Item = Cast<UABItemData>(AssetPtr.Get()); ensure(Item); Trigger->OnComponentBeginOverlap.AddDynamic(this, &AABItemBox::OnOverlapBegin);} //이렇게 확인했습니다. else { UE_LOG(LogTemp, Error, TEXT("GetPrimaryAssetPath Problem")); }배열이 비어있는거같은데, 이런경우에 시도해볼 해결책은 어떤것이 있을까요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
함수질문1, 행동트리(블프vsc++) 2,gas3
질문1.ABCharacterNonPlayer.cppvoid AABCharacterNonPlayer::AttackByAI(){ProcessComboCommand();//계속 선언안됬다고 못찾아서..}그냥,ABCharacterNonPlayer안에 같은 함수 만들어서 썼는데요.그래도 되나요? ㅠㅠ(된다고 해주세요ㅠㅠ)질문2.블프로 ai만드는거 좋아해서 기다렸는데, 우째 ...4배는 복잡하것같은건, 제가 프로그래밍실력이 부족해서겠죠?질문3.GAS할려고 달려가고있는데,,,아무래도 지금보단 공부좀더하고 가는게 낫겠죠? 잠깐 봤는데 인터페이스 엄청 쓰시던데..
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
39:00 캐릭터 방향
강의보면서 Modifiers변경하고 코드 수정했는데 W,S는 좌우, A,D는 앞뒤로 설정됩니다. 왜 그런걸까요..ㅠㅠ
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
32:00 EnhancedInput
이렇게 추가했는데 반영이 안되는 것 같아요. 왜 걸까요?