① 圖形引擎和物理引擎有什麼區別和聯系
游戲開發中的程序開發主要由如下幾個方面組成:
1.圖形引擎
2.聲音引擎
3.物理引擎
4.游戲引擎
5.人工智慧或游戲邏輯
6.游戲GUI界面(菜單)
7.游戲開發工具
8.支持區域網對戰的網路引擎開發
9.支持互聯網對戰的網路引擎開發
下面逐一介紹每個部分:
1.圖形引擎主要包含游戲中的場景(室內或室外)管理與渲染,角色的動作管理繪制,特效管理與渲染(粒子系統,自然模擬(如水紋,植物等模擬)),光照和材質處理,LOD(Level Object Detail)管理等,另外還有圖形數據轉換工具開發,這些工具主要用於把美工用DCC軟體(如3DS Max,Maya,Soft XSI,Soft Image3D等)軟體製作的模型和動作數據以及用Photo shop或painter等工具製作的貼圖,轉化成游戲程序中用的資源文件。
2.聲音引擎主要包含音效(Sound Effect簡稱SE),語音(VOICE),背景音樂(Background music簡稱BGM)的播放。SE是指那些在游戲中頻繁播放,而且播放時間比較短,但要求能及時無延遲的播放,VOICE是指游戲中的語音或人聲,這部分對聲音品質要求比較高,基本上用比較高的采樣率錄制和回放聲音,但和SE一樣要求能及時無延遲的播放,SE在有的時候因為內存容量的問題,在不影響效果的前提下,可能會降低采樣率,但VOICE由於降低采樣率對效果影響比較大,所以一般VOICE不採用降低采樣率的做法。BGM是指游戲中一長段循環播放(也有不循環,只播放一次)的背景音樂,正是由於BGM的這種特性,一般游戲的背景音樂是讀盤(光碟或硬碟)來播放。另外一些高級聲音特效,如EAX,數字影院系統(DTS5.1),數字杜比環繞等。
3.物理引擎主要包含游戲世界中的物體之間、物體和場景之間發生碰撞後的力學模擬, 以及發生碰撞後的物體骨骼運動的力學模擬(比較著名的物理引擎有havok公司的game dynamics sdk,還有open source 的ODE—Open Dynamics Engine)。
4.游戲引擎主要是把圖形引擎、聲音引擎、物理引擎整合起來,主要針對某個游戲製作一個游戲系統,其包含游戲關卡編輯器,主要用途是可以可視化的對場景進行調整,光照效果和霧化等效果調整,事件設置,道具擺放,NPC設置,另外還有角色編輯器,主要用於編輯角色的屬性和檢查動作數據的正確性。一般日本游戲公司的做法,他們會把關卡編輯器和角色編輯器直接做到游戲中,所有的參數調整都在游戲中通過調試菜單來進行編輯,所以一般他們把這部分調試菜單的功能做的很強大,同時在屏幕上實時的顯示一些重要的信息,這樣做的好處是關卡編輯器調整的效果直接就是游戲的效果,但是對於程序的重用性來說可能不是很好,比如說要用到另外一個游戲項目中就比較難,除非兩個游戲類型相同,只要把場景和角色數據換一下,還有做下一代產品也沒有問題,只要根據式樣增加調試菜單的功能就可以了。
5.人工智慧和游戲邏輯開發,這部分日本和歐美的游戲開發模式也有很大不同,在歐美游戲公司中運用腳本語言開發很普遍,所以這部分程序開發主要是用腳本語言編寫,而且腳本程序和游戲程序的耦合性很低,有單獨的編輯、編譯和調試環境,這樣比較利於游戲程序和關卡設計開發分開,同時並行開發,所以一般他們都會有專門做關卡設計的程序員崗位。而日本游戲公司腳本語言一般和游戲的耦合性比較高,一般通過一些語言的宏功能和一些編譯器的特定功能來完成一個簡單的腳本系統,所以一般這些腳本程序只能在游戲程序中進行調試,而不能在一個單獨的腳本編輯,編譯環境中進行開發。
6.游戲GUI界面(菜單),主要是指那些游戲中用戶界面設計,有做的復雜,有簡單的,做的簡單就是2D GUI界面,做的復雜有3D GUI界面。
7.游戲開發工具主要包含關卡編輯器,角色編輯器,資源打包管理,DCC軟體的插件工具等開發。
8.支持區域網對戰的網路引擎開發,主要解決區域網網路發包和延遲處理,通訊同步的問題,有同步通訊和非同步通訊兩種做法,非同步通訊用於那些對運行幀速要求比較高的游戲,同步通訊相對非同步通訊來說效率相對低,但是同步通訊的編程模型相對非同步通訊來得簡單一些。
9.支持互聯網對戰的網路引擎開發,目前大部分網游都是C/S結構的,伺服器端軟體配置管理,伺服器程序的最優化,還有游戲大廳、組隊、游戲邏輯處理、道具管理、收費系統等。另外還有一些網路系統是C/S和P2P兩種結構混合的,如XBOX Live等.
② 一個游戲的物理引擎到底是什麼有什麼用
物理引擎通過為剛性物體賦予真實的物理屬性的方式來計算運動、旋轉和碰撞反映。為每個游戲使用物理引擎並不是完全必要的—簡單的「牛頓」物理(比如加速和減速)也可以在一定程度上通過編程或編寫腳本來實現。然而,當游戲需要比較復雜的物體碰撞、滾動、滑動或者彈跳的時候(比如賽車類游戲或者保齡球游戲),通過編程的方法就比較困難了。
③ 物理引擎 與游戲引擎 有什麼區別
簡單點來講「物理引擎」並不是指那些實實在在的物理效果,而是模擬真實世界中各種物體運動的規律來運動,以提供一種比較真實的效果。
「游戲引擎」說白了就是游戲軟體的主程序。是指一些已編寫好的可編輯游戲系統或者一些互交式實時圖像應用程序的核心組件。
④ 物理引擎和虛擬引擎是什麼東西
為每個游戲使用物理引擎並不是完全必要的——簡單的「牛頓」物理(比如加速和減速)也可以在一定程度上通過編程或編寫腳本來實現。然而,當游戲需要比較復雜的物體碰撞、滾動、滑動或者彈跳的時候(比如賽車類游戲或者保齡球游戲),通過編程的方法就比較困難了。物理引擎使用對象屬性(動量、扭矩或者彈性)來模擬剛體行為,這不僅可以得到更加真實的結果,對於開發人員來說也比編寫行為腳本要更加容易掌握。 好的物理引擎允許有復雜的機械裝置,像球形關節、輪子、氣缸或者鉸鏈。有些也支持非剛性體的物理屬性,比如流體。 物理引擎可以從另外的廠商購買,而一些游戲開發系統具備完整的物理引擎。
⑤ 引擎是什麼
引擎 yǐnqíng 【英】engine引擎是發動機的核心部分,因此習慣上也常用引擎指發動機。引擎的主要部件是氣缸,也是整個汽車的動力源泉。嚴格意義上世界上最早的引擎由一位英國科學家在公元一六八零年發明。在游戲的編寫中,引擎指用於控制所有游戲功能的主程序。另有名為《引擎》的日劇。
有人把引擎稱為發動機,其實,發動機是一整套動力輸出設備,包括變速齒輪、引擎和傳動軸等等,可見引擎只是整個發動機的一個部分,但卻是整個發動機的核心部分,因此把引擎稱為發動機也不為過。
對於引擎,大家都應該不陌生,引擎的主要部分就是汽缸,這里就是整個汽車的動力源泉。汽缸的工作原理我在這里簡單介紹一下,汽缸包括缸體、進氣孔、輸油孔、出氣孔、活塞和火花塞(汽油機)。汽缸通過進氣孔和輸油孔注入汽油和空氣,在汽缸內充分混合,當火花塞點燃混合物後,混合物猛烈地爆炸燃燒,推動活塞向下運動,並產生動力。同時,爆炸氣巨大的壓力還推開單向閥的出氣孔,排出廢氣。而後,汽缸內殘余廢氣逐漸變冷,氣壓變低,汽缸外部的大氣壓又推動活塞向上運動,以准備進行下一次爆炸。這就是簡單的原理。現也用作IT方面的術語,指經包裝過的函數庫,方便別人調用,如搜索引擎、圖形引擎、物理引擎等。
⑥ Bullet 物理引擎是什麼
Bullet 是一個開源的第三方 物理引擎lib
可以通過下載源文件
或者SDK版本來使用
官方網址是
http://www.bulletphysics.com/
官方網站有子彈的英文手冊 上面有使用的詳細說明
⑦ js物理引擎有那些各有什麼特點
要看題主的需求了。如果需要很多力學模擬可以看下box2d-js,如果是准備做一些需要光學渲染的3D的動畫或者游戲的話推薦three.js 文檔很全,demo也很多。
⑧ 3D物理引擎與2D物理引擎使用時的 不同碰撞函數的調用有什麼不一樣
3D物理引擎多了一個維度。
2D和3D物理引擎兩者在使用上大體相似,主要區別是3D物理引擎比2D物理引擎多了一個維度。物理引擎是游戲設計中最為重要的步驟,主要包含剛體、碰撞、物理材質以及關節運動等。
游戲中物理引擎的作用是模擬當有外力作用到對象上時對象間的相互影響,比如賽車游戲中,駕駛員駕駛賽車和牆體發生碰撞,進而出現被反彈的效果。物理引擎在這里用來模擬真實的碰撞後效果。通過物理引擎,實現這些物體之間相互影響的效果是相當簡單的。
⑨ 物理引擎的作用是什麼呢
物理引擎通過為剛性物體賦予真實的物理屬性的方式來計算運動、旋轉和碰撞反映。為每個游戲使用物理引擎並不是完全必要的—簡單的「牛頓」物理(比如加速和減速)也可以在一定程度上通過編程或編寫腳本來實現。然而,當游戲需要比較復雜的物體碰撞、滾動、滑動或者彈跳的時候(比如賽車類游戲或者保齡球游戲),通過編程的方法就比較困難了。物理引擎使用對象屬性(動量、扭矩或者彈性)來模擬剛體行為,這不僅可以得到更加真實的結果,對於開發人員來說也比編寫行為腳本要更加容易掌握。好的物理引擎允許有復雜的機械裝置,像球形關節、輪子、氣缸或者鉸鏈。有些也支持非剛性體的物理屬性,比如流體。物理引擎可以從另外的廠商購買,而一些游戲開發系統具備完整的物理引擎。但是要注意,雖然有的系統在其特性列表中說他們有物理引擎,但其實是一些簡單的加速和碰撞檢測屬性而已。當NVIDIA宣布正式收購Ageia及該公司的PhysX物理軟硬體組件後,所有人都在期待,期待著NVIDIA會推出新的有關物理運算的東西出來。果不其然,如今當NVIDIA發布Forceware 177.79驅動後,意味著GeForce8/9和GT200系列的GPU都支持PhysX引擎。這是因為NVIDIA將PhysX引擎集成到CUDA架構的物理運算中。這樣,顯卡就能自動進行物理加速運算。當然,PhysX在游戲上的運用僅僅是物理引擎眾多運用的一方面,在整個CUDA通用運算領域上,都會有物理引擎的身影,比如計算天體間在相互引力的作用下,各自的運動軌跡等。
此次在GDC09上展示的Havok物理引擎包括了三個場景,分別為爆破、布料和AI計算。演示平台使用了i7 965至尊版處理器搭配HD4870X2顯卡,運行效果比較流暢。不過唯一讓人感到稍稍驚訝的是,Havok物理引擎並非是專門針對ATI顯卡而設計,它能夠支持OpenCL架構(布料演示DEMO就是基於OpenCL架構開發的),也就是說NVIDIA的GeForce 8以上級別顯卡也很有可能能夠支持Havok物理引擎。