Skip to content

ue4plugins/tk-framework-unrealqt

Repository files navigation

Unreal QT Framework

This is a helper library designed to be used in conjunction with the tk-unreal engine.

This framework contains hooks which can be re-used in configurations where the Unreal integration is needed, and PySide binaries needed to run the SG Toolkit integration in Unreal.

Please see the engine for more details.

The PySide libraries

Binaries for PySide libraries for all platforms are not included in the source tree and must be built before being able to use this framework.

Building the PySide libraries locally

Use the build_packages.sh script with the -b option to build and install the packages specified in the requirements.txt file.

Usage : ./build_packages.sh [-h] [-b] [-p <python command]
Options :
 -h : show this help message
 -b : build packages into their shipping destination
 -p : specify which python command to use, e.g. python, python2, python3

The framework can be used with a local descriptor (e.g. dev or path) once the binaries are build.

Building the PySide libraries with Azure Pipelines

The build_packages.sh script can be used with Azure Pipelines to automatically build the packages each time a new version tag is added in Github.

You can get access to Azure Pipelines for free from your Github account if you don't already have an account.

You can use the provided azure-pipelines.yml file to create a new Azure Pipeline.

A service connection to Github will have to be created if you don't already have one.

The Azure pipeline builds the PySide libraries for Windows, Linux and Mac, and upload them to Github releases.

Github releases

Using this framework in your Setup

Add this framework in the frameworks settings section of the Toolkit application needing it. For example:

frameworks:
     - {"name": "tk-framework-unrealqt", "version": "v1.x.x"}
  • If you're using a local descriptor (dev or path) you need to build the PySide libraries yourself. See building the PySide libraries locally.

  • If you're using a remote descriptor, just in time download must be added so these binaries are downloaded in SG TK bootstrap process. The provided bootstrap.py script implements just in time downloads from Github releases with a git or a github_release descriptor:

    • Copy the hooks/core/bootstrap.py file to your config core/hooks/bootstrap.py hook.
    • Use a git descriptor for the framework, e.g.:
      tk-framework-unrealqt_v1.x.x:
        location:
          version: v1.3.0
          type: git
          path: git@github.com:ue4plugins/tk-framework-unrealqt.git
      
    • Or use a github_release descriptor for the framework, e.g.:
      tk-framework-unrealqt_v1.x.x:
        location:
          version: v1.3.0
          type: github_release
          organization: ue4plugins
          repository: tk-framework-unrealqt