본문 바로가기

전체 글

언리얼: 모듈 추가해서 코드 분리 작성하기 참고링크 : https://docs.unrealengine.com/4.27/en-US/ProgrammingAndScripting/GameplayArchitecture/Gameplay/ Gameplay Modules Collections of gameplay classes belonging to a game project compiled into DLLs. docs.unrealengine.com 생성해야 하는 파일 모듈폴더/모듈이름.Build.cs 모듈폴더/모듈이름.h 모듈폴더/모듈이름.cpp 수정해야 하는 파일 Source/메인모듈.Target.cs Source/메인모듈Editor.Target.cs 새로 생성한 모듈 이름을 ExtraModule을 추가해준다. 프로젝트.uproject uproject에 모.. 더보기
언리얼: Delegates 블루프린트에서 할당, 바인딩, 호출 가능하게 하기 DECLARE_DYNAMIC_MULTICAST_DELEGATE(F...); 매크로로 델리게이트를 정의하고, 클래스 내에서 UPROPERTY를 붙여 델리게이트를 선언해줍니다. UCLASS 매크로에서 Blueprintable, BlueprintType을 지정해주어야합니다. BlueprintAssignable을 프로퍼티에 추가해주면 BP에서 이벤트 바인딩 및 언바인딩을 할 수 있습니다. BlueprintCallable을 프로퍼티에 추가해주면 BP에서 이벤트 호출을 할 수 있습니다. 더보기
Unity: 스크립트로 사용중인 그래픽스 아키텍처 파악하기 타겟 기기 뿐만 아니라 에디터에서도 어떤 그래픽스 아키텍처를 사용하는지 알 수 있습니다. SystemInfo.graphicsDeviceType을 호출하면 Direct3D11, Vulkan, OpenGLES3, Metal 등 구분하여 작업할 수 있습니다. https://docs.unity3d.com/ScriptReference/Rendering.GraphicsDeviceType.html Unity - Scripting API: GraphicsDeviceType Success! Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each su.. 더보기
EOS: Epic Online Service 플러그인 1. 언리얼 엔진 유료 플러그인 https://redpointgames.gitlab.io/eos-online-subsystem/ EOS Online Subsystem for Unreal Engine | EOS Online Subsystem Use Epic Online Services in Unreal Engine! With support for authentication, friends, sessions, parties, presence, stats, achievements, leaderboards, Player Data Storage, Title Storage and peer-to-peer networking, this plugin has what you need to build game redpoin.. 더보기
EOS: 리더보드 예제 런타임 Assertion 에러 발생 ConvertUnixTimestampToUTCString 함수의 113라인 std::wstring DateTimeStrW() 에서 Assert를 통과하지 못하고 에러가 생기는 경우가 발생한다. 원인 탐색이 귀찮은 관계로 그냥 Leaderboard.cpp 호출부를 코멘트 아웃함. 로깅할 때만 쓰길래... 잘 받아온다. 더보기
Unity: 비동기와 코루틴을 혼동하지 않기 본론에 앞서 유니티에서의 대부분 로직은 동기 방식으로 작성되며, 흐름(Flow, Stream)을 관리하거나 시간을 조절해 시행해야하는 작업은 코루틴(Coroutine)이라는 기능을 활용하여 구현됩니다. 특히 유니티는 기본적으로 메인스레드가 아닌 곳에서의 네이티브 API 호출을 허용하고 있지 않습니다. 비동기 방식으로 로직을 작성하더라도 유니티 API를 사용해야 하는 끝단에서는 메인스레드에서 함수 Call 작업을 마무리 해 주어야 합니다. 이 때 일반적으로 사용되는 방식이 액션을 큐에 추가해 유니티 Update 루프에서 처리해주는 디스패처입니다. 이 방법론이 필요한 이유와 한계, 장단점을 알고 계시다면 아래 내용은 스킵해도 됩니다. 왜 게임 개발에서는 비동기 사용이 적을까요? 상용 엔진에서는 async/a.. 더보기
Unity: ScnceManager.LoadSceneAsync 프레임 드랍 씬을 비동기로 로딩할 수 있는 API입니다. https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager.LoadSceneAsync.html Unity - Scripting API: SceneManagement.SceneManager.LoadSceneAsync You can provide the full Scene path, the path shown in the Build Settings window, or just the Scene name. If you only provide the Scene name, Unity loads the first Scene in the list that matches. If you have multiple.. 더보기
문제해결: 3. XAML, XML 한국어 포함시 컴파일 불가능 이슈 해결 XAML 작업 중 컴파일을 시도하면 invalid character in the given encoding 에러가 뜨는 경우가 있습니다. 949 한국어 인코딩으로 세팅된 경우 발생할 수 있습니다. UTF-8 with signature 옵션으로 바꾸어 해결합니다. 더보기