[UE] Plugin (Button Command)

Unreal Engine에서 플러그인을 구현하는 것은 복잡할 수 있지만, Unreal Engine이 제공하는 다양한 기능을 사용하면 플러그인을 쉽게 구현할 수 있다.
목차
Plugins | ||
Example | ||
ButtonCommand.h .cpp 생성 Example.Build.cs ExampleConsoleCommand.h .cpp ExampleDebuggerCategory.h .cpp ExampleModule.h .cpp StaticMesh_Detail.h .cpp |
||
Source | ||
U2212_05 | ||
Utilities | ||
CHelper.h CLog.h .cpp |
||
Global.h CStaticMesh.h .cpp U2212_05.Build.cs |
||
U2212_05.uproject | ||
Plugin (Button Command)
설명
Command List | Tool Bar | |
Command Info |
→ |
Extender - Button |
더보기
template<typname T> class A { T a; void Test() { T b; } } A<int> a; class B : A<int> { } //부모에서 자식 자료형을 다루는 경우
더보기
template<typname T> class A { static T* Get(); int a; } //부모의 공용영역에 접근하기 위해(=static함수를 사용하기 위해) A<B>를사용한다. class B : A<B> { int b; } B ob; B::Get()
팩토리 패턴에 많이 사용한다. 아래의 ButtonCommand는 가변 싱글톤 팩토리 패턴을 사용하였다.
ButtonCommand 생성
새 C++ 클래스 - 없음 - ButtonCommand 생성

ButtonCommand.h
더보기
#pragma once #include "CoreMinimal.h" #include "Framework/Commands/Commands.h" class EXAMPLE_API FButtonCommand : public TCommands<FButtonCommand> { public: FButtonCommand(); ~FButtonCommand(); public: void RegisterCommands() override; public: TSharedPtr<FUICommandList> Command; public: TSharedPtr<FUICommandInfo> LoadMesh; };
ButtonCommand.cpp
더보기
#include "ButtonCommand.h" FButtonCommand::FButtonCommand() : TCommands("ToolBar_Buttons", FText(), NAME_None, FEditorStyle::GetStyleSetName()) { Command = MakeShareable(new FUICommandList()); } FButtonCommand::~FButtonCommand() { if (Command.IsValid()) Command.Reset(); } void FButtonCommand::RegisterCommands() { #define LOCTEXT_NAMESPACE "" UI_COMMAND(LoadMesh, "LoadMesh", "", EUserInterfaceActionType::Button)//버튼, 체크박스, 라디오버튼 등 원하는 방식으로 버튼을 만들어준다. #undef LOCTEXT_NAMESPACE }
EUserInterfaceActionType
- 버튼이 어떤 방식으로 연결될 것인가를 결정한다.
- 버튼 종류: Button, Check, CollapsedButton, RadioButton, ToggleButton, None.
※ 언리얼 규칙
#define LOC_DEFINE_REGION ~ #unef LOC_DEFINE_REGION 안에 정의된 매크로는
반드시 #define LOCTEXT_NAMESPACE ~ #define LOCTEXT_NAMESPACE 안에 정의되어야 한다.


'⭐ Unreal Engine > UE Plugin - Basic' 카테고리의 다른 글
[UE] Tool Bar 아이콘 만들기 (0) | 2023.04.25 |
---|---|
[UE] 툴바 만들기(ButtonCommand), 문자(MBCS, Unicode) (0) | 2023.04.18 |
[UE] Plugin (Save StaticMesh .csv) (0) | 2023.04.13 |
[UE] Plugin (Save StaticMesh & RenderData, LOD) (0) | 2023.04.12 |
[UE] Plugin (StaticMesh Detail) (0) | 2023.04.07 |
댓글
이 글 공유하기
다른 글
-
[UE] Tool Bar 아이콘 만들기
[UE] Tool Bar 아이콘 만들기
2023.04.25목차 Plugins Example ButtonCommand.h .cppExample.Build.csExampleConsoleCommand.h .cpp ExampleDebuggerCategory.h .cppExampleModule.h .cppExampleStyle.h.cpp 생성StaticMesh_Detail.h .cppSource Utilities CHelper.hCLog.h .cpp Global.hCStaticMesh.h .cpp.Build.cs .uproject Tool Bar 아이콘 만들기 Plugin 아이콘 저장위치 Example.Build.cs Example.Build.cs더보기using UnrealBuildTool;public class Example : Modu… -
[UE] 툴바 만들기(ButtonCommand), 문자(MBCS, Unicode)
[UE] 툴바 만들기(ButtonCommand), 문자(MBCS, Unicode)
2023.04.18목차 Plugins Example ButtonCommand.h .cppExample.Build.csExampleConsoleCommand.h .cpp ExampleDebuggerCategory.h .cppExampleModule.h .cppStaticMesh_Detail.h .cppSource Utilities CHelper.hCLog.h .cpp Global.hCStaticMesh.h .cpp.Build.cs .uproject 툴바 만들기 CPC-949 (MBCS) vs. euc-kr (Unicode) 한글은 아스키코드의 줄바뀜 문자(\n) 뒤에 위치해있기 때문에한글을 줄바꿈 문자로 간주한다. CPC-949 (MBCS, Multi-Byte Character Set) … -
[UE] Plugin (Save StaticMesh .csv)
[UE] Plugin (Save StaticMesh .csv)
2023.04.13플러그인 메인 클래스 구현 플러그인 메인 클래스는 모듈을 초기화하고 실행하는 역할을 한다. Unreal Editor에서 "Add New -> C++ Class"를 선택하고 "Object"를 선택하여 플러그인 메인 클래스를 만든다. 이 클래스는 모듈을 초기화하고 실행할 때 호출된다. 목차 Plugins Example Example.Build.csExampleConsoleCommand.h .cpp ExampleDebuggerCategory.h .cppExampleModule.h .cppStaticMesh_Detail.h .cppSource Utilities CHelper.hCLog.h .cpp Global.hCStaticMesh.h .cpp.Build.cs .uproject 이론 설… -
[UE] Plugin (Save StaticMesh & RenderData, LOD)
[UE] Plugin (Save StaticMesh & RenderData, LOD)
2023.04.12모듈 기능 구현 모듈 클래스에는 플러그인 기능을 구현하는 C++ 코드가 포함되어 있다. 모듈 클래스에서 필요한 함수를 구현하고 기능을 구현한다. Unreal Engine은 많은 기능을 제공하며, 개발자는 이러한 기능을 사용하여 모듈을 구현할 수 있다. 목차 Plugins Example Example.Build.csExampleConsoleCommand.h .cpp ExampleDebuggerCategory.h .cppExampleModule.h .cppStaticMesh_Detail.h .cppSource Utilities CHelper.hCLog.h .cpp Global.hCStaticMesh.h .cpp.Build.cs .uproject StaticMesh_Detail를 활용…
댓글을 사용할 수 없습니다.