
Window游戏编程
jadeshu
这个作者很懒,什么都没留下…
展开
-
windows游戏编程<一>了解消息事件模型
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22309265作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流 熟悉了DOS编程的朋友会更加深了解过程化模型,在DOS环境下,应用程序是一句一句逐个执行的。程序员思考问题的方式和机器的执行顺序是原创 2014-03-27 18:34:19 · 1396 阅读 · 0 评论 -
windows游戏编程<二>地址
地址有虚拟地址,逻辑地址,线性地址,物理地址!以下分别介绍下 虚拟地址(Virtual Address)是指由程序产生的由段选择符和段内偏移地址两部分组成的地址。因为这两部分组成的地址并没有直接用来访问物理内存,而是需要通过分段地址变换机制处理或映射后才对应到物理内存地址上,因此这种地址被称为虚拟地址。虚拟地址空间由GDT映射的全局地址空间和由LDT映射的局部地址空间组成。选择符的原创 2014-03-27 18:35:17 · 583 阅读 · 0 评论 -
windows游戏编程<三>X86实模式和保护模式
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22309359作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流X86实模式下在实模式下,寻址一个内存地址主要是使用段和偏移值,段值被存放在段寄存器中(如ds),并且段的长度被固定为64KB。段内偏移地址原创 2014-03-27 18:36:03 · 871 阅读 · 0 评论 -
windows游戏编程<四>X86 32位保护模式下的内存管理概述(一)
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22445945作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流CPU段式内存管理,逻辑地址转换为线性地址CPU页式内存管理,线性地址转换成物理地址目的:CPU进行地址变换(映射)的主原创 2014-03-28 23:37:55 · 705 阅读 · 0 评论 -
windows游戏编程<五>X86 (内存)寄存器相关的基本概念
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22446971作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流分段机制 •分段提供了隔绝各个代码、数据和堆栈区域的机制,因此多个程序(或任务)可以运行在同一个处理器上而不会互相干扰。 •原创 2014-03-28 23:54:23 · 600 阅读 · 0 评论 -
windows游戏编程<六>X86 32位保护模式下的内存管理概述(二)
•Windows在其内核(ntoskrnl.exe/ntkrnlpa.exe/ntkrnlmp.exe/ntkrpamp.exe)中实现内存管理器•Windows内存管理器只利用两种保护级别的页面:RING0(内核和驱动使用)RING3(外壳和一般应用程序使用)•Windows只利用了5个段选择子寄存器:SS、CS、DS、ES、FS,而GS未用永远为0x0000•Windows内存管理原创 2014-03-29 00:07:16 · 909 阅读 · 0 评论 -
windows游戏编程<七> 创建WIN32一个HelloWOrld程序
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22449085作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流一开始我们得大致了解一个程序的运行过程,运行时得先启动一个程序,如下启动过程1.WIN32程序启动过程就是进程的创建过程,系统调用Cre原创 2014-03-29 00:18:29 · 830 阅读 · 0 评论 -
windows游戏编程<八> 绘图基础
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22451353作者:jadeshu 邮箱: jadeshu@qq.com 欢迎邮件交流很快到第八小节了,前面部分些许晦涩难懂,尤其寄存器和内存几节!先有个概念,慢慢熟悉!接着按下面一节节的学习就行了这节主要说下绘图原创 2014-03-29 00:43:05 · 1338 阅读 · 0 评论 -
windows游戏编程<九>键盘
键盘首先我们来看一下键盘常用消息键盘的消息处理过程键盘消息会有击键消息和字符消息键盘消息的附加参数wParam:非系统键的虚拟码lParam:windows常用虚拟键码及对应的按键原创 2014-03-29 02:09:09 · 525 阅读 · 0 评论 -
windows游戏编程<十>鼠标
①、常用鼠标消息:WM_MOUSEMOVE 鼠标移动位置WM_LBUTTONDOWN 鼠标左键按下WM_LBUTTONUP 鼠标左键弹起WM_LBUTTONDBLCLK 鼠标左键双击WM_RBUTTONDOWN 鼠标右键按下WM_RBUTTONUP 鼠标右键弹起WM_RBU原创 2014-03-29 02:18:16 · 474 阅读 · 0 评论 -
windows游戏编程<十一>封装窗口类
本系列文章由jadeshu编写,转载请注明出处。http://blog.youkuaiyun.com/jadeshu/article/details/22451353作者:jadeshu 邮箱:jadeshu@qq.com欢迎邮件交流1.由于除了少数固定窗口的游戏可以不考虑分辨率的处理,大部分游戏都要考虑不同分辨率的情况,所以需要具备这么能处理分辨率!因此我们将显示模式添加窗...原创 2014-04-06 22:06:05 · 1288 阅读 · 0 评论 -
三角函数公式表
同角三角函数的基本关系式倒数关系: 商的关系: 平方关系:tanα ·cotα=1sinα ·cscα=1cosα ·secα=1 sinα/cosα=tanα=secα /cscαcosα/sinα=cotα=cscα/secα sin2α+cos2α=11+tan2α=sec2α原创 2014-03-14 21:54:11 · 547 阅读 · 0 评论 -
游戏中伪随机数的产生
在游戏编程,随机数的应用无所不在,例如扑克类游戏中的随机发牌,俄罗斯方块的随机生成,拼图游戏中单元图片的散化,道具的摆放等等,我们希望所产生的数字随机,而且在我们预先设计的范围之内,同时又不希望有重复的两个数字出现,对于一般的作法:srand( (unsigned)time( NULL ) ); // 使用时间产生随机数.int number=rand()%mRange;转载 2014-03-14 21:53:38 · 553 阅读 · 0 评论 -
超大地图MMORPG的场景管理
目前在做一个超大地图MMORPG的场景管理部分,客户端通过动态预读解决了超大图量的动态加载,但是在做人物行走的时候遇到了一些问题: 一张地图上的PLAYER和NPC等是存放在一个list中的,地图超大那么上面的PLAYER就可能超多(预计大于200),这样的话每个行走动作都要发送200条以上的消息,这对于服务器是一种很大的负担,而且这种负担是呈级数增长(10个玩家都走一步服务器将发送10*1转载 2014-03-14 21:51:58 · 1568 阅读 · 0 评论 -
物体移動
//=====================================/** 等速運動用的間補 @param start [in] 起點 @param end [in] 終點 @param all [in] 起點到終點經過的時間 @param now [in] 現在時間 @return 以now為基礎的間補值*///============转载 2014-03-14 21:52:51 · 340 阅读 · 0 评论 -
向量几何在游戏编程中的使用
Andre Lamothe说:“向量几何是游戏程序员最好的朋友”。一点不假,向量几何在游戏编程中的地位不容忽视,因为在游戏程序员的眼中,显示屏幕就是一个坐标系,运动物体的轨迹就是物体在这个坐标系曲线运动结果,而描述这些曲线运动的,就是向量。使用向量可以很好的模拟物理现象以及基本的AI.现在,先来点轻松的,复习一下中学知识。向量v(用粗体字母表示向量)也叫矢量,是一个有大小有方向的量转载 2014-03-14 21:54:40 · 405 阅读 · 0 评论