Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/apigear-io/template-unreal
Technology template for Unreal Engine
https://github.com/apigear-io/template-unreal
data unreal-engine-4 unreal-engine-5 unreal-engine-plugin
Last synced: about 1 month ago
JSON representation
Technology template for Unreal Engine
- Host: GitHub
- URL: https://github.com/apigear-io/template-unreal
- Owner: apigear-io
- License: mit
- Created: 2022-06-01T14:38:58.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-16T12:16:36.000Z (4 months ago)
- Last Synced: 2024-09-17T13:23:50.228Z (4 months ago)
- Topics: data, unreal-engine-4, unreal-engine-5, unreal-engine-plugin
- Language: C++
- Homepage: https://apigear.io/template-unreal/docs/intro
- Size: 3.67 MB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Epic Games Unreal Engine template
This is a code generation template for the ApiGear integration suite. It generates an Unreal Engine C++ plugin with full blueprint support based on an object API model and eases the integration of external data into any Unreal Engine project.
Check out the [quick start documentation](https://apigear-io.github.io/template-unreal/quickstart).
For more details on *ApiGear* please visit [apigear.io](https://apigear.io) or the [*ApiGear* documentation](https://docs.apigear/).## Output - Unreal Engine plugin
### Technologies
We aim for full feature parity between usage from within Blueprints or UE C++.
| |Client|Service|Network Client|Network Service|Simulation Client|
|---| :---: | :---: | :---: | :---: | :---: |
|Blueprint|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:| :heavy_check_mark: (v3.x and later) |:heavy_check_mark:|
|UE C++|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark:|:heavy_check_mark: (v3.x and later)|:heavy_check_mark:|> :bulb: **Explanation**
>
> An API has two sides. One *client* side which usually consumes events, data or triggers functions. And the *service* side which produces the data, events to be consumed by the client or reacts to function calls.
>
> In modern architectures these two sides are often distributed in a network. Therefore the plugin can also connect to remote services as a *network client*.
>
> Furthermore, the plugin can also be connected as *simulation client* to *ApiGear*s simulation tools. [More information](https://docs.apigear.io/docs/advanced/simulation/intro)
### CompatibilityThe generated plugin code is regularly tested in these configurations:
| platform | UE4.25 | UE4.27 | UE5.4 |
|----------| :---: | :---: | :---: |
| Windows |:heavy_check_mark: (until v2.x)|:heavy_check_mark:|:heavy_check_mark:|
| Linux |:heavy_check_mark: (until v2.x)|:heavy_check_mark:|:heavy_check_mark:|
## Code Generation FeaturesThe template offers the following feature switches which can be enabled during code generation:
* `api`: create interface files and an abstract implementation
* `stubs`: create a stub implementation in C++ with some test cases
* `plugin`: create a fully functional plugin with including the stub implementations and tests
* `monitor`: create a thin decorator class which can be used to log traffic going through API layer
* `olink`: create the adaption layer for the [OLink](https://docs.apigear.io/docs/advanced/protocols/objectlink/intro) protocol. This can be used to connect to the simulation.