• <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>
            隨筆 - 11  文章 - 0  trackbacks - 0
            <2025年6月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            相冊

            關(guān)注

            網(wǎng)站

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            1.CPU在運(yùn)行程序時(shí)可以通過鍵盤鼠標(biāo)來輸入數(shù)據(jù),程序運(yùn)行的結(jié)果可以顯示在屏幕上也可以轉(zhuǎn)換成文字或二進(jìn)制數(shù)據(jù)存儲(chǔ)在硬盤上。 Vertex Shader和Pixel Shader也是一段可以運(yùn)行的程序,Shader是交由顯示芯片GPU來運(yùn)行的,它的數(shù)據(jù)源是由CPU準(zhǔn)備好后再傳給Shader。Shader運(yùn)行結(jié)果直接顯示在畫面上。
            2.Shader屬于被動(dòng)程序,我們要先通過CPU把Shader加載到GPU中,再調(diào)用DrawPrimitive或DrawIndexedPrimitive之類的函數(shù)來畫圖,這時(shí)GPU才會(huì)運(yùn)行Shader。DrawPrimitive畫完模型后,Shader程序也會(huì)停止。所以大部分的Shader生命周期很短,其壽命完全取決與繪圖所花費(fèi)的時(shí)間。
            3.Shader所能讀寫的內(nèi)存范圍是有限制的。通過CPU運(yùn)行的程序可以自由的向系統(tǒng)申請內(nèi)存。Shader不能主動(dòng)去分配內(nèi)存,它能操作的內(nèi)存都是預(yù)先通過CPU分配好的,并且分為只讀和只寫兩部分。存放頂點(diǎn)的頂點(diǎn)數(shù)據(jù)區(qū)Vertex Buffer和繪圖時(shí)所使用的貼圖Texture,屬于Shader的只讀存儲(chǔ)器,Shader只能從中讀取數(shù)據(jù),不能寫入數(shù)據(jù)。Framebuffer畫面是Shader的只寫內(nèi)存,Shader可以把運(yùn)行結(jié)果存儲(chǔ)在Framebuffer中,但不能去讀Framebuffer中的數(shù)據(jù)。
            4.Shader無法隨機(jī)存取內(nèi)存。Vertex Shader 只能讀取它所分配到該去處理的單一頂點(diǎn)數(shù)據(jù),不能任意獲得其他頂點(diǎn)的信息。Pixel Shader 在輸出顏色時(shí),不能隨意選擇把顏色填入Framebuffer的任意個(gè)像素上。GPU在填充某個(gè)像素A時(shí),會(huì)對像素A運(yùn)行目前所使用的Pixel Shader,這個(gè)時(shí)候Pixel Shader只能固定更新A點(diǎn)的值,不能更新其他的像素。
            5.Shader唯一能比較自由的讀取內(nèi)存內(nèi)容的是貼圖。Shader可以通過不同的貼圖坐標(biāo)來讀取圖片上的不同像素。編寫Shader時(shí)可以把2D貼圖視為二維數(shù)組,把貼圖坐標(biāo)視為二維數(shù)組的索引。
            6.GPU在運(yùn)行Shader時(shí)沒有暫存內(nèi)存可以使用,編寫C++程序時(shí),函數(shù)中的局部變量或用到得臨時(shí)內(nèi)存存放在Stack堆棧內(nèi)存中。GPU沒有Stack,Shader所聲明的變量及用到的臨時(shí)變量都放在GPU芯片上的某個(gè)寄存器中。(使用寄存器的速度比Stack內(nèi)存速度快好幾倍,但使用的變量的數(shù)量有限制)
            ----摘自《3D繪圖程序設(shè)計(jì)》
            posted on 2010-02-26 16:41 郭小帥 閱讀(723) 評論(0)  編輯 收藏 引用 所屬分類: Shader
            亚洲精品国产美女久久久| 久久久久成人精品无码 | 亚洲国产精品无码久久久久久曰| 国产免费久久久久久无码| 一级女性全黄久久生活片免费 | 无码国内精品久久人妻麻豆按摩| 久久亚洲精品国产精品婷婷| 7777精品久久久大香线蕉| 国产精品美女久久久| 午夜视频久久久久一区 | av午夜福利一片免费看久久| 久久精品一区二区影院| 久久久久亚洲AV无码永不| 久久天天躁狠狠躁夜夜2020老熟妇 | 久久香蕉国产线看观看99| 国产精品99久久久久久宅男小说| 99久久精品国产高清一区二区| 久久综合成人网| 夜夜亚洲天天久久| 国产精品免费福利久久| 区久久AAA片69亚洲 | jizzjizz国产精品久久| 午夜精品久久影院蜜桃| 国产精品成人99久久久久| 久久99亚洲网美利坚合众国| 久久精品极品盛宴观看| 人妻精品久久久久中文字幕| 大香网伊人久久综合网2020| 国产精品福利一区二区久久| 日产精品久久久久久久性色| 国产亚洲美女精品久久久2020| 热RE99久久精品国产66热| 久久午夜福利电影| 久久av免费天堂小草播放| 九九热久久免费视频| 国产成人无码精品久久久免费| 国产精品毛片久久久久久久 | 久久天堂AV综合合色蜜桃网| 久久久久久免费视频| 亚洲伊人久久精品影院| 欧美黑人激情性久久|