묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[나 혼자 레벨업] UE5 멀티플레이 게임 제작 Lv. 1 (Listen 서버 입문)
Null Crash 에러 문의
안녕하세요 아직 기본기가 없어서 너무 당연한 내용을 질문 하는건 아닌지 걱정이네요.. 32강 09:40에서 발생하는 Null Crash 에러 관련하여 이해가 잘 안되는 부분이 있습니다 .. 총 2가지 문의사항이 있습니다 :)i) 로그를 보면 Listen Server, Client A, Client B 가 로그인을 해서 총 3개의 Player Controller 가 생겼고 Player Index 를 Self 로 교체해서 각자 독립적으로 컨트롤러를 사용할 수 있게 되었는데 게임을 종료하면서 Listen Server 가 종료되었는데 Client A, Client B의 Playser Controller 는 살아있기때문에 Null Crash 에러가 2개 발생한건가요 ? ii) 그래서 is Valid 를 통해서 Listen Server를 종료하면 Mapping context 에 이벤트가 넘어가지 않아서 에러가 안나오게 수정을 하는건지 궁금합니다! 추가로 PlayerController 관련해서 서버쪽에서 보면 아래와 같이PlayerController 0, PlayerController 1, PlayerController 2 총 3개가 확인이 되는데 Clinet 0번과 Client 1번을 돌아가면서 확인을 해보면 둘다 PlayerController 0 만 확인이됩니다. PlayerContrller 는 플레이어마다 생성이 되는 걸로 알고 있는데PlayerContrller1, PlayerContrller2 가 확인이 되어야하는게 아닌지 궁금합니다! 감사합니다 :)
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
SaveFile에서 크래시 발생하는 분들 체크해보세요
_wfopen_s 함수의 경우 에러가 발생하면 errno_t type의 값을 반환해줍니다. 만약 저와 같은 이유로 오류가 발생하신 분들이면 errno_t type의 변수 값이 2일 것입니다.msdn 문서를 보면 .errno값과 관련하여 어떤 오류인지 알려주는데, 2번의 경우 '이러한 파일 또는 디렉터리가 없습니다.' 라고 나옵니다.https://learn.microsoft.com/ko-kr/cpp/c-runtime-library/errno-constants?view=msvc-170파일은 생성되기 때문에 디렉터리 경로가 없어서 발생한 문제입니다. 따라서(여러분솔루션경로)/Resources의 산하에 Tilemap 폴더를 만들어주면 오류가 해결됩니다정상적으로 파일이 오픈됐다면 0이 반환됩니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
에셋참조 블루프린트질문
덕분에 잘 공부하고 있습니다 에셋 연결에 대한 질문이 있습니다강의 내용에는 생성자에서 생성자헬퍼로 래퍼런스를 코드로 연결하는 방식을 사용하던데 강의의 목적 (c++로 할수 있는건 코드로 한다) 때문인건지 다른이유가 있는지 해서 여쭈어 봅니다 또 관련해서 클래스를 만들때 private 로 선언후 AllowPrivateAcess로 블루프린트에서 접근이 가능하게 한뒤 에셋을 블루프린트로 연결하면 될것같은데 이부분에 있어서 블루프린트를 사용하면 성능? 차이가 나는지요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
애님 몽타주 콤보 관련질문
애님 몽타주 질문이 있습니다. 강의에서는 따로 애님 몽타주 블루프린트에서 노티파이스테이트 기능을 쓰지않고 실제 프레임의 값을 숫자로 지정해서 로드한다음 콤보의 시점을 확인 하던데 따로 이유가 있는걸까요? 타이머 기능을 안쓰고 노티파이스테이트로 콤보가능 시점을 지정하면 될둣해서 여쭈어봅니다 ( 사실 강의 구성상 코드로 처리하는게 내용이다 보니 그런거 같긴합니다만 확인 차 여쭈어 봅니다 ! )
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
캐릭터 스탯 초기 설정 방법 질문
안녕하세요 강사님! 캐릭터의 스탯을 GameplayEffect, GameplayExcutionCalculation, DataAsset, DataTable로 캐릭터 생성 시에 설정해주는 방식이 가능할 지 그리고 가능하다면 효율적일지 궁금합니다!
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
ThirdPerson CDO 에러가 생깁니다.
버젼은 5.1이고 선생님이랑 똑같이 따라했는데,에러 없이 컴파일도 잘됩니다.근데 블루프린트 경로를 못찾는다고 뜹니다.경로도 복사 붙여넣기로 한것입니다.아무리 확인해도 경로는 바르게 복사되었는데요.캐쉬를 지우고 Generate를 다시해도 똑같은 상황이고,도와주세요.ㅠ
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
캐릭터가 움직이지 않습니다.
안녕하세요. 1강 순서대로 따라하고 있는데, PlayerController와 DefaultPawn까지 한다음 실행하는데는 성공 했는데 캐릭터가 움직이질 않습니다.버젼이 다르면 안되는건가요/ 컴파일이 에러 안나는 버젼을 찾다보니 5.7을 설치해서 하고 있는데..5.1에서만 해야되나요?
-
해결됨[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
수업자료 확인 부탁드립니다.
수업자료를 받고 Exercise.sln을 열어보면 프로젝트를 찾을 수 없다고 나옵니다. 이 수업뿐만이 아니라 이 강의의 다른 수업들 자료들도 다 마찬가지 상태입니다. 해결 바랍니다.
-
해결됨이득우의 언리얼 프로그래밍 Part4 - 게임플레이 어빌리티 시스템
언라얼 공식 홈페이지 튜토리얼 강의에 질문 있습니다
강사님이 영어로 강의해주신 언리얼 공홈 튜토리얼을 봤는데요. 인프런 파트4 강의와 사뭇 다른데 실제 게임을 만들 때에는 공홈 강의처럼 블루프린트도 많이 사용해서 작업하는 게 좋을까요?
-
해결됨2. [언리얼 시스템 연구 과정] UE5 스파르타 클래스: 심화편
4:59 ~ 5:20 질문
화면에 가려진부분은 간접광이 안생긴다는 의미 이신가요?? 설명이 붕뜬거같아 추가설명을 듣고싶습니다.
-
미해결[나 혼자 레벨업] UE5 멀티플레이 게임 제작 Lv. 1 (Listen 서버 입문)
클라이언트에서 닉네임 변경시
서버쪽에서 닉네임을 바꾸면 다른 유저의 화면에서도 바로 적용되는데클라이언트에서 닉네임을 바꾸고 엔터를 누르면 왜 서버쪽에서는 전환이 안될까요?레디버튼을 누르면 바뀌긴해요블루프린트 버전에선 됐었는데 C++로 바꾼뒤로 안되네요
-
미해결[입문자를 위한 UE5] Part2. 언리얼 엔진 2D 게임 개발 입문
Papertilemapactor에서 타일맵이 보이지않음
제목대로 BluePrints란에서 페이퍼 타일 맵 액터를 만들고 렌더컴포넌트의 타일 맵 지정 부분에서 기존 타일맵을 지정해주는 작업에서 지정을 해도 BP_TileMap의 뷰포트에서 보이지 않습니다. GPT해결방법과 구글링을 해도 모르겠어서 질문글 남깁니다.
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
쿠킹 폴더 지정시 , Item 이외에는 지정하지 않는지 궁금합니다.
ItemData 의 경우, 코드 상에서 경로로 읽어오는 것이라고는 하나 ItemData 의 경우 에셋매니저에 등록되어 에셋매니저의 Primary 키값으로 가져옵니다.반면 Box 와 같은 스태택 메쉬, 입력맵핑, 애님 몽타주 등은 코드 상 텍스트로 불러오는데요.그냥 보았을때는 텍스트로 코드상에 직접 경로를 추가하여 불러오는 객체들의 경로(폴더)를 지정해야 할 것 같은데 반대로 에셋매니저를 통해 불러오는 아이템데이터만 쿠킹경로에 별도로 추가하였습니다.이유를 알 수 있을까요?기본적으로 빌드시, 맵에 대한 정보를 기본적으로 가져온다고 멘트하였는데 맵에는 또 위의 입력맵핑, 애님 몽타주 등은 없는 것 같은데.. 게임모드->게임플레이어컨트롤러->캐릭터 등등 하여 코드상 참조된 코드들의 FClassFinder, FObjectFinder 혹은 TSubclassOf, T(F)SoftObjectPtr 을 엔진이 알아서 알아내고 빌드시 추가되는 것인지 궁금합니다.
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
TSoftObjectPtr 를 사용했음에도, 메모리에 로드 됩니다.
UABWeaponItemData 의 WeaponMesh 의 속성을 TSoftObjectPtr 으로 변경 및 Base 에서 팬딩 대기 및 처리까지 모두 수정하였으나 최초 실행 시 여전히 검이 로드가 된 상황입니다.혹시 몰라 코드를 아예 복붙을 하였음에도 여전합니다.위 내용중 코드 내용에 문제가 없다면, 강의 내용중 에디터에서 무언가 제가 행위를 빼먹은 것 같은데 죄송합니다. 계속 돌려보는데 잘 찾지를 못하겠습니다. 혹 TSoftObjectPtr 을 사용할 WeaponMesh 등을 에디터에서 무언가 설정해야 할 것이 있을까요? 별도로 아주 만약 TSoftObjectPtr 가 어떠한 캐릭터를 레퍼런싱 한다고 하면 그리고 그 캐릭터가 중간에 삭제가 된다고 한다면 다시 로드해야 하는 행위가 필요할까요?아니면 tweakobjectptr 와 다르게 TSoftObjectPtr 를 단지 디스크에서 에셋을 참조하기 위한 역활로만 사용하는 것일까요? 즉 런타임에 도중 TSoftObjectPtr 에 무언가를 할당하는 것은 안되고 단지 디스크에서 객체를 참조하는 역활인지 그것이 헷갈립니다.
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
7강에 나오는 생성자에 대해서 궁금합니다.
일단 찾아본 모든 Actor 등은 위젯과 동일하게 const FObjectInitializer& 를 파라미터를 받는 생성자를 가지고 있습니다. 그러나 왜 위젯만 const FObjectInitializer& 를 파라미터로 가지고 있는 생성자로만 사용해야 하는지 궁금합니다. 모든 객체가 동일한게 const FObjectInitializer& 를 인자로 갖고 있는 생성자로 생성해야 하는 것 같은데. 왜 그런 것일까요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
6강을 마무리하며 트레이스 채널 을 이해하지 못했습니다.
강의 내용을 들었을 때 트레이스 채널은 반드시 필요한데 막상 사용하는 곳은 SweepSingleByChannel 의 파라미터 중 하나로 기입하는 것 뿐입니다. CollisionProfileName 처럼 각 액터별로 지정해 특정 액터(콜리젼)과 충돌 처리에 대한 여부를 설정하지도 않ㄱ트레이스 채널에서 Ignore 만 설정된 것은 그럼 Engine->Collision->Preset 리스트 중, ignore 로 설정 된 Name 만 찾는 것인지.. 죄송합니다. 제대로 이해를 못했는데 정확한 역활은 무엇인가요?
-
해결됨2. [언리얼 시스템 연구 과정] UE5 스파르타 클래스: 심화편
GetRandomPointInNavigableRadius 함수가 없어요
안녕하세요. 언리얼 5.6으로 따라가는 중인데 Context Sensitive를 끄고 검색해봐도 GetRandomPointInNavigableRadius 함수가 없습니다. 대신 GetRandomReachablePointInRadius 함수를 사용하니까 똑같이 동작은 하는데 이걸 사용해도 되는건가요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
3강을 마무리 하며, 카메라가 움직이지 않습니다.
Shoulder 모드 일 때 마우스 움직임에 따라 카메라가 움직이지 않고, 캐릭터의 방향벡터가 변경됩니다. 즉 마우스가 움직이는 대로 캐릭터에 앞으로 움직이면 똑바로 앞으로 가지 않고 이리저리 마우스 회전대로 움직이는데요. (카메라는 캐릭터를 따라는 다니나 회전은 고정 입니다.) 제가 뭔가 잘못 설정한 것 같은데 혹 어디를 체크하면 좋을까요? 혹시 몰라 이전에 질문한 Use Controll 옵션을 모두 껏다 켜보고 있습니다...
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
Use Controller Rotation 옵션값이 궁금합니다.
강의에 설명해 주신 내용은 토대로 이해한다면 입력값에 의해 회전이 일어나고 이것이 ControlRotation 값을 변경 실제 회전에 대한 값이 지정되며 Use Controller Rotation 의 각 피치/요/롤 를 체크시 ControlRotation 값이 바로 반영된다고 이해했는데요. yaw 를 체크 후 테스트(마우스 회전) 해보니 캐릭터는 회전하지 않고 여전히 카메라만 회전합니다. 물론 Move 함수에서는 체크와 상관 없이 바로 ControlRotation 값을 가져와 방향벡터를 구해 이동하기는 하는데 로테이션은... 잘 이해가 안갑니다. 즉 Use Controller Rotation 와 캐릭터의 회전은 다른 개념일까요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
3강 입력 시스템 적용 중, 5.6 버전은 입력 매팅이 2개 입니다.
5.6 버전에서는 입력 매핑 중, 마우스 룩 에 대해서는 기본 3인칭 예제 게임 컨트롤러 에 설정된 바로는 모바일 기기일 경우 별도의 hud 를 띄우고 아니면 마우스 룩 , 맵핌을 등록하도록 정의되어 있습니다. 하여 저는 3강 강의 예제 중 DefaultMappingContext 이 등록 된 아래에 바로 MouseLookMappingContext 를 별도로 제작 및 똑같이 AddMappingContext 을 하였음에도 마우스 룩이 제대로 작동되지 않습니다. AddMappingContext 시 입력 우선 순위를 0, 1 등으로도 변경해보았는데도 안되는데요.혹 입력맵핑은 무조건 하나만 등록 가능한가요? 우선순위 파라미터가 있는 것으로 보아 그건 아닌 것 같은데.. 가능하다면 답변 부탁드립니다.