スーパーなレベルのSVの方々はテクニカルに強い人が多いと思います。
自分は出来ないわけではないけれど、まだまだ弱い部分も多いので、
レベルアップのために、DCCツールで使えるファイル操作系のツールを作ってみようと思いました。
まずはUIを作るところから始めようと思い、PySideかPyQtがいいと聞いたので導入しようとしたら、案の定上手くいかず2日かかったので、そのメモです。
自分の環境
・window10
導入するもの
・python3.9
・pyside2
・Qt6
各種インストールした方法
・pythop3.9のインストール
→microsoft storからpython3.9をインストール
pythonのインストール先
デフォルト→C:\Users\user\AppData\Local\Programs\Python\Python39
操作メモ
pythonから出るときcntl + z
・pyside2のインストール
コンソールから
pip install pyside2
インストール後の確認
pythonで以下を打って、バージョン情報が出ればok
※後日別環境で試したら上のコードだとだめだったので、
その場合は下のコードでできます。
よく見ると最初のコードpython2の記述だしpysideだし色々おかしい…
import PySide print PySide.version
import PySide2
print(PySide2.__version__)
・Qt6のインストール
公式より
https://www.qt.io/download21/02/25更新 https://www.qt.io/download-qt-installer
すべてをインストールを確認した後に、
以下のコードでpysideが動くかをテスト。
コードは以下のページから引用させてもらいました。
https://fereria.github.io/reincarnation_tech/11_PySide/01_PySide_Basic/00_Tutorial/01_start/
テストコード
#!python3
# -*- coding: utf-8 -*-
import sys
from PySide2 import QtCore, QtGui, QtWidgets
from PySide2.QtUiTools import QUiLoader
class UISample(QtWidgets.QMainWindow):
def __init__(self, parent=None):
super(UISample, self).__init__(parent)
self.resize(400, 300)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
a = UISample()
a.show()
sys.exit(app.exec_())
無事エラーもなくウィンドウが開けばセット完了。
エラーで起動しなかったケース
最初はanaconda3を使ってpysideをやろうとしたが、
テストコードを実行すると以下のエラーで上手くいかなかった。
qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: direct2d, minimal, offscreen, windows, webgl.
調べてみると同じエラーで引っかかる人がよくいるようで、
その問題がQT_PLUGIN_PATH
なる環境変数が通っていないことが原因らしい。
houdiniの効率化のためにちょこっとpythonを書ける程度のレベルの自分にはよくわからず、師匠に相談して対応すること数分…
結果、同じエラーで上手くいかず…
環境変数だけの問題ではなかったようです。
ちなみに環境変数の設定方法は、
Windowsメニューで環境変数と入力してメニューを表示させ、
ユーザー環境変数から新規を選択。
それぞれに値とパスをいれます。
別の人からanacondaやめて公式からpythonインストールしたら?
とのことで、ためしにanacondaをアンインストールして、
ブログ冒頭の方法でやったら上手くいきましたと。
ここまで2日かかりましたとさ…╭( ๐_๐)╮