SlideShare a Scribd company logo
1 of 28
Be a great websites product design and online marketing expert.
Slide 1 of 31
.
Industrial Light &
Magic
Sting Chen (陈世欣 )
使用 Python 技术的成功案例之四
名媛荟网 MY1930. COM CTO
Twitter : @stingchen 博客: BOPOR.COM
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
Be a great websites product design and online marketing expert.
Slide 3 of 31
引子
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
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……
• “ 工业光魔”和“天行者”
– 还制作了《侏罗纪公园》、《终结者》、《哈利波
特》、《变形金刚》、《珍珠港》、《阿凡达》
– 全世界顶级的电影特技和后期制作公司
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.
Be a great websites product design and online marketing expert.
Slide 7 of 31
35 年 -15 个奥斯卡奖, 23 个科技奖, 275 部电
影
Be a great websites product design and online marketing expert.
Slide 8 of 31
各类奖项
Be a great websites product design and online marketing expert.
Slide 9 of 31
特效制作
• 《终结者》之前,你看见过一个“水银
人”在走、跑、打、斗吗?《侏罗纪公
园》之前,你看见过一群群活灵活现的恐
龙吗?《珍珠港》之前,你有幸骑在一颗
炸弹上从高空中落下、坠入航母的烟囱之
中爆炸引起熊熊大火吗?《变形金刚》之
前,你看见过阿帕奇直升飞机转瞬间变成
钢铁巨人把 M-1 坦克像臭虫一样一个个掐
扁吗……?
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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
Be a great websites product design and online marketing expert.
Slide 27 of 31
Open Talk
• Python 的潜力大家知道多少?
• 还有多少有趣的 Python 应用?
• 我们如何推广 Python 在更广领域?
Be a great websites product design and online marketing expert.
Slide 28 of 31
Questions?
Sting Chen (陈世欣 )
Twitter : @stingchen
新浪微博: @StingChen
Blog : BOPOR.COM
产品经理大会 PMCamp.Org
顶尖极客沙龙 TopGeek.Org
ThinkinLAMP 组织者之一

More Related Content

Similar to Industrial light & magic success story case study iv (python based company)

ITCamp 2012 - Tim Huckaby - Keynote
ITCamp 2012 - Tim Huckaby - KeynoteITCamp 2012 - Tim Huckaby - Keynote
ITCamp 2012 - Tim Huckaby - Keynote
ITCamp
 
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Henning Jacobs
 
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp
 

Similar to Industrial light & magic success story case study iv (python based company) (20)

Entertainment Architectures 2011
Entertainment Architectures 2011Entertainment Architectures 2011
Entertainment Architectures 2011
 
Ordina Accelerator program 2019 - DevOps CI-CD
Ordina Accelerator program 2019 - DevOps CI-CDOrdina Accelerator program 2019 - DevOps CI-CD
Ordina Accelerator program 2019 - DevOps CI-CD
 
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud StoryITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
 
Slide shared
Slide sharedSlide shared
Slide shared
 
ITCamp 2012 - Tim Huckaby - Keynote
ITCamp 2012 - Tim Huckaby - KeynoteITCamp 2012 - Tim Huckaby - Keynote
ITCamp 2012 - Tim Huckaby - Keynote
 
TI townhall
TI townhallTI townhall
TI townhall
 
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
Why we don’t use the Term DevOps: the Journey to a Product Mindset - Destinat...
 
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to StrengthenITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
ITCamp 2012 - Paula Januszkiewicz - Stronghold to Strengthen
 
Sinfonier Storm Builder for Security Intelligence
Sinfonier Storm Builder for Security IntelligenceSinfonier Storm Builder for Security Intelligence
Sinfonier Storm Builder for Security Intelligence
 
ビジネスアプリケーション特論 HIstory of IT industry, Internet and Hackers
ビジネスアプリケーション特論 HIstory of IT industry, Internet and Hackersビジネスアプリケーション特論 HIstory of IT industry, Internet and Hackers
ビジネスアプリケーション特論 HIstory of IT industry, Internet and Hackers
 
DockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General SessionDockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General Session
 
Axway's Journey to the Cloud
Axway's Journey to the CloudAxway's Journey to the Cloud
Axway's Journey to the Cloud
 
Made for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaSMade for Each Other: Microservices + PaaS
Made for Each Other: Microservices + PaaS
 
George Grey Welcome Keynote - BUD17-100K1
George Grey Welcome Keynote - BUD17-100K1George Grey Welcome Keynote - BUD17-100K1
George Grey Welcome Keynote - BUD17-100K1
 
OpenSource SmartGrid: Teeters tail-of-possibilities 8dec11
OpenSource SmartGrid: Teeters tail-of-possibilities 8dec11OpenSource SmartGrid: Teeters tail-of-possibilities 8dec11
OpenSource SmartGrid: Teeters tail-of-possibilities 8dec11
 
Minicourse - RiPLE : The RiSE Process for Product Line Engineering
Minicourse -  RiPLE : The RiSE Process for Product Line EngineeringMinicourse -  RiPLE : The RiSE Process for Product Line Engineering
Minicourse - RiPLE : The RiSE Process for Product Line Engineering
 
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
 
Designing Structure: Interaction Design
Designing Structure: Interaction DesignDesigning Structure: Interaction Design
Designing Structure: Interaction Design
 
Introduction to Web 2.0 & Free Culture
Introduction to Web 2.0 & Free CultureIntroduction to Web 2.0 & Free Culture
Introduction to Web 2.0 & Free Culture
 
Product and Systems Engineering at Innovate 2013
Product and Systems Engineering at Innovate 2013Product and Systems Engineering at Innovate 2013
Product and Systems Engineering at Innovate 2013
 

More from Sting Chen

More from Sting Chen (14)

Seo oriented product design
Seo oriented product designSeo oriented product design
Seo oriented product design
 
Slide success story - case study iii (python based company)
Slide success story -  case study iii (python based company)Slide success story -  case study iii (python based company)
Slide success story - case study iii (python based company)
 
From group to team
From group to teamFrom group to team
From group to team
 
Movoto product design - case study i
Movoto product design -  case study iMovoto product design -  case study i
Movoto product design - case study i
 
最好的产品经理怎么说
最好的产品经理怎么说最好的产品经理怎么说
最好的产品经理怎么说
 
How to be an excellent technical man
How to be an excellent technical manHow to be an excellent technical man
How to be an excellent technical man
 
Youtube's Success Story - Case Study II (Python-based Company)
Youtube's Success Story - Case Study II (Python-based Company)Youtube's Success Story - Case Study II (Python-based Company)
Youtube's Success Story - Case Study II (Python-based Company)
 
Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)Mochimedia's Success Story - Case Study I (Python-based Company)
Mochimedia's Success Story - Case Study I (Python-based Company)
 
Softwares And Internet Will Merge
Softwares And Internet Will MergeSoftwares And Internet Will Merge
Softwares And Internet Will Merge
 
Open Social - Shaking the money tree
Open Social - Shaking the money treeOpen Social - Shaking the money tree
Open Social - Shaking the money tree
 
The Money in The Opensource
The Money in The OpensourceThe Money in The Opensource
The Money in The Opensource
 
Ruby On Rails ABC
Ruby On Rails ABCRuby On Rails ABC
Ruby On Rails ABC
 
How to be a great programmer - Geek Path
How to be a great programmer - Geek PathHow to be a great programmer - Geek Path
How to be a great programmer - Geek Path
 
Use Rails To Build Web2.0 Web3.0 Websites
Use Rails To Build Web2.0 Web3.0 WebsitesUse Rails To Build Web2.0 Web3.0 Websites
Use Rails To Build Web2.0 Web3.0 Websites
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

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

  • 1. Be a great websites product design and online marketing expert. Slide 1 of 31 . Industrial Light & Magic Sting Chen (陈世欣 ) 使用 Python 技术的成功案例之四 名媛荟网 MY1930. COM CTO Twitter : @stingchen 博客: BOPOR.COM
  • 2. 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
  • 3. Be a great websites product design and online marketing expert. Slide 3 of 31 引子
  • 4. 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
  • 5. 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…… • “ 工业光魔”和“天行者” – 还制作了《侏罗纪公园》、《终结者》、《哈利波 特》、《变形金刚》、《珍珠港》、《阿凡达》 – 全世界顶级的电影特技和后期制作公司
  • 6. 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.
  • 7. Be a great websites product design and online marketing expert. Slide 7 of 31 35 年 -15 个奥斯卡奖, 23 个科技奖, 275 部电 影
  • 8. Be a great websites product design and online marketing expert. Slide 8 of 31 各类奖项
  • 9. Be a great websites product design and online marketing expert. Slide 9 of 31 特效制作 • 《终结者》之前,你看见过一个“水银 人”在走、跑、打、斗吗?《侏罗纪公 园》之前,你看见过一群群活灵活现的恐 龙吗?《珍珠港》之前,你有幸骑在一颗 炸弹上从高空中落下、坠入航母的烟囱之 中爆炸引起熊熊大火吗?《变形金刚》之 前,你看见过阿帕奇直升飞机转瞬间变成 钢铁巨人把 M-1 坦克像臭虫一样一个个掐 扁吗……?
  • 10. 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.
  • 11. 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.
  • 12. 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.
  • 13. 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.
  • 14. 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.
  • 15. 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.
  • 16. 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.
  • 17. 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.
  • 18. 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.
  • 19. 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.
  • 20. 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.
  • 21. 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.
  • 22. 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
  • 23. 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.
  • 24. 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.
  • 25. 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.
  • 26. 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
  • 27. Be a great websites product design and online marketing expert. Slide 27 of 31 Open Talk • Python 的潜力大家知道多少? • 还有多少有趣的 Python 应用? • 我们如何推广 Python 在更广领域?
  • 28. Be a great websites product design and online marketing expert. Slide 28 of 31 Questions? Sting Chen (陈世欣 ) Twitter : @stingchen 新浪微博: @StingChen Blog : BOPOR.COM 产品经理大会 PMCamp.Org 顶尖极客沙龙 TopGeek.Org ThinkinLAMP 组织者之一