Documentation

Support

Asset Transformer SDK


User Manual

Python API

C# API

Changelog

Discussions

Asset Transformer SDK

Docker image

Learn how to install, license, and run the Pixyz SDK Docker image for CAD and 3D data transformations.
Read time 2 minutesLast updated 18 hours ago

General Information

Pixyz SDK is cloud-ready. Unity Cloud currently uses Pixyz-based Docker images for its automatic CAD and 3D transformation pipelines, including thumbnail generation, GLB web-previews, metadata extraction, file conversions, 3D data streaming, and more. As a standalone toolkit, Pixyz SDK is available for on-premise (local) or VPC deployments for Unity external customers who cannot leverage Unity Cloud online services.

Get Started

The Pixyz SDK Docker image is available on Docker Hub. A floating license server is required to run the Pixyz SDK Docker container.

Set Up the License Server

The license server must be running on the network and accessible from the container. Ports
27000
to
27010
must be opened.
License server installation guides:

Get the SDK Docker Container

docker pull pixyzinc/sdk:2024.2.1.3

Install License

A license file must be mounted (with write permission) to
/usr/share/PixyzSDK/licenses/pixyz.lic
for the container to run.
Create the
pixyz.lic
file with the following content:
<?xml version="1.0" encoding="utf-8" ?><license product="PixyzSDK"> <version/> <validity start="" end=""/> <customer> <company/> <name/> <email/> <site/> <phone/> </customer> <floatting>True</floatting> <server> <port>27000</port> <host>##YOUR_SERVER_IP_OR_HOSTNAME###</host> <flexLM>True</flexLM> </server> <machine/></license>
Replace
##YOUR_SERVER_IP_OR_HOSTNAME###
with the IP address or hostname of the license server.

Configure License Server

Use the following code at the top of your datap reparation script to configure the license server:
import pxzfrom pxz import core# init Pixyzpxz.initialize()# print Pixyz versionprint(core.getVersion())# set log level to INFO so you can see the logs in the consolecore.configureInterfaceLogger(True, True, True)core.addConsoleVerbose(core.Verbose.INFO)# if no license is found, try to configure a license serverif not core.checkLicense(): core.configureLicenseServer("company-server-hostname", 27000, True)# use io.importScene to import a file and enjoy :)
Replace
company-server-hostname
with the IP address or hostname of the license server.
For more detailed information on licensing, please refer to the licensing documentation.

GPU Requirement

Some Pixyz algorithms require a GPU to run. More information. The GPU must be allocated to the container if you intend to use these algorithms.

Run Your Data Preparation Scripts

The Pixyz SDK is located at
/opt/pixyz
in the container. Its entrypoint is designed to automatically initialize Pixyz SDK and run the provided Python script path.

Locally

export LIC_FILE=/path/to/your/pixyz.licexport FILES_DIR=/path/to/your/cad_filesexport SCRIPTS_DIR=/path/to/your/dataprep_scriptsdocker run \ -d --rm \ --name=pixyz_sdk \ --runtime=nvidia \ --gpus all \ -e NVIDIA_VISIBLE_DEVICES=all \ -e NVIDIA_DRIVER_CAPABILITIES=all \ -e DISPLAY=$DISPLAY \ -v /usr/share/vulkan/icd.d/nvidia_icd.json:/usr/share/vulkan/icd.d/nvidia_icd.json \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -v $LIC_FILE:/usr/share/PixyzSDK/licenses/pixyz.lic \ -v $FILES_DIR:/files \ -v $SCRIPTS_DIR:/scripts \ pixyzinc/sdk:2024.2.0.52 /scripts/myconvertionscript.py /files/myfiletoconvert.obj
To improve the performance of the container, you can use the
--cpus ##NUMBER##
and
--memory ##VALUE##
flags.

Running in the Cloud

The Docker container is compatible with all cloud providers. When running with Kubernetes with GPU:
  • The NVIDIA drivers must be provided on the node.
  • The NVIDIA daemonset must be deployed (e.g., on Azure).

Unity Cloud Transformations and Asset Manager

Subscribe now on unity.com.