三維動漫游戲開發編程入門( 簡體 字) | |
作者:Matthew Casperson 胡新榮 | 類別:1. -> 圖形圖像、網頁製作 -> Flash 2. -> 多媒體 -> 遊戲引擎 -> 其它 |
出版社:清華大學出版社 | 3dWoo書號: 39867 詢問書籍請說出此書號! 有庫存 NT售價: 295 元 |
出版日:9/26/2014 | |
頁數:293 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷 | 語系: ( 簡體 字 ) |
ISBN:9787302370512 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1章搭建第一個Away3D應用程序
1.1在Flash Player 10和Flash Player 9之間選擇適合它的Away3D版本 1.2下載Away3D 1.3下載Away3D的源碼壓縮ZIP文件 1.4使用版本管理SVN下載Away3D的源碼 1.5建立空的Away3D工程項 1.5.1Adobe Flex Builder或Flash Builder 1.5.2FlashDevelop 1.5.3Adobe Flash CS4 1.6配置針對Flash Player 10的運行環境 1.6.1Adobe Flex Builder和Adobe Flash Builder 1.6.2FlashDevelop 1.6.3Adobe Flash CS4 1.7建立初始的應用程序 1.8運行Away3DTemplate 1.8.1Adobe Flex Builder和Adobe Flash Builder 1.8.2FlashDevelop 1.8.3Adobe Flash CS4 1.8.4最終結果 1.9在一個3D場景中定位對象 1.10繼承Away3DTemplate類構建一個場景 1.10.1運行SphereDemo應用程序 1.10.2最終結果 第2章建立并顯示原始3D模型 2.1一個3D對象的基本元素 2.1.1頂點 2.1.2三角面 2.1.3Sprite3D精靈 2.1.4段 2.2UV紋理貼圖坐標系統 2.3創建原始的3D對象 第3章移動對象 3.1全局坐標、父坐標和局部坐標 3.1.1世界空間 3.1.2父空間 3.1.3局部空間 3.2轉換函數/屬性及其坐標系統 3.3修改位置 3.3.1x、y和z屬性 3.3.2位置屬性 3.3.3移動函數 3.3.4moveTo()函數 3.3.5translate()函數 3.3.6修改旋轉 3.3.7修改縮放 3.3.8修改轉換 3.3.9漸變操作 3.4嵌套 第4章景深排序 4.1畫家算法 4.2場景排序 4.3調整排序的順序 4.3.1前推和后推屬性 4.3.2屏幕Z位移屬性 4.3.3畫布屬性 4.4有關Z排序的說明 4.5附加的渲染器 第5章材質 5.1紋理和材質的區別 5.2資源管理 5.3在Away3D中定義彩色 5.3.1用整數定義色彩 5.3.2用顏色名字的字符串定義色彩 5.4Pixel Bender 5.5光源和材質 5.6著色技術 5.6.1紋理映射 5.6.2法向貼圖 5.6.3環境映射 5.6.4平面著色 5.6.5Phong著色 5.7應用材質 5.8基本材質 5.8.1線色彩材質 5.8.2線框材質 5.8.3彩色材質 5.8.4Bitmap材質 5.8.5動畫材質 5.8.6復合材質 5.8.7光源材質 5.8.8Pixel Bender材質 5.8.9從外部文件載入紋理圖 第6章模型和動畫 6.1Away3D支持的3D格式 6.2輸出3D模型 6.2.1從3ds Max輸出模型文件 6.2.2從MilkShape輸出模型文件 6.2.3從Sketchup輸出模型 6.2.4從Blender輸出模型 6.2.5有關Collada輸出器的注意事項 6.3載入3D模型 6.4動畫模型 6.4.1MD2載入一個嵌入式文件 6.4.2MD2載入一個外部文件 6.4.3Collada載入一個嵌入式文件 6.4.4Collada載入一個外部文件 6.4.5AS載入轉換后的模型 6.5靜態模型 6.5.13DS載入嵌入文件 6.5.23DS載入外部文件 6.5.3AWD載入嵌入文件 6.5.4AWD載入外部文件 6.5.5ASE載入嵌入文件 6.5.6ASE載入外部文件 6.5.7OBJ載入嵌入文件 6.5.8OBJ載入外部文件 6.5.9初始化對象的使用問題 6.6把載入的模型轉換成ActionScript類 第7章照相機 7.1照相機類的屬性 7.2照相機的鏡頭 7.2.1放大焦距鏡頭和透視鏡頭類 7.2.2球面鏡頭類 7.2.3正交鏡頭類 7.3照相機類 7.3.1目標照相機 7.3.2旋轉照相機 7.3.3跟蹤照相機 第8章鼠標互動性 8.1Away3D鼠標事件 8.2ROLL_OVER/ ROLL_OUT和MOUSE_OVER/ MOUSE_OUT之間 的區別 8.3將鼠標的位置投影到場景 第9章使用精靈的特殊效果 9.1使用Sprite3D類 9.2使用定向精靈類 9.3使用景深精靈類 9.4使用粒子系統 9.4.1建立Away3D Stardust初始化程序類 9.4.2建立Away3D星團粒子渲染器 9.4.3建立星團發射器 9.4.4把上面的全部功能集合到一起 第10章建立3D文本 10.1嵌入文字 10.1.1在場景里顯示文本 10.1.23D文本材質 10.2突出顯示3D文本 10.3彎曲3D文本 第11章突顯法和修改工具 11.1使用PathExtrusion類建立標記 11.2使用LinearExtrusion類建立圍墻 11.3使用LatheExtrusion類建立花瓶 11.4使用SkinExtrusion類建立地形圖 11.5用海拔閱讀類讀出地形圖表面高度 11.6高度映射修改類 第12章過濾器和后繼處理效果 12.1Flash和Away3D過濾器 12.1.1Flash過濾器 12.1.2Away3D的過濾器 12.2渲染器會話對象 第13章Away3D的運行技巧 13.1確定當前的幀速度 13.2設置最大的幀速度 13.3設置Flash舞臺的質量低一點 13.4減小視口尺寸的大小 13.5縮放視口輸出 13.6三角緩存 13.7模型的細節層次 13.8Away3D過濾器 13.8.1Z景深過濾器 13.8.2最大多邊形過濾器 13.8.3在后臺進行畫圖 13.9模型格式 Away3D是Flash可用的最流行的、最受開發者歡迎的實時3D引擎,它可創建多種3D應用程序,包括可視的精細3D環境,顯示3D動畫模型,建立3D文本,還有大量的3D特殊效果顯示。利用Away3D和少量的ActionScript代碼,給開發者提供了無窮的創意空間。
本書將引導你學習Away3D中各種可用的功能,這些特性對Flash平臺是完全開放的,通過書中的實例和一些實用的技巧,你可以很快建立并運行一個用Away3D編寫的應用程序。 本書從最基本的要素開始,通過下載 Away3D的源代碼,教會你在很多程序編寫工具如Flex Builder,Flash Builder,FlashDevelop和Flash CS4里使用Away3D來創建你的第一個Away3D的應用程序。接下來,你可以很容易地從零開始創建第一個原始3D 對象,然后,逐步教你建立非常好的、具有精細紋理和動畫效果的3D環境。你還將學會如何使應用程序響應用戶的請求,學會使照相機聚焦的方法,以及從任意的視角觀察場景。同時,還會教你很多的優化技術,使應用程序獲得在Away3D里有最好的運行性能,而不會降低視覺效果,使應用程序提升到一個新的級別。 本書從顯示一個球開始,到創建一個完整的3D城市,逐步教你必須掌握的編程步驟、編程技術和大量的技巧,使你避免犯常見錯誤。 原書序
Away3D是Flash可用的最流行的、最受開發者歡迎的實時3D引擎,它可創建多種3D應用程序,包括可視的精細3D環境,顯示3D動畫模型,建立3D文本,還有大量的3D特殊效果顯示。利用Away3D和少量的ActionScript代碼,給開發者提供了無窮的創意空間。 本書將引導你學習Away3D中各種可用的功能,這些特性對Flash平臺是完全開放的,通過書中的實例和一些實用的技巧,你可以很快建立并運行一個用Away3D編寫的應用程序。 本書從最基本的要素開始,通過下載 Away3D的源代碼,教會你在很多程序編寫工具如Flex Builder,Flash Builder,FlashDevelop和Flash CS4里使用Away3D來創建你的第一個Away3D的應用程序。接下來,你可以很容易地從零開始創建第一個原始3D 對象,然后,逐步教你建立非常好的、具有精細紋理和動畫效果的3D環境。你還將學會如何使應用程序響應用戶的請求,學會使照相機聚焦的方法,以及從任意的視角觀察場景。同時,還會教你很多的優化技術,使應用程序獲得在Away3D里有最好的運行性能,而不會降低視覺效果,使應用程序提升到一個新的級別。 本書從顯示一個球開始,到創建一個完整的3D城市,逐步教你必須掌握的編程步驟、編程技術和大量的技巧,使你避免犯常見錯誤。 本書包含的內容: 第1章,搭建第一個Away3D應用程序,教你如何在各種不同的集成開發環境(IDEs、Flex Builder、Flash Builder、FlashDevelop和 FlashCS4)里,搭建第一個Away3D的應用程序。 第2章,建立并顯示原始3D模型,在這一章你將瀏覽Away3D里的各種有用的原始對象。 第3章,移動對象,教你如何在場景里直接移動、旋轉、縮放3D對象,或者通過緩動庫來進行。 第4章,Z排序,探索能用的景深排序技巧以及在Away3D程序里出現的渲染問題。 第5章,材質,帶你進入到Away3D里,查看它包含的各種材質,從顯示單色的材質到Pixel Bender的高級材質,此外本章還將講述光源的知識。 第6章,模型和動畫,你將學會如何載入和顯示用其他3D建模軟件創建的靜態3D模型及其動畫效果。 第7章,照相機,顯示那些影響場景效果的各個屬性,展示Away3D里的各種照相機類,它們使你能夠追蹤和查看場景里的3D對象。 第8章,鼠標交互,你會學到如何響應鼠標的請求,建立交互的應用程序。 第9章,使用精靈的特殊效果,本章展示了各種各樣的特殊效果,包括如何與Stardust粒子引擎集成。 第10章,建立3D文本,本章將講述如何創建和管理3D文本。 第11章,突顯法和修改工具,本章將講述如何直接使用Away3D創建復雜的3D對象,而不使用其他3D建模軟件。 第12章,過濾器和后繼處理效果,本章講述如何在Away3D應用程序里添加振奮人心的效果。 第13章,Away3D的運行技巧,教你如何優化Away3D應用程序,使你能創建維持高級別的運行環境。 這本書可以為你提供: 希望建立能參與性與交互性強、引人注目的網站或吸引人的3D游戲的人都會欣賞Away3D的強大功能,本書提供了如何利用這些功能的所有資料和信息。你需要做的工作是通過互聯網來下載Away3D和諸如Flex/Flash Builder、Flash CS4或者Flash Develop這樣的ActionScript集成開發環境,這些軟件都是免費下載使用的。 這本書面向的對象: 這本書是為那些希望在Flash中使用Away3D引擎創建3D應用的初學者和經驗豐富的Flash開發人員而寫的。無論你是Away3D的初次使用者還是經驗豐富的開發者,這本書都將為你進一步學習Flash提供一個堅實的基礎,同時這本書也可以作為已經熟悉Away3D的Flash 開發人員的參考指南。 相關約定: 在本書中你可以發現很多風格的文本區分不同類型的信息,下面列舉了一些文本風格及其含義的解釋。 文本中的代碼詞顯示如下: “通過擴展Away3Dtemplate類,我們可以用SphereDemo類和少量的幾行代碼就可以創建一個簡單的3D應用程序。” 代碼段建立如下: import away3d.core.base.Object3D; import away3d.primitives.Cone; import away3d. primitives.Cube; import away3d. primitives.Cylinder; import away3d. primitives.GeodesicSphere; 新的術語和重要的詞都加粗顯示了。例如在屏幕、菜單或對話框里顯示的文本: “在Flex/Flash Bulider和Flash CS4中將TweenLite庫添加到Source path,或者在FlashDevelop中添加到Project Classpaths.” 讀者反饋意見: 本書深受讀者歡迎,讓我們了解你對本書的看法——無論是喜歡本書還是不喜歡本書。讀者的反饋意見是非常重要的,因為這樣有助于我們對讀者真正需要的主題進行改進。 請把反饋意見發到電子郵箱: feedback@packtpub.com,并在郵件的主題中注明書名。 如果您有需要的書并希望我們出版,請在網站http://www.packtpub.com 的SUGGEST A TITLE中給予提醒或者給我們發郵件: suggest@packtpub.com。 如果有你專業領域的主題,你有興趣出版或參編相關的書,也可以通過http://www.packtpub.com/authors查看作者指南。 消費者支持: 現在你是Packt出版社的尊貴主人,我們為你的書籍消費提供了最大幫助。 下載本書的例程代碼 你可以通過你的賬號從http://www.packtpub.com購買Packt出版社的書籍并下載相應的例程源碼。如果你在別處購買的Packt出版社的書籍,可以訪問http://www.packtpub.com/support并注冊, 我們將把例程源碼文件直接發電子郵件給你。 錯誤之處: 盡管我們十分仔細認真以保證我們內容的正確性,但錯誤還是難以避免。如果你在我們的書中發現一個錯誤——無論是文本錯誤還是代碼錯誤——如果你愿意告知我們,我們將十分感激。這樣,你可以幫助其他讀者,也有助于幫助我們改進這本書的后續版本。如果你發現書中的任何錯誤,可以訪問http://www.packtpub.com/support,選擇該書,單擊鏈接“errata submission form”,輸入錯誤的詳細描述,報告這些錯誤。一旦你提交的錯誤通過審核,你的提交將被接受并上傳到我們的網站,或被增加到Errata的已有錯誤列表中。從http://www.packtpub.com/support可以查看你選中書目的所有錯誤。 版權聲明: 對所有媒體而言,互聯網上的版權材料的盜版是一個持續存在的問題。在Packt,我們非常認真地對待版權和著作權的保護。如果你在互聯網上遇到以任何形式非法拷貝我們的著作,請立即為我們提供地址或網站,這樣我們可以采取補救措施。 請將可疑盜版資料的地址發給我們: coptright@packtpub.com。 我們十分感激你為保護我們作者所提供的幫助,我們將盡力為你提供有價值的內容。 問題: 如果你對本書的任何內容有疑問的話請聯系我們: question@packtpub.com,我們將盡力解決這個問題。 譯者序 當前,國內在很多地方投入了大量的人力、物力和財力,開發基于互聯網的三維動漫游戲、工業產品展示、實時模擬教學等。然而卻缺少一本專業的、教讀者如何編寫開發三維動漫程序的書。為此作者編譯了本書,以期推動3D動漫的教學、研究和開發。 讀者在閱讀本書之前,最好學習過Java,MyEclipse, Flash,3D Max和“計算機圖形學”這些前期課程。沒有學也沒關系,跟著本書的講解,照著例子練習,一樣可以學會Away3D編程。 在此書的編譯過程中,得到了實踐經驗豐富的黃傳賢教授、伍寧工程師的精心指正和幫助,鄧盾同學也協助編者對書中的部分例程進行編排和調試,本書的出版受到了國家自然科學基金項目(61103085)資助,并由武漢紡織大學學術著作出版基金資助出版,在此一并感謝。 本書各章講解的所有例子均在Flash Builder 4.0和Away3D 4.0的環境下調試且成功運行過。 由于編譯者水平所限,書中內容難免有不對之處,敬希讀者指教,以便再版時改正。 胡新榮 2014年7月 |