c++ 编写自己的小型游戏开发库

       之前接触了SDL,的确是个很好的轻量级游戏引擎,其实自己一直也有个想法,自己来开发个游戏库,呵呵,有点大了,现在想想,在windows下也就是对图形操作和窗口消息的封装吧。试着写写看吧,花了两天的时间,搞出个雏形,发来给大家分享下:

      定义了两个类,surface和wnd,surface就是对图形的操作,这里封装的是GDI+,wnd就是对窗口的封装,包括它的创建和消息处理等。实际编写中发现gdi+对图形的操作蛮方便的,但是效率其实不如gdi,所以我的代码里有大量的gdi操作代码的注释,这里我想模拟双缓冲技术,写的要是有问题还望大家指正。wnd的窗口创建我用的是多线程,所以每个窗口对应自己的消息线程,但是窗口处理函数是共用的,所以消息处理代码要判断当前消息是对于哪个窗口的。下面看下实例代码:

       在peekmessage上有个轮询的过程,所以我们要用setrun要添加自定义处理函数,来对窗口不停的刷新。addevent是添加事件处理的。setdelay是轮询的延迟函数,create便创建窗体了,创建后pause下,让主线程暂停。

       本文有不足之处,还望大家多多指正。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值