Python Embeddableを利用したTouchDesignerの便利な配布方法

PythonのEmbeddableパッケージを活用して、TouchDesignerのプロジェクトの配布をより簡易にする方法をご紹介します。この方法を採用することで、開発環境から納品用端末へ開発したtoeファイルをただコピーするだけで、納品用端末にPythonをインストールする手間が省けます。本記事では、Windows環境での手順に焦点を当てて解説します。
 

Python Embeddable packageのダウンロード

まずはじめに、PythonのEmbeddable packageをダウンロードします。ダウンロードはPythonの公式ウェブサイトから行うことができます。
 
 
 
ダウンロードしたEmbeddable packageの中身を、toeファイルのあるディレクトリにあるPythonフォルダにコピーします。
 

pythonXX._ pthファイルの編集

ここで注意点が一つ。ダウンロードしたPythonのバージョンに応じたpythonXX._pthファイルを編集する必要があります。その際には、’import site’のコメントアウトを外します。

pipをインストール

次に、pipをインストールします。pipのインストールファイル、 🔗get-pip.pyをダウンロードし、TD-embeddable-python\pythonディレクトリに配置します。その後、このディレクトリに移動し、
 
 
というコマンドを実行すると、pipがインストールされます。

Pythonライブラリのインストール

これで、ライブラリのインストールが可能になります。試しに、dateutilをインストールしてみましょう。これを行うためにはTD-embeddable-python\pythonディレクトリで
 
 
というコマンドを実行します。

Touch designerにライブラリのパスを設定

TouchDesignerではTD-embeddable-python\python\Lib\site-packagesにパスを設定します。今回は、TouchDesignerのスタート時に、システムパスにTD-embeddable-python\python\Lib\site-packagesへのパスを追加するように設定します。
DATのExecuteを使用し、TouchDesignerのStart時に、システムパスにTD-embeddable-python\python\Lib\site-packagesへのパスを追加します。
Textportでパスが追加されているか確認できます。
最後に、実際にdateutilを使用してみましょう。下記のコードをDATのTextに記入し、実行(CTRL+r)します。
 
以下のように表示がされれば、無事、外部モジュールを読み込んで使用することができます。
 
 
以上の方法で、Python Embeddableを活用すれば、プロジェクトの配布が格段に簡単になります。必要なライブラリ等を一つのフォルダにまとめ、プロジェクトと合わせて配布するだけです。配布先では細かなコマンドライン作業やインストール作業が不要となります。
 
プロジェクトファイルはこちらからご確認いただけます。