Shared October 9, 2017
Building Better Worlds: Developing a Procedural City Tool for Alien: Covenant
Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/CppCon/CppCon2017
When MPC was asked to create a massive CG city for the film Alien: Covenant, they looked to leverage procedural generation as a means for iterating on the overall shape and structure of the city, in place of a prohibitively large team of environment artists. After evaluating all the practical third party options, it was ultimately decided that the best option was to build a custom tool to procedurally assist artists' city-building skills. This allowed for rapid iteration on the overall look of the city by striking a balance between manual and procedural techniques.
The core algorithms were written in C++ for speed. The user interface was written in Python to accommodate quick feature changes, and a dash of Fabric Engine's KL helped with model import and rendering. This multi-language approach allowed the consistent application of the "best tool for the job" rule, which is a common pattern at MPC, allowing flexible teams with experts in a variety of skillsets.
This talk will detail the history and development of MPC's city building tool, "Machi". Alan Bucior, Lead Developer of Machi, reviews the algorithms for city layout and building placement, discusses how to implement algorithms in an artist-driven manner, and shares various insights gleaned through the development process and discussion with stakeholders.
Alan Bucior: Lead Software Developer, MPC Film
Alan Bucior is a lead software developer at MPC, with over 20 years of experience developing software in the entertainment industry.
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
CppCon 2017: Allan Deutsch “Esoteric Data Structures and Where to Find Them”
Practical Procedural Generation for Everyone
World's Most Famous Hacker Kevin Mitnick & KnowBe4's Stu Sjouwerman Opening Keynote
DICKS: Do you need to be one to be a successful leader?
DebConf 14: QA with Linus Torvalds
"The truth about mobile phone and wireless radiation" -- Dr Devra Davis
Procedural Building Generation with Grammars
The Nature of Space and Time | Brian Greene
7 principles for building better cities | Peter Calthorpe
CppCon 2017: Fedor Pikus “C++ atomics, from basic to advanced. What do they really do?”
How To Think Like A Programmer
Procedural City generation for games Freek Hoekstra Siggraph 2012
CppCon 2017: David Sankel “So, you inherited a large code base...”
CppCon 2017: Guy Somberg “Game Audio Programming in C++”
CppCon 2017: Bjarne Stroustrup “Learning and Teaching Modern C++”
Talking Architecture With Kevlin Henney