- 博客(7)
- 资源 (9)
- 收藏
- 关注
转载 细究lua闭包->搞清本质才是王道
Lua中的函数是一阶类型值(first-class value),定义函数就象创建普通类型值相同(只不过函数类型值的数据主要是一条条指令而已),所以在函数体中仍然能定义函数。假设函数f2定义在函数f1中,那么就称f2为f1的内嵌(inner)函数,f1为f2的外包(enclosing)函数,外包和内嵌都具有传递性,即f2的内嵌必然是f1的内嵌,而f1的外包也一定是f2的外包。内嵌函数能访问外包函数
2012-08-01 10:27:21
895
原创 用RenderMonkey编写shader[2]
环境映射环境映射模拟一个物体对于它周围的环境的映射,它可以使用简单的技术展示绚丽的反射折射效果。实际上就是将一张包含周围环境场景的环境贴图贴到物体表面,这样就可以在一定程度上模拟物体对于周围环境的映射而不用去使用光线追踪之类复杂的算法技术。环境贴图,顾名思义,在一副图片上展示周围的场景环境。环境贴图假设进行反射的光源和物体都处于很远的位置,同时反射体不会反射自身。最常使用的就是立方体贴图。
2012-06-13 23:03:01
983
原创 使用Render To Texture的AA问题
在项目中使用RTT,渲染场景到Texture时出现了锯齿严重的情况,创建设备时打开D3D的抗锯齿设置: m_d3dpp.MultiSampleType = D3DMULTISAMPLE_NONMASKABLE; m_d3dpp.MultiSampleQuality = D3DMULTISAMPLE_2_SAMPLES;锯齿没有改善而且模型的纹理贴图出现了错误:跟踪代码发现
2012-06-07 16:49:26
864
原创 用RenderMonkey编写shader[1]
1.使用RenderTarget进行全屏渲染 首先需建立Renderable Texture,然后在你需要生成全屏截图纹理的pass中添加一个Render Target指向建立的Renderable Texture。这时窗口将不再显示任何东西。这时需要新建一个PASS来将这个全屏纹理渲染到backbuffer显示在屏幕上,需要添加一个模型,为ScreenAlignedQuad.3ds,
2012-05-17 12:33:23
766
原创 VS中项目属性win32 application和win32 console application的切换
菜单中选择项目->属性弹出属性配置窗口1.C++->预处理器:预处理器定义: WIN32项目为WIN32;_DEBUG;_CONSOLE;控制台项目为WIN32;_DEBUG;__WINDOWS2.链接器->系统子系统:WIN32项目为Windows (/SUBSYSTEM:WINDOWS);控制台项目为控制台(/SUBSYSTEM:CONSOLE)
2012-05-17 11:52:54
1096
原创 CG学习笔记①
头文件库文件包含:#include #include //direct3d9环境#pragma comment(lib,"cg.lib")#pragma comment(lib,"cgD3D9.lib")一些CG变量定义static CGcontext myCgContext;static CGprofile myCgVertexProfile; //profil
2012-03-04 15:05:49
514
原创 irrlicht 1.72 - svn版本中文支持解决办法
本文对于irrlicht的改动旨在使得irrlicht 1.7.2 -svn版本对于unicode字体能够很好的支持,实现读取/写入/绘制等操作。方法来源irrlicht官方论坛Nalin实现的解决办法。参考链接此方法基于 ustring class. The ustring class, CGUITTFont class, and the CStringTable class
2012-02-22 21:20:14
864
HLSL滤镜效果
2012-03-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人