Faites Houdini avec Python3! !! !!

introduction

Ceci est le deuxième article ad-care cette année. Le premier était "Vérifier la nouvelle méthode d'installation de SideFX Labs Tool et la fonction Package". Donc, cette fois, j'aimerais acheter quelque chose sous un angle différent.

C'est une histoire de Python.

Pour diverses raisons, ma base commerciale est déjà passée à la série Python3, et j'utilise régulièrement la série Python3. 3 séries lors de la fabrication d'un outil autonome. Même lorsque vous devez écrire un traitement Python en raison de M ○ y ○ etc., la base est d'écrire un pipeline en Python3, et le traitement pour faire pivoter le traitement M ○ y ○ dans Python2 est tourné dans un autre processus. Plutôt, la situation psychologique en raison de la limitation selon laquelle "Python 2 doit être utilisé pour les outils DCC même si divers autres processus automatiques sont censés être écrits dans le système 3" et la stérilité de le gérer Je me sens stressé par.

Suite à l'article sur la plateforme de référence VFX (https://vfxplatform.com), il a été précédemment suggéré de passer à Python 3 à partir de 2019. Cependant, il semble que cela ait été difficile à gérer, et nous sommes maintenant en 2020. (Bien qu'il semble que la version Python3 ne soit pas encore sortie en M ○ y ○ 2020 ...?: Penser :) J'ai entendu des rumeurs d'enthousiasme selon lesquelles il ne sera plus obsolète, et malgré la question "Est-ce vrai?", Ce "** Houdini 18 a commencé à distribuer une version préliminaire de Python 3: bangbang: "**" signifie qu'un événement qui divise une histoire a finalement commencé à se produire.

Eh bien, c'est pourquoi la version d'aperçu tant attendue pour Python 3 a ouvert, alors essayons de la frapper, mis à part le fait que les bogues sont gros.

À propos, le traitement lui-même en Python3 était possible au moment du PDG de 17.5, et en ce qui concerne la méthode d'insertion du traitement de Python3 dans le flux, ** j'ai déjà décrit la méthode ici ** Voir pour référence!

:warning: ** Au fait, je voudrais refuser, mais cette version n'est qu'une version préliminaire, et je fais juste un jeu de M pour toucher le bogue, alors soyez prêt à intervenir lorsque vous imitez ** : clin d'œil: :warning:

Allons-y: bangbang:

Environnement de prévisualisation

Houdini 18.0.310 Windows 10

Installation

Commencez par télécharger le programme d'installation.

Tout d'abord, allez dans Obtenir> Télécharger et vivaldi_bYcUKlO5eL.png

Accédez à ces pages dans les téléchargements Production Build ou Daily Build. quel que soit. image.png

Par défaut, le filtre spécifié est appliqué, changez donc le filtre avec Houdini Python 3 dans le menu des filtres.

image.png

Et télécharger: bangbang:

Et installez: bangbang :: bangbang: Oh: bangbang :: bangbang :: bangbang :: bangbang: image.png

Essaie

Eh bien, cela aurait été bien d'avoir un article qui ne se terminerait pas par le téléchargement et l'installation, mais je suis curieux de connaître le comportement réel, alors je vais essayer.

Commencez

Après le démarrage du démarrage, j'ai immédiatement ressenti une atmosphère inquiétante dans l'erreur apparaissant sur l'écran de la console, et le démarrage a été terminé. image.png

Apparemment, cette zone ne prend pas encore en charge Python 3.

Python Shell

Pour le moment, lançons Python Shell. Python 3.7.4, la dernière version de la série 3.7 actuelle, est adopté.

image.png

Window Title

Python 3 est également décrit dans le titre de la fenêtre et vous pouvez reconnaître la variante que vous utilisez actuellement.

image.png

Le premier bogue que l'événement d'édition de nœud n'est pas pris en charge

Apparemment, l'événement lors de la réécriture du nom du nœud de Houdini utilise également Python, et même la modification du nom du nœud n'est pas autorisée. J'obtiens une erreur Unicode.

Pouvez-vous changer le nom du nœud ... Hot: exclamation :: muscle :: muscle :: muscle:

houdini_pcUl0wQ9mF.png

Testez si le module qui est la batterie inclus dans le système Python 3 réussit

Essayez-le avec Pathlib. image.png

J? ai compris! Personnellement, c'est juste utilisable et vaut l'évaluation: angel:

Houdini Python 3 with TensorFlow on Windows

La version Windows de TensorFlow a été développée sans l'intention de prendre en charge Python 2, j'ai donc eu la possibilité de quitter le support ou d'oser utiliser Linux. Cependant, une fois que Houdini prend en charge Python 3, cela n'a plus d'importance, vous pouvez donc utiliser TensorFlow avec un support ouvert: bangbang: Alors j'ai essayé de voir si je pouvais y aller.

Seul le résultat pour le moment.

** Hmm, ne le faites pas (.´ ・ ω ・) ** image.png

À propos, lorsque je le frappe une deuxième fois, j'obtiens une autre erreur d'importation.

>>> import tensorflow as tf
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow\__init__.py", line 98, in <module>
    from tensorflow_core import *
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\__init__.py", line 45, in <module>
    from . _api.v2 import compat
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\_api\v2\compat\__init__.py", line 23, in <module>
    from . import v1
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\_api\v2\compat\v1\__init__.py", line 40, in <module>
    from . import experimental
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\_api\v2\compat\v1\experimental\__init__.py", line 11, in <module>
    from tensorflow.python.ops.control_flow_v2_toggles import output_all_intermediates
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\ops\control_flow_v2_toggles.py", line 24, in <module>
    from tensorflow.python.ops import control_flow_util_v2
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\ops\control_flow_util_v2.py", line 28, in <module>
    from tensorflow.python.keras.engine import base_layer_utils
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\__init__.py", line 27, in <module>
    from tensorflow.python.keras import applications
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\applications\__init__.py", line 25, in <module>
    from tensorflow.python.keras import engine
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\engine\__init__.py", line 23, in <module>
    from tensorflow.python.keras.engine.base_layer import Layer
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\engine\base_layer.py", line 56, in <module>
    from tensorflow.python.keras.saving.saved_model import layer_serialization
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\saving\__init__.py", line 20, in <module>
    from tensorflow.python.keras.saving.hdf5_format import load_attributes_from_hdf5_group
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\saving\hdf5_format.py", line 32, in <module>
    from tensorflow.python.keras.utils import conv_utils
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\utils\__init__.py", line 38, in <module>
    from tensorflow.python.keras.utils.multi_gpu_utils import multi_gpu_model
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\utils\multi_gpu_utils.py", line 22, in <module>
    from tensorflow.python.keras.engine.training import Model
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\engine\training.py", line 42, in <module>
    from tensorflow.python.keras import metrics as metrics_module
  File "D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\metrics.py", line 34, in <module>
    from tensorflow.python.keras.engine.base_layer import Layer
ImportError: cannot import name 'Layer' from 'tensorflow.python.keras.engine.base_layer' (D:\Develop\Houdini\Qiita\tf2\python3.7.4\site-packages\tensorflow_core\python\keras\engine\base_layer.py)

Méthode de vérification A

Pour le moment, comment découper et tester au moment de l'installation du pip.

  1. Créez un environnement Python 3.7.4 avec Anaconda et entrez dans cet environnement.
  2. Sur la ligne de commande, installez avec pip install -t <chemin de vérification> tensorflow = 2.0.0.
  3. Sur la ligne de commande, définissez avec set PYTHONPATH = <chemin de vérification>.
  4. Pour le moment, testez s'il fonctionne correctement sur la ligne de commande. image.png
  5. Sur la ligne de commande, exécutez Houdini avec call" C: \ Program Files \ Side Effects Software \ Houdini 18.0.310 \ bin \ happrentice.exe " ou écrivez sur houdini.env.
  6. Essayez d'exécuter ʻimport tensorflow en tant que tf; tf .__ version __`.

résultat

Erreur ci-dessus

Méthode de vérification B

Comment le laisser à l'installation conda d'Anaconda docilement.

  1. Créez un environnement Python 3.7.4 avec Anaconda et entrez dans cet environnement.
  2. Sur la ligne de commande, installez avec conda install tensorflow = 2.0.0.
  3. Pour le moment, testez s'il fonctionne correctement sur la ligne de commande.
  4. Sur la ligne de commande, exécutez Houdini avec call" C: \ Program Files \ Side Effects Software \ Houdini 18.0.310 \ bin \ happrentice.exe " ou écrivez dans houdini.env.
  5. Essayez d'exécuter ʻimport tensorflow en tant que tf; tf .__ version __`.

résultat

Aussi l'erreur ci-dessus

Méthode de vérification C

En premier lieu, comment tester si le Python fourni avec l'installation de Houdini est correct.

  1. Suivez l'étape 3 de la méthode de vérification A.
  2. Sur la ligne de commande, essayez "C: \ Program Files \ Side Effects Software \ Houdini 18.0.310 \ python37 \ python.exe" pour démarrer Python fourni avec l'installation de Houdini.
  3. Essayez d'exécuter ʻimport tensorflow en tant que tf; tf .__ version __`. -> Ce gars travaille correctement

Méthode de vérification D

En premier lieu, essayez la nouvelle version quotidienne.

Environnement de vérification Houdini 18.0.315

  1. Téléchargez une nouvelle version.
  2. Essai selon la procédure de vérification A.

résultat

C'était la même chose ... (.´ ・ ω ・)

Hmm ... (.´ ・ ω ・) Apparemment, un autre module fourni avec Houdini Python 3 peut être mauvais. Je pense que le module hou lui-même ne prend pas encore en charge Python3. J'ai perdu l'énergie de chasser plus ... Eh bien, je réessayerai après un moment. La lumière de la curiosité est à nouveau: volcan:

Résumé

………, j'ai pu confirmer que Python3 fonctionne (je n'ai pas dit de mensonge) pour le moment. Cependant, il semble que les responsables du développement aient beaucoup de difficultés, peut-être parce que c'est encore une route épineuse. Il peut être préférable de garder un œil dessus pendant un certain temps et de procéder à une vérification plus approfondie.

Recommended Posts

Faites Houdini avec Python3! !! !!
Faites Django avec CodeStar (Python3.6.8, Django2.2.9)
Faites Django avec CodeStar (Python3.8, Django2.1.15)
Pour faire une récursion avec Python2
Que faire avec la sortie de PYTHON?
Faisons du scraping d'images avec Python
Python | Ce que vous pouvez faire avec Python
FizzBuzz en Python3
Grattage avec Python
Statistiques avec python
Grattage avec Python
Python avec Go
Twilio avec Python
Jouez avec 2016-Python
Testé avec Python
avec syntaxe (Python)
Bingo avec python
Zundokokiyoshi avec python
Excel avec Python
Micro-ordinateur avec Python
Cast avec python
Laissez Heroku faire le traitement en arrière-plan avec Python
Comment faire un test de sac avec python
Faisons la manipulation des données MySQL avec Python
Communication série avec Python
Zip, décompressez avec python
Django 1.11 a démarré avec Python3.6
Jugement des nombres premiers avec Python
Python avec eclipse + PyDev.
Communication de socket avec Python
Analyse de données avec python 2
Grattage en Python (préparation)
Essayez de gratter avec Python.
Apprendre Python avec ChemTHEATER 03
Recherche séquentielle avec Python
"Orienté objet" appris avec python
Exécutez Python avec VBA
Manipuler yaml avec python
Résolvez AtCoder 167 avec python
Communication série avec python
[Python] Utiliser JSON avec Python
Comment faire un traitement parallèle multicœur avec python
Apprendre Python avec ChemTHEATER 05-1
Apprenez Python avec ChemTHEATER
1.1 Premiers pas avec Python
Binarisation avec OpenCV / Python
3. 3. Programmation IA avec Python
Méthode Kernel avec Python
Non bloquant avec Python + uWSGI
Grattage avec Python + PhantomJS
Publier des tweets avec python
Conduisez WebDriver avec python
Utiliser mecab avec Python 3
Analyse vocale par python
Pensez à yaml avec python
Utiliser Kinesis avec Python
Premiers pas avec Python
Utiliser DynamoDB avec Python
Getter Zundko avec python
Gérez Excel avec python
Loi d'Ohm avec Python