Python coding in Blender
Time: 10:00 - 17:30
Location: KS - Keeley Street
This course is FREE if a) you live in London and your job is at risk of redundancy or b) you are either on Jobseekers' Allowance (JSA) or Employment & Support Allowance(ESA) or c) you receive other state benefits (including Universal Credit). For more information click here
This course takes place in the classroom, please follow this link to find out what we are doing to keep you safe: Staying COVID-19 secure at City Lit
Course Code: CPYC02
Duration: 2 sessions (over 2 weeks)
What is the course about?
Did you know that a few lines of Python code can conjure 3D objects into existence and manipulate them into whatever shapes you desire?
Blender is a popular, powerful and free 3D modelling application that is used to create models for games, animation, 3D printing, product design, CGI and simulations. It is capable of producing photo-realistic images and highly detailed meshes.
It is also fully scriptable, so it’s possible to avoid or augment the main user interface by writing Python code. This can enable anything from automating repetitive tasks to creating complex and beautiful forms that would be very difficult to produce by hand.
This course includes a very basic introduction to some aspects of Blender from a programmer’s perspective, with a focus on building 3D models. We will not get deep into animation or physics, which are the subject of other City Lit courses (we may do a little animation if time permits).
The course includes some mathematical ideas, since these allow our code to produce 3D objects rapidly and precisely. These will be introduced from scratch and you will never be asked to do any calculations or solve problems – that’s what the computer is for! There are other City Lit courses that address these topics in detail; we will treat them as simple tools that help us get things done in 3D space.
The code we write will be relatively short and simple, since we will be leveraging the power of Blender to our advantage, but you should have done a little Python programming before. We will rapidly review the elements of the Python language we need and will cover all the techniques needed for mathematical manipulations as they come up in class.
What will we cover?
• Basic orientation for Blender newcomers
• How Python and Blender talk to each other and how to set up your environment
• Creating and manipulating Blender objects, building up complex forms by duplicating simple components many times
• Working with meshes and their component parts; understanding the topology of a 3D object and creating geometric forms from it
• Generative techniques -- for example, L-systems -- that can create many objects that vary but all share a common “family resemblance”
• A small toolkit of useful mathematical tricks (e.g. vectors, matrices and trigonometry).
What will I achieve?
By the end of this course you should be able to...
• Use the basic modelling features of Blender
• Use Python to create, duplicate and position objects precisely
• Build a mesh from scratch with code and understand how its parts fit together
• Recognise and use geometric concepts such as vectors and trigonometry as they apply to 3D work
• Use a generative algorithm to rapidly create complex, organic forms with an element of randomness.
What level is the course and do I need any particular skills?
This course assumes you are familiar with the basics Python -- our Introduction to Python is ideal preparation. You do not need to have used Blender before or be familiar with concepts from 3D modelling; relevant material in that area will be introduced during the course.
How will I be taught, and will there be any work outside the class?
We will use a mixture of presentation and hands-on experimentation in class.
Are there any other costs? Is there anything I need to bring?
There are no additional costs for this course.Computers are provided for each student with all the necessary software installed. All the software used on the course is free to download and use and your tutor will recommend where to find this software for home use.
Unfortunately, due to the range of hardware and software used by students at home, the College is unable to provide advice on installation issues.
When I've finished, what course can I do next?
You might want to take your Python skills to a higher level by joining our Intermediate Python course or try our Start 3D animation with Blender course. Or you might want to explore Creative coding with Processing.
Rich is a programmer, writer and educator with a particular interest in creative practice. In his previous career he worked as a software developer in the CIty, first at a dot-com startup and later at a top-tier investment bank where he worked mostly on trading floor systems and got to play with a wide range of languages and technologies. He now teaches coding and maths-related courses full time. Besides his work at City Lit he also teaches at Central Saint Martins, the Architecture Association and the Photographer's Gallery and is the author of two books about mathematics. His technical collaborations with artists have been shown at, among others, the Hayward gallery, the V&A, the ICA and Camden Arts Centre. He has a BSc in Mathematics from the Open University. He also has a BA in English Literature and a PhD in philosophy (both from Cardiff). He continues to teach a little philosophy and literature, especially as they intersect with his other interests, and as a partner in Minimum Labyrinth he has brought these ideas to wider audiences in collaboration with the Museum of London, the Barbican and various private sponsors.
Please note: We reserve the right to change our tutors from those advertised. This happens rarely, but if it does, we are unable to refund fees due to this. Our tutors may have different teaching styles; however we guarantee a consistent quality of teaching in all our courses.