분류 전체보기(11)
-
NVIDIA ACE 사용해보기
생성형 AI가 대세인 요즘 Unreal Engine도 예외는 아니다.요즘은 게임의 컷씬 하나하나가 영화와 같은 퀄리티를 가지곤 한다.컷씬에서는 캐릭터들 간의 대화가 오가는 경우가 있고 이런 컷씬의 퀄리티가 플레이어의 몰입도를 높여주곤 한다.NVIDIA Kairos Demo 는 언리얼 엔진에서 캐릭터에게 자연스러운 발화와 표정, 플레이어와의 상호작용 등을 생성형 AI로 처리하면서 더 높은 퀄리티의 캐릭터 제작을 도와준다. 게임용 NVIDIA ACE 소개 - 생성형 AI로 가상 캐릭터에 생명 불어넣기게임용 NVIDIA ACE의 생성형 AI 기술 제품군은 보다 몰입감 있고 지능적인 NPC 게임 경험을 가능하게 합니다. 놀라운 데모를 보고 자세히 알아보십시오.www.nvidia.com NVIDIA ACE 언..
2024.12.16 -
언리얼 엔진 간단 팁 모음
언리얼 C++ Visual Studio에서 현재 프로젝트 Directory 기본 검색으로 Path 추가프로젝트.build.cs 에서 IncludePath 추가 PublicIncludePaths.AddRange( new string[] { ModuleDirectory, } );
2024.12.16 -
[백준] 팩토리얼 0의 개수
https://www.acmicpc.net/problem/1676 처음 구현할 때는 팩토리얼 함수를 짜고 거기서 F(N) / 10 을 하면서 0이 아닌 값을 구할 생각을 했다.하지만 N의 값의 범위가 증가할수록 팩토리얼에서 나오는 수는 자료형에 담을 수 없을 정도로 방대해지기에 계산이 불가능. 그 다음으로 접근한 방법은 N / 5이다.5의 배수가 될 때마다 0의 개수가 늘어나는 것을 발견했고, 이를 이용하고자 했지만 5의 거듭제곱이 나올 때는 0의 개수가 추가로 증가. 조언을 받아 해결한 방법은 각 수가 5의 거듭제곱을 몇 개씩 가지고 있는가를 판별하는 것.수가 증가함에 따른 결과를 계산하는 것이 아니라 해당하는 N에 대해 5의 거듭제곱 즉 500이하인 5, 25, 125를 몇 개씩 소유하고 있는 지..
2024.11.13 -
[Unreal Engine] Linux CrossCompile - Missing precompiled manifest 에러 해결
Pixel streaming 서버 Auto Scaling을 진행하면서 k8s로 자동 배포는 Windows 환경에선 한계가 있다.Linux 형태로 패키징할 필요가 생겼다. 크로스 컴파일언리얼 리눅스 크로스 컴파일언리얼 엔진은 자체적으로 크로스 컴파일을 지원한다. GUI 상에서 Linux로 패키징을 시도하면 된다. 내부적으로는 RunUAT 를 실행하는 방식 컴파일 에러 Missing precompiled manifest for 'SubstanceCore', 'C:\Program Files\Epic Games\UE_5.2\Engine\Plugins\Marketplace\Substance\Intermediate\Build\Linux\UnrealGame\Development\SubstanceCore\Substa..
2024.07.31 -
[Unreal] 언리얼 엔진에서 구조체를 사용할 때
언리얼엔진에서 USTRUCT를 사용하다 독특한 에러를 만났다. C++ 파일을 사용할 때 컴파일 의존성을 최소화 시키기 위해서 헤더파일에서는 class 또는 struct 키워드를 사용하거나 전방선언을 사용하는데 컴파일 에러를 만났다. UFUNCTION() void SpawnPiece(const TSubclassOf piece, const struct FChessDataRow* Row); 다음과 같은 모양으로 함수를 선언했는데 컴파일러가 뒤쪽의 struct 부분에서 아래와 같은 에러를 날렸다. 원래 구조체가 포인터를 이용한 방식이 안되나 싶어서 직접 테스트를 해보았다. //actor.h #pragma once class actor { private: public: actor(); void do_with_st..
2023.02.22 -
[UEChess] 언리얼, 블렌더를 이용한 3D체스 만들기 3. 데이터 테이블을 이용해 체스피스 스폰 장소 및 정보 특정하기
⊙ 이 글은 튜토리얼이나 완벽한 작업물을 기록하는 글이 아닌 스스로의 작업 진행을 기록하기 위한 글이므로 더 나은 방법 더 효율적인 방법이 있을 수 있습니다. 체스피스를 스폰하기 위해 많은 방법을 고민해봤다.처음에는 만들어 낸 StaticMesh 위에 소켓을 생성한 후에 Chessboard의 BeginPlay() 에서 소켓에 Attach하는 방식으로 각 체스 피스들을 만들었다. 처음에는 각 Piece 들의 위치를 특정하고 소켓을 만들었다Black_Pawn_1Black_Rook_2같은 방식으로 말이다.이렇게 만들고 Spawn을 하고 나니 몇 가지 문제가 생겼다. 위치가 약간 바뀔 때마다 모든 소켓을 조정해주어야 하는데, 일괄적인 조정이 힘들어 아주 귀찮다. 이게 중요했는데 Spawn한 후에 각 Piece들..
2023.02.21