ATUM
Harnessing the power of ML inside UE
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
Table of Contents
-
About the Plugin
-
Getting Started
- Usage
- Contributing
- License
About the Plugin
ATUM is an experimental plugin which enables developers to use machine learning inside Unreal Engine's environment.
It is currently the only solution which does not force the user to integrate Python into their workflow.
With ATUM you can:
- Design neural networks inside the editor
- Perform operations using tensors
- Save & load your models to and from files
- Create custom layers, optimisers and tensors
- Use every feature in both C++ and Blueprints
(back to top)
Getting Started
In order for this plugin to work, additional files which are not present in this repository are required.
Those files can be accessed from the official PyTorch website.
Prerequisites
- OS: Windows - 64 bit
- UE: version 5.1 - 5.3
- GPU support is currently CUDA-only
Installation
- Download the release version of LibTorch
- Extract the
include
and lib
folders
- In your UE project, create a folder
Plugins
if it doesn't exist
- Inside it create another folder called
Atum
if it doesn't exist
- Clone this repository and move the files inside the
Atum
folder
- Go to
Source/ThirdParty/LibTorch/Win64
- Replace
include
and lib
with the extracted folders from step 2
- Go to
include/torch/csrc/api/include/torch/enum.h
- Find the following line of code
TORCH_API extern const enumtype::k##name k##name;
- Remove
TORCH_API extern
from the aforementioned line of code
- Go to
include/torch/csrc/api/include/torch/nn/module.h
- Find the
Module
class
- Add the following line of code inside it
friend class IAtumLayer;
(back to top)
Usage
YouTube Tutorials
Setup and Basic Usage
Working with Meta's Llama
(back to top)
Contributing
Want to contribute to? Awesome! Check out the contributing guidelines to get involved. Contributors are encouraged join to the community Discord server.
(back to top)
License
Distributed under the MIT License. See LICENSE
for more information.
(back to top)