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

云海航行Q+偉的幻想鄉(xiāng)

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

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

        

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

 

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

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

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

 

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

OpenGL 3 & DirectX 11: The War Is Over》:繪圖 API 終戰(zhàn)之日?

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

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

 

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

Shader編程是完全不同于其他語言的,因為它考慮的是并行的問題,并不是線性的問題。Shader語言有三種,OpenGLGLSL, D3DHLSL,還有NvidiaCg(此Cg不是通常意義的CG,而是C for graphic,即用于圖像的類C語言)。Cg是由Nvidia提出的,目的是為了調(diào)和OpenGLDirectX的矛盾。Cg的優(yōu)點在于,它是處在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下載可以到英偉達(dá)官網(wǎng)查找:

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

 

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

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

 

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

 

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

 

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

 

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

 

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

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

 

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

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

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

Feedback

# re: [游戲開發(fā)經(jīng)驗分享]關(guān)于游戲中的圖形學(xué)   回復(fù)  更多評論   

2011-09-20 02:29 by K.V
看你挺清醒的,生活應(yīng)該也是充實快樂的吧。珍惜大學(xué)的時光。加油。

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美激情亚洲另类| 国产精品伊人日日| 久久国产一区二区三区| 国产精品毛片高清在线完整版| 亚洲黄色成人久久久| 91久久在线视频| 国产精品99久久久久久久vr| 欧美激情第1页| 国产精品久久久久久影院8一贰佰| 亚洲免费成人av| 久久久久久亚洲综合影院红桃 | 国产亚洲精品久久飘花| 亚洲尤物精选| 亚洲日本欧美在线| 亚洲调教视频在线观看| 亚洲福利视频专区| 美乳少妇欧美精品| 欧美一区91| 亚洲无限av看| 亚洲人成网站色ww在线| 欧美高清视频在线| 久久亚洲精品伦理| 久久久久免费观看| 亚洲另类一区二区| 国产精品二区二区三区| 欧美成年人网站| 欧美日本在线看| 欧美日本不卡视频| 国产精品国产三级国产普通话三级| 久久精品官网| 亚洲国产精品一区二区三区| 日韩一级免费观看| 亚洲第一福利视频| 欧美一二三视频| 亚洲国产成人精品视频| 性欧美精品高清| 亚洲男女自偷自拍| 久久国产精品一区二区三区四区 | 欧美v亚洲v综合ⅴ国产v| 久久精品中文| 日韩视频在线观看免费| 亚洲国产合集| 亚洲国产精品福利| 夜夜爽99久久国产综合精品女不卡| 久久久噜噜噜久久久| 亚洲亚洲精品在线观看 | 免费日韩一区二区| 欧美一区二区视频在线| 欧美 日韩 国产 一区| 欧美不卡高清| 日韩一区二区电影网| 久久福利影视| 国产精品视频一| 亚洲乱码国产乱码精品精天堂| 欧美一区二视频| 亚洲人成小说网站色在线| 亚洲综合清纯丝袜自拍| 亚洲无限av看| 久久综合九色综合欧美就去吻| 欧美日韩精品一区二区三区| 国产亚洲精品bt天堂精选| 亚洲久久在线| 亚洲黄网站在线观看| 欧美成人a∨高清免费观看| 欧美一区不卡| 国产精品自拍网站| 99国内精品久久| 一区二区三区四区蜜桃| 欧美精品久久久久久久久老牛影院| 久久久久久综合| 国产视频在线观看一区二区| 一区二区三区四区国产精品| 亚洲图片激情小说| 国产精品婷婷| 久久精品在线观看| 欧美日韩一区成人| 欧美亚洲网站| 欧美丰满高潮xxxx喷水动漫| 在线精品国产成人综合| 免费视频亚洲| 亚洲视频香蕉人妖| 久久欧美肥婆一二区| 亚洲区国产区| 国产精品视频网址| 噜噜噜躁狠狠躁狠狠精品视频 | 亚洲国产婷婷香蕉久久久久久99| 久久亚洲私人国产精品va媚药| 久久一区二区视频| 中国女人久久久| 一色屋精品视频在线观看网站| 亚洲午夜伦理| 久久久久久97三级| 亚洲国产精品黑人久久久| 久久狠狠亚洲综合| 亚洲日本电影| 久久久久久久久伊人| 亚洲一级二级| 亚洲免费av片| 亚洲区一区二| 一区二区三区精品在线| 久久精品亚洲一区二区| 中文国产亚洲喷潮| 亚洲电影av| 在线精品国精品国产尤物884a| 欧美亚日韩国产aⅴ精品中极品| 亚洲制服av| 亚洲国产日韩在线一区模特| 制服丝袜亚洲播放| 亚洲黄色天堂| 亚洲福利免费| 久久av红桃一区二区小说| 99精品国产在热久久下载| 亚洲国产专区| 亚洲国产欧美久久| 亚洲国产精彩中文乱码av在线播放| 美女视频黄免费的久久| 鲁大师成人一区二区三区| 浪潮色综合久久天堂| 亚洲国语精品自产拍在线观看| 欧美高清在线一区二区| 欧美国产日韩一区| 亚洲精品资源| 亚洲国产精品ⅴa在线观看| 欧美一区二区视频在线| 欧美在线观看www| 久久天天躁狠狠躁夜夜爽蜜月| 欧美资源在线| 欧美大片18| 亚洲在线免费观看| 欧美精品久久久久久久久久| 国产精品久久久久久久第一福利 | 久久精品视频在线看| 免费h精品视频在线播放| 免费欧美在线视频| 欧美日韩在线一二三| 亚洲高清在线视频| 欧美在线观看一二区| 精品成人在线视频| 久久动漫亚洲| 亚洲女爱视频在线| 国产精品国产三级欧美二区| 亚洲毛片在线观看| 亚洲电影av在线| 久久一区二区精品| 在线观看的日韩av| 美女性感视频久久久| 久久se精品一区精品二区| 欧美日本高清| 在线中文字幕日韩| 亚洲靠逼com| 欧美三级视频在线| 亚洲一级在线观看| 性欧美精品高清| 亚洲视频日本| 国产精品久久中文| 欧美一区二区三区四区高清 | 亚洲一区黄色| 国产精品一区在线播放| 亚洲校园激情| 日韩天堂在线视频| 欧美日韩综合| 久久九九久精品国产免费直播| 亚洲午夜精品17c| 国产女人精品视频| 亚洲国产成人av在线| 欧美性大战xxxxx久久久| 久久久国产一区二区| 欧美精品久久99| 久久久久久香蕉网| 欧美一区二区高清在线观看| 国产精品一二三视频| 欧美一区观看| 久久久夜色精品亚洲| 最新中文字幕一区二区三区| 一区二区激情| 国产午夜精品一区理论片飘花| 欧美77777| 亚洲激情校园春色| 日韩视频精品| 亚洲第一精品福利| 亚洲一区二区动漫| 一本色道久久综合精品竹菊| 另类激情亚洲| 小黄鸭精品aⅴ导航网站入口| 欧美成人高清视频| 久久亚洲欧美国产精品乐播| 欧美日韩美女在线| 免费视频亚洲| 黑人巨大精品欧美一区二区小视频 | 国产日韩一区在线| 亚洲欧美国内爽妇网| 欧美一区国产在线| 国模一区二区三区| 久久先锋资源| 欧美激情亚洲国产| 一区二区三区视频在线播放| 国产精品久久久久9999| 亚洲欧美伊人| 亚洲国产精品一区| 先锋亚洲精品|