我的游戏库开发(开篇)

好久没写blog了,懒懒的,从大学毕业到现在任职于一家游戏公司,这段时间学到了很多,也看到了很多不错的代码和架构,突然有了一种,想自己写写看的想法,我觉得,自己写有几个好处,一个是可以整理出一些东西,方便以后写东西时可以重用,确实发现很多代码经常会用,一个是可以学学组织比较大的代码结构,还有就是这里有很多高手,可以和大家讨论讨论:)。虽然说是游戏库,但不是完整的包含游戏的方方面面(我也写不了),也不一定要非要用于游戏开发,我的目标是能方便的做一些游戏的prototype(公司经常会做)或者是应用程序,提供一个好的framework,其实也是可以以后自己用起来方便点啦,还有比较重要的目标是跨平台,因为要用到console平台和pc平台。有可能写的东西会比较基本,高手可以无视啦。

库的名字很简单,就叫“TLibrary”,现在已经写了一部分了,先说一些基本的结构吧,因为我也一直在修改中,可能以后结构会有变化

TLibrary把游戏中的一些东西分成一个个模块,比如TCore(核心模块),TInput(输入模块),TGraphic(图像模块)等等,每个模块都位于一个namespace下,比如TCore就是:

namespace  TCore
{
}

这样做主要基于几个方面的考虑,一个是可以清楚的表示这个函数或类是来自TLibrary的并且不会冲突,另一方面是不用起很长的类名和函数名(很多库的代码确实是通过加前缀来防止冲突的),还有就是ide的代码completion会比较方便:)

当然,基于跨平台的考率,一开始,我typedef了所有的基本类型,随便说一句,我的这种类型表示法,是借鉴了Wii的库,感觉比较简练和直观

#ifdef NULL
#undef  NULL
#endif

#define  NULL    0

typedef unsigned 
char     u8;
typedef unsigned 
short     u16;
typedef unsigned 
int     u32;
typedef unsigned __int64    u64;

typedef signed 
char     s8;
typedef signed 
short     s16;
typedef signed 
int       s32;
typedef signed __int64    s64;

typedef 
char         Char;

typedef 
bool         Bool;
typedef 
float         f32;
typedef 
double     f64;

(待续....)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值