Slate

게임 엔진/Unreal

[Unreal] [Editor] Slate를 이용한 커스텀 에디터 List View 제작

Slate List View Slate ListView 예제이다. 다음과 같은 ui를 제작 할 수 있다. SMyListViewWidget.h #pragma once #include "CoreMinimal.h" #include "SlateFwd.h" #include "SlateBasics.h" #include "Widgets/DeclarativeSyntaxSupport.h" #include "Input/Reply.h" #include "Widgets/SWidget.h" #include "Widgets/SCompoundWidget.h" #include "Widgets/Views/STableViewBase.h" #include "Widgets/Views/STableRow.h" #include "Widgets/..

게임 엔진/Unreal

[Unreal] [Editor] 프로퍼티 에디터 제작 방법

Detail Editor Customization 언리얼 커스텀 에디터를 제작함에 있어서 가장 중요한 부분인 custom property editor를 제작하는 내용이다. Property editor란 다음과 같이 사용자가 정의한 어떤 데이터의 프로퍼티를 언리얼 ui상에 표시하고, 또 수정할 수 있도록 해주는 editor이다. Modules 다음 모듈들을 미리 추가해두자. PrivateDependencyModuleNames.AddRange( new string[] { "Projects", "InputCore", "UnrealEd", "LevelEditor", "CoreUObject", "Engine", "Slate", "SlateCore", "EditorScriptingUtilities", "Editor..

게임 엔진/Unreal

[Unreal] [Editor] Slate를 이용한 에셋 경로 설정 다이얼로그 제작

Asset Path Pick Dialog 예제 다음 코드로 에셋의 경로를 가져오는 다이얼로그를 띄울 수 있다. if문 내부에서 다이얼로그가 닫히고, 가져온 경로를 사용할 수 있다. FString NewNameSuggestion = FString(TEXT("Suggestion")); FString PackageNameSuggestion = FString(TEXT("/Game/")) + NewNameSuggestion; FString Name; TSharedPtr PickAssetPathWidget = SNew(SDlgPickAssetPath) .Title(LOCTEXT("MyTitleName", "Choose Your Location")) .DefaultAssetPath(FText::FromString(P..

게임 엔진/Unreal

[Unreal] [Editor] [Example] Slate 예제 1

Custom Slate Class 만들기 Slate를 이용한 커스텀 클래스 ui 제작 예제이다. 참고 영상 https://www.youtube.com/watch?v=jeK6DPB5weA MyPlugin.Build.cs ... PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" }); ... SMainMenuWidget.h // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "SlateBasics.h" #include "SlateExtras.h" class MENU_API SMainMenuWidget..

게임 엔진/Unreal

[Unreal] [Editor] [Example] Slate 예제 2

Slate Samples Unreal editor ui framework인 slate에 대한 예제이다. SButton #include "Widgets/Input/SButton.h" TSharedPtr FMyPluginModule::Create() { return SNew(SButton) .Text(WidgetText) .OnClicked(FOnClicked::CreateRaw(this, &FMyPluginModule::OnClickButton)); } FReply FMyPluginModule::OnClickButton() { UE_LOG(LogTemp, Warning, TEXT("OnClickButton")); return FReply::Handled(); } SAssetSearchBox // "Edit..

AlgorFati
'Slate' 태그의 글 목록