摘要: 试用过OGF的朋友,应该会发现GameFrame在鼠标消息处理时,都会搜索当前鼠标坐标下的对象,以实现对像的MouseMove,MouseOver, MouseIn, MouseOut四个事件,但效率非常之差。现打算进行调整,以加快每帧的处理速度,大致方案如下:
1、按FLASH的模式,默认不提供对象的MouseMove, MouseOver, MouseIn, MouseOut事件,GameFrame只负责将MouseMove的消息转发至GameBody,用户要实现要上述4个事件,则必须重载GameBody的OnMouseMove来实现(GameBody可能会提供一个默认的对象分发过程,由用户调用或GameFrame的Setting中带一个标志开发以确定是否分发至对象);
2、在GameLayer层加入一个是否允许处理鼠标消息的标志(默认为false),当为否则不检测,减少FindObject()函数的判断次数;
3、在对象中增加一个是否允许处理鼠标消息的标志(默认为false),减少FindObject()函数中用对象区域判断的次数;
<
阅读全文
摘要: #89 La Mota, Medina del Campo
Valladolid, Spain
13th to 15th centuries
阅读全文