Transcript
Page 1: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 1 of 31

.

Industrial Light & Magic

Sting Chen (陈世欣 )

使用 Python 技术的成功案例之四

名媛荟网 MY1930. COM CTOTwitter : @stingchen 博客: BOPOR.COM

Page 2: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 2 of 31

Agenda

• Story : Lucas 《 Star Wars 》• ILM Introduction

• How to use Python in ILM

• Open Talk

Page 3: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 3 of 31

引子

Page 4: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 4 of 31

引子 乔治 . 卢卡斯 - 星球大战• “ 电影史上的里程碑、本世纪最为重要的

文化事件之一。”其影响波及整个世界。– 1977 《星球大战》 4 新希望 A new hope – 1980 《星球大战》 5 帝国反击 The Empire Strikes back– 1983 《星球大战》 6 绝地归来 Return Of The Jedi– 1999 《星球大战》 1 魅影危机 The Phantom Menace– 2002 《星球大战》 2 克隆人的进攻 Attack of the Clones– 2005 《星球大战》 3 西斯的反击 Revenge of the Sith

Page 5: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 5 of 31

卢卡斯电影公司, “工业光魔”和“天行者音效”

• Lucas Film – Industrial Light & Magic 工业光魔 http://www.ilm.com

/ – Skywalker Sound 天行者音效– 电脑制作事业部 (PIXAR 卖给了乔布斯)

• 制定了工业标准– ILM , THX , Dolby , Technicolor , Avid , HD ,

HiRes , MP3 , MP4 , NLE , Sony HDW……

• “ 工业光魔”和“天行者”– 还制作了《侏罗纪公园》、《终结者》、《哈利波

特》、《变形金刚》、《珍珠港》、《阿凡达》– 全世界顶级的电影特技和后期制作公司

Page 6: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 6 of 31

Industrial Light & Magic (ILM) 

• Started in 1975 by filmmaker George Lucas, in order to create the special effects for the original Star Wars film.

• Since then, ILM has grown into a visual effects powerhouse that has contributed not just to the entire Star Wars series.

• Also to films as diverse as Forrest Gump, Jurassic Park, Who Framed Roger Rabbit, Raiders of the Lost Ark, and Terminator 2.

• ILM has won numerous Academy Awards for Best Visual Effects, not to mention a string of Clio awards for its work on television advertisements.

Page 7: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 7 of 31

35 年 -15 个奥斯卡奖, 23 个科技奖, 275 部电影

Page 8: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 8 of 31

各类奖项

Page 9: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 9 of 31

特效制作

• 《终结者》之前,你看见过一个“水银人”在走、跑、打、斗吗?《侏罗纪公园》之前,你看见过一群群活灵活现的恐龙吗?《珍珠港》之前,你有幸骑在一颗炸弹上从高空中落下、坠入航母的烟囱之中爆炸引起熊熊大火吗?《变形金刚》之前,你看见过阿帕奇直升飞机转瞬间变成钢铁巨人把 M-1 坦克像臭虫一样一个个掐扁吗……?

Page 10: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 10 of 31

Python binds all things together

• "Python plays a key role in our production pipeline. Without it a project the size of Star Wars: Episode II would have been very difficult to pull off. From crowd rendering to batch processing to compositing, Python binds all things together," said Tommy Burnette, Senior Technical Director, Industrial Light & Magic.

Page 11: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 11 of 31

Python is everywhere at ILM

• "Python is everywhere at ILM. It's used to extend the capabilities of our applications, as well as providing the glue between them. Every CG image we create has involved Python somewhere in the process," said Philip Peterson, Principal Engineer, Research & Development, Industrial Light & Magic.

Page 12: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 12 of 31

Problem

• LM runs a batch processing environment capable of modeling, rendering and compositing tens of thousands of motion picture frames per day.

• Thousands of machines running Linux, IRIX, Compaq Tru64, OS X, Solaris, and Windows join together to provide a production pipeline that is used by approximately eight hundred users daily, many of whom write or modify code that controls every step of the production process.

• In this context, hundreds of commercial and in-house software components are combined to create and process each frame of computer-generated or enhanced film.

Page 13: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 13 of 31

Requirement

• Making all this work, and keeping it working, requires a certain degree of technical wizardry, as well as a tool set that is up to the task of integrating diverse and frequently changing systems.

Page 14: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 14 of 31

1996 - Python version 1.4

• In 1996, The production pipeline was controlled by Unix shell scripting.

• Python version 1.4 came out, and Python was coming into its own as a powerful yet simple language that could be used to replace Unix shell scripting.

• Python was evaluated, compared to other technologies available at the time (such as Tcl and Perl), and chosen as an easier to learn and use language with which to incrementally replace older scripts.

Page 15: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 15 of 31

 ILM integrated Python into custom applications written in C or C++

• Python enabled much more for ILM than just process control.

• Python can be embedded whole as a scripting language within a larger software system. In this case, Python code can invoke specific functions of that system, even if those functions are written in C or C++. And C and C++ code can easily make calls back into Python code as well.

Page 16: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 16 of 31

•  ILM's in-house lighting tool– It is the lighting tool that is ultimately

responsible for writing the 3D scene out to a format that a renderer can interpret and render.

– to place light sources into a 3D scene and to facilitate the writing, generation, and previewing of shaders and materials used on CG elements.

Page 17: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 17 of 31

Many custom file formats and data structures, were re-wrapped

• More and more components, such as those responsible for ILM's many custom file formats and data structures, were re-wrapped as Python extension modules

• By writing in Python, users could recombine wrapped software components and extend or enhance standard CG applications needed for each new image production run.

• This let ILM staff to do exactly what a production needed at any given time, whether that meant allowing for a specific look for an entire show, or just a single CG character or element.

Page 18: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 18 of 31

Python for third applications

• The addition of Python scripting to Maya has been a huge windfall here at ILM.

• We can now write applications that connect to Maya and our proprietary software, and there are incredible libraries of Python modules that we can take advantage of.

• Through Python, we can connect Maya to our asset management system and our production databases, making for automatic updating of characters and editorial changes.

Page 19: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 19 of 31

Easy to learn for non-technical users

• Even some of ILM's non-technical users were able to learn enough Python to develop simple plug-ins and to create and modify production control scripts along side the technical users.

Page 20: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 20 of 31

Python Unifies the Toolset

• Tracking and auditing functionality within the production pipeline, where an Oracle database keeps track of the hundreds of thousands of images that are created and processed for each film.

• DCOracle2, one of the Oracle integration libraries available for Python, has performed well in this task and is now in use on Linux, IRIX, Tru64, and Solaris.

Page 21: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 21 of 31

Develop the CG artist's interface to ILM's asset management system.

• Designed to be modular, this tool has been enhanced by a large group of developers and non-developers alike to extend well beyond its original mandate.

• The application is now used not only to manage CG assets and elements, but also in daily shot review, as a network-based whiteboard, as an instant messenger, and even allows an occasional game of chess.

Page 22: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 22 of 31

Python reduced the number of technologies

• Reduced the number of technologies that needed to be deployed to ILM's thousands of production computers. – Shell scripting and batch control– Embedded scripting– Component software development – Database application development

Page 23: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 23 of 31

Python simplified toolset

• Python's versatility ultimately simplified the developers' toolset

• Simpler toolset translated directly into an easier to manage and more reliable development and production process.

Page 24: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 24 of 31

Hardware Costs Reduced

• Python's portability to many other operating systems eventually became one of its key strengths.

• Once Python was in use, it made the production control system portable.

• This gave ILM additional freedom in making hardware technology choices, including a large-scale introduction of commodity PC hardware and Linux, a move that has saved the company substantial amounts of money in recent years.

Page 25: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 25 of 31

Source Code Access Important

• The availability of source code for the language acts as an important insurance policy – Custom extensions or improvements. – After having used Python intensively for six years,

ILM has yet to run into significant bugs or portability issues with the language.

–  ILM installs new systems with newer versions of Python but maintains older systems

– back-port some changes found in newer Python versions, and to reimplement portions of newer support libraries under older versions of Python.

– ILM is currently running a mix of Python 1.4, 1.5, and 2.1.

Page 26: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 26 of 31

More things about ILM

• Book 《 Industrial Light & Magic:

The Art of Special Effects 》

• Website– www.ILM.com

Page 27: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 27 of 31

Open Talk

• Python 的潜力大家知道多少?• 还有多少有趣的 Python 应用?• 我们如何推广 Python 在更广领域?

Page 28: Industrial light & magic success story  case study iv (python based company)

Be a great websites product design and online marketing expert.Slide 28 of 31

Questions?

Sting Chen (陈世欣 ) Twitter : @stingchen新浪微博: @StingChenBlog : BOPOR.COM

产品经理大会 PMCamp.Org顶尖极客沙龙 TopGeek.OrgThinkinLAMP 组织者之一


Top Related