第五十四章 精靈(spirit)技術
60年代開始的美利堅遊戲帝國 作者:辛古拉瑞提 投票推薦 加入書簽 留言反饋
在溝通沃茲尼亞克去研發設計微處理器的同時。為未來準備的研發任務也準備好了。
經過沃茲尼亞克與喬布斯這兩個野孩子的侵襲,整個公司上上下下都對未來的技術儲備和專利儲備問題重視起來。
因為灣區這附近畢業的工程師天才太多,如果不努力研發更高端的技術,把未來的命運牢牢掌握在自己的手上,不管是誰,都有可能一夜之間崩盤。何況他們現在在這個新的市場上挖到了金子,還不知道多少人會加入這個新的淘金熱。甚至於整個加州最早期的移民,都是真正意義上的淘金熱後代。這幫人對利益的追逐,絕對是全世界最瘋狂的地區。
盡管現在矽穀的大公司還沒有完全成型,甚至風投還沒成型的今天,小公司不是那麽可怕。但是視頻遊戲公司,確實是被這兩個叫史蒂夫的蜜蜂,狠狠的蟄怕了。
於是,雷艾倫在董事會確定走上微處理器的研發路線之後,順勢又提出了要研發新的遊戲技術“精靈(spirit)”。隻是很可惜是,這個技術暫時沒法作為專利儲備。
雷艾倫知道現在根本就沒有軟件專利這個說法,軟件專利裁定要等1981年去了。這也沒辦法,哪怕別人會抄這個,也得研發。
如果穿越者要回到2d遊戲時代開頭開一家視頻遊戲公司的話,所有軟件上的技術,最核心的第一步,一定是先研究“精靈”。有了精靈技術之後,才談得上遊戲。
後世心理學家在研究視頻遊戲為什麽如此讓人喜歡的時候,這其中的研究結果,就表明了,玩家喜歡控製視頻遊戲裏,被遊戲開發公司叫做“精靈”的東西。
精靈技術,是視頻遊戲在2d時代的代表技術,也是2d遊戲的基礎技術。嚴格來說一點,幾乎所有的2d遊戲的基礎都是精靈。隻有視頻遊戲最開始的,什麽動作幀都沒有,隻能控製上下左右移動的時代例外。
所謂“精靈”的核心就是,把2d時代裏,一個個移動的代表人物/怪物/背景以外的素材,當成“精靈”來單獨渲染。
精靈們可以有很多動作,每個動作都有2-8幀或者更多的幀數。所有的動作幀加起來可能有幾幀,幾十幀或者幾百幀甚至上千幀,就是一個“精靈”的全部。然後,在遊戲裏,精靈會根據玩家在手柄或者搖杆上輸入的指令,或者根據時間的不同,然後做出規定的動作幀。隻要動作幀過渡銜接自然,幀率優化得當,看起來人物就是正常的走跑跳倒等等等等。總之,根據不同的動作幀切換顯示,人物或者怪物就顯得很生動,這也是2d時代基礎技術“精靈”得名的原因。
當然,有了精靈技術,其實另外一個對精靈的碰撞檢測也是一個麻煩的技術。因為精靈在動,每一幀的碰撞範圍都不同。這個需要對每一幀都設置不同的碰撞點來檢測碰撞就是另外一回事了。而後世有一個卡比遊戲的代名詞就是2d神作dnf,這個遊戲動作幀太多,遊戲裏技能的動作幀更是碰撞點檢測無比多,加上亢奮的tp檢測的原因,居然玩家用i係列的cpu都能卡。醉得不行。
不過那些事情都是未來的事情。回到雷艾倫目前的現狀來看,“精靈”的技術要配合著沃茲尼亞克那邊的處理器研發。這事隻能讓阿爾科恩與沃茲尼亞克自己去想辦法對接。至於怎麽才能對接,那不是雷艾倫考慮得了的事情。
雷艾倫也不打算更多在這個話題上討論。雷艾倫隻最後說了一句,如果架構有問題,可以拉上他一起討論。
總之,雷艾倫最後這句話讓其他全場人都有點愣神。雷艾倫這家夥不是不懂工程學麽?為什麽他可以參與對這種技術的討論?最後他這番對“精靈”論述的長篇大論還說得有模有樣像那麽回事?
對文奇和阿爾科恩沃茲尼亞克來說,他們可不覺得“精靈”技術僅有雷艾倫說的那麽簡單。他們還隱隱覺得,“精靈”這個技術似乎大有文章可為。隻是他們現在還抓不住這意味著什麽。
他們抓不住的是,“精靈”這個技術,其實隱隱已經指向了“麵向對象”編程的曙光了。而且1969年的雷艾倫現在,軟件程序行業正在遭遇史上第一次危機。
因為傳統的麵向過程的軟件越來越複雜,加上這個時候被軟件工程裏視為萬惡之源的“goto”語句也沒刪除,讀懂別人的程序代碼是一件越來越困難的事情。而且一個軟件需要debug的時候,特別特別困難,軟件行業不知道未來該怎麽辦。
“麵向對象”的發明,這玩意又是施樂實驗室在一次頭腦風暴裏的創造。實際上,拯救軟件工程的,讓軟件工程能從上千行代碼的k級別走向百萬的m級別甚至數十億的g級別,正是兩個關鍵的改革。
一個是拒絕使用“goto”語句,這條效果拔群的編程語句由於太tmd隨意性了,如果濫用,會導致代碼失去可讀性。實際上,第一代軟件工程師們,現在就是在濫用“goto”語句,一個是寫代碼的時候方便,另外一個就是為了滿足現在苛刻到近乎於變態的代碼容量性能的上限。當然,第一代軟件工程也在這個時候崩潰了。
另外一個就是從“麵向過程”逐步轉向“麵向對象”。後世大名鼎鼎的c++,java,php等所有程序員論壇上爭論的語言,全是支持麵向對象的。
隻是雷艾倫現在不懂代碼技術,他不知道這個意味著什麽。他隻知道遊戲曆史是怎麽發展起來的,而其中的一些關鍵技術的意義和用法他也了解,因為他是立誌成為遊戲第一高手的人,對遊戲軟件實現原理很清楚。更深層次的代碼從機器碼到匯編到中級語言到高級語言這些他就不知道了。否則,他一開始就可以讓文奇搞出“關係型數據庫”,自己搞出“麵向對象”編程等黑科技了。起碼到現在為止,文奇的數據庫還在最開始,效率極低的原始數據庫。
雷艾倫提到精靈之後,以為這個事情就結束了。
但是沃茲尼亞克不是這麽看的。
沃茲尼亞克認為,他直覺就是“精靈”這個技術裏麵大有文章,可能還有很多是他們現在沒挖掘出來能徹底改變世界的東西。沃茲尼亞克的提議是,視頻遊戲公司應該每周進行一次頭腦風暴。
阿爾科恩與文奇這兩個技術出生的人紛紛附議。這個提議也自然而然在董事會上通過了。
經過沃茲尼亞克與喬布斯這兩個野孩子的侵襲,整個公司上上下下都對未來的技術儲備和專利儲備問題重視起來。
因為灣區這附近畢業的工程師天才太多,如果不努力研發更高端的技術,把未來的命運牢牢掌握在自己的手上,不管是誰,都有可能一夜之間崩盤。何況他們現在在這個新的市場上挖到了金子,還不知道多少人會加入這個新的淘金熱。甚至於整個加州最早期的移民,都是真正意義上的淘金熱後代。這幫人對利益的追逐,絕對是全世界最瘋狂的地區。
盡管現在矽穀的大公司還沒有完全成型,甚至風投還沒成型的今天,小公司不是那麽可怕。但是視頻遊戲公司,確實是被這兩個叫史蒂夫的蜜蜂,狠狠的蟄怕了。
於是,雷艾倫在董事會確定走上微處理器的研發路線之後,順勢又提出了要研發新的遊戲技術“精靈(spirit)”。隻是很可惜是,這個技術暫時沒法作為專利儲備。
雷艾倫知道現在根本就沒有軟件專利這個說法,軟件專利裁定要等1981年去了。這也沒辦法,哪怕別人會抄這個,也得研發。
如果穿越者要回到2d遊戲時代開頭開一家視頻遊戲公司的話,所有軟件上的技術,最核心的第一步,一定是先研究“精靈”。有了精靈技術之後,才談得上遊戲。
後世心理學家在研究視頻遊戲為什麽如此讓人喜歡的時候,這其中的研究結果,就表明了,玩家喜歡控製視頻遊戲裏,被遊戲開發公司叫做“精靈”的東西。
精靈技術,是視頻遊戲在2d時代的代表技術,也是2d遊戲的基礎技術。嚴格來說一點,幾乎所有的2d遊戲的基礎都是精靈。隻有視頻遊戲最開始的,什麽動作幀都沒有,隻能控製上下左右移動的時代例外。
所謂“精靈”的核心就是,把2d時代裏,一個個移動的代表人物/怪物/背景以外的素材,當成“精靈”來單獨渲染。
精靈們可以有很多動作,每個動作都有2-8幀或者更多的幀數。所有的動作幀加起來可能有幾幀,幾十幀或者幾百幀甚至上千幀,就是一個“精靈”的全部。然後,在遊戲裏,精靈會根據玩家在手柄或者搖杆上輸入的指令,或者根據時間的不同,然後做出規定的動作幀。隻要動作幀過渡銜接自然,幀率優化得當,看起來人物就是正常的走跑跳倒等等等等。總之,根據不同的動作幀切換顯示,人物或者怪物就顯得很生動,這也是2d時代基礎技術“精靈”得名的原因。
當然,有了精靈技術,其實另外一個對精靈的碰撞檢測也是一個麻煩的技術。因為精靈在動,每一幀的碰撞範圍都不同。這個需要對每一幀都設置不同的碰撞點來檢測碰撞就是另外一回事了。而後世有一個卡比遊戲的代名詞就是2d神作dnf,這個遊戲動作幀太多,遊戲裏技能的動作幀更是碰撞點檢測無比多,加上亢奮的tp檢測的原因,居然玩家用i係列的cpu都能卡。醉得不行。
不過那些事情都是未來的事情。回到雷艾倫目前的現狀來看,“精靈”的技術要配合著沃茲尼亞克那邊的處理器研發。這事隻能讓阿爾科恩與沃茲尼亞克自己去想辦法對接。至於怎麽才能對接,那不是雷艾倫考慮得了的事情。
雷艾倫也不打算更多在這個話題上討論。雷艾倫隻最後說了一句,如果架構有問題,可以拉上他一起討論。
總之,雷艾倫最後這句話讓其他全場人都有點愣神。雷艾倫這家夥不是不懂工程學麽?為什麽他可以參與對這種技術的討論?最後他這番對“精靈”論述的長篇大論還說得有模有樣像那麽回事?
對文奇和阿爾科恩沃茲尼亞克來說,他們可不覺得“精靈”技術僅有雷艾倫說的那麽簡單。他們還隱隱覺得,“精靈”這個技術似乎大有文章可為。隻是他們現在還抓不住這意味著什麽。
他們抓不住的是,“精靈”這個技術,其實隱隱已經指向了“麵向對象”編程的曙光了。而且1969年的雷艾倫現在,軟件程序行業正在遭遇史上第一次危機。
因為傳統的麵向過程的軟件越來越複雜,加上這個時候被軟件工程裏視為萬惡之源的“goto”語句也沒刪除,讀懂別人的程序代碼是一件越來越困難的事情。而且一個軟件需要debug的時候,特別特別困難,軟件行業不知道未來該怎麽辦。
“麵向對象”的發明,這玩意又是施樂實驗室在一次頭腦風暴裏的創造。實際上,拯救軟件工程的,讓軟件工程能從上千行代碼的k級別走向百萬的m級別甚至數十億的g級別,正是兩個關鍵的改革。
一個是拒絕使用“goto”語句,這條效果拔群的編程語句由於太tmd隨意性了,如果濫用,會導致代碼失去可讀性。實際上,第一代軟件工程師們,現在就是在濫用“goto”語句,一個是寫代碼的時候方便,另外一個就是為了滿足現在苛刻到近乎於變態的代碼容量性能的上限。當然,第一代軟件工程也在這個時候崩潰了。
另外一個就是從“麵向過程”逐步轉向“麵向對象”。後世大名鼎鼎的c++,java,php等所有程序員論壇上爭論的語言,全是支持麵向對象的。
隻是雷艾倫現在不懂代碼技術,他不知道這個意味著什麽。他隻知道遊戲曆史是怎麽發展起來的,而其中的一些關鍵技術的意義和用法他也了解,因為他是立誌成為遊戲第一高手的人,對遊戲軟件實現原理很清楚。更深層次的代碼從機器碼到匯編到中級語言到高級語言這些他就不知道了。否則,他一開始就可以讓文奇搞出“關係型數據庫”,自己搞出“麵向對象”編程等黑科技了。起碼到現在為止,文奇的數據庫還在最開始,效率極低的原始數據庫。
雷艾倫提到精靈之後,以為這個事情就結束了。
但是沃茲尼亞克不是這麽看的。
沃茲尼亞克認為,他直覺就是“精靈”這個技術裏麵大有文章,可能還有很多是他們現在沒挖掘出來能徹底改變世界的東西。沃茲尼亞克的提議是,視頻遊戲公司應該每周進行一次頭腦風暴。
阿爾科恩與文奇這兩個技術出生的人紛紛附議。這個提議也自然而然在董事會上通過了。