Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views : Ad Clicks : Ad Views :
Oh Snap!

It looks like you're using an adblocker. Adblockers make us sad. We use ads to keep our content happy and free. If you like what we are doing please consider supporting us by whitelisting our website. You can report badly-behaved ads by clicking/tapping the nearby 'Advertisement' X text.

Learn Python Inside Maya

/

Release date:2017, July 8

Author:Geordie Martinez

Skill level:Beginner

Language:English

Exercise files:Yes

Join ILM’s Geordie Martinez in this 8 week journey inside Python.

Every week you will get access to 3+ hours of video content as well as example scripts, cheat sheets and UIs built in Designer for use in Maya’s PySide. The instructor is there to answer questions and share with you his experience as well as give feedback on your work.

You will learn proven production programming techniques and how to effectively and properly code using Object Oriented Programming and GUI programming using Pyside/Pyqt. If you are already familiar with Python, expect to solidify your skills and take them to the next level.

What you will gain from this workshop:

Knowledge of production skills
Proficiency in Python fundamentals that are applicable outside of Maya
Mastery of GUI programming
Direct and personal feedback on your work
Knowledge of Object Oriented Programming

Python is everywhere.
If you learn the basics here you can take them with you to other industries like web site development, game development, statistics and data analysis, science animation, etc.
In this course you’ll learn Python fundamentals that can be used in any python setting but also specifically using it inside Maya and PyQt/Pyside.

Table of Contents

Week 1: Getting Started
You will:
– Get all your applications installed and bookmark important websites.
– Learn the history of python and various flavors of python in Maya.
– Get a tour of the Maya script editor
– Setup Maya, Sublime and QT Designer
– print statements, strings, and variables
– The dir and help commands
– Importing modules
– The xform and getAttr commands
– Translate, rotate and scale maya objects with a script.

Week 2: Fundamentals Part I
Learn about:
– Converting MEL to python with a nifty tool.
– variables
– dictionaries
– lists
– indexing and sorting
– tuples
– for loops
– if-then statements
– operators
– help() and dir(),
– strings
– enumerate()
– range()
– immutable vs. mutable

You will script the building of a model

Week 3: Fundamentals Part II
You will learn:
– functions
– arguments
– docstrings
– variables
– *args and **kwargs
– PYTHONPATH
– scope and the LEGB principle
– closures
– string formatting.

You’ll make your own module that can be run inside of maya.

Week 4: Core Concepts and Essential Kung Fu
Learn About:
– iterators
– sets
– list comprehensions
– generators
– the with statement
– Memory profiling
– installing Anaconda
– using the logging module.
– The differences between Python 2.7 and 3.0

You’ll parse and external text file and find the 3 most common words in the file.

Week 5: Classes and Object-Oriented Programming
You will Learn:
– Classes and OOP
– polymorphism and inheritance
– the __init__() function
– what does self mean
– duck-typing
– exceptions and the try/except statement
You’ll create your own class out of all your current code.

Week 6: Graphical User Interfaces
Learn about:
– decorators
– partial functions
– How to design your own GUI using QT Designer
– open your UI in Maya with PySide
– naming Qt widgets,
– convert a .ui file to python
– connect buttons to commands in Maya

You will build a UI that will create content inside of Maya using PySide.

Week 7: Improving GUIs and Intro to PyMEL
– An introduction to PyMEL.
– Build an API using PyMEL,
– the pickle, and JSON modules.
– you’ll create a GUI to generate and store NURBs curve controllers as part of your final project

Week 8: Finalizing your UI and Incredibly Useful Modules
– Continue working on your Nurbs Controller UI
– Finalize your API and GUI.
– Write a command line python tool using argparse.
– Launch a subprocess from within Maya.

You will write a command line tool using Python Image Library to crop icons for the Controller GUI.

Week 9: Useful Modules Every TD Should Know
Learn some useful python modules that every python coder should know about.
– Ensuring only one instance of your GUI ever exists.
– Cygwin the Linux emulator on windows and grep
– Regular Expressions
– Paths to files using the path module
– maya.standalone examples including covering pymel gotchas
– What is stdin, stdout, and stderr?
– What is a pipe?
– Using Regular Expressions to limit character entry into fields in PySide
– Detailed look at the subprocess module

Watch online or Download for Free

Week 1 – Getting Started
01. Introduction Who Am I What Will We learn
02. IDEs and Software
03. A Brief History of Python
04. Flavors of Python
05. Python Resources
06. Script Editor Tour
07. Type What I Type
08. Print Statements Commenting And Variables
09. Strings Part 1
10. Variables Under The Hood
11. String Indexing
12. Importing Modules
13. Importing maya.cmds
14. Auto Complete in the Script Editor
15. The Move Command
16. Capturing the Results of the Move Command
17. Using Return Results
18. The getAttr Command
19. The xform Command
20. Week 1 Homework Assignment
21. Week 1 Homework Review

Week 2 – Fundamentals Part I
01. Week 2 Introduction
02. Comparison Operators
03. and or not in
04. if-then-else and Expressions vs. Statements
05. Strings Part 2
06. Lists Part 2
07. Dictionaries
08. Tuples Tuples vs. Lists Mutable vs. Immutable
09. for Loops
10. The range Command
11. mel2py Python Learning Helper Tool
12. The see Module
13. Week 2 Homework Assignment

Week 3 – Fundamentals Part II
01. Week 2 Homework Review
02. Functions
03. Doc Strings
04. Function Arguments
05. args and kwargs
06. PYTHONPATH
07. Your First Module
08. Running Your First Module myModule.py
09. Closures
10. The Concept of Scope
11. Scope Example
12. Scope Globals
13. String Formatting Expressions
14. String Formatting With The .format Method
15. Week 3 Homework Assignment

Week 4 – Core Concepts and Essential Kung Fu
01. Homework Review Week 3
02. Sets
03. Iterators Part 1 What Are Iterators
04. Iterators Part 2 Python 2.7x vs 3.x range Function
05. Iterators Part 3 Python 2.7x vs 3.x zip Function
06. Iterators and Dictionaries
07. The with Statement
08. List Comprehensions
09. Nested List Comprehensions
10. Generators Part 1
11. Generators Part 2
12. memory_profiler and Installing Anaconda
13. Using memory_profiler and memory_usage
14. The logging Module
15. Using the Logging Module In Your Modules
16. Week 4 Homework Assignment

Week 5 – Classes and Object-Oriented Programming
01. Homework Review Week 4 Part 1
02. Homework Review Week 4 Part 2
03. Homework Using collections.Counter
04. Homework Review Week 4 Making Geometry With Results
05. Intro to Objects Part 1
06. Intro to Objects Part 2 Example
07. The __init__ Function
08. Using An Underscore to Hide Stuff
09. Inheritance
10. class Working Example Inheritance
11. class Working Example Quadruped Tree
12. class Working Example Multiple Inits
13. Polymorphism Concept
14. Polymorphism Examples
15. Duck Typing
16. Exceptions Part 1
17. Exceptions Making Your Own
18. class Working Example Raising An Exception
19. Week 5 Homework Assignment

Week 6 – Graphical User Interfaces
01. Week 5 Homework Review
02. Class Variables vs Instance Variables
03. Decorators Part 1
04. Decorators Practical Example
05. Partial Functions Part 1
06. What is Qt PyQt PySide etc.
07. Intro to Qt Designer
08. Naming Widgets
09. A Barebones UI In Maya
10. maya.cmds loadUI
11. Loading .ui Differences Pyside
12. Checking Class of Incoming .ui
13. pyside_dynamic.py
14. Compiling A .ui File With pysideuic
15. Cleaning Up pysideuic Results
16. PySide Docs And Connecting A Click Event
17. Connecting QWidgets to Executable Code
18. Making A QCheckbox Disable a QLineEdit
19. Generating Geometry QPushButton Events
20. QSlider Controlling Geometry Scale
21. Adding Text to a QTextEdit Field
22. Connecting Events in A Loaded .ui
23. Week 6 Homework Assignment

Week 7 – Improving GUIs and Intro to PyMEL
01. Week 6 Homework Review Part 1
02. Week 6 Homework Review Part 2
03. Week 6 Homework Review Part 3
04. Final Project Overview
05. The pickle Module
06. The json Module
07. What is PyMEL
08. PyMEL vs maya.cmds
09. PyMEL PyNodes
10. Inspecting Curves with PyMEL
11. Recreating A Curve From Data
12. Starting Your API
13. Writing an API Part 1 Getting Started
14. Writing an API Part 2 Appending To The pickle
15. Writing an API Part 3 Creating Curve From Data
16. Creating The Controllers Library UI in Qt Designer
17. Updating QListWidget
18. Double-Clicking QListWidgetItem
19. QSlider Scale Controls
20. Manual Scale Value Updating QSlider
21. QLineEdit Naming and Saving New Controls

Week 8 – Finalizing your UI and Incredibly Useful Modules
01. Color Mapping for NURBs Curves
02. Coloring Curves With The API
03. Making A 4×8 Grid of QPushButtons Part 1
04. Making A 4×8 Grid of QPushButtons Part 2
05. Making A 4×8 Grid of QPushButtons Part 3
06. Making A 4×8 Grid of QPushButtons Part 4
07. How To Do A Screen Capture in Maya
08. Adding A Screen Capture Function to the API
09. Adding A QLabel and QPixmap to the API with Click Updating
10. The Plan to Use an External Script to Process Our Icon Images
11. Reinstalling Anaconda
12. Installing Python Image LibraryPIL in Anaconda
13. Writing A Script with PIL to Crop Icon Images Part 1
14. Writing A Script with PIL to Crop Icon Images Part 2
15. The argparse Module
16. Adding argparse To The iconConvert.py Script
17. Running The subprocess Module in Maya
18. Making Icons For Curves in The UI

Week 9 – Useful Modules Every TD Should Know
01. PySide Follow-up Part 1 A Single UI
02. Cool PySide The Helios Project
03. maya.standalone
04. The path Module
05. Intro to Regular Expressions
06. The re Module
07. Testing re.finditer on a Text File
08. PySide Follow-up Part 2 QRegExprValidator
09. Cygwin
10. grep
11. stdin stdout and stderr
12. The subprocess Module Part 1
13. The subprocess Module Part 2
14. What Can I Learn Next

Example Files.7z


Join us on
  Channel    and      Group

  • Facebook
  • Twitter
  • Google+
  • Linkedin
  • Pinterest

Leave a Comment

Your email address will not be published. Required fields are marked *