05 2013 档案

关于裁剪空间与投影变换矩阵的推导
摘要:再看irrlicht的数学库中matrix4实现时,对这个透视投影变换矩阵的公式十分疑惑,经过艰苦的奋斗终于搞清楚是怎么一回事在这里和大家分享一下irrlicht中使用的透视矩阵是DirectX风格的,但个人偏好于OpenGL的风格所以下面的实现将会使用OpenGL的风格实现。注意:这里使用的是水平视角和Y:X,DirectX中使用的是垂直视角和X:Y inline void SetPerspectiveFovMatrixLH( f32 fieldOfViewRadians, f32 aspectRatio, f32 zNear, f32 zFar) ... 阅读全文

posted @ 2013-05-28 15:11 kirito 阅读(2842) 评论(1) 推荐(0)

深度探索C++对象模型读书笔记(1)
摘要:看到《深度探索C++对象模型》的第64页才开始做的笔记,这要是发现书中一个疑惑的地方所以前来和大家探讨一下 这是书中对C++中实现多态时内存的布局描述,其中包括两个类ZooAnimal和Bearclass ZooAnimal{ ZooAnimal() virtual ~ZooAnimal(); virtual void rotate();protected: int loc; String name;};class Bear : public ZooAnimal{ Bear(); ~Bear(); void Rotate(); virtual void dance();po... 阅读全文

posted @ 2013-05-25 23:36 kirito 阅读(290) 评论(0) 推荐(1)

irrlicht1.7.0(2):基础接口
摘要:IEventReceiver.h定义了irrlicht引擎中的事件类型(struct SEvent)和事件接口(class IEventReceiver) 1 struct SEvent 2 { 3 EEVENT_TYPE EventType; 4 union 5 { 6 struct SGUIEvent GUIEvent; //UI响应事件 7 struct SMouseInput MouseInput; //鼠标输入事件 8 struct SKeyInput KeyInput; ... 阅读全文

posted @ 2013-05-18 01:27 kirito 阅读(323) 评论(0) 推荐(0)

编程之美 NIM(1)扩展问题
摘要:N块石头排成一行,每块石头有各自的固定位置。两个玩家依次取石头,每个玩家每次可以取其中任意一块石头,或者相邻的两块石头,石头在游戏过程中不能移位(及编号不会改变),最后能将剩下的石头一次取光的玩家获胜。 扩展问题:若规定最后取光石头的人输,又该如何应对。 由N取比较小的值可以分析得 N=1,输 N=2,赢 N=3,赢 N=4,输 N=5,赢 N=6,赢 N=7,输 ... 可以看出,4只能转变为2或3或1+1,因此必输。 5->4,必赢 6->4,必赢, 7只能变为5或6或1+5或1+4(1+4 -> 4 输)或2+4或2+3或3+3 阅读全文

posted @ 2013-05-15 18:09 kirito 阅读(300) 评论(0) 推荐(0)

irrlicht1.7.0(1):irrTypes.h
摘要://因为作者的水平不够所以学习先从irrlicht引擎最基本的地方开始首先我们来看一下irrTypes.h这个文件,这个文件里包含了irrlicht引擎中一些最基本的类型的定义首先是#ifndef __IRR_TYPES_H_INCLUDED__#define __IRR_TYPES_H_INCLUDED__#include "IrrCompileConfig.h"namespace irr这里主要是说明一下IrrCompileConfig.h这个文件,它是包含了irrlicht里一些基本的平台、载入文件类型、底层渲染用SDK相关的宏,这里不与说明大家都能看懂#ifdef 阅读全文

posted @ 2013-05-15 18:08 kirito 阅读(222) 评论(0) 推荐(0)

导航