Skip to main content

A tool for managing Unreal Engine projects

Project description

Unreal Project Manager (UPM)

A lightweight Python module for managing Unreal projects across space, time, and platforms.

Features

  • Platform-aware generation of VS Code tasks to build, launch, cook, and package your Unreal 5+ project without having to open the editor.

  • Projects can be set up for Windows, Mac, and Linux environments from a single config file with sane defaults.

  • Central management of project/package versioning and patch notes.

  • CLI for managing all build dependencies and tools.

  • UPM can self-copy itself into existing repositories so there's no need to mess with submodules.

Contents

Prerequisites

Quickstart

  1. Download and install prerequisites.

  2. Install UPM:

    python3 -m pip install unreal-project-manager

  3. Use UPM to configure your project:

    upm config --dir [project-path] --project-name [project-name]

  4. Navigate to your project directory and use UPM to perform project setup and generate project files:

    upm setup

upm config

Adds scripts and configuration files to your project you'll probably want to keep under source control for use by collaborators.

Generate Configuration Files

NOTE: Here we're using Epic's Lyra Starter Game sample as an example project.

  1. Install UPM:

    python3 -m pip install unreal-project-manager
    
  2. Use UPM to copy configuration files into your project directory:

    python3 -m upm config --gitignore --dir ../LyraStarterGame
    

    This creates several items in your target directory:

    • config.upm: Contains UPM project configuration values upm setup uses to generate UPM project files and VS Code tasks.

    • Changelog.json: Used by upm changelog to centralize patch notes (initialized with version 0.0.0-Alpha; modify this as you see fit).

    • upm/: Directory containing UPM scripts used by generated VS Code tasks for build/cook/launch/package/deploy/change automation.

    • .gitignore: Default .gitignore file for use with Unreal 5+, C++, Python 3.10+, and UPM. Omit this argument if you already have a suitable .gitignore file in the target directory.

Configuration Options

If config.upm already exists in your project directory, UPM won't overwrite it. This allows you to keep a default config.upm under version control for your project. If you choose to do this but end up occasionally requiring a non-default config.upm, you can copy you custom config.upm into the .vscode directory of your project (which is ignored by the default .gitignore); upm setup will look here first for a config file.

To remove items created by upm config, do upm config --clean --dir your-project-dir/.

Do upm config -h to see options for modifying the default behavior of upm config, e.g. changing the default location of Unreal Engine or specifying a project name different from the project directory.

upm setup

Generates files required for project automation, including Python dependencies (installed to .venv by default), environment variables (.env by default), VS Code workspace configuration files, build/launch tasks, and Unreal project files. These are all excluded via the default .gitignore file added by upm config.

You can remove UPM files generated by upm setup with upm setup --clean; this does not remove Unreal project files or the .code-workspace file.

Existing Unreal Project

TODO

New Unreal Project

TODO

Usage

TODO

Also Maybe Helpful

Installing Python

Windows

To initiate Python 3 installation on Windows, open Powershell and do:

python3

This opens the Microsoft Store and prompts you install Python 3.12.

Installing Unreal

Starting an Unreal Project

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

unreal_project_manager-0.1.1.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

unreal_project_manager-0.1.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

Details for the file unreal_project_manager-0.1.1.tar.gz.

File metadata

  • Download URL: unreal_project_manager-0.1.1.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for unreal_project_manager-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c14643b875135ac98a783f710ff8dd8bfb00327b8d0760d4d1cb7b07cec11b0e
MD5 d177097970cdb8283e855c8b5bf3b7b6
BLAKE2b-256 98c5e30870759edfaff2e93478869dd4ad533a2f86b92013a61eab263612673f

See more details on using hashes here.

File details

Details for the file unreal_project_manager-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for unreal_project_manager-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 af5ff0597a9bd80887ffa0d71558b4af5db79ad9d7c708d5a2a3e2428cc35717
MD5 35d851816667ce78b51fb927af4f90f1
BLAKE2b-256 c2489c28c7aaa51fa36bebb2b3fbeadb75861f550f4dc84397688b5869508e8b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page