GameDesign 板


LINE

最近小弟想趁寒假结束以前,试着做一些简易的封装。可是在设计上碰到了一些问题, 想请教各位大大。 就是关於Shader的部分,在DirectX里面,每个Shader都是可以独自成一个个体,最後 依照使用状况不同,互相排列绑在管线上面。 可是在OpenGL里面,在4.1之前,Shader都不支援这种混合运用,非得要把每个阶段的 Shader都绑在Program上面以後,以Program为单位去使用。 我的问题就在这边,我目前采用的绘图API是以OpenGL为准,不排除以後加入DirectX 的可能性。但这边就出现一些分歧的地方,就是我不知道该怎麽设计这边的关系。 我想让使用者可以自行决定Shader的绑定,可是在OpenGL里面,单是要查询uniform block这种动作也非得透过Program才行。 想请问各位大大,有没有甚麽比较好的方法可以使用?我目前是尽量不想要再设计一 个Program类@@(因为DirectX很显然不需要这个类) --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.133.181.73
1F:推 lulumi07:目前似乎不支援,所以你顶多swap 不同阶段的 shader, 02/15 02:39
2F:→ lulumi07:所以你还是得 link program一遍,而且你 02/15 02:40
3F:→ lulumi07:uniform也要重绑。 02/15 02:42
4F:→ lulumi07:但从你最後一句我有疑问的是,为什麽要再设计Program类? 02/15 02:44
5F:→ lulumi07:可以说一下你设计的shader class吗? 02/15 02:46
6F:→ lulumi07:我的方式是preload所有shader,用resourcemanager去查找 02/15 02:47
7F:→ lulumi07:还有你所谓的uniform block是绑UBO的uniform block吗? 02/15 02:48
8F:→ lulumi07:还是单纯的uniform? (ex: uniform int useTexture;) 02/15 02:48
我原本的打算是像是DirectX那样,因为每个Shader自己都是独立的,所以自己可以拥有所有资讯,举凡像是 uniform block或是uniform等等。但在OpenGL里面,要倒出有关资讯都得透过program才行。 而每当换一种组合的时候,都要Link Program感觉会是个消耗时间的操作,而且每次都得重新把资讯捞出 来整理。当然也可以cache起来在一个map里面,利用vs和fs的值去索引,只是感觉还是浪费不少时间。 所以我想设定program类就是因为这样的话可以直接使用,而且麻烦的shader parameter也会都被设置完成。 但这种需求只有在OpenGL才需要而已,让我有点不懂该怎麽设计@@ (Pass虽然记录该阶段所需要的shader们,但他应该是无关绘图API的...) ※ 编辑: a27417332 来自: 114.42.106.145 (02/17 17:38)







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP