65,00

Tuto Apprendre à créer vos Plugins en Python pour Cinema 4D avec Cinema 4D, Python

65,00

  • Une formation vidéo de 21h10m
  • Téléchargement immédiat et visionnage illimité à vie
  • Satisfait ou remboursé
  • Fichiers sources inclus
  • Découvrez pourquoi vous former avec Tuto.com

Il est très rare de trouver des formations en français sur la programmation en Python dans Cinema 4D.
C'est une personne de chez Maxon qui m'en faisait la remarque il y a bientôt 2 ans. Etant de formation ingénieur en informatique et certifié par Maxon en tant qu'instructeur académique, je me suis dis qu'il était de mon devoir de m'y mettre un jour. Et donc voici, enfin, un cours en français sur le développement détaillé de scripts et de plugins en langage Python pour Cinéma 4D !

Je vous propose ici un atelier de programmation complet avec très peu de théorie et beaucoup de pratique permettant de se former au langage Python et à l’API de programmation de Cinema 4D. C'est donc un tuto plus technique que d'habitude qui vous permettra de découvrir sans doute une nouvelle facette un peu cachée de ce merveilleux logiciel 3D.
 

Le langage Python 

Le Python est devenu ces dernières années un des langages les plus utilisés et les plus polyvalents au monde. Il est très présent dans le domaine de la 3D et de la post-production audio-visuelle, des réseaux informatiques et de la science. Sa simplicité fait qu'il est de plus en plus enseigné comme premier langage informatique. Ce qui ne retire rien ni à sa puissance ni à certains de ses concepts très évolués.
Apprendre un langage de programmation tel que le Python est une expérience enrichissante et ludique qui peut offrir de grandes débouchées professionnelles. L'interpréteur Python fourni dans Cinema 4D est standard (Version 2.7 jusqu'à la S22 et Version 3.7.7 pour R23 et au-delà) donc la maîtrise de ce langage vous servira aussi en dehors de Cinema 4D.
 

L'API de Cinema 4D

Seule l'API (interface de programmation) est spécifique à Cinema 4D pour pouvoir le "piloter", comme elle est spécifique à chaque logiciel (Maya, Blender, DaVinci Resolve, etc.) supportant ce langage. Dans ce tuto vous apprendrez à l'utiliser et surtout à maîtriser les "classes"  et méthodes" nécessaires à la conception de Plugins professionnels pour Cinema 4D. L'API décrite ici est celle du dernier SDK Python pour Cinema 4D, fourni gratuitement par Maxon pour aider les développeurs de plugins.
 

Au programme de ce cours en ligne sur la création de plugins Cinema 4D avec Python

Pour cette formation en ligne, j'ai pris comme thématique pédagogique la résolution et l'animation du fameux Rubik's Cube, si simple à modéliser dans Cinema 4D et si difficile à animer correctement.

Cela a été une aventure passionnante que de réussir à résoudre ce "maudit cube" et d'en faire un plugin.
C'est cette aventure, en plus de ma très bonne connaissance de Cinema 4D, que je souhaite partager avec vous ici. 

J’écrirais donc sous vos yeux le script python complet en expliquant et justifiant absolument toutes les instructions et les techniques que j’utilise.
L'apprentissage par projet, qui consiste à trouver des solutions à des problématiques concrètes, permet de se former beaucoup plus rapidement que les cours théoriques souvent ennuyeux.
Ici, après avoir vu les fondamentaux du langage Python, vous serez très vite confronté à des problématiques réelles et il faudra donc vous jeter à l'eau.
C'est parfois plus difficile, et souvent plus formateur, mais ne vous inquiétez pas, je serai toujours avec vous pour vous accompagner dans cette belle aventure.
 

Les défis qu'il faudra relever :

  • Le premier défi que nous relèverons est de trouver un rig permettant de modéliser et d'animer facilement les rotations du Rubik's Cube avec des effecteurs héritage et un clôneur, à partir d'une chaîne de caractères codifiant des rotations des faces tirées au hasard. 
  • Le second est d'implémenter en python un algorithme de résolution du Rubik's Cube. Cela sera l'occasion de découvrir 2 méthodes : la méthode débutant de résolution la plus courante mais aussi la méthode avancée Fridrich que l’on utilisera pour la résolution de la dernière face du cube.
    Vous trouvez en pièces jointes les PDF contenant leurs descriptifs. Beaucoup de sites de "cubeurs" passionnés décrivent en détail ces méthodes et leurs variantes.
  • Le troisième et dernier défi sera d’apprendre à transformer le script python obtenu en un plugin distribuable qui s'installe automatiquement au démarrage de Cinema 4D. 
     

Un atelier permettant de découvrir l'API de Cinema 4D :

Cet atelier ambitieux sera donc pour vous l'occasion de découvrir la bibliothèque des "classes" et des "méthodes" Python de Cinema 4D et bien sûr la puissance du langage Python dans celui-ci. 

Nous réviserons ensemble les bases de ce langage polyvalent et irons jusqu'à l'apprentissage avancée de la programmation orientée objet, indispensable pour pouvoir programmer de façon professionnelle et comprendre l'API Cinema 4D.

Tout est expliqué pas à pas, chaque ligne de programme et écrite et commentée sous vos yeux.
L'API de Cinema 4D est expliquée et détaillée pour chaque "classe", "méthode" et "instance" utilisées.

Ce dont je suis convaincu, c'est qu'après ces 20h passées ensemble, vous serez en mesure d'améliorer vous-même la méthode de résolution proposée ici, car elle est largement perfectible. Vous pourrez même à titre d'exercice, avec un peu de réécriture, augmenter la compatibilité du plugin avec les versions antérieures à la version 20. Vous serez donc parfaitement en mesure d'écrire aussi vos propres plugins.

Les acquis de cette formation :

A l'issue de cette formation en ligne et en vidéo vraiment complète, vous pourrez facilement programmer vos scripts python et concevoir des plugins pour Cinema 4D permettant d'ajouter de nouvelles fonctionnalités à votre logiciel de modélisation préféré. 
 

Composition du tutoriel :

Ce tutoriel est décomposée en 75 vidéos cumulant plus de 20h de cours !

Des dizaines d'instructions python, de classes et de méthodes de l'API de Cinema 4D seront testées sous vos yeux et leur utilisation expliquée de façon pédagogique.

Vous apprendrez aussi à écrire du code lisible, à structurer et commenter vos programmes correctement, à vous organiser en utilisant des façons de faire éprouvées afin de passer le minimum de temps en "débugage" et de travailler comme un professionnel.

Le script final fourni, qui comprend toute la modélisation et la résolution du Rubik's Cube ainsi que l'implémentation de l'interface utilisateur et l'enregistrement du plugin, fait environ 1400 lignes de programme toutes commentées.

Un fichier étape par étape est fourni pour chacune des vidéos afin de pouvoir coder et tester vous-même le programme dans votre logiciel 3D en suivant les explications.

A l'issue de cette formation vraiment complète de plus de 20h de cours pratique, vous serez en mesure de programmer vos scripts python et vos plugins avec facilité et efficacité.

Alors n’hésitez pas : lancez-vous 😉

Table des matières de cette formation Cinema 4D, Python (durée : 21h10m)

  • Les bases du Langage Python
    • 1.1 - Découverte du Python dans Cinema 4D 00:10:32
    • 1.2 - Sites pour apprendre le langage Python 00:05:00
    • 1.3 - Configuration de notre espace de travail gratuit 00:08:31
    • 1.4 - Premiers pas en Python : l'interpréteur dans la console gratuit 00:13:35
    • 1.5 - Variables, Affectations et Manipulation de données 00:16:17
    • 1.6 - Manipulations des Listes et Indexation 00:13:13
    • 1.7 - Manipulation des dictionnaires, utilisation des paires Clés -Valeurs 00:14:25
    • 1.8 - Programmation Structurée : Boucles For et While 00:12:42
    • 1.9 - Premiers Scripts en Python : Tests Logiques OR et AND 00:18:00
    • 1.10 - Fonctions Anonymes Lambda 00:08:16
    • 1.11 - Ecrire vos propres Fonctions avec 'def' 00:23:29
    • 1.12 - Les modules standards en Python 00:09:08
    • 1.13 - Créer vos propres modules - Chemins d'accès 00:08:48
  • Programmation Orientée Objet en Python
    • 2.14 - Débuter en Programmation Orientée Objet Python gratuit 00:15:33
    • 2.15 - Variables de Classe - Classe dérivées - Héritage 00:19:11
    • 2.16 - Découverte de l'API de Cinema 4D le SDK et les Classes 00:18:07
    • 2.17 - Création d'Objets c4d, Manipulation de la Hiérarchie 00:15:08
    • 2.18 - Accès aux Attributs d'Objets : le BaseContainer 00:15:06
  • Modélisation des cubes du Rubik
    • 3.19 - Création du Cloneur, class BaseObject() 00:14:02
    • 3.20 - Création des 27 Petits Cubes, class BaseDocument() 00:07:32
    • 3.21 Transformation des cubes, Méthode SetSelection() 00:16:28
    • 3.22 Création des matériaux des faces 00:25:58
    • 3.23 Création des propriétés Sélection et Matériaux 00:11:57
    • 3.24 Attribution des sélections aux Tags 00:23:28
    • 3.25. Nouveau cloneur Mecanique 00:08:56
    • 3.26 Paramétrage de la Boite d'Atténuation de l'Effecteur 00:14:44
    • 3.27 La class NeutresRotation() des Axes des Faces 00:09:24
    • 3.28 La class c4d.CTrack - Ajout d'Images clés (class c4d.CKey) 00:39:53
    • 3.29 Dict. des Tailles et Décalage des Boites d'Atténuations 00:42:42
    • 3.29bis Mise à jour R20+ : remplacement des atténuations par des champs 00:04:52
    • 3.29ter Mise à jour 20+ champs et valeurs par défaut 00:17:44
  • Gestion des rotations du Cube avec les effecteurs
    • 4.30. Premières rotations du cube 00:40:32
    • 4.31. Création d'une fenêtre de dialogue utilisateur 00:16:44
    • 4.32. Gestion du dialogue - Class Gedialog() 00:11:34
    • 4.33. Paramétrage des effecteurs à partir de la chaine de mélange 00:11:17
    • 4.34. Création d'un noeud expresso GvNode en Python 00:51:58
    • 4.35. Ajout dans le dialogue de l'inversion 00:11:30
    • 4.36. Méthode de Classe Inversion du mélange 00:12:33
  • Sauvegarde des données dans un SubContainer
    • 5.37. Création du BaseContainer de sauvegarde de nos données 00:10:36
    • 5.38.Gestion de la sauvegarde des données 00:16:18
    • 5.39. Class Contenant suite 00:20:46
    • 5.40. Gestion des lectures et écritures dans notre SubContainer 00:36:25
  • Création de notre dict modèle en mémoire
    • 6.41. Création du dict modèle du cube en mémoire 00:15:59
    • 6.42. Insertion des spins de cubes et affichage 00:05:44
    • 6.43. Méthode de Classe Rotate du Modèle Cube.posi 00:39:43
  • Implémentation de la méthode Simple pour les 2 layers
    • 7.44 Présentation de la méthode résolution débutant du Rubik gratuit 00:07:53
    • 7.45. Sérialisation du modèle avec Pickle 00:13:08
  • Faire la croix blanche Méthode Simple
    • 8.46 Codage des arrêtes blanches et des orientations 00:08:03
    • 8.47. Localisation des cubes après mélange 00:16:54
    • 8.48. Spins d'orientation et formules de placement 00:26:30
    • 8.49. Finalisation de la croix blanche 00:16:43
    • 8.50 Méthode de Test des formules 00:18:39
  • Orienter les angles de la face blanche
    • 9.51 Modification du codage des orientations 00:16:56
    • 9.52 Implémentation des formules de Rotation 00:13:57
    • 9.53. Résolution d'un coin blanc 00:20:02
    • 9.54 Résolution finale face blanche 00:08:24
  • Ordonner le 2e niveau méthode Simple
    • 10.55 Présentation algorithmes du 2e layer 00:12:02
    • 10.56. Rotation du cube de 180° 00:14:16
    • 10.57 Transposition des formules pour les 4 côtés 00:11:15
    • 10.58. Implémentation des dictionnaires de formules 00:12:58
    • 10.59. Résolution du 2e layer méthode simple 00:24:19
  • Résolution de la face jaune, OLL Méthode Fridrich OLL
    • 11.60 Présentation méthode Fridrich et codage des patterns 00:08:19
    • 11.61. Implémentation des 57 OLL 00:24:41
    • 11.62. Codage des patterns jaunes 00:12:12
    • 11.63 Implémentation algorithme Step5 00:13:55
    • 11.64 création des 3 rotations centrales MSE 00:11:12
  • Finalisation du Cube avec les PLL , méthode Fridrich
    • 12.65 Codification des PLL 00:20:08
    • 12.66. Algorithme de force Brute pour la résolution finale 00:25:13
  • Transformation de notre script en plugin distribuable
    • 13.67. Compatibilité Python 2.7 et Python 3.7.7 pour R23 00:21:07
    • 13.68. Association de l'icone à notre Plugin 00:23:08
    • 13.69 Enregistrement du Plugin CommandData 00:07:50
    • 13.70 Création de la classe dérivée de c4d.plugins.CommandData 00:21:03
    • 13.71 Création de l'interface user PyRubikDialog() 00:13:17
    • 13.72 Optimisation de la chaine de rotations de la solution 00:05:43
    • 13.73 Ajouts de Sliders dans l'UI 00:22:11
    • 13.74 Finition de l'interface utilisateur et FIN 00:14:09



Formateur : Patrice Weisz

Patrice Weisz a publié 13 tutoriels et obtenu une note moyenne de 4,9/5 sur 2 001 tutoriels vendus. Voir les autres formations de Patrice Weisz

5,0
note moyenne

2
avis laissés
5 étoiles
2
4 étoiles
0
3 étoiles
0
2 étoiles
0
1 étoile
0
  • 5
    avis de ridgi laissé le 11/10/2020
    Un excellent tuto. Pour apprendre à naviguer dans la doc SDK de MAXON, interpréter les informations qu'on y trouve et finalement les utiliser dans un script, c'est le tuto qu'il faut. De plus, le projet est très amusant.

  • 5
    avis de fwoehl laissé le 30/09/2020
    Enfin un vrai tuto pour programmer dans cinema4D en français ! Ca ouvre tellement de perspective ! J'adore !

  • Quel est le niveau requis pour suivre ce tuto ?
    intermédiaire
  • Que contient le fichier source ?
    tous les scripts python pas à pas en suivant chaque vidéos ; des pdf avec les méthodes de résolution du rubik's cube que l'on utilise ; le dossier du plugin final à installer dans cinema 4D
  • Quelle version de python est couverte par ce tuto ?
    Ce tuto vous montre comment écrire un plugin compatible à la fois avec la version python 2.7 (C4d jusqu'à S22) et aussi avec la version python 3.7.7 (à partir de la version 23)
accédez à plus de 1250 tuto gratuits


non, je ne veux pas me former gratuitement

voir notre politique de protection des données