利用GPGPU方法将大量数据通过纹理传输至GPU进行计算

本文介绍了利用OpenGL和Qt进行GPGPU计算的方法,通过纹理将大量数据传输到GPU进行计算。文章强调了在游戏开发中使用GPGPU的便利性,探讨了数据如何通过纹理传入着色器,以及在Qt和OpenGL中实现这一过程的关键步骤。示例程序展示了如何将4×1纹理传入着色器,进而影响矩形颜色。
摘要由CSDN通过智能技术生成

利用GPGPU方法将大量数据通过纹理传输至GPU进行计算

 

       在显卡并行计算起源的领域,比如说游戏开发领域,GPU的发展使得其迈向了新的纪元,画面愈加精致,效果愈加震撼,同时并行计算框架CUDA和OpenCL的兴起,则将显卡的计算潜能充分地释放了出来。最后令人高兴的是,以前就受惠于显卡发展的游戏开发领域,将显卡的功能做了新的扩展,以前只用来渲染用的显卡,目前可以做更多逻辑领域相关的事儿了。

原创文章,反对未声明的引用。原博客地址:http://blog.csdn.net/gamesdev/article/details/19507325

       源代码下载地址:这里

       目前在游戏领域尽管有CUDA和OpenCL这些框架助力GPU并行程序开发,但对于游戏开发群体来说,使用传统的GPGPU方法的好处是GPGPU似乎是与生俱来的,并不需要依赖任何SDK就能用基本的C语言开发在GPU上运行的程序;此外游戏开发者大多数都对计算机图形学十分了解,对于GPGPU中所提的一些图形学概念也不会陌生;最后,使用GPGPU方法让GPU进行通用计算,考验人的能力,人们对它的痴迷程度不亚于用Lua的API实现面向对象编程。

       下面我将使用Qt和OpenGL来做一次GPGPU的尝试。想做GPGPU计算,需要显卡支持至少OpenGL2.0版本,因为这些版本能够支持着色器,这是一种针对渲染而研制的小程序,我们要利用它来进行通用计算。

       首先需要考虑,数据如何传入着色器程序?熟悉的同行们都知道,使用attribute和uniform都可以将数据传入。没错&#x

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值