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

Gattaca

標(biāo)題是記憶非常深刻的一部電影,《太空夢(mèng)》,很好的勵(lì)志片。自己一個(gè)人在電視上看的,那種感覺(jué)現(xiàn)在還記得。

第2章 - 調(diào)色板, 游戲概念, 雙緩沖區(qū)等等

注:原文地址:http://scorpioncity.com/dj2.html


1、圖像模式

 

按照用多少位來(lái)存儲(chǔ)屏幕上的一個(gè)像素,有好多種屏幕模式。使用更多的位,就能顯示更多的顏色,但會(huì)占用更多的顯存。
  • 1、2、4、8位 “indexed”模式(8位就是通常所說(shuō)的"256色");
  • 16位(64K色)“high-color” 模式;
  • 24位(16.7M色)“真彩色”模式;
  • 32位 RGBA 模式,前三個(gè)字節(jié)和24位真彩色模式一樣,第4個(gè)字節(jié)用做“alpha-channel”,即透明度。
這些模式都是可用的。下面說(shuō)一下分辨率:
  • 320x200
  • 320x240
  • 640x400
  • 640x480
  • 800x600
  • 1024x768
  • 1280x1024
  • 1600x1200
現(xiàn)在比較常用的是640x480(好像年代比較久遠(yuǎn)了這篇文章,我覺(jué)得1024x768應(yīng)該比較常用吧)
顯示器通常是3/4的縱橫比,所以沿著高的那個(gè)邊擁有的像素點(diǎn)應(yīng)該是寬的那個(gè)的3/4,這樣像素點(diǎn)的長(zhǎng)寬比就是1,所以像素點(diǎn)就是正方形,也就是說(shuō)100個(gè)像素在一個(gè)方向上的物理長(zhǎng)度和另一個(gè)方向上的相當(dāng)。但是320x200不是這樣子滴,實(shí)際上它的像素點(diǎn)是稍顯瘦高一點(diǎn)的。

2、顏色原理


有好多種表示顏色的方法,即“顏色模型”,比較常見(jiàn)的一個(gè)是“RGB”,幾乎所有可見(jiàn)的顏色都可以用紅、綠、藍(lán)三種顏色按照各種比例組合生成。通常會(huì)用三個(gè)字節(jié)來(lái)存儲(chǔ)顏色,每位表示一個(gè)主色的強(qiáng)度,從0到255。比如純的亮紅色就是#ff0000,紫色是#ff00ff,灰色是#969696,等等。
下面是一些可以用來(lái)表示顏色的c代碼:

 

struct SColor
{
    
int r;
    
int g;
    
int b;
}
;

SColor make_rgb( 
int r, int g, int b )
{
    SColor ret;
    ret.r 
= r;
    ret.g 
= g;
    ret.b 
= b;
    
return ret;
}


或者你可能用一個(gè)無(wú)符號(hào)32位整型來(lái)儲(chǔ)存RGB顏色,0-7位存藍(lán)色,8-15位綠色等等。

typedef unsigned int rgb_color;

#define MAKE_RGB(r,g,b) ( ((r) 
<< 16| ((g) << 8| (b) )


當(dāng)然還有其他的顏色模型,比如HSV(Hue 色調(diào), Saturation 飽和度, Luminance 亮度),但我不打算涉及它。

2.1 High-color和true-color模式



在這兩種模式下,屏幕像素按照他們相應(yīng)的RGB值存儲(chǔ)到顯存里。比如,如果屏幕左上角的像素點(diǎn)是綠色,那么在true-color模式下,顯存里前三個(gè)字節(jié)就是0,255,0。而在high-color模式下,對(duì)應(yīng)的RGB值分別用5、6、5位來(lái)存儲(chǔ),即前5位紅色,接下來(lái)6位綠色,然后5位藍(lán)色,所以在這個(gè)模式下顯存對(duì)應(yīng)的就是兩個(gè)字節(jié),二進(jìn)制表示就是 00000111 11100000。

 

2.2 基于調(diào)色板或者indexed模式


Indexed模式使用一個(gè)“look up table”(LUT)的原理,即顏色查看表,通常這種模式使用8位圖像模式,即256色,屏幕上的每個(gè)像素都用一個(gè)字節(jié)來(lái)表示,所以每次只能顯示256 種顏色,所以這256種顏色就按照每種3個(gè)字節(jié)存到LUT里,顯卡每次就按照LUT里的值確定要顯示的顏色。
用Indexed模式創(chuàng)建一個(gè)程序是非常痛苦的,尤其是搞圖像藝術(shù)的,但使用Indexed模式還是有一些優(yōu)勢(shì)的:

    * 需要很少的內(nèi)存
    * 運(yùn)行會(huì)更快,因?yàn)樾枰獋鬏數(shù)淖止?jié)變少了
    * 一些有趣的“調(diào)色板動(dòng)畫(huà)”技巧,在其他模式下很難完成的在Indexed模式下簡(jiǎn)直太容易了。你可以只改變LUT里的值去改變屏幕顏色,而不需要改變內(nèi)存里每個(gè)像素對(duì)應(yīng)的值。例如,一個(gè)淡出效果可以改變LUT里的RGB值到0來(lái)實(shí)現(xiàn)。
    * 當(dāng)你有一個(gè)紋理需要很多內(nèi)存的時(shí)候,有些3D加速器支持Indexed模式的紋理。

2.3 ModeX


ModeX是一個(gè)特殊的 VGA 256色模式,這種模式下顯存的內(nèi)容會(huì)按照一個(gè)稍微復(fù)雜點(diǎn)planar(二維)格式。這個(gè)模式下的分辨率可以非常高,DirectDraw知道如何寫(xiě) ModeX表面,但是windows GDI并不會(huì),所以當(dāng)你混合這兩種不同類(lèi)型表面的時(shí)候要小心。當(dāng)設(shè)置DirectDraw全屏模式時(shí)可以選擇是否允許DirectDraw創(chuàng)建ModeX 表面。這些日子里你可能想避開(kāi)ModeX。

 

2.4 Pitch/Stride


雖然屏幕分辨率可能是640x480x32,但這并不是說(shuō)每行像素會(huì)占用640x4個(gè)字節(jié)的顯存。因?yàn)樗俣壬系脑颍@卡存儲(chǔ)的這些表面寬度經(jīng)常比他們邏輯上要寬。例如,最大支持1024x768的顯卡可能會(huì)把所有從320x200到1024x768的模式內(nèi)部實(shí)現(xiàn)為1024x768模式,所以表面的右邊會(huì)留下空白(呵呵,默認(rèn)左對(duì)齊),這個(gè)分配給表面實(shí)際的寬度就稱(chēng)為表面的Pitch(或者Stride),知道表面的Pitch是非常重要的,不管它是一個(gè)2D DirectDraw 表面還是紋理貼圖,可以使用 DirectDraw 查詢(xún)表面的Pitch。

3、一些游戲概念你需要知道

下班了,以后繼續(xù)。。。

posted on 2007-05-18 16:18 Gattaca 閱讀(714) 評(píng)論(1)  編輯 收藏 引用 所屬分類(lèi): DirectX

評(píng)論

# re: 第2章 - 調(diào)色板, 游戲概念, 雙緩沖區(qū)等等 2008-09-09 16:15 interim

不錯(cuò)不錯(cuò),入門(mén)  回復(fù)  更多評(píng)論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            99精品视频免费观看| 国产午夜精品全部视频播放| 久久亚洲国产精品一区二区| 欧美午夜宅男影院| 99精品视频一区二区三区| 亚洲承认在线| 亚洲欧美日韩在线综合| 欧美日本不卡高清| 在线日韩av| 一区二区三区久久精品| 国产精品99一区| 一本色道久久综合狠狠躁的推荐| 久久夜色精品亚洲噜噜国产mv| 亚洲第一精品夜夜躁人人爽 | 日韩视频三区| 国产精品女主播一区二区三区| 亚洲午夜高清视频| 久久久国产成人精品| 亚洲深夜激情| 欧美不卡视频| 欧美1区2区视频| 久久久久久久精| 亚洲欧美日韩高清| 久久久久久自在自线| 亚洲综合久久久久| 久久综合久久综合久久综合| 国产日韩欧美精品| 亚洲第一区在线| 亚洲欧美日韩精品久久久久| 中文亚洲字幕| 欧美日韩一区自拍| 亚洲精品一区二区在线| 91久久线看在观草草青青| 久久久久久一区| 欧美成ee人免费视频| 在线播放豆国产99亚洲| 久久精精品视频| 久久天堂国产精品| 伊人婷婷欧美激情| 巨乳诱惑日韩免费av| 欧美一区二区三区视频免费播放 | 久久久精品动漫| 国产精品视频一区二区三区| 亚洲国产欧美精品| 亚洲日本久久| 欧美国产视频在线| 中文亚洲免费| 麻豆久久精品| 夜夜躁日日躁狠狠久久88av| 欧美黑人国产人伦爽爽爽| 99国产精品久久久久老师| 久久深夜福利| 艳女tv在线观看国产一区| 美女精品在线| 国产午夜精品美女视频明星a级| 午夜国产精品影院在线观看| 欧美1区2区3区| 久久国产欧美精品| 亚洲精品视频在线| 国产精品免费电影| 欧美成人午夜激情视频| 久久久久国产精品麻豆ai换脸| 亚洲三级影院| 欧美成人精品影院| 亚洲影院色在线观看免费| 亚洲精选91| 亚洲精品自在在线观看| 怡红院av一区二区三区| 国产三级精品在线不卡| 欧美高清在线一区二区| 亚洲一区二区三区四区中文| 亚洲免费黄色| 中文精品视频| 亚洲一区二区在线看| 亚洲第一色中文字幕| 在线视频国产日韩| 亚洲区国产区| 亚洲一区二区精品在线| 日韩一级免费| 亚洲男人第一av网站| 欧美一区免费| 亚洲福利一区| 在线一区二区三区四区| 欧美诱惑福利视频| 欧美日韩一区二区三区四区在线观看| 久久久九九九九| 欧美日韩一区不卡| 一区二区视频免费完整版观看| 红桃视频成人| 亚洲激精日韩激精欧美精品| 亚洲一区成人| 欧美1区2区3区| 亚洲男人的天堂在线aⅴ视频| 久久不射2019中文字幕| 欧美韩国日本一区| 国产一区二区三区免费在线观看 | 美女国产精品| 国产亚洲精品v| 这里只有精品视频| 男女精品网站| 亚洲欧美国产精品桃花| 猛男gaygay欧美视频| 影音先锋成人资源站| 欧美一区二区三区视频免费播放| 亚洲激情一区二区三区| 亚洲一区二区视频在线| 亚洲第一福利视频| 欧美一级在线播放| 国产欧美日韩综合| 欧美亚洲三级| 亚洲天堂视频在线观看| 欧美日韩精品免费在线观看视频| 精品96久久久久久中文字幕无| 午夜精品视频网站| 亚洲视频观看| 国产午夜亚洲精品羞羞网站| 亚洲尤物在线| 亚洲综合精品自拍| 国产一区二区日韩精品欧美精品 | 亚洲电影免费观看高清完整版在线| 亚洲一区二区在线视频| 国产欧美精品xxxx另类| 牛夜精品久久久久久久99黑人| 久久资源在线| 亚洲靠逼com| 99精品视频免费在线观看| 国产日韩精品在线| 91久久精品国产91性色tv| 国产精品日韩欧美一区| 欧美成人影音| 国产欧美精品va在线观看| 欧美激情1区| 黄色成人91| 亚洲精品一区二区三区蜜桃久| 欧美日韩国产成人精品| 亚洲欧美日韩国产一区二区| 蜜桃av一区二区三区| 欧美亚洲综合网| 国产精品jvid在线观看蜜臀| 久久一日本道色综合久久| 欧美高清你懂得| 国产亚洲综合性久久久影院| 欧美电影免费观看高清| 欧美日韩一区二区在线观看视频| 久久国产精品电影| 国产精品视频自拍| 日韩午夜激情av| 亚洲一级高清| 欧美视频在线观看| 亚洲视频一区| 久久国产精品久久久久久| 欧美成人免费大片| 免费日韩av片| 亚洲精品视频一区| 欧美成人亚洲成人| 亚洲精品无人区| 一个色综合av| 国产精品综合视频| 欧美一级一区| 欧美国产精品一区| 亚洲欧美日韩成人| 一区二区在线视频| 欧美久久99| 久久成人亚洲| 亚洲高清不卡一区| 欧美一区二区在线看| 最新国产成人在线观看| 欧美国产综合视频| 久久久欧美精品| 午夜精品亚洲一区二区三区嫩草| 欧美在线播放一区二区| 国内一区二区在线视频观看| 久久久99免费视频| 一区二区精品| 亚洲国产精品精华液网站| 午夜久久久久久久久久一区二区| 国产主播精品在线| 欧美国产日韩亚洲一区| 日韩一级片网址| 在线成人小视频| 国产亚洲一区二区三区在线观看| 欧美三级视频在线观看| 欧美黑人在线观看| 嫩草影视亚洲| 女人色偷偷aa久久天堂| 久久视频在线视频| 可以免费看不卡的av网站| 久久精精品视频| 欧美综合77777色婷婷| 午夜久久资源| 中文网丁香综合网| 欧美一区二区三区免费视频| 亚洲视屏一区| 久久精品亚洲一区| 蜜桃av一区二区三区| 欧美日韩国产高清| 国产精品推荐精品| 国产精品久久久久9999高清| 国产精品视频免费一区| 在线观看视频日韩|