묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
mouse input action 반응성 관련 질문.
안녕하세요.동일 함수를 키보드 키로 bind 할 때와 달리 마우스로 하면 클릭의 반응성이 매우 떨어지는 문제를 발견했는데 Unreal 버전의 문제일까요? (5.3 사용중 입니다.)또 c++ 이 아니라 블루프린트로 구현 시에는 마우스 클릭 반응성에 문제가 없었습니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
컴파일 에러
Error MSB3073WaitMutex -FromMsBuild" exited with code 6. C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets 44 The command "E:\ProgramFiles\UE_5.3\Engine\Build\BatchFiles\Build.bat ArenaBattleEditor Win64 Development -Project="C:\Users\User\Desktop\ArenaBattle\ArenaBattle.uproject" -WaitMutex -FromMsBuild" exited with code 6. ArenaBattle C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets 44 원래 제작하던 프로젝트파일이 5.3.2 버전인데요, 5.1.1버전을 실행했다가 다시 돌아오니까 실행이 안되는것 같습니다.어떻게 해결할 수 있을까요? 엔진을 재설치해도 같습니다. https://forums.unrealengine.com/t/ue5-1-vs2022-c-build-error-with-msb3073/694392/10이런데에 적혀있는 해결방법으로도 해결이 되지 않습니다.ㅠ
-
해결됨이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
레벨 재시작이 아닌 리스폰을 한다고 했을 때
캐릭터에 붙어있던 플레이어 컨트롤러나 AI 컨트롤러는 캐릭터가 삭제되고 리스폰 됐을 때, 자동으로 다시 같은 인스턴스가 붙나요???플레이어 스테이트도 캐릭터마다 하나씩 붙어있는 걸로 알고 있는데요. 이것 역시 그대로 사용하나요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
"에셋을 로딩한다"의 의미
8강 소프트 레퍼런싱에 대해서 강의를 듣다가 에셋이 로딩되고 객체에 할당되는 과정에 궁금증이 생겼습니다. 제 생각은 다음과 같습니다.에셋이 로딩되면 에셋의 데이터를 가지고 객체를 만든다. 그리고 해당 에셋을 사용하는 클래스가 인스턴싱될 때 로딩된 에셋(객체화된 에셋)을 복사해서 추가한다.만약 같은 에셋을 사용하는 클래스가 두 개 이상이라면, 로딩된 에셋을 두 번 복사하게 된다.즉, 에셋을 로딩한다는 것은 복사를 위한 원본 객체를 생성하는 것을 의미한다. 제 생각이 맞을까요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
9강 무한맵의 제작에서 블루프린트에 컴포넌트의 디테일창이 안보이는 현상
작업하다보면 가끔씩 이런 현상이 발생하는데 혹시 원인이 어떤게 있을까요?? ㅠㅠ
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
5강 Montage_SetEndDelegate()함수 관련
FOnMontageEnded EndDelegate; EndDelegate.BindUObject(this, &AABCharacterBase::ComboActionEnd); AnimInstance->Montage_SetEndDelegate(EndDelegate, ComboActionMontage);Montage_SetEndDelegate 함수를 보면,AnimMontage클래스에서 AM이 종료되면 호출시키는 FOnMontageEnded타입의 델리게이트 변수를, 위 함수의 인자로 받는 델리게이트 변수와 치환해서(=) 실행되는 것으로 이해했습니다. 그렇다면 구현되어있는 델리게이트 변수에 ComboActionEnd함수를 바로 구독시키면 안되는건지 궁금해서 여쭤봅니다..
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
Content Brower 안뜨게 할순 없을까요?
안녕 하세요.언리얼 엔진을 처음에 구동하면Content Brower이 자동으로 뜹니다.이거 안뜨게 할순 없을까요?언리얼 에디터만 떴으면 좋겠습니다.
-
해결됨언리얼로 만드는 게임사운드 - 중.고급 과정
메타사운드를 활용한 무기 사운드 디자인 3d hit 구현
"메타사운드를 활용한 무기 사운드 디자인" 잘 들었습니다, 알찬 내용 감사합니다, 궁금한것이 있는데요hit 사운드를 거리에 따라 소리가 작어졌다 커졌다는 어찌 하는것 일까요? 저 나름 해봤는데 이 방법이 맞나요? blue print에서 play Sound at Location 으로 연결하고 Get Actor Location 상자를 연결해 주었습니다. attenuation 프리셋값 지정해 주었구요 선생님이 사용하시는 3d사운드 거리별 감쇠 효과에 대해 정보 부탁해요. ㅜㅡㅠ 감사합니다
-
해결됨언리얼로 만드는 게임사운드 - 중.고급 과정
중고급과정 오디오샘플을 제공 안되나요? 없을까요?
중고급과정 오디오샘플을 제공 안되나요? 없을까요?
-
미해결이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해
안녕하세요. 강의 보기 전 질문드립니다.
안녕하세요. 유니티를 다루다가 언리얼을 공부하고자 해당 강의 구매 후 시청 전에 질문 드릴 것이 있어 남깁니다.유니티로 게임 로직을 구현할 때 경험상 씬(언리얼에서는 레벨이라고 하는 것 같습니다)을 통해 간단하게 로그인씬->로비씬->인게임씬의 로직으로 게임이 구현되는데요. 강의 내용의 서버는 인게임씬에 해당하는 것인지 로그인씬, 로비씬 같은 것도 구현이 가능한 것인지 궁금합니다.인게임씬에 해당하여 다른 씬은 따로 구현해야한다면 1강이나 2강을 보면 도움이 될 지도 궁금합니다.감사합니다.
-
미해결이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
13강 직렬화에서 질문있습니다.
13:34쯤 파일경로와 관련해서 출력을 할 때 제가 동일하게 작성을 했습니다. MakeStandardFileName이후 출력값과 이전 출력값이 동일해서 궁금증이 생겼습니다. 혹시 D드라이브에 저장했는데 이것과 연관이 있는지 궁금합니다!
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
.uproject 관련 질문
영상 말미에 uproject파일에서 Generate Visual Stduio File 하신 이유가 궁금합니다!검색해보니 어떤 기능인지는 알겠는데, 스크립트 파일을 삭제할 때마다 해주면 되는걸까요?
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
SetComboCheckTimer함수에서 질문이 있습니다!
ComboTimer의시간을 설정하는 float ComboEffectiveTime = (ComboActionData->EffectiveFrameCount[ComboIndex] / ComboActionData->FrameRate) / AttackSpeedRate;이 코드가 1초를 30Frame으로 잡고 원하는 Frame까지 시간을 체크하기위해서 시간계산 용으로 이해했는데위같은 방법 대신 Animation Montage BluePrint 에서 Notify로 설정하고 함수를 호출하는 방법은 성능적 차이가 클까요?? 아니면 그냥 개발자의 선택에 따른 차이일까요??
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
랜덤박스에 waepon이 생기지 않습니다
Weapon이 primaryasset으로 안들어가서 그런가 싶어서 weapon의 데이터를 봤는데Primary Asset Type은 ABItemData(비쥬얼스튜디오에서는 복사붙여넣기로 넣은거라 이름이 다를 리는 없을 거같습니다.)로 들어가있었습니다. 근데 박스가 생성될 때 assets의 num을 찍어보니 3이 아닌 2가 나오는거 보니 인식이 안되는 거 같은데 엔진의 문제일 수도 있나요?
-
해결됨언리얼로 만드는 게임사운드 - 중.고급 과정
Quartz 를 이용한 인터렉션 질문입니다~
안녕하세요설명대로 구현햇는데..올리신 영상이랑 결과가 달라 질문드립니다1.강의 영상에는 제일 안쪽까지 들어갔나가 나올때 음악이 꺼졌다가 다른 트리거 볼륨으로 가면 다른 음악이 재생되는데..(10분49초정도)강좌와 똑같이 쿼츠 구성한 후 실행을 하면 음악이 꺼지지를 않은 상태에서 다른 음악이 재생되는거 같습니다(사운드큐는 루프가 되게 설정하는건 맞죠?)2.아 그리고 들어갔던 같은 장소를 다시 반복적으 들어가면 소리가 중첩되며 소리의 크기가 점점 커지는거같습니다 요 두가지를 해결할라면 어떻게 해야할까요?
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
GameModeBase.cpp, .h가 없습니다.
7,8강에서 프로젝트를 생성하였을 때 해당 프로젝트의 GameModeBase.cpp와 .h가 저는 안생기는데 혹시 언리얼 5.3 버전에서는 다른 경로에 존재하나요? 해결방법을 알고 싶습니다.
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
2강 - 입력 매핑 컨텍스트 오류가 발생했습니다.
BeginPlay 함수를 오버라이딩 하실 때 void AABCharacterPlayer::BeginPlay(){Super::BeginPlay();APlayerController* PlayerController = CastChecked<APlayerController>(GetController());if (UEnhancedInputLocalPlayerSubsystem* Subsystem = ULocalPlayer::GetSubsystem<UEnhancedInputLocalPlayerSubsystem>(PlayerController)){Subsystem->AddMappingContext(DefaultMappingContext, 0);// Subsystem->RemoveMappingContext(DefaultMappingContext);}}와 같이 정의하셨는데, ULocalPlayer::GetSubsystem<UEnhancedInputLocalPlayerSubsystem>(PlayerController) 이 함수에서 인수가 일치하지 않는다는 오류가 발생합니다. 선생님 코드를 보면 동일한 코드임에도 실행이 잘 되던데, 저는 이 부분 때문에 빌드가 안되고 있습니다. 인수가 ULocalPlayer가 들어와야 한다고 해서, APlayerController이 아닌 ULocalPlayer로 캐스팅도 해봤는데, 런타임에서 바로 터집니다. 혹시 어느 부분이 문제일까요?모듈에는 EnhancedInput 추가했고, 로그에 해당 오류 말고 다른 오류가 발생하고 있지는 않습니다.
-
해결됨이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
Unreal 애니메이션이 기본적으로 MultiThread 옵션이 켜져있는 점에 대해서.
아마 성능을 위해 애니메이션 블루프린트 로직이 작업자 스레드에서 돌아가도록 옵션 켜는게 있는 것 같은데요. 많은 다른 예제에서 블루프린트 EventGraph 대신 Blueprint Thread Safe Update Animation 이라는 블루프린트 함수를 대신 사용하고 또, C++ 로도 NativeUpdateAnimation() 대신 NativeThreadSafeUpdateAnimation() 가 있더라구요. 그리고 블루프린트 전용 함수에서도 ThreadSafe 옵션을 켜고 끄는게 있는데 이걸 켜면 일반적인 C++ 함수를 호출할 수 없고, C++ 함수에 Meta = (BlueprintThreadSafe) 지정자를 설정하면 보이긴 하는데요. 여기서 NativeThreadSafeUpdateAnimation() 함수나 Meta = (BlueprintThreadSafe) 지정자를 붙인 C++ 함수에는동기화 기법( mutex 같은)을 사용해서 정말 내부적으로도 멀티스레드 프로그래밍 같이 코드를 짜야 하는건가요???
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
TObjectPtr을 사용할 때 전방선언
TObjectPtr 클래스에는 static_assert 선언이 되어있습니다.UObject 에서 파생된 클래스인지 검사하고 에러메시지를 표시해주게 되는데요.우리가 평소 어떤 액터 클래스나 컴포넌트 클래스를 생성해서 사용할 때 내부에 TObjectPtr 을 사용해서 UObject 클래스를 등록하고 사용하게 됩니다.문제는 UObject 의 헤더파일을 바로 포함시키기 보다는 중복 참조와 컴파일 시간을 줄이기 위해서 전방선언으로 처리하는 경우입니다.이때 전방선언된 UObject 의 파생 클래스는 실제로 UObject 에서 파생되었는지 이 시점에서는 알 수 없습니다.하지만 실제로 그렇게 사용해보면 문제없이 사용되는 것을 확인 할 수 있었습니다.왜 TObjectPtr의 static_assert의 조건을 통과하는 것일까요?Ex)class UInputAction;TObjectPtr<UInputAction> UTestAction; // 왜 에러가 아닐까요?
-
미해결이득우의 언리얼 프로그래밍 Part2 - 언리얼 게임 프레임웍의 이해
뷰포트에서 화면이 아래 위로 밖에 안움직입니다
움직임도 잘되고 v키를 눌러 시점 전환도 잘되는데 마우스가 오른쪽이나 왼쪽으로 가면 화면이 그쪽으로 돌아가지 않고 아래 위로만 회전합니다 혹시 마우스 관련 설정이 잘못된걸까요?