国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

星球大戰(zhàn)與Python之間的那些事

2019-11-25 16:59:34
字體:
供稿:網(wǎng)友

Python與星球大戰(zhàn)背后的工業(yè)光魔

提起Python語言,很多人會想起系統(tǒng)運維、Web開發(fā)等工作。很少有人會知道Python也能夠用于電影視覺特效的制作,其中就包括了《星球大戰(zhàn)》某些電影特效的制作。

星戰(zhàn)之父喬治?盧卡斯于1975年創(chuàng)建了工業(yè)光魔(全稱:Industrial Light and Magic),從第一部《星球大戰(zhàn)》起便參與了電影的特效制作。據(jù)Python官網(wǎng)介紹,工業(yè)光魔從1996年起開始使用Python語言,取代了此前的Unix shell腳本。工業(yè)光魔做出這個決定的原因,在于Python的學(xué)習(xí)難度低,開發(fā)速度快。當(dāng)時,Python還只是1.4版本。

電影特效行業(yè)競爭十分激烈,制作公司會不斷地尋找更加優(yōu)秀的編程語言,提高工作效率。工業(yè)光魔也是一直在評估Python語言的使用,但是近20年以來,還沒有找到一個更好的替代品。

工業(yè)光魔的資深技術(shù)總監(jiān)Tommy Burnette曾經(jīng)這樣評價道:

  • Python在我們的生產(chǎn)流程中扮演了至關(guān)重要的作用。如果沒有它,像《星球大戰(zhàn)》第二部這樣的大項目就很難完成。從集體渲染到批量處理再到影片合成,Python將所有步驟都緊密的粘合在了一起。

由此可見Python的強大。

Star Wars API

你知道《星球大戰(zhàn)》系列大戰(zhàn)中出現(xiàn)了多少個種族,多少種飛船嗎?這些答案都可以在Star Wars API中找到。

據(jù)開發(fā)者介紹,Star Wars API是全球首個量化的、可供編程使用的星戰(zhàn)數(shù)據(jù)集。開發(fā)者經(jīng)過漫長的搜集和整理,匯總了星戰(zhàn)系列電影中的人物、種族、星球、飛船等詳細(xì)數(shù)據(jù)。目前,這個API中已經(jīng)收錄了《原力覺醒》中的新數(shù)據(jù)。API的作者還用Python開發(fā)了一個helper庫。

我們來看看可以用這個庫做些什么。

將所有星球按大小排列:

import swapifor planet in swapi.get_all("planets").order_by("diameter"):  print(planet.name)

查看哪些人開過1艘以上的飛船:

import swapifor people in swapi.get_all("people").iter():  if len(people.starships) > 1:    print(people.name)

檢索Jar Jar Binks是否在電影中出現(xiàn):

import swapipm = swapi.get_film(4)jj = swapi.get_person(36)for c in pm.get_characters().iter():  if c.name == jj.name:    print("Why George, why.")

Python編寫的Star Wars小游戲

最后,再與大家分享一個國外開發(fā)者用Python開發(fā)的星戰(zhàn)相關(guān)游戲,希望大家喜歡。

這個游戲類似現(xiàn)在的跑酷,通過上下左右方向鍵控制。

是不是很酷!很贊!很期待!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 溧阳市| 胶州市| 海林市| 卢龙县| 莱芜市| 海宁市| 陕西省| 寿宁县| 广德县| 当雄县| 江孜县| 神农架林区| 芷江| 彝良县| 长武县| 江阴市| 苏尼特右旗| 特克斯县| 西充县| 湘西| 吴江市| 博乐市| 西畴县| 永济市| 应用必备| 曲麻莱县| 宁夏| 洪雅县| 大石桥市| 澄江县| 清苑县| 根河市| 阳谷县| 高阳县| 莫力| 红桥区| 横山县| 射阳县| 冀州市| 江口县| 阜平县|