|
发表于 2005-11-25 12:25:05
|
显示全部楼层
[quote:2b7e03840c="alpher"]呵呵,谢谢云帆
连连看,从0.3版开始就是使用的double buffer
所有绘图操作均不涉及UI
只是在需要刷新UI的时候刷新一下而已
所以,窗口缩放的问题是比较容易解决的.
声音确实应该独立线程,不然延迟比较明显[/quote]
that' good.
画线的问题是不是可以这么处理
我的意思是, 可以有多个连线的数据同时存在,
画图不用管几个, 全部更新就好, 这样, 如果
玩家玩的快, 可以同时看到几个都在连
随便给个代码, 说明以下我的想法
[code:1]
enum ConnectType {EDirect, ELeft_Top, ELeft_Bottom, ERight_Top, ERight_Bottom}
typedef struct EraseTile{
int src_x, src_y, dest_x, dest_y;
ConnectType type;
int pos_x, pos_y;
} EraseAction;
[/code:1]
因为显示更新独立, 那么用户鼠标事件就不会阻塞,
当用户选对一对时, 就多一个EraseTile这样的结构,
当显示线程执行的时候, 遍历一下, EraseAction 的list
就好
以上所言,纯属虚构, Good Luck mate ! |
|