- 博客(12)
- 收藏
- 关注
转载 __attribute__ ((packed)) 的作用
最近在看我们的代码的时候发现声明类型的时候有 __attribute__ ((packed))的结构体类型声明,不知道是什么意思,查了下知道是如下含义:1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节
2011-08-18 15:12:32 465
原创 蛋疼的缺少“;”的调试方法
之前别人问过我程序里缺少个分号“;”编译通不过,帮他找了很久都没找到缺失分号的确切位置,只是根据error信息知道大概的位置,于是在第一个ERROR位置前加了个分号,算是把问题压下去了。这种方法并没有真正解决问题,不过实在懒得找了。。。。今天眼见一位牛人三下五除二找到了分号缺
2011-08-02 18:49:37 415
原创 D3D编程细节收集
开辟这里,作为在D3D编程过程中一旦有什么想到的,体会到的,都会陆续添加到这里,当做自己以后看的小TIP集合吧。D3D对资源的管理是用的智能指针,IUnknown《--ID3D11DeviceChild《--ID3D11Resource,因此release并不是释放指针所指之物,
2011-07-25 16:50:26 809
原创 模板类成员函数特化写法
昨天有对模板类的函数成员特化需求,目的是为了对不同模板参数实现不同的操作,结果在写过程中碰到already defined的问题(貌似是模板新手最容易碰到的问题了),类外的成员函数和同在类外的特化版本成员函数冲突了。因为对模板用法不是很熟悉,找了半天发现网上一段对话:gcc下面,
2011-07-13 13:02:22 7410
原创 关于VS2010的调试信息即.pdb文件
在运行FBX的sample程序时发现提示:debug information of xxx.exe cannot be found or not match ,于是首先在网上找了下相关资料,得到如下建议: 1) Goto Project->HelloWorld Properties2) On the left expand "Configuration Properties"3) Ex
2011-06-22 10:57:00 22159
转载 可变长参数列表误区与陷阱——va_arg不可接受的类型
实现一个有可变长参数列表函数的时候,会使用到stdarg.h(这里不讨论varargs.h)中提供的宏。例如,我们要实现一个简易的my_printf:1. 它只返回void, 不记录输出的字符数目2. 它只接受"%d"按整数输出、"%c"按字符输出、"%%"输出%本身如下: 1 #include stdarg.h> 2 3 void my_printf(const char* f
2011-06-21 18:12:00 879
原创 D3D和OpenGL,OGRE的区别
这一个星期刚用D3D实现了一个简单的渲染框架,写视点管理的时候,发现移动视点,看到的场景画面却是以常识相反的画面移动的。跟踪了一下发现逻辑和函数没问题,就考虑是否是D3D本身的问题。发现果然D3D坐标系跟OGRE或者OpenGL不同,D3D是用左手坐标系,而另两者是用右手坐标系的,导致同样说把相机朝向Z轴时,以不同坐标系观察X坐标是相反的。引用一张图: 于是解决了。 还必
2011-06-21 13:29:00 6424
原创 关于Singleton Template与于static member initialization问题
今天写singleton template碰到的问题,就是用template实现singleton模板,很容易就写好了一个基于static member lazy initialization的singleton,大概就是如下的代码段(没认真检查过,不知道有没有错): template class Singleton {private: Singleton(con
2011-06-15 19:53:00 1252
转载 vs里 .sln和.suo 文件
Net解决方案下 .sln文件和.suo文件的解释:When a Web site is created, a solution file (.sln) and a hidden solution user options file (.suo) are created. By default, these files are created in the My
2011-06-15 15:50:00 8014
转载 良好的目录结构,VS2008
http://apps.hi.baidu.com/share/detail/22191507 转贴解决方案与项目:从VC6之后VC系列就使用解决方案(Solution)来替代原来的工作空间,用于组织和管理多个相关的项目(Project)。文章首先演示一个虚拟的解决方案和我们期望得到的目录结构,然后使用VC2008的项目设置功能来一步一步达到我们的需求。虚拟解决方案:该
2011-06-14 18:23:00 1035
原创 OGRE框架初探之实现对D3D的封装
因为项目的需要,这两天看了部分OGRE的源码,主要是框架部分,略有体会,写下来仅作为记录,语句或有杂乱,如不慎被各位牛人看到,调笑之余欢迎各种指点。 世上有两种图形引擎,一是直接与硬件打交道,如D3D和OPENGL;一是在前者的基础上,以更高效的图形开发为目的,通过封装更多底层细节,所形成的图形引擎,如unreal、source。 底层图形语言D3D和OPENGL,实
2011-06-08 21:43:00 1595
转载 [转]ogre的主要渲染流程
很早以前就想写一些关于OGRE的文章了,一直没机会。 理解一个渲染引擎,我觉得最重要的是先抓住了它的主架构,它的主线,渲染流程,不然的话,一个引擎几万行,甚至几十万行的代码,光是打开solution就能吓你一跳了,OGRE也有十几万行的代码量,我一开始看它的时候也是无从下手,感觉代码太多了,不知道从哪开始看好,这个class看看,那个class看看,由于对整个引擎没有一个清晰的认识,看过
2011-06-08 18:08:00 753
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人