青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

云海航行Q+偉的幻想鄉

熱愛探索未知事物的coder 、 writer 、watcher and thinker
posts - 16, comments - 6, trackbacks - 0, articles - 0

視頻游戲(VideoGame),是絕對離不開圖形的。計算機圖形學(Computer Graphic Science),涉及圖形硬件(GPU)、圖像標準(bmp,png,jpeg..)、渲染算法(render method)、動畫(Animation)、虛擬現實(VR)等。而跟游戲相關的主要是圖像和圖形(Kinect類的游戲涉及計算機視覺,也就是圖像分析、模式匹配)。注意,圖像跟圖形要區分開,不嚴格地說,圖像是標量,指通過拍照、掃描等方式得到的位圖(Bitmap);圖形是矢量,指根據數據、公式、算法用計算機生成的圖形。而3D模型基本就是圖形和圖像在三維空間上的組合,內部是一系列的頂點坐標和貼圖坐標的組合及貼圖文件等。

        

大二我在做一個2D游戲《東方千⑨譚》的時候,一開始繪圖使用的是QT的圖形庫,讀取圖片、顯示圖片都可以用這個庫做到。后來做Demo,測試同時繪制300個人物(64x64的貼圖)的時候,幀率已經無限低了。后來知道了是因為這個庫的繪圖API內部是軟件渲染的。軟件渲染,顧名思義,即是用CPU來處理圖像顯示的工作,換言之就是自不量力地搶了GPU的活來干。最后我明白了,拿QT來做游戲是個很蠢的行為。而要加快渲染的速度,就需要使用硬件渲染的方法。也就是使用3D圖形APIOpenGL / Direct3D

 

我是在大一的暑假開始接觸3D圖形學,至今算是學了一年有余。我個人認為,對于3D和圖形學,必須搞清楚兩者之間的關系。計算機世界里的3D其實就是數學,舉例來說就是,線性代數中平移、旋轉、縮放的應用,曲線曲面技術中的Bezier、和NURBS,還有計算機動畫的插值算法(樣條插值、平滑插值、線性插值)等。而3D圖形學要做的就是,怎樣根據物體的三維數據來模擬顯示物體,即如何渲染到二維平面,再輸出到顯示器。

這個工作是有多個步驟的,稱作圖形處理流水線,或者渲染管道。這條流水線大部分工作都是GPU來執行,而實際上3D數學部分(矩陣變換或四元數計算)也是GPU的工作,目前通過CudaOpenCL還可以利用GPU做圖形學以外的事,這一個領域叫做通用并行計算技術。

關于渲染管道(pipeline),OpenGLDirectX的教程肯定都會說到。要搞懂什么是管線,估計剛學圖形學的人都需要一定時間。學一套3D API 不是什么難事,有一本好的入門圖書和一份API查詢手冊就夠了。學習3D圖形學重要的是理解它的工作原理。如矩陣變換的旋轉矩陣,就是比較復雜的一個core矩陣,要搞懂它就要去看一遍這個矩陣的推導,再看下旋轉矩陣是如何應用到實際中去的。

 

關于OpenGLDirect3D的抉擇問題,初學3D圖形學肯定會有,我個人覺得OpenGL是初學者必學的,不僅跨平臺性強(D3D只能用在WindowsWP7Xbox,而OGL幾乎所有平臺都支持,另外,假如WebGL,勢必會帶來一場網站開發的革命),而且接口設計得簡單易懂。D3D應該是在實際項目開發的時候,再根據環境條件等來考慮是否使用。如果OpenGL學得差不多了,學D3D不過就是學習另一套API的事。下面是OpenGL Vs Direct3D的一篇文章,值得一看:

OpenGL 3 & DirectX 11: The War Is Over》:繪圖 API 終戰之日?

http://blog.monkeypotion.net/reading/gameprogreading/opengl-versus-directx-the-war-is-over

OpenGL的教程,個人推薦《OpenGL的超級寶典4th(Super Bible),這里就不做介紹了。

 

3D圖形學的高速發展是從3D游戲之父卡馬克開發的《DOOM》出現在人們面前算起的。(推薦一本書《DOOM啟示錄》,講述了卡馬克和羅梅洛兩位游戲界傳奇人物的傳奇故事,絕對霸氣,震撼人心)至今3D圖形學發展十幾二十年,固定渲染管道也是很多年的產物了。現在這個管道不再是完全讓計算機管理,而是其中的幾個環節可以由程序員來控制。這個技術就叫shader,著色器(頂點著色器、片段著色器、 幾何著色器)。

Shader編程是完全不同于其他語言的,因為它考慮的是并行的問題,并不是線性的問題。Shader語言有三種,OpenGLGLSL, D3DHLSL,還有NvidiaCg(此Cg不是通常意義的CG,而是C for graphic,即用于圖像的類C語言)。Cg是由Nvidia提出的,目的是為了調和OpenGLDirectX的矛盾。Cg的優點在于,它是處在GLSLHLSL兩者之上的,用Cg寫的著色器代碼編譯后就變成GLSL或者HLSL的代碼,shader程序員只需寫一份Cg語言的代碼就可以了(Cg語言的語法幾乎和HLSL一樣)。

另外可以看一下這篇文章:《著色語言(Shader Language),以及HLSL VS GLSL VS CG

鏈接:http://bbs.gameres.com/showthread.asp?threadid=138918&page=1

Cg的各種信息和SDKSample下載可以到英偉達官網查找:

http://developer.nvidia.com/cg-toolkit-archive

 

學習Shader編程,有很多不錯的書,雖然我都沒看過,比如Nvidia的《GPU gem123,這3本有中文版。另外《Shader X1-7,看介紹也是很不錯的,不過基本沒中文版。

Shader 可以實現目前大部分的實時、非實時渲染算法(陰影、光照等)。注意,Shader著色器語言是用來實現渲染算法的,當然存在有人利用shader語言來做AI等事情(這些以后估計都會是cudaOpenCL的工作)。

 

說回游戲。游戲實際上并不會用到太多最新最前沿的技術,因為要考慮到老百姓的PC配置都是參差不齊的。頂點著色器和片段著色器,現在大部分的顯卡都至少支持最基本的功能,而Geometry shader,就仍未普及,即只有近幾年內的顯卡才有這個能力。

 

對于二維平面游戲,圖形圖像技術通常是用來做特效,完全用貼圖的游戲已經過時了。例如可以用shader做模糊(Blur)、扭曲、灰度圖化、強光等等PS中的濾鏡效果,還有利用3D API來增強畫面效果,如3D旋轉菜單、游戲場景三維化(實際上只是起美化的作用,如東方Project的一系列彈幕作)。并且存在有二維游戲中的貼圖是通過把由三維模型壓到二維平面而得到的。

 

三維游戲,就復雜太多了,甚至比做計算機動畫還復雜,因為不僅要考慮效果、還要考慮效率(達到60/秒左右的圖像輸出能力就是實時渲染)。在效果上有非真實渲染和真實性渲染。真實性渲染就是盡可能地仿真,如如何實現現實中的鏡面反射、次表面散射、霧、鏡頭光暈、陰影等。非真實渲染就是將人物、場景渲染成卡通效果。利用shader就可以實現這些效果。

 

         如果是小團隊開發游戲,而且打算自己做一個商業級的3D游戲引擎,那這個小團隊處境堪憂。首先技術硬實力要過關,這不是一件個人英雄可以辦到的事(3D算法、渲染算法,沒有潛心學習個幾年,做出來的引擎不會強到哪里去)。全3D游戲涉及的技術太多,與其冒風險自己開發一個引擎,不如花錢買一個商業級的或者使用開源引擎(LGPL license的應該有)。而如果是做2D游戲,應用一些shader特效來強化視覺沖擊力倒是可以。

 

圖形只是游戲的一個方面,還有很多方面需要重視,像游戲引擎架構(可擴展性)、

腳本引擎、聲音引擎、GUI系統、游戲編輯器、資源管理、版本更新方法等,網游的話就是另一個話題了。本人對網游暫無研究,最難的部分可能是網絡安全和數據傳輸,同步等。

 

————————————————————————-

一不小心扯了2000+字了,也不知我的這篇經驗總結對讀者有沒有啟發作用。現在說說我自己。我是在大學時開始接觸編程,興趣不算太濃,只是因為我自己喜歡玩游戲,所以才報了軟件工程專業..一開始總是在想學編程是否有前途,是不是真的很難學。而其實現在還是在想。畢竟誰也不想隨隨便便就過了一生。對于游戲開發,我也僅僅是個初學者,我不奢望能掌握游戲開發的全部知識,只是夢想著有一天,能拿著自己的游戲,在某個游戲展上介紹自己的游戲~

工科專業,任何一個學起來都不會輕松,如果是要成為領域高手。大學本科,確實是打基礎(不只是專業課程學習)的時期,而也是尋找人生方向的時期。這個時候很容易浮躁,可能因為不喜歡自己的專業還是沒有信心。個人認為,無論你的打算是怎樣,只要生活態度是好的,學習態度是向上的,對自己所作的每一個決定都負責,每一天都過得充實、健康,那就夠了。不要為明天憂慮。

Feedback

# re: [游戲開發經驗分享]關于游戲中的圖形學   回復  更多評論   

2011-09-20 02:29 by K.V
看你挺清醒的,生活應該也是充實快樂的吧。珍惜大學的時光。加油。
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品毛片a∨一区二区三区|国| 亚洲国产成人porn| 欧美日韩1区| 国产精品乱人伦中文| 亚洲国产精品va在线看黑人| 亚洲欧美另类久久久精品2019| 欧美激情二区三区| 午夜精品福利一区二区三区av| 嫩草国产精品入口| 精品99一区二区| 性做久久久久久久免费看| 999在线观看精品免费不卡网站| 狂野欧美一区| 国产日韩精品入口| 亚洲免费一在线| 日韩一级精品视频在线观看| 免费av成人在线| 影音先锋久久精品| 狂野欧美性猛交xxxx巴西| 午夜精品福利视频| 国产精品xxxxx| 中文精品在线| 一区二区三区精品| 欧美性色aⅴ视频一区日韩精品| 亚洲精品久久视频| 欧美激情视频在线播放| 欧美高清视频一二三区| 国外成人免费视频| 国产一区二区高清| 羞羞答答国产精品www一本 | 欧美一区二区三区免费视频| 最新亚洲电影| 欧美激情精品久久久久久| 亚洲国产日韩美| 欧美大片在线看免费观看| 巨胸喷奶水www久久久免费动漫| 经典三级久久| 亚洲成色777777女色窝| 欧美精品日韩精品| 亚洲欧美一区二区原创| 午夜免费日韩视频| 精品51国产黑色丝袜高跟鞋| 欧美成人伊人久久综合网| 欧美风情在线观看| 亚洲一区二区三区免费观看| 亚洲一区二区日本| 国产亚洲一二三区| 欧美va天堂| 国产精品久久国产精麻豆99网站| 欧美一区二区三区另类| 久久久久国内| 一区二区三区**美女毛片| 99国产精品久久久| 一区在线电影| 亚洲国产高清在线| 国产精品伦理| 欧美激情一区在线| 国产精品日韩欧美大师| 免费成人av资源网| 欧美色精品天天在线观看视频| 欧美中文字幕第一页| 欧美高清日韩| 久久午夜电影网| 欧美美女bbbb| 久久精品视频网| 欧美日产一区二区三区在线观看| 久久精品在线| 欧美日韩在线直播| 欧美不卡在线| 国产乱肥老妇国产一区二 | 亚洲高清网站| 国产欧美视频一区二区三区| 亚洲第一精品在线| 国产伦精品一区二区三区照片91 | 亚洲一区二区欧美| 一区二区三区四区五区在线| 久久嫩草精品久久久久| 久久av一区二区三区漫画| 欧美精品1区2区3区| 欧美刺激性大交免费视频| 国产日韩精品一区二区| 一区二区三区精品| 99re6这里只有精品| 久久久久这里只有精品| 亚洲自拍偷拍福利| 欧美日韩视频在线| 欧美一区国产在线| 国产色婷婷国产综合在线理论片a| 久久亚洲影音av资源网| 国产精品v欧美精品v日本精品动漫| 欧美国产一区二区| 在线看国产日韩| 久久国产88| 久久久久久穴| 精品9999| 蜜臀av性久久久久蜜臀aⅴ| 裸体素人女欧美日韩| 一区二区三区无毛| 另类图片国产| 欧美freesex8一10精品| 在线激情影院一区| 久久久久成人精品| 免费国产一区二区| 亚洲七七久久综合桃花剧情介绍| 久久精品国产精品亚洲| 久久亚洲国产精品一区二区| 国产自产女人91一区在线观看| 欧美一区国产二区| 老司机一区二区三区| 在线播放视频一区| 久久免费视频在线观看| 亚洲国产美女| 亚洲色图综合久久| 欧美网站在线观看| 欧美亚洲免费电影| 亚洲午夜日本在线观看| 欧美精品在线免费观看| 免费在线观看成人av| 久久久www成人免费精品| 欧美69wwwcom| 一区二区三区欧美视频| 亚洲欧美国产日韩天堂区| 欧美黄色影院| 亚洲校园激情| 亚洲人成在线播放网站岛国| 欧美日韩国产大片| 欧美日韩日本视频| 亚洲一区中文| 美国十次成人| 国内久久精品视频| 欧美精品www| 欧美高清视频一区| 亚洲午夜精品一区二区三区他趣| 久久在线视频在线| 99在线热播精品免费| 久久精品官网| 狠狠色综合色区| 欧美日韩在线播| 亚洲精品免费一二三区| 亚洲欧美日韩第一区 | 午夜精品视频在线观看| 国产区在线观看成人精品| 欧美成人乱码一区二区三区| 亚洲一区图片| 久久精品99无色码中文字幕| 日韩视频在线一区二区三区| 久久国产加勒比精品无码| 日韩视频免费观看| 一区二区在线观看av| 国产精品v欧美精品∨日韩| 看欧美日韩国产| 在线不卡亚洲| 亚洲国产aⅴ天堂久久| 欧美亚洲专区| 一本大道久久a久久综合婷婷| 亚洲精品一区二| 男男成人高潮片免费网站| 欧美福利视频网站| 久久久久久97三级| 亚洲成人在线观看视频| 老司机午夜精品视频| 亚洲欧洲99久久| 欧美.com| 亚洲精品美女久久7777777| 亚洲欧美综合| 99亚洲视频| 久久九九99| 91久久精品www人人做人人爽| 国产在线精品成人一区二区三区| 久久久久久69| 91久久国产自产拍夜夜嗨| 日韩香蕉视频| 亚洲国产黄色片| 国产精品大片wwwwww| 亚洲欧美一区二区三区久久| 亚洲精品美女91| 日韩午夜电影av| 国产精品一级在线| 久久亚洲一区二区| 久久av一区二区三区| 欧美黄色免费网站| 小辣椒精品导航| 亚洲综合99| 亚洲综合色丁香婷婷六月图片| 国产真实久久| 久久久亚洲精品一区二区三区| 久久久九九九九| 夜夜狂射影院欧美极品| 久久女同互慰一区二区三区| 欧美日韩一区二区精品| 欧美午夜大胆人体| 久久―日本道色综合久久| 999在线观看精品免费不卡网站| 91久久久一线二线三线品牌| 亚洲欧美综合另类中字| 亚洲国产精品成人精品| 久久人人爽人人爽爽久久| 欧美激情一区二区| 久久xxxx精品视频| 日韩亚洲视频在线|