6 hours ago
Substance Painter Automation With Python
Published 5/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 3.92 GB | Duration: 6h 56m
Crafting Artistic Tools with Python: Custom Substance Painter Exporter plugin development
What you'll learn
Understand foundational Python programming concepts
Utilize Substance Painter Python API to create custom tools for this application
Develop an automated advanced texture exporting workflow for Substance Painter
Improve asset production management pipelines by introducing validations for exporting textures
Construct dynamic User Interfaces using PySide2 library
Requirements
Tools: Substance Painter, Visual Studio Code
Skills: No previous Programming experience is required, but having some would make it easier to grasp the learning material
Description
Welcome to a transformative journey into the world of Substance Painter automation with Python. Led by Viacheslav Makhynko - seasoned Technical Artist with extensive experience in AAA game development, this course is your gateway to mastering the skills of building custom artistic solution for Substance Painter with Python. Whether you're aspiring Technical Artist, Tools/Software/Gameplay Programmer, 3D Digital Artist looking to delve into the world of automation or even experienced Pipeline Director, this course is designed to accommodate learners of all backgrounds and expertise levels. With a strong emphasis on practicality and real-world application, you'll embark on a structured journey through six core sections:General Python Introduction: Optional for Python newcomers, this section provides essential foundations for the course ahead."Hello World" widget for Substance Painter: First acquaintance with Substance Painter Python API to learn how to create own widgets and access Painter features laying the groundwork for the Custom Exporter tool.Texture Set export automation: Development of the core Custom Exporter functionality.Naming Validation: Enhancing Custom Exporter by introducing Naming Validation for the texture sets to manage consistency with asset names and their storing locations, which is a must for healthy production in a team.Resolution Validation: This feature verifies that everyone who's exporting the data from Painter in the team is following the specified texture resolution budget and prevents any slipped-through high-res textures usage on the project.Project Polishing: Finalizing Custom Exporter by introducing documentation, hotkeys, code annotations, and leftover bug fixes.Throughout the course, you'll gain hands-on experience with Substance Painter's Python API and PySide2 library and will have enough challenges to consolidate knowledge in practice. By the end of the course, you'll have a unique Custom Exporter tool developed step-by-step from scratch that can be used for Portfolio or as a basement for actual production pipeline in the project.Don't miss this opportunity to unlock the full potential of Substance Painter through Python automation. Enroll now and embark on a journey towards efficiency and creativity!
Overview
Section 1: Course introduction
Lecture 1 Course introduction
Lecture 2 How to use this course
Section 2: General Python introduction
Lecture 3 Setting up working environment
Lecture 4 Variables and simplest data types
Lecture 5 Lists and Dictionaries
Lecture 6 Conditions
Lecture 7 Functions
Lecture 8 Classes and imports
Section 3: "Hello World" widget for Substance Painter
Lecture 9 Python API for Substance Painter
Lecture 10 Add an empty Custom Exporter widget to Substance Painter
Lecture 11 Add basic UI to the widget with PySide2
Lecture 12 Create and link simple functions to UI actions
Lecture 13 Substance Painter Logging
Lecture 14 Substance Painter Events
Lecture 15 How to properly debug Python code in Substance Painter
Section 4: Texture Set export automation
Lecture 16 Updating the UI of the widget
Lecture 17 Preparing the exporting templates
Lecture 18 Automated textures export implementation
Section 5: Texture Set Naming validation
Lecture 19 Establishing Naming Convention rules
Lecture 20 Implementing Texture Set name validation [part 1]
Lecture 21 Implementing Texture Set name validation [part 2]
Section 6: Texture Set Resolution validation
Lecture 22 Establishing Texture Set resolution budget requirements
Lecture 23 Implementing Texture Set resolution validation
Lecture 24 Applying the required resolution automatically
Section 7: Polishing the project and further steps
Lecture 25 Adding Help documentation to the widget
Lecture 26 Adding Hotkeys and Tooltips to the widget
Lecture 27 Adding code annotations
Lecture 28 Fixing leftover bugs
Lecture 29 Discussing further development of the Custom Exporter
Section 8: Course wrap-up
Lecture 30 Last word from Author
Technical Artist,Technical/Pipeline Directors,3D Artists interested in obtaining more technical and programming skills,Tools/Gameplay/Software programmers,Automation specialists,Anyone who's eager to create a bridge between Tech and Art in assets production process