摘要: 在D3D中,顶点的颜色除了在创建的时候主动的声明之外,还有一种实现的方式就是通过光照和材质的相互作用关系。我们知道自然界中光是由红绿蓝三种原色光组成的白光,如果这个白光照射在某种吸收蓝光的物体上,那么反射出来的光就只含有绿色和红色,当这个只包含着绿色和红色的光到达我们的眼睛的时候,我们就觉得这个物体是黄色的。在D3D中,我们用光照和材质这两个东西来模拟上述的行为。“光照”中指定模拟光线中红绿蓝三色的比例,材质是模拟光照射的物体的一种对于光线的反射(或者吸收)的能力。这个就和自然中的光线效果一致了。在D3D中还对光照进行了细化,用三种光来模拟自然世界中的光线:分别是环境光、漫反射光和镜面光,通过 阅读全文
posted @ 2013-07-25 19:41 兜兜转转 阅读(823) 评论(0) 推荐(0) 编辑
摘要: 系统架构RakNet的代码可以分为三个部分:网络通信、使用网络通信的插件和通用游戏工具(功能)。网络通信时由两个用户类来提供的,它们分别是RakPeerInterface和TCPInterface。游戏中主要使用到的类的是基于UDP协议的RakPeerInterface,它提供的功能主要包括:连接、连接管理、拥塞控制、远程服务器检测、带外消息(?)、连接数据、延迟和模拟丢包、禁止列表和安全连接等等。TCPInterface对TCP进行了包装,可以用于基于TCP协议的外部系统,如采用了TCP接口的用来报告远程服务器Crash信息的EmailSender类。大多数插件模块也支持TCPInterfa 阅读全文
posted @ 2013-07-22 23:02 兜兜转转 阅读(786) 评论(0) 推荐(0) 编辑
摘要: OgreRenderTargetListener:(渲染目标监听器)Listener的定义:当有特定的事件(Event)触发时,某个接口将被自动调用(通常是被框架或者系统),这个接口就是可以叫做Listener。OgreRenderTargetListener就是一个与渲染目标事件(RenderTarget Event)相关的Listener。为了能够接收到渲染目标事件的通知,通常我们需要继承这个OgreRenderTargetListener类,并且重写自己需要的方法,然后调用RenderTarget的addListener方法将继承的类添加注册进去,我们能够注册很多个这样的监听器,这样就可 阅读全文
posted @ 2013-03-03 11:11 兜兜转转 阅读(545) 评论(0) 推荐(0) 编辑