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

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

  Channel    and      Group

下载说明:用户需登录后获取相关资源
1、登录后,打赏30元成为VIP会员,全站资源免费获取!
2、资源默认为百度网盘链接,请用浏览器打开输入提取码不要有多余空格,如无法获取 请联系微信 yunqiaonet 补发。
3、分卷压缩包资源 需全部下载后解压第一个压缩包即可,下载过程不要强制中断 建议用winrar解压或360解压缩软件解压!
4、云桥网络平台所发布资源仅供用户自学自用,用户需以学习为目的,按需下载,严禁批量采集搬运共享资源等行为,望知悉!!!
5、云桥网络-CG数字艺术学习与资源分享平台,感谢您的关注与支持!