首页 > 行情 > > 正文

Touchdesigner运行DAT元件时出现“No modules named ……”报错解决方法

2023-09-08 15:49:06 来源:哔哩哔哩 分享到:

出现这个问题的原因是:

Touchdesigner拥有自己的python库(library,一般在python的lib文件夹),如果只是在cmd或powershell等地方运行pip install指令的话,安装的python依赖并不能装进Touchdesigner的库内,也就不会被touchdesigner识别。

参考了以下两个链接的解决方法:


(资料图片仅供参考)

/community-post/tutorial/anaconda-managing-python-environments-and-3rd-party-libraries-touchdesigner

/weixin_51146503/article/details/130309849

简单来说解决方法就是,使用Anaconda来管理python环境:

先在Anaconda Prompt中创建新的用于Touchdesigner的python环境;

再在Touchdesigner中将python库指向新创建的环境地址;

然后在Anaconda Prompt中安装“No modules named ……”提示里所缺失的依赖;

最后在Touchdesigner里导入这个依赖。

以上是简略的四步原理步骤。如果你看懂并熟悉上面的方法的话,就不需要看下面的步骤。

详细步骤:

(我使用的Touchdesigner版本是Touchdesigner自己python库的版本是电脑系统是win10 64bit。以下会使用这些版本进行python的环境管理,版本不同的同学请根据情况自行修改。)

1.安装Anaconda

官网下载:/download

清华源:/anaconda/archive/

下载完成后安装Anaconda。

2.在Anaconda Promet中新建环境

首先打开你的Touchdesigner,alt+t或者在pane type中选取Text Port and DATs。

打开Textport界面。

这里会显示你Touchdesigner的python库的版本。

打开Anaconda Promt,在里面输入:

conda create -n td-demo python=

并且在问你y/n时输入y并回车。

在这里td-demo是你所要创立的环境名,是你刚才在Textport界面查到的python版本,请根据自身情况修改。

3.激活新环境

安装好新的python环境后,在Anaconda Promt中继续输入:

conda activate td-demo

td-demo是你之前自己命名的环境名称。

然后Prompt中的环境由base变成td-demo。

4.修改Touchdesigner的python环境

在Anaconda Prompt中输入:

conda env list

用来寻找你的新环境地址。

回到Touchdesigner中,新建一个Execute的DAT元件,将内容修改为:

import sys

import os

import platform

def onStart():

condaEnv = 'C:/Softwares/Anaconda 3/envs/td-demo'

_dll_directory(condaEnv+'/DLLs')

_dll_directory(condaEnv+'/Library/bin')

# ['PATH'] = condaEnv+'/DLLs' + + ['PATH']

# ['PATH'] = condaEnv+'/Library/bin' + + ['PATH']

= [condaEnv+'/Lib/site-packages'] +

return

其中condaEnv = 'C:/Softwares/Anaconda 3/envs/td-demo'的引号内内容修改为你刚才查询到的td-demo环境地址。(注意地址斜杠方向,否则会报错。)

然后保存并关闭代码界面。

将Execute的Start切换为on状态,然后点击Pulse。

5.安装缺失依赖

根据你DAT元件中的报错代码安装依赖。这里假设报错为“No modules named pillow”来举例:

在刚才激活td-demo环境的Anaconda Prompt中安装pillow:

conda install pillow

安装完成后,回到Touchdesigner的Textport内,输入:

import PIL

如果未产生报错,则说明修改环境并安装依赖成功。按照这个方法安装所缺失依赖即可。

注意:Conda安装依赖和在Textport中import的依赖文件名称会不同。比如conda中安装pillow,本地文件名为PIL。在Touchdesigner内import需要使用本地文件名。

标签:

x 广告
x 广告

Copyright ©  2015-2022 起点仪表网版权所有  备案号:皖ICP备2022009963号-12   联系邮箱: 39 60 29 14 2@qq.com