묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
추가해도되는 헤더인지 봐주세요.
안녕하세요.OnGateTriggerBeginOverlap함수에서 오버랩구조체를 간단히 사용됬는데, TArray<FOverlapResult> OverlapResults;어쩐일인지 정의가 안됬다고 자꾸 빌드실패해서,...어쩔수없이 그녀석 헤더 를 포함시켰는데요.#include "Engine/OverlapResult.h"문제가 찜찜하게 해결되서 여쭤봅니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
많이 어려운데, 한개씩 이해하고있는 중이라,질문입니다.
스탯,위젯컴포들의 초기화를 하려할때, 스탯정보를 갖고있는 컴포넌트는 postinitializer로 생성이되고, 스탯정보로 자신을 업데이트할 위젯컴포넌트는 비긴플레이에서 생성이되는데, 위젯이 스탯컴포넌트를 알기위해서 nativeconsturctor함수를 쓸때 자신의 오너정보를 가져와야하는데, 오너,즉 플레이어나 몬스터는 ,비긴플레이이후라면 이미 생성이 되있을텐데, (선생님도 알수없는 언리얼의 설계라서)둘을 연결하기위해선 1. PostInitializeComponents(스탯컴포넌트는 이시점에), BeginPlay(위젯은 이시점에) -> 이 과정은 이미 적용되었고,2. 클래스확장을 더할건데, 컴포넌트와 위젯의 파생클래스를 만들고, "인터페이스"를 추가하고, 컴포지션방식으로, 플레이어의 함수를 스탯에 등록시켜서 연결한다.->제가 이해한게 맞나요?-> 이 다음이 아직 머릿속에 정리가 안되는데, ..
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
GetWorld() 가 nullptr을 반환합니다
좋은 강의 감사드립니다. 9강 무한맵의 제작 파트 중 28:29초, 31:27초에 나오는 GetWorld() 관련 함수에 대해 질문드립니다. 아무리 캐릭터를 움직여 문쪽으로 다가가도 새로운 맵을 생성하지 않습니다. 떨어지지 않을 정도로 문 밖에 나갔다가 다시 맵 안으로 들어오면 에디터가 터지는 현상이 생겨 알아보니 SetFight에서 타이머를 설정하는 부분에서 GetWorld가 nullptr을 반환한다는 것을 로그로 확인했습니다.강사님의 깃허브에서 코드파일을 받아 실행했을 때에는 정상 작동되는 것을 확인하였고, 해당 파일의 ABStageGimmick 관련 헤더와 cpp만 그대로 복사하여 제 환경에서 실행해보았을 때에는 똑같이 GetWorld()가 nullptr을 반환하는 현상이 나타납니다.맵을 생성하지 않는 문제도 OnGateTriggerBeginOverlap에서 GetWorld()를 호출하는 코드 때문인 것 같은데, 해당 부분에 중단점을 찍어 살펴보니 중단점이 한 번 걸린 이후에는 정상적으로 맵도 생성되고, 이후 SetFight 코드도 정상실행됩니다. (중단점을 안 찍으면 맵이 생성되지 않으며 SetFight가 호출될 때 터집니다)강사님 코드를 그대로 사용하는데 왜 이런 문제가 생기는 걸까요?
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
9강_서브오브젝트 생성
만약에 CourseInfo를 CDO안에서 생성하게 되면 8강에서 서브오브젝트 생성했던 것처럼 CourseInfo = CreateDefaultSubobject<UCourseInfo>(TEXT("NAME_CourseInfo));이렇게 생성하면 되나요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
매크로 지정자설정 질문입니다.
매크로 질문UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Input, Meta = (AllowPrivateAccess = "true"))BlueprintReadOnly는 블프에서 수정이 안되는것이고,AllowPrivateAccess = "true"는 레벨에디터>디테일패널에서만 수정되는데, 그러면,스폰해서 사용할땐 수정내용이 적용이 안될텐데, 담당자외에 수정못하게, 테스트용으로만 사용하란 의도일까요?비주얼스튜디오문제언리얼5.4를 사용중인데,어느순간부터 매크로 지정자들과 몇몇함수들이 자동완성이 안되던데, 혹시 해결책 아실까요? 타이핑도 느리고,명칭들을 정확히 알지않는데, 시간이 더 오래 걸려서요..비주얼어시스트는 너무 비싸구요.
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
Compiling changes for live coding
안녕하세요 강사님.강사님 강의를 통해 언리얼 c++ 입문한 학생입니다.언리얼에서 c++클래스를 추가할 때마다 Compiling changes for live coding이 시간이 너무 오래 걸리는 상황이 많습니다. 그래서 Cancele하고 7강 전까지 학습을 했었습니다. 근데 "Compiling changes for live coding"완료하지 않으면 Person 클래스가 생성이 안돼서 10분 정도 걸려서 완료했더니 Person클래스가 생성 됐습니다. visual studio에서 빌드할 때도 최소 4~5분정도 걸리는 것 같아요. 컴퓨터 성능은 충분한데 왜 그런가요? 빌드에 소요되는 시간을 단축시키는 방법이 없을까요?
-
미해결[입문자를 위한 UE5] Part3. 언리얼 엔진 3D 게임 개발 입문
BeHavior Tree 강의 중 AI가 움직이지 않습니다.
안녕하세요~ 5.4버전을 사용하고 있고강의를 따라했는데, 몬스터가 이동하지 않습니다.Print String으로 좌표를 출력해보면, 동일한 좌표만 출력하고 있습니다. 확인 부탁 드립니다.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
5강 HitCheck문제
5강을 듣고 수행하면서 마지막 테스트할 때 점프를 하기 위해 스페이스바를 누를 시 점프는 수행되지 않고 hitcheck만 계속해서 수행되는 것 같습니다. 코드와 tag등 똑같이 따라하였는데 무엇이 문제일까요?위의 사진처럼 스페이스바를 꾹 누른 상태로 돌아다니면 점프 대신에 이렇게 나옵니다
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
혹시 TObjectPtr를 멤버변수로 가진 클래스의 직렬화 예제를 알려주실 수 있나요?
한번에 모아 보려고 한 프로젝트에서 작성중입니다.Student의 부모인 Person에 있는 Card 때문에 오류가 나서요.혹시 FString 변수만 따로 직렬화가 가능한지불가능하다면 FArciveUObject를 이용해야되는것 같은데 예시가 있을지이 두가지를 물어보고싶습니다. FArciveUObject는 사용법 예시를 아무리 검색해도 못찾아서요.
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
GameplayTags - 43:20초 Primary Asset Types to Scan 질문
Primary Asset Types to Scan에 PDA_AssetData를 등록해서 나중에 원할 때 로딩 할 수 있다고 하셨는데, PDA_AssetData를 로딩하고 그 안에 있는 AssetSet(번들)을 또 다시 선택적으로 로딩하는 건가요? 아니면 PDA_AssetData를 로딩하는 순간 그 안에 있는 AssetSet(번들)들이 모두 로딩되는 건가요?
-
미해결언리얼 엔진4 입문 (C++ 기반)
RPG프로젝트
수업으로만 보고, 너무 공부하고싶은데, 다운받고보니, 비주얼스튜디오가 2017이더라구요. 엔진버전 스위칭하니, 빌드실패하고.결국 언4와 vs2017로 봐얄거같은데, 비주얼스튜디오 2개버전 설치해도 괜찮나요?요즘 언5.4쓰고있어서, 비주얼스튜디오에서,인텔리센스 이상하고, 자동완성에러,컴파일에러가 드글거려서 뒷목잡고 하거든요.행여,두버전 설정 꼬일까 걱정되서요.
-
미해결언리얼 엔진4 입문 (C++ 기반)
플레이어랑 적이랑 구분했던가요?
선생님 안녕하세요.우여곡적끝에.. takeDamage함수를 성공?해서 ,원점에 꽂힌 칼을 뽑아 레벨에 세워둔 다른 인스턴스를 때리러 갔습니다.바로 칼을 뺏겼습니다. 당황해서 다시 '오버랩이벤트'를 발생시켜 칼을 뺏고 재빨리 때려서 데미지입는건 확인했습니다. 그와중에 몇번더 뺏기고,다시뺏고를 반복했습니다.제가 뭘 실수한걸까요...?알려주세요 ㅠㅠ(버전5.4에서 헤더 폴더위치 바뀐거땜에 삽질좀하느라,멘탈이 털렸어요.ㅋㅋ ㅠ)//-----------------------------------------(추가)다음강의에서 npc처럼 랜덤배회하면서 오버랩될때마다 무기를 가져가요. 귀엽긴하지만, ... 의도는 아니니까... 간단히 방지할 방법 없을까요?
-
미해결[입문자를 위한 UE5] Part2. 언리얼 엔진 2D 게임 개발 입문
F8을 눌러도 게임 화면에서 나오질 못해요
강의를 보며 학습중인데, 강의 중 게임실행화면에서 F8을 눌러 실행과정을 살펴볼 때 저는 F8을 눌러도 게임실행화면에서 나오질 못합니다 ㅠㅠ검색도 해보고 찾아봤지만 해결을 못하고 있습니다 ㅠㅠ키세팅이 만진 적이 없는데, 언제 바뀐건지 해결이 안되고 있습니다.어디서 설정을 해야되는지 도와주세요 ㅠㅠ
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
UPROPERTY() 사용 시 Category 지시자가 적용되지 않는 문제
안녕하세요 교수님, 교수님의 강의에서 많은 도움을 얻고 있습니다.양질의 강의에 언제나 감사드립니다. 간단한 토이 프로젝트를 만들던 중 제목과 같은 문제를 마주했습니다.AnimInstance 클래스 안에서 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = Character)TObjectPtr<class UCharacterMovementComponent> Movement; 위와 같이 프로퍼티를 만든 후에 AnimInstance를 상속받은 블루프린트 클래스를 만들었습니다.하지만, 블루프린트 클래스의 디테일 패널에서 Character 카테고리를 찾아볼 수 없는 문제가 발생했습니다. 언리얼 에디터를 종료하고 빌드를 해봐도 고쳐지지 않고라이브 코딩을 시도해도 달라지지 않았습니다.어떻게 해결해야 하는지 알고 싶습니다.또 현재 프로젝트에 스켈레탈 메쉬를 적용하려 하는데, 구버전인 언리얼 4 버전과 언리얼 5 버전의 스켈레탈 메쉬가 있습니다.호환성이나 성능, 안정성 측면에서 무엇을 사용하는 것이 더 나은 방법인지 궁금합니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
ConstructorHelpers::FObjectFinder 사용하실때 static오 변수 선언해서 넣는 이유가 있나요?
ConstructorHelpers::FObjectFinder 사용하실때 static오 변수 선언해서 넣는 이유가 있나요?static 안쓰고 하면 어떤 문제가 있을까요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
2-15강 적군을 처치한 score UI가 업데이트 X
안녕하세요 득우님, 2-15강에서 적군을 처치한 score UI가 제대로 업데이트 되지 않아서 질문을 남기게 되었습니다. 강의대로 따라한 결과, Controller 블루프린트에서 GameOver와 GameClear event는 제대로 동작하여서 게임의 승리와 죽음시 관련 UI들은 잘 spawn됩니다. 하지만, 적군 NPC 처리시 적군 처리 count가 업데이트가 안됩니다. 그러나 적군 처리시 text widget의 숫자의 색깔이 변하는 것으로 보아, WBP_PlayerScore의 custom event들은 잘 트리거 되지만, 아래 그림의 빨간 화살표가 가르키는 New Score 변수가 업데이트 되지 않는다는 것으로 유추해 보았습니다. 그래서 만약 제가 생각한 가정이 맞다면 다음과 같은 궁금증이 생겼습니다.1. WBP_PlayerScore의 custom event를 트리거하는 부분은 어디에 있는지2. 각 WBP_PlayerScore의 custom event에 Input으로 들어가는 "New Score"라는 변수는 어떻게 접근하는지3. Controller에서는 Custom event를 트리거할때 Kismet 접두사가 붙은 C++함수로 컨트롤 했는데, PlayerScore의 custom event도 같은 방식인건지 감사합니다!
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
SlotWidgets 순회 및 업데이트 질문
ㅏ
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
HUD 클래스를 사용하지 않으신 이유
ㅏ
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
아이템과 캐릭터의 관계
현재 프로젝트의 아이템 시스템은 캐릭터가 아이템을 습득 -> 아이템 관련된 함수를 캐릭터에서 직접 구현 방식으로 되어있는데캐릭터에 스탯 컴포넌트 또는 무기 장착 함수 등을 public 형태로 두고 접촉한 아이템이 캐릭터의 함수를 호출하는 방식으로도 생각을 했습니다어떤 방법이 더 나은걸까요? 현재 프로젝트(게임이랑 성격이 조금 다릅니다)에서는 UI도 쓰이는데 이 때 레벨마다 UI를 사용할 때도 있고 아닐 때도 있어 캐릭터는 기본 함수 제공, UI에서 Delegate 또는 직접 접근으로 처리중인 상황입니다어떤 설계가 더 나은지 또 캐릭터에서 아이템 등을 직접 참조하고 아이템 등은 캐릭터를 모르게 설계하신 자세한 이유도 한 번 여쭤보고 싶네요~
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
NetDormancy 설정 중 문제가 발생했습니다.
안녕하세요 교수님, 교수님의 강의에서 늘 큰 도움을 얻고 있습니다.Actor에서 상속된 Fountain의 NetDormancy 프로퍼티의 초기화를 하던 중 문제가 발생했습니다. 생성자에서 다음과 같이 초기화하였으나 클라이언트는 여전히 서버로부터 리플리케이션이 이뤄지는 것을 확인했습니다. NetDormancy = DORM_Initial; 그래서 다음의 버전들도 시도했으나, 여전히 휴면상태는 이뤄지지 않았습니다. NetDormancy = Super::SetNetDormancy(DORM_Initial); 또는 NetDormancy = ENetDormancy::DORM_Initial; 제가 지금 사용하는 언리얼 엔진의 버전은 5.4입니다.혹시 버전에 따른 업데이트로 발생한 문제일까요?