묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 언리얼 소울라이크 개발: A to Z
UUserWidget 생성자 선언하는 이유
UUserWidget의 생성자를 명시적으로 선언하는 경우가 흔한가요?1번의 답이 '아니오'라면 이번에는 왜 빈 생성자를 선언하셨나요?UUserWidget의 생성자를 활용하는 대표적인 케이스 한 가지만 예로 들어주실 수 있나요?
-
미해결실전! 언리얼 소울라이크 개발: A to Z
Visual Studio 창이 안뜹니다 ㅠ
프로젝트 생성 및 설정 강의에 1분29초에 Visual Studio 창이 안뜹니다 ㅠ
-
미해결이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
8강 24:22 CurrentAttributeSet 질문입니다.
정석적으로 코드를 변경하기 전에 에디터를 실행하려 하면 ensure(CurrentAttributeSet); 부분에서 에러가 발생하는데, 해당 시점에 CurrentAttributeSet 이 null 이라 에러가 발생하는 것이라면, 이를 피하기 위해 정석적으로 변경 한 후에 똑같은 시점에서 if문을 통과하는 방식으로 바꾼것 까진 이해했습니다.1. 근데 에디터 실행 시점에는 해당 CurrentAttriabuteSet 이 null 이었다가, 게임 시작 시점에는 값이 채워지는데 이유가 무엇인가요?게임 시작시점에는 문제 없으나 에디터를 실행할때 ensure 구문으로 인해 위와 같은 불필요한 크래쉬가 발생한다면, 그냥 ensure을 안쓰고 if문으로 처리하는게 일반적인가요?
-
미해결[언리얼 공인 강사 직강] 하루만에 언리얼 엔진5 입문하기
왜 벽 생성이 안될까요...
-
미해결[언리얼 공인 강사 직강] 하루만에 언리얼 엔진5 입문하기
6분 30초에 코인먹을때
왜 2개씩 늘어나요?
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 실전편
저장 다하고 껐다키니까 이상해졌어요
맵이 사라지고...왜그런거죠..ㅠㅠ
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 실전편
3:00 부분에 Movement Input
저는 이렇게 나오는데 ... 혹시 여기서는 영상처럼 되도록 하는 방법이 없을까요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
상자에 상호작용으로 아이템을 얻는 경우
안녕하세요. 지금은 상자가 오버랩 판정을 했을 때 들어온 액터가 캐릭터라면 자동으로 아이템을 습득하기 때문에, 아이템에서 인터페이스를 사용해 캐릭터에 접근하고 있는데요. 만약 F 키를 눌러 상호작용으로 상자를 열어 아이템을 습득한다고 가정했을 때는 캐릭터 IA_Interaction과 같은 인풋 액션을 추가해서 함수를 바인드하고, 그 함수에서 아이템으로 접근하면 될까요?
-
미해결[언리얼 공인 강사 직강] 하루만에 언리얼 엔진5 입문하기
12분17초
이 부분에서 ThirdPersonMap을 따로 없는데 어디에 생성해야하나요?
-
미해결[입문자를 위한 UE5] Part4. 언리얼 엔진 C++
해당 강의 중반부부터 싱크가 안맞는 것 같아요
거슬리는 정도라 큰 지장은 없는데 혹시 몰라 글 남깁니다
-
해결됨[나 혼자 레벨업] UE5 멀티플레이 게임 제작 Lv. 1 (Listen 서버 입문)
해킹 방어 강의 질문
안녕하세요. 루키스님 강의 잘 듣고 있습니다.해킹 방어 강의 관련하여 2가지 질문드립니다.State 데이터 Set을 클라 측에서 하고 있고 서버에서는 클라 측 데이터를 기반으로 체크를 하는 것으로 보입니다. 서버 측에서 State 데이터 Set을 해야 더 안전한 것이 아닌지 질문드립니다.노티파이 부분도 클라 측에서 확인을 하고 있는데 서버 측에서는 애니메이션 실행은 하지 않지만 실행 중인지 시간을 통해 체크 후 각 노티파이 등을 Multicast 하는 방식이 더 안전한 것이 아닌지 궁금합니다. 아니면 언리얼 프레임워크에서 해당 부분은 자동으로 해주는 부분일까요?항상 강의 잘 듣고 있습니다. 감사합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
TObjectPtr 과 일반 포인터에 대한 용도 질문
안녕하세요 좋은강의 만들어주셔서 감사합니다.8강 16분 40초 부터 있는 TObjectPtr에 대한 질문입니다.TObjectPtr을 쓰는 이유는 해당 생성한 객체를 언리얼에서 더 안전하게 관리하고 GC추적에 용이하기 때문에 쓰는 것으로 이해 했습니다. 그리고 구현부 cpp파일에서는 임시로 사용하고 바로 해제하기 때문에 일반 포인터를 사용하는 것으로도 이해 했습니다. 그래서 궁금한 점 질문드립니다.클래스 내부에서 NewObject 직접 생성한 클래스가 아닌 외부에서 참조한 즉 캐싱용도인 멤버변수로 저장하는 경우에도 TObjectPtr을 쓰는게 맞을까요? 예를들어 GameInstance는 싱글톤 형식이라GetWorld()->GetGameInstance()이런식으로 접근하던데 그렇다는 것은 언리얼 내부 어딘가에서 GameInstance를 생성하고 이를 TObjetPtr 스마트 포인터 형식으로 관리를 하고 있을것이다 생각했습니다.그랬을떄 만약 어떤 클래스에서 매 프레임GetWorld()->GetGameInstance() 호출하는 대신 효율을 위해 한 번만 가져와 멤버 변수에 캐싱 하는 경우를 가정하면이때는 해당 클래스가 생명주기를 직접 책임지는 것도 아니고 GC가 따로 추적할 이유도 없어보이고 단순 캐싱용도로만 저장했기때문에 이런 목적에는 TObjectPtr 대신 일반 포인터를 써도 되지 않을까 생각이 들었습니다.아무래도 해당 클래스에서 생성한 객체가 아니고 단순히 빠르게 접근하기위한 캐싱용도로만 저장했기 때문에 TObjectPtr로 굳이 넣을 필요가 있을까? 의문이 들었습니다. 어떤 방법이 맞을까요?
-
미해결실전! 언리얼 소울라이크 개발: A to Z
FTimeHandler 유실
아래 시나리오가 일어날 수 있을까요? World 변경 → TimeManager 변경 → 이전에 등록한 FTimeHandler 유실
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 실전편
돌 장애물과 코인 아이템 충돌 차이
안녕하세요. 8. Endless Runner - 죽음 및 부활 에서는 SM_Rock의 Auto Convex Collision을 켜줘야 충돌이 적용이 됐었는데 코인 아이템의 경우 그런 작업을 해주지 않아도 바로 충돌이 되는 이유가 무엇인가요?
-
해결됨[Rookiss University] UE5 Lyra 클론 코딩 (Haker)
가비지컬렉션 관련 질문있습니다.
ULCUserFacingExperience::CreateHostingRequest 함수를 설명하시면서 코드블럭 내에 NewObject로 선언한 객체가 GC의 대상이 된다고 하셨는데 언리얼의 NewObject함수는 템플릿 내의 자료형을 힙영역에 할당하는 방식이 아닌건가요?물론 코드블럭을 벗어나면 스택에 올라가있는 NewObject로 받은 지역변수 포인터는 사라지겠지만 객체 자체가 스택에 남아있어 GC에게 감시되는 방식인지 궁금합니다.
-
해결됨[Rookiss University] UE5 Lyra 클론 코딩 (Haker)
Travel관련해서 질문 있습니다.
언리얼에는 다른 URL(서버)로 이동하는 것을 Travel 이라고 부른다. 여기서 UWorld::ServerTravel이란 Server내의 모든 Client들을 해당 URL로 Travel시키는 것이고 APlayerController::ClientTravel은 혼자 다른 URL로 넘어가는 것이라고 한다.라고 메모를 했습니다. 강사님께서 ServerTravel은 모든 클라이언트가 다같이 "Map이동"이라고 말씀하셨고ClientTravel은 "다른데디로 이동" 이라고 말씀하셨는데 그럼 ServerTravel은 서버가 변하지는 않는 것인지ClientTravel로 맵만 A에서 B로 변경했을때도 데디서버의 변경이 일어나는 것인지 궁금합니다.
-
해결됨2025 언리얼 공인강사 – UE5 스파르타 클래스: 실전편
[인티저 켜기] 항목을 찾을 수 없습니다.
[9강. 아이템 추가]의 6:56에서 "인티저 켜기" 항목이 없고 검색 시Utilities > Flow Control > Switch에Switch on ENiagara_IntegerConversionSwitch on EFieldIntegerType이렇게 2가지만 검색됩니다. 각각 추가 시 다음과 같이 되어 있는데 강의의 내용과 동일하게 인티저 켜기를 등록하려면 추가로 진행해야 하는 항목이 있을까요? 사용 중인 에디터는 5.5.4 (5.5.4-40574608+++UE5+Release-5.5) 입니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
HealHp 함수
기존에 만들어 놓으셨던 SetHp 함수에 Clamp랑 Broadcast 코드가 그대로 있어서 HealHp 함수가 SetHp 함수를 거쳐가면서 기능하게 만들었는데, 괜찮을까요? 같은 연유로 AddBaseStat 함수도 똑같이 적용했습니다!FORCEINLINE void AddBaseStat(const FABCharacterStat& InAddBaseStat) { SetBaseStat(BaseStat + InAddBaseStat); } FORCEINLINE void HealHp(float InHealAmount) { SetHp(GetCurrentHp() + InHealAmount); }
-
해결됨[Rookiss University] UE5 Lyra 클론 코딩 (Haker)
IMC가 먹통이에요
HeroComponent를 라이라 따라 구현했는데 5.5버전이라서 그런지 IMC를 넣어주더라고요?그래서 따라했는데 ShooterCore플러그인 만들고 부터인가 뭐가 꼬였는지 IMC가 null값이 되더군요.분명 BP에서는 잘 넣어줬는데. BreakPoint 찍고 보니까 분명히 이름이 잘 찍히는데 이름 앞에 nullptr이 나와있었습니다.... 문제는 반만 해결했는데요. IMC 복사해서 새로 만들어진 걸로 바꾸니까 잘 인식하더군요. 근데 문제는 에디터 껏다 키면 먹통이라 복붙해야합니다. GameFeatureAction에서 AddInputBinding, AddInputContexetMapping 둘 다 추가하면 해결이 될런지 모르겠네요.Hero캐릭터(라이라 파랗고 빨간 마네킹) 만들때도 Hero컴포넌트에 IMC (강의에선 PMC) 넣었던가요 기억이 안 나네요.아무튼 이런 이슈가 있는데 왜 이런지 모르겠어요.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
ConstructorHelpers::FObjectFinder로 에셋 찾기
ConstructorHelpers::FObjectFinder로 에셋을 찾게 되면 에셋 위치를 나중에 변경할 일이 있을때 Copy Reference 주소 코드를 다 바꿔야 할거 할텐데, 현업에서도 이렇게 쓰이나요? 아니면 따로 관리하는 방법은 없나요?