会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
亚特兰蒂斯の夏
博客园
首页
新随笔
联系
管理
订阅
上一页
1
2
3
4
5
6
下一页
2010年9月27日
终于有点点会了
摘要: 这次的错误搞了我两天,我要发个日志记录一下T_T 之前没用过库,以为下下来之后,把头文件和cpp文件都加进工程里,搞好include就行。 库是在linux下写的,我与linux下专用的那些函数及头文件搏斗了很久,后来发现,库里面有用#ifdef判断当前系统的,根本不用我瞎折腾。。。 但是还是很多error,尤其是改了几个头文件后,VS2005几乎死掉,报了1...
阅读全文
posted @ 2010-09-27 20:40 筱夏
阅读(2539)
评论(0)
推荐(1)
编辑
2010年9月16日
模拟PS的钢笔路径
摘要: 大三的时候上计算机图形学没认真听过课,书也不喜欢看,一直不懂Bezier曲线。这两天突然想起来,决定再看看书。其实是挺简单的公式,每个点的位置P(u)(0<=u<=1)是通过每个控制点Pk(k是控制点的索引从0到n,总共n+1个控制点)与相应的混合函数BEZ k,n(u)的乘积累加得到的。而一般的应用都是四个控制点的三次方程,保证曲线穿过第1和第4个控制点。既然知道了控制点确定为4个,...
阅读全文
posted @ 2010-09-16 19:09 筱夏
阅读(1087)
评论(1)
推荐(0)
编辑
2010年9月8日
D3D的初始化
摘要: 翻译自Introduction.to.3D.Game.Programming.with.DirectX.10D3D中,有点万物皆纹理的意思。z-buffer是纹理,frame-buffer也是纹理。纹理通常有两种用途,render target或者shader resource。分别对应以下的状态标志:D3D10_BIND_RENDER_TARGET | D3D10_BIND_SHADER_RES...
阅读全文
posted @ 2010-09-08 20:34 筱夏
阅读(3023)
评论(2)
推荐(1)
编辑
2010年9月3日
遭遇破窗理论
摘要: 昨天学姐运行我的程序,结果总是不对,原本以为注释掉几条语句就可以,结果直接崩了。因为是GPU程序,而我没办法使用EmuDebug,所以只能一点点注释来查错。刚开始学CUDA,真的不知道如何是好。这个错误隐约见过,我觉得是内存访问越界,可是又不明白,为什么在计算了那么多次之后才越界。昨晚百思不得其解,今天早上爬起来继续看代码的时候发现,从一维索引转二维索引有错误,改过来之后,终于没有再崩溃了。以前没...
阅读全文
posted @ 2010-09-03 15:25 筱夏
阅读(412)
评论(0)
推荐(0)
编辑
2010年9月2日
第二个cuda程序——图像拉伸
摘要: 这个是练习使用纹理内存的,CUDA SDK中有个差不多的例子,叫simpleTexture,对图像进行旋转。拉伸更简单一些,只要算好了纹理坐标,直接读取就可以了。下面是设备端代码 resizepic.cu ,只是用下标除以大小,获取它的标准化纹理坐标,由于使用的是CUDA数组,所以会进行线性滤波,因此生成的图像比较平滑,没有马赛克主机端代码 hostpic.cu 基本上照着SDK写的,运行的时候出...
阅读全文
posted @ 2010-09-02 16:01 筱夏
阅读(8070)
评论(0)
推荐(1)
编辑
2010年8月28日
我的第一个CUDA程序——向量点乘(修正)
摘要: 要求:计算两个1000个项的向量的点乘。本来以为能很快写完的,结果跑出的答案是错的,后来对照着NVIDIA的示例,加上cutilCheckMsg("kernel launch failure");这句,运行到这里直接挂掉了。然后我想了一会儿,尝试性的把1000改成了100,运行成功了,再翻一下书发现Block最多线程是512个,于是我内牛满面的在那里重重的画了几笔,这算是我遇到的第一个CUDA错误...
阅读全文
posted @ 2010-08-28 15:16 筱夏
阅读(3941)
评论(0)
推荐(0)
编辑
2010年8月23日
不要虐待你的cache
摘要: 原文地址如下:http://msinilo.pl/blog/?p=614 。。。我翻译着玩的有一些很短的技巧和指导方针,每一个游戏开发人员都应该记住。没有复杂的事,都是常识。但是仍然很少有人去考虑底层的东西,尤其是游戏开发人员。今天的硬件体系使得cache可以成为我们最大的朋友,或者敌人。CPU在某些地方的额外的计算所带来的低效远小于一个cache miss(因此LUT并不总是最好的选择)。笔者并...
阅读全文
posted @ 2010-08-23 18:44 筱夏
阅读(641)
评论(0)
推荐(0)
编辑
红宝书阅读笔记——缓冲区对象
摘要: 前面的顶点数组使得几何图元的显示方便了很多,但是如果每次都要向OPENGL发送一大块数据,而这数据其实并没有修改过,那么这传输就是冗余的。所以这里添加了缓冲区对象,将顶点数组存储在服务器端的缓冲区对象中。1. 创建缓冲区对象glGenBuffers(GLsizei n,GLuint *buffers) 任何非零的无符合整数都可以作为缓冲区对象的标识符使用。这个函数的作用就是向系统申请n个缓冲区,系...
阅读全文
posted @ 2010-08-23 18:42 筱夏
阅读(2724)
评论(0)
推荐(0)
编辑
2010年8月20日
红宝书阅读笔记——顶点数组
摘要: 顶点数组允许通过少量函数调用访问顶点相关的数据,能够提高程序的性能。以前程序动辄几千个面片,一次又一次的调用glVertex()实在麻烦,再次后悔看书不认真中。。。使用顶点数组对集合图形进行渲染需要3个步骤:1. 启用数组调用glEnableClientState(GLenum array)函数,指定需要启用的数组,最多可达8个数组。同样的,调用glDisableClientState(GLenu...
阅读全文
posted @ 2010-08-20 14:23 筱夏
阅读(1864)
评论(0)
推荐(0)
编辑
红宝书阅读笔记——OPENGL渲染管线
摘要: 之前读的时候一直觉得红宝书是很艰涩难懂的,不如NEHE的教程简单。后来才发觉是自己没基础,几番折腾之后也只能用OPENGL做些简单的东西。半年没写,连glBegin都给忘了。图形学的大作业要求写个ZBuffer扫描线算法,虽然算法看的很明白,但到了要写的时候总还是很晕,不知道什么时候转换坐标,什么时候消隐。今天重看OPENGL编程指南,才发现这些早已在第一章就写得清清楚楚,心里暗悔早点看到便好了。...
阅读全文
posted @ 2010-08-20 14:22 筱夏
阅读(2560)
评论(0)
推荐(0)
编辑
上一页
1
2
3
4
5
6
下一页
公告