Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/awforsythe/sublime-unreal-snippets
A collection of Sublime Text 3 snippets for writing Unreal Engine 4 game code
https://github.com/awforsythe/sublime-unreal-snippets
Last synced: about 1 month ago
JSON representation
A collection of Sublime Text 3 snippets for writing Unreal Engine 4 game code
- Host: GitHub
- URL: https://github.com/awforsythe/sublime-unreal-snippets
- Owner: awforsythe
- License: mit
- Created: 2020-06-28T22:46:42.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2020-07-31T06:52:02.000Z (over 4 years ago)
- Last Synced: 2024-08-02T16:32:01.783Z (4 months ago)
- Size: 9.77 KB
- Stars: 50
- Watchers: 10
- Forks: 13
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-unreal - sublime-unreal-snippets - A collection of Sublime Text 3 snippets for writing Unreal Engine 4 game code. (Text Editor Extensions)
README
# Unreal Snippets
A collection of Sublime Text 3 snippets for writing Unreal Engine 4 game code.
Some of these snippets assume that your project's source modules follow the convention of splitting source files into _Public_ and _Private_ subdirectories.
### Available Snippets
**Project (.uproject)**
- **uuproj** - Boilerplate .uproject file (e.g. `Project.uproject`)
**Module (C#)**
- **umt** - Define a project-level target rules file (e.g. `Source/Project.Target.cs`)
- **umb** - Define a module-level build rules files (e.g. `Source/ProjectCore/ProjectCore.Build.cs`)
- **umh** - Declare a module in its public header file (e.g. `Source/ProjectCore/Public/ProjectCore.h`)
- **umc** - Define a module in its private cpp file (e.g. `Source/ProjectCore/Private/ProjectCore.cpp`)
- **umcp** - Define the _primary_ game module implementation (one per project)**Logging (C++)**
- **ulh** - Declare a module-level log category in a module-private header (e.g. `Source/ProjectCore/Private/Log.h`)
- **ulc** - Define a module-level log category in a cpp file (e.g. `Source/ProjectCore/Private/Log.cpp`)
- **ull** - Write a single UE_LOG line using the module-level log category
- **ulf** - Write a single UE_LOG line at Fatal severity**Classes (C++)**
- **uco** - Declare a UObject subclass
- **ucc** - Declare a UActorComponent subclass
- **uca** - Declare an AActor subclass
- **ucs** - Declare a UBlueprintFunctionLibrary subclass (i.e. a "statics" class)
- **uci** - Declare a UInterface subclass with associated native interface**Macros (C++)**
- **ume** - Insert an export macro in a type definition
**Properties (C++)**
- **upc** - Declare a component UPROPERTY (Visible/ReadOnly in "Components" category)
- **upe** - Declare an editable UPROPERTY (Editable/ReadWrite in "" category)
- **upv** - Declare a visible UPROPERTY (Visible/ReadOnly in "" category)**Functions (C++)**
- **uff** - Declare a BlueprintCallable member function
- **ufs** - Declare a BlueprintCallable static function with a WorldContextObject parameter
- **ufi** - Declare a pure virtual function in a native interface class
- **ufc** - Declare a constructor that accepts a const FObjectInitializer reference (in a class header)
- **ufr** - Define the implementation of GetLifetimeReplicatedProps (in an actor source file)### Creating a Project
Example setup steps for creating a new Unreal C++ project from scratch:
- Create a root Unreal project directory: replace `Project` with your project name
- Add `Project.uproj`, run `uuproj`, populate with primary module name (e.g. `ProjectCore`)
- Add a `Source` directory
- Within that directory, add `Project.Target.cs`, run `umt`, enter primary module name
- Add `ProjectEditor.Target.cs` the same way, set _Type_ to `TargetType.Editor`
- If desired, add `ProjectServer.Target.cs`, set _Type_ to `TargetType.Server`
- Add a subdirectory for the primary module, e.g. `ProjectCore`
- Within that directory, add `ProjectCore.Build.cs`, run `umb`
- Add two subdirectories, `Public` and `Private`
- Within Public, add `ProjectCore.h`, run `umh`
- Within Private, add `ProjectCore.cpp`, run `umcp`
- Within Private, add `Log.h`, run `ulh`
- Within Private, add `Log.cpp`, run `ulc`At this point, you should be able to build your project and open it with the version of UE4Editor that you've built against.