91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

shader之間傳遞值用的變量類型

Dbwd_Imgtec ? 來源:未知 ? 作者:李倩 ? 2018-04-03 14:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

shader的使用流程:

1. 編寫vertex Shader和fragment shader源碼。

2. 創建兩個shader 實例:GLuint glCreateShader(GLenum type); [gl.createShader]

3. 給Shader實例指定源碼。 glShaderSource [gl.shaderSource]

4. 編譯shaer源碼 void glCompileShader(GLuint shader) [gl.compileShader]

5. 創建shader program -- GLuint glCreateProgram(void) [gl.createProgram]

6. 綁定shader到program 。 void glAttachShader(GLuint program, GLuint shader)。每個program必須綁定一個vertex shader 和一個fragment shader。 [gl.attachShader]

7. 鏈接program 。 void glLinkProgram(GLuint program) [gl.linkProgram]

8. 使用porgram 。 void glUseProgram(GLuint program) [gl.useProgram]

attribute變量

attribute是頂點屬性,每個頂點都會有,但只存在于vertex Shader中,由應用程序傳入其值。

因為在鏈接program之前,attribute變量是還沒有分配內存的,為了給shader中的attribute變量傳值,首先需要將其綁定到program上,并指定他的位置attr_pos,鏈接program之后,可以通過這個位置attr_pos來給這個變量傳值。加入shader中有一個

這樣就將attr_name(字符串)綁定到了attr_pos(無符號值)位置。

這樣就把vert_data傳遞給了attribute變量attr_name。

因為每個頂點屬性的數據都依托在一個VBO中了,因此要想給一個attrbute變量傳遞數據,需要先把把數據交給一個VBO對象。

如果我們再鏈接program之前并沒有指定他的位置,我們還可以去查找這個變量。

uniform變量

uniform變量在shader中時只讀,隨不同圖元變化的全局變量,其值也由應用程序傳入。

這樣就可以給unif_pos設置1個浮點數的值,除glUniform1f之外,還可以使用如下方法:

可以看到,根據參數個數和類型不同,需要使用不同的方法設置。

varying變量

shader之間傳遞值用的變量類型了。在編寫vertex shader 中寫入,在fragment shader中只讀出

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    7256

    瀏覽量

    91897
  • 變量
    +關注

    關注

    0

    文章

    614

    瀏覽量

    28964

原文標題:shader中的數據是怎么傳遞的?

文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    全局變量數據傳遞

    當兩個獨立的程序生成EXE文件后,它們之間全局變量就不能傳遞數據了嗎,求解!
    發表于 07-13 13:38

    把局部變量從char或者short類型轉換成int類型

    把局部變量從char或者short類型轉換成int類型,可以改善性能并減小代碼尺寸,其實,這種轉換函數類型參數也有同樣的效果,看下面的例子,將2個16位的
    發表于 08-14 14:45

    共享變量 數據傳遞

    labview生成安裝程序(里面數據傳遞共享變量) 在本電腦上可以傳遞數據,安裝到其他電腦上無法傳遞數據,何解?
    發表于 07-08 13:57

    利用共享變量在主機和RT終端上傳遞數據 求助求助

    利用共享變量在主機和RT終端上傳遞數據時,主機可以接受到RT終端上的數據,但在RT終端上接收不到主機傳遞的數據。但當兩個RT終端之間共享
    發表于 11-04 09:52

    Orcad 與 PADs 之間傳遞

    弱弱的問下,有沒有人成功把 Orcad 的 Value (帶空格的,如:"10K 1%")傳遞給 PADs ?我試過只能傳沒用空格的,如“10K”,如果帶空格的話, Orcad 輸出網表后,在Pads 導入時會報錯。。。無解
    發表于 05-17 19:45

    多個循環之間變量傳遞問題

    最近有一個項目涉及多個循環之間變量傳遞問題,在控制的過程中發現用局部變量,兩個循環之間進行聯鎖時,布爾量反應有些延時,這樣帶來了一些通訊上的
    發表于 08-06 19:11

    Verilog 變量聲明與數據類型

    ,wire型變量起到變量之間傳遞的作用。實例1:modulewire_bridge( inputa,b,ci, output y,co);
    發表于 08-10 14:01

    請問TMOS不同任務消息傳遞能否全局變量代替?

    TMOS不同任務之間的消息傳遞完全可以全局變量來代替,為何還要用消息傳遞的機制?全局
    發表于 08-08 06:04

    詳細解讀Python變量類型

    變量存儲在內存中的。這就意味著在創建變量時會在內存中開辟一個空間。基于變量的數據類型,解釋器會分配指定內存,并決定什么數據可以被存儲在內存
    的頭像 發表于 10-17 17:14 ?3027次閱讀
    詳細解讀Python<b class='flag-5'>變量</b><b class='flag-5'>類型</b>

    變量和常量之間的差異

    Windows -編程-變量和常量之間的差異 無法更改變量可能會讓您想起大多數其他語言都有的另一個編程概念:常量。與不可變變量一樣,常量
    發表于 10-19 17:24 ?989次閱讀

    C51 單片機的 C 語言中的變量定義與硬件之間的關系

    C51 語言的變量定義定義方式:普通變量:(修飾符)數據類型 [存儲類型] 變量名 [= ]指
    發表于 11-23 16:51 ?3次下載
    C51 單片機的 C 語言中的<b class='flag-5'>變量</b>定義與硬件<b class='flag-5'>之間</b>的關系

    STRUCT和UDT類型變量是什么意思

    STRUCT和UDT類型變量是表示一個完整結構或一個結構元素的結構化變量
    的頭像 發表于 08-29 11:09 ?2616次閱讀

    什么是變量

    System Verilog提供兩組通用的數據類型:網絡和變量(nets 和 variables)。網絡和變量同時具有類型和數據類型特性。
    的頭像 發表于 02-09 14:40 ?1560次閱讀
    什么是<b class='flag-5'>變量</b>?

    淺析python的變量類型

    python不需要事先聲明變量。 python的變量類型是在運行過程中自動決定的,不需要代碼聲明類型
    的頭像 發表于 03-10 10:11 ?1038次閱讀
    淺析python的<b class='flag-5'>變量</b><b class='flag-5'>類型</b>

    ProConOS和機器人控制器之間的布爾交換

    $SOFTPLCBOOL[] ProConOS和機器人控制器之間的布爾交換 借助Mulitprog庫KrcExVarLib的功能塊,可以從數組變量中讀取單個或多個,也可以將其寫入數
    的頭像 發表于 06-16 16:10 ?925次閱讀
    主站蜘蛛池模板: 国产三级黄色毛片 | 亚洲最大的成人网 | 欧美色网络| 午夜精品久久久久久91 | 久久综合九色综合欧美播 | 日韩三级视频在线观看 | 濑亚美莉iptd619在线观看 | 久久香蕉综合色一综合色88 | 亚洲第八页 | 求网址你懂的手机在线观看网站 | 国产主播在线一区 | 97理论片| 亚洲一区在线视频 | 99热精品一区| 国产女人18毛片水真多18精品 | 国内精品免费视频精选在线观看 | 免费二级c片观看 | 欧洲性开放大片免费观看视频 | 午夜网站免费 | 91大神亚洲影视在线 | 国产精品欧美一区二区三区不卡 | 免费的黄色大片 | 国产色婷婷精品免费视频 | 久久久这里有精品999 | 黄色片网站大全 | 久久噜国产精品拍拍拍拍 | 久久国产乱子伦精品免费看 | 特黄一级真人毛片 | 手机在线看片国产 | 国产视频国产 | 美女久久久久久 | 国产亚洲精品久久yy5099 | 免费看美女午夜大片 | 四虎成人欧美精品在永久在线 | 天天天色综合 | 亚洲美女爱爱 | 91啪在线视频 | 免费视频亚洲 | 国产日韩精品欧美一区色 | 91精品啪国产在线观看免费牛牛 | 欧美三级免费看 |