Installer PySide2 dans Blender

Posted Leave a commentPosted in Non classé

INSTALLER PYSIDE2/PYQT5

Introduction

Si il est possible de créer des interface directement dans blender,il est aussi posible d’utiliser PySide 2 ou PyQt5. Cela permet de faire des interfaces complexes.

 

Préalable : avoir une version de blender installée. Ce tutoriel à été fait sous Windows 10, je n’ai aucune idée de comment ça se passe sur Mac.

Ce tutoriel, décrit comment:

  • Installer la (bonne version) de Python
  • Installer pip
  • Installer pyside 2 avec pip
  • Tester pyside2

Merci à la communauté de Blenderlounge pour l’aide sur PySide2 et Blender et tout particulièrement à PistiWique

Quelques définitions

  1. Python est un langage de programmation “interprété”, utilisé par blender (et bien d’autres logiciels), c’est un langage qui ne nécessite pas d’être compilé pour fonctionner. C’est un peu comme le javascript pour le web. Une ligne de lecture suit nos indications lignes par lignes et les exécute au fur et à mesure. C’est un langage qui sur Blender nous permet de faire des scripts pour créer des outils, faire des opérations 3D, automatiser des tâches. Au-delà de Blender, Python est un langage qui permet de faire des site web, de l’ia, des data-sciences. c’est un langage courant dans les études universitaire.
  2. Pip est un gestionnaire de paquets, c’est utilisé pour gérer et installer des “paquets”(package,modules, bibliothèque) son acronyme viens de“Pip Installs Packages” ici on peut trouver des milliers de package a importer via pip dans nos projets https://pypi.org/ par exemple, on peut ajouter un package “scipy” qui est un module qui nous aidera à faire des math de la science ou de l’ingénierie. Dans notre cas nous auront besoin de PySide2
  3. PySide2 est un “binding” qui permet de lier la bibliothèque c++ Qt à python. C’est à dire que nous pourrons utiliser les composant c++ de qt pour faire des interfaces, mais via du python.
  4. QT est une api qui offre des composant d’interface graphique et bien plus. On peut retrouver QT dans des applications tel que Maya, 3dSmax et même Substance designer. Cela va nous aider à créer nos propres interfaces sur Blender.
  5. La grande différence entre PySide2 et PyQT5 sont des licences différentes :
  • PyQt5 est en licence GNU qui est méritocratique et plus fermée.
  • PySide2 LGPL free as freedom. que nous allons voir dans ce tuto. Pour plus détails vous pouvez lire une petite analyse ici

Voilà les présentations faites. Maintenant allons-y pour mettre en place tout ça sur Blender.

1- Installer python

Tout d’abord, pour pouvoir utiliser PySide2 ou PyQt5 dans Blender il faut déjà avoir la bonne version de python installée sur son ordinateur.

Pour ceux qui ont un peu d’avance.

Si vous avez installé: Python, pip et PySide2 mais que vous avez cette erreur, à l’import de ce dernier. ImportError: DLL load failed: %1 is not a valid Win32 application c’est très certainement que votre version de python n’est pas la bonne.

c’est très certainement que votre version de python n’est pas la bonne.

Quelle version de Python pour Blender ?

Dans votre Blender, la version de python utilisé est affiché dans l’onglet d’editor type console.

Chaque version de python utilisé par Blender est affichée ici. Dans le cas présent, sur la version Blender 2.80 c’est la version 3.7 de python qui est utilisé.

Telecharger Python

Armé de cette information, il faut maintenant ouvrir votre navigateur internet préféré et aller à cette adresse : https://www.python.org

Après avoir cliqué sur le bouton Download on peut voir plusieur versions de python. Et

en scrollant un peu on peut retrouver la bonne version. “la 3.7” cliquez sur download

Si vous ne la voyez pas, tentez d’aller dans view older release.

En bas de page, vous trouverez plusieurs fichier pour l’installer. Pour Windows/Mac.

Dans mon cas, comme je suis sur windows, je vais télécharger le “Windows x86-64 exécutable installer “

une fois Le fichier téléchargé ouvrez le et installez le.

Ajoutez Python 3.7 a votre path, et si vous le désirez, installez le pour tous les utilisateurs.

Si votre version de python dans n’est pas là même que celle de Blender par défaut, cela peut créer des problèmes

Après un petit moment voilà python 3.7 qui est installé.

C’est bon on peut passer à la suite

2- Implémenter PIP

Pour installer pip dans votre Blender, rendez-vous dans votre dossier où est installé Blender. Pour moi c’est ici: E:\Program Files\Blender Foundation\Blender

Maintenant on va aller chercher le système python utilisé par notre Blender. Allez dans le dossier 2.80 > python > bin

Vous y voilà. C’est ici que la console python de Blender est utilisé par ce dernier. Maintenant nous allons ouvrir notre commande windows pour y installer pip. Pour celà il suffit de taper cmd dans votre barre de recherche de dossier, et appuyez sur entrée.

surprise vous voilà dans votre console windows avec le chemin déjà bien entré.

Rentrez maintenant la commande “ python -m ensurepip

(ensurepip est un package présent dans blender qui permet d’installer pip)

après un petit chargement, voilà pip est installé

pour tester ça, vous pouvez taper la commande “ python -m pip “. Des indications d’aide devraient apparaître dans votre console.

3- Installer PySide2/PyQT5

Toujours dans votre console de commande, tapez maintenant

“ python -m install PySide2 “

Après un petit téléchargement et quelques lignes de commandes plus tard Voilà PySide2 installé

Pour installer PyQT5 ou n’importe quel autre package pip c’est la même commande
python -m pip install votremodule

dans notre cas

python -m pip install PyQT5

vous voilà avec python, pip, PySide2, PyQT5 utilisable pour votre blender !

4- Tester PySide2

On va maintenant vérifier que tout marche bien.
Pour bien débuger , on va se servir de la system console.

Et du text editor

Maintenant on va tout simplement ecrire dans le text editor :

import PySide2

et faire ctrl + p

ou exécuter avec un clique droit.

Si tout marche vous n’aurez aucun retour.

En contrepartie si il y’a des erreures vous aurez des messages

Attention à l’orthographe c’est PySide2 non pas Pyside2, sinon votre blender ne trouvera pas son package.

Si il est installé mais que votre version de python n’est pas la bonne voilà ce qui va suivre

ImportError: DLL load failed: %1 is not a valid Win32 application

Dans le cas ou tout c’est bien passé, voilà la suite.

5- HELLO QT

Nous allons maintenant réaliser un hello world avec PySide2, cela va nous permettre de tester un peu QT et imaginer les utilisations

Voilà un hello HelloWorld à copier dans votre text editor

import sys
from PySide2 import QtCore, QtWidgets, QtGuiclass Example(QtWidgets.QDialog):
def __init__(self):
super().__init__()

self.initUI()

def initUI(self):

self.button = QtWidgets.QPushButton(“Click me!”)
self.text = QtWidgets.QLabel(“Hello World”)
self.text.setAlignment(QtCore.Qt.AlignCenter)

self.layout = QtWidgets.QVBoxLayout()
self.layout.addWidget(self.text)
self.layout.addWidget(self.button)
self.setLayout(self.layout)

self.show()

if __name__ == ‘__main__’:

app = QtWidgets.QApplication.instance()
if app is None:
app = QtWidgets.QApplication(sys.argv)
ex = Example()

Et voilà le résultat dans votre blender

Et voilà, par la suite nous allons verrons

  • Quel sont les éléments de Qt, comment les utiliser.
  • Comment créer des interfaces avec QT editor
  • Customiser nos interfaces
  • Connecter des boutons à des fonctions

Conclusion

Si tout à fonctionné, vous voilà maintenant avec PySide2 prêt à l’emploi sur votre Blender. Il est maintenant possible de faire des interfaces en popup. De créer des interface avec QTdesigner et de les importer. De styliser votre interface avec des .qss (ce qui ressemble beaucoup à du css). Et avec ce que vous aurez appris sur PySide2 de vous en servir même pour d’autres applications tel que Maya.

Vous trouverez toute la documentation de QT, PySide2 et PyQt5 sur ce site https://doc.qt.io/qtforpython/

La compagnie 02

Posted Leave a commentPosted in Non classé

Mes missions

Lightmap Optimisation

Optimisation des lightmap pour ne charger qu' une lightmap par set de fauteuil en resolution maximum

Lightmap Prefab
Swap Lightmap

Texturing

A partir d'echantillion réels; scan des textures pour leur réutilisation

Character Modelisation

D'après un scan de visage existant

Vetements d'après patron

Cible

HTC - Vive

Projet

Découvrez la cabine les futurs Airbus A321neo de ” La compagnie “ à travers cette vidéo en réalité virtuelle

BNP

Posted Leave a commentPosted in Non classé

L'expérience bancaire de demain
BNP PARIBAS

L'expérience bancaire de demain
BNP PARIBAS

Mes missions

Art

Modeling
Fx
Texturing
Lighting

Cible

Gear VR - Samsung galaxy S6

Rendez-vous en 2022 pour incarner Lucie, une jeune femme enceinte vivant pleinement l’expérience de la banque de demain ! Dans sa maison connectée, elle gère son compte en banque, contacte son conseiller en visioconférence et visite son futur appartement en réalité virtuelle. 

MIGHTY MATCH

Posted Leave a commentPosted in Non classé

Mighty Match

Mes missions - Stage ( 3 - mois )

Modeling/Texturing

Interface

Animations et Rig

Projet

Chouchou Puzzle Adventure est le premier casual game qui associe l’univers d’un jeu de rôle à la stratégie d’un jeu de puzzle. Vous incarnez Chouchou, un valeureux poussin descendant de la lignée du Coq sacré pour libérer le royaume de la Montagne Céleste et délivrer les animaux sacrés de l’emprise d’un être mystérieux et maléfique. Pour y parvenir, vous devrez accroître votre niveau d’expérience et acquérir les meilleures armes. Et afin de mettre toutes les chances de votre côté durant la bataille, vous aurez à faire preuve d’intelligence pour aligner au mieux les ressources présentes sur votre chemin, qui vous procureront force, défense et magie.

Airbus Helicopter

Posted Leave a commentPosted in Non classé

IRON HELL

Mes missions

Optimisation

Recherches d'optimisation du jeu, pour afficher le maximum de décors et de personnages en gardant les Fps élevé

FX

fx balles, shield, dust, power-up, mat painting

Modélisation

Une partie du décors, ennemis modulable, scène d'introduction

” Prix du graphisme 2013 Isart digital

Projet

Vous êtes un pirate de l’espace qui frôlez les missiles ennemis comme la mort pour recharger votre énergie et vos supers pouvoirs…

Équipe

Game Art :
Louis Cortes, Matthis Pralat

Game Design :
Etienne Fouillade, Paul-Edouard Roussel, Hervé Valentino

Game Design Programming :
Arthur Riolland

Game Programming :
Antoine Eschenbrenner, Sofiane Selmoune

Music & Sound Design :
Bill Beheulière

Matthis Pralat

Posted Leave a commentPosted in Non classé

MATTHIS PRALAT

3D Artist, Technical Artist Aspirant

Contact

  • matthispralat@gmail.com
  • (+33) 6 23 74 86 85
  • matthis_pralat
  • 21/11/1991

Experience

jan 2017 - Présent

Manzavision

Infographiste 3D

Manzavision est le pôle VR/AR de Manzagroup
entreprise spécialisée dans le sérious game.

Mes missions

Modeling
Environements , Assets, Personnages, Retopologie

Rigging
Rigging, skinning, Animation

UI
Conception, Integration

Technique
Shaders, Solutions techniques, fx,
Scripting, Intégration, R&D

Projets / clients

Muséum d’Histoire Naturelle de Paris, Airbus, Sanofi, Ratp, FmLogistic, La Compagnie, BNPP, Zombillénium.

sept 2015 - sept 2016

Toute l'Europe

Front-End developer

 Touteleurope.eu propose une information pédagogique sur le fonctionnement et les politiques de l’Union européenne.

Développement
Cartes interactives avec Leafleat, Carto
Contenu intéractif, habillage spécifique
Prototypage d’un éditeur interactif “Cartokey”
Quizz avec base de donée Gsheet

Graphisme
Habillage Video,
Banière Interactive,
Data Visualisation Illustration. CAO/PAO

juil 2014 - jan 2015

Spinbot

3D Artist

Spinbot est un studio indépendant de jeux vidéo orienté mobile. contribution à la réalisation de Mighty-Match 
un match-3 sur IOS

3D

Environements , Assets, Texturing
Rigging, Animations, FX
,Integration

2D

Design UI
Concept, Illustrations

Projet

Mighty Match

oct 2011 - mars 2013

Wanara

2D Artist

Wanara était un Studio de jeux-video indépendant
orienté jeux web ( flash, kongregate )

2D

Design UI-UX
Illustration pour un éditeur d’avatar
Concepts de personnages
Environement, Fx,Flash et Pixel art

Projets

Piratudo
Conquestudo 

Freelance

Webdesign/Illustration
Pour Valenter, Piggy breaker, Ether Island

Webdesign/Illustration/UI
Treacoon application destinée aux enfants
pour créer des jeux vidéos

Mobile UX/UI Design
Pour The Machinery, application mobile médicale.

Competences

3D

Environement Modeling
Retopology
Rigging
Basic Animations
FX
Simulations
Tools-Scripting

2D

Texturing
Design interface
Illustration




SOFTWARE

Maya
Blender 2.8
Marvelous – Designer
Pixyz
Zbrush

Photoshop
Substance Designer
Substance Painter
Substance B2M
Animate CC (Flash)

 

Scripting

3D Tools

Python , mel

Vcs

Github, Github Desktop
Tortoise Git

Code

C#

Web

Javascript, Jquery, PHP, HTML5, CSS, Bootstrap
Typo3, WordPress. Mysql

Moteurs

Unity

Integration
Lighting
FX 
Shaders 
C# scripts
Optimisations

Unreal

Shaders
Integration

Langues

Français : langue maternelle
Anglais : Bonne compréhension écrite/orale, Niveau intermédiaire
Allemand: Notions

Formation

2011 - 2014

Isart Digital - Paris

Bachelor - Game Art

2015 - 2016

Infa - Nogent sur Marne

Front end developer - Web designer

2007 - 2011

Institut St Luc- Tournai - Belgique

Secondaire - Illustration

Distinctions

Laval virtual

2018 - Grand Prix du jury

Voyage au coeur de l’évolution

Blockchain Heroes - Ubisoft

2018 - 1er Prix

Piggy-Breaker

Isart Digital

2013 - Prix du graphisme

IronHell

Institut Saint-Luc

2011 - Prix du jury - Brevet d'art

Projet de fin d’études – Exposition à Bruxelles en 2012

à Propos de moi

Activités

– Cinéphage chronique
– Mélomane éclectique
– Adorateur du 9éme art
– Zythologue modéré 
– Dessin de modèle vivant 
– Irrégulierement à la salle de sport

Jeux vidéos

Starcraft2, Farcry3, Don’t starve, Ghost of a Tale, Little nightmares, Lethal League, Valiant hearts the great war, Broken Age, Portal, Rogue legacy, Clash Royale. Gta5,  RimWorld, Fallout2 … 

Spécialités

– Gratin dauphinois
– Roulé Saumon/épinards

Aix Studio

Posted Leave a commentPosted in Non classé

Aix - Studio

Projet

( Work in progress )

Aix-Studio est un projet personnel pour apprendre/experimenter/creer une pipeline Blender pour le jeux video.
Ce travail est integré sur Unity et Unreal-Engine

 

generated by pstoedit
backgroundLayer 1

Mes missions

Pipeline

Recherche sur Blender pour l'Organisation d'un projet pour travail collaboratif et d'élèments réutilisable/éditable rapidement

Blender
Unity
Unreal-Engine

Modelisation

Création d'une librairie d'assets pour tester les outils de Blender

Textures/material

Creations des textures depuis la suite Allegorithmic.

Creation d'une librairie de materials réutilisable

Substance-Designer
Substance-B2M

Script/Code

Scripts python pour des outils Blender

Scripts C# pour unity


Blender - Eevee viewport

Unreal - Early Lightmap test

Materials

Au fil du projet, les remarques outils directions sont noté, documenté pour développer une réflexion sur les bonnes/mauvaises direction, outils utilisé découverte de fonctionnement sur Blender.

 

Documentation

Au fil du projet, les remarques outils dirréctions sont noté  doccumenté pour develloper une reflexion sur les bonnes/mauvaises direction, outils utilisé découverte de fonctionnement sur blender.

 

Les liens arrivent…

Préparation des assets pour la vente

Une fois le Blockout et les early tests réalisé, les props sont détaillé dans une scene individuelle , préparés et mit à dispositions sur différents stores.

 

Les liens arrivent…