依据前文伏击战场景手稿, 用Tile Studio "草草"制作出该场景的地图:

生成的C源码:

#ifndef _open_war_1Gfx_c
#define _open_war_1Gfx_c #ifndef _GFX_BITMAP_DATA
#define _GFX_BITMAP_DATA
/* structure with bitmap data */
typedef struct GFX_BITMAP_DATA
{
char * BitmapIdentifier;
int BitmapWidth;
int BitmapHeight;
int TileWidth;
int TileHeight;
int TileCountX;
int TileCountY;
int TransparentX;
int TransparentY;
int Sequences;
int ** SequenceData;
int * SequenceLength;
int * SequencePosition;
int * SequenceCounter; } GFX_BITMAP_DATA;
#endif #ifndef _GFX_EMPTY
#define _GFX_EMPTY
static int Empty[] = {0};
#endif /* tile sequences */ int Tiles1SeqLength[] =
{
-1
}; int Tiles1SeqPosition[0 + 1];
int Tiles1SeqCounter[0 + 1]; int * Tiles1Sequences[] =
{
Empty
}; #define Gfxtile_set_2Map1MapWidth (25)
#define Gfxtile_set_2Map1MapHeight (18) signed short tile_set_2Map1MapData[18][25] =
{{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 1,
1},
{ 1, 1, 1, 1, 1, 5, 6, 1, 1, 1, 1, 1, 1, 1, 5, 5, 6, 1, 1, 1, 2, 3, 4, 1, 1},
{ 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 5, 6, 1, 7, 7, 1, 2, 2, 2, 2, 3, 4, 1, 1},
{ 1, 1, 5, 6, 1, 1, 1, 1, 5, 6, 1, 7, 1, 5, 6, 1, 1, 2, 8, 8, 8, 8, 4, 1, 1},
{ 1, 1, 7, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 7, 1, 1, 1, 2, 8, 4, 4, 4, 4, 1, 1},
{ 1, 1, 1, 1, 5, 6, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 8, 4, 1, 1, 1, 1, 1},
{ 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 2, 8, 8, 8, 8, 8, 8, 4, 1, 5, 5, 6, 1},
{ 1, 5, 6, 1, 1, 1, 1, 1, 1, 5, 6, 1, 2, 8, 4, 4, 4, 4, 4, 4, 1, 7, 7, 1, 1},
{ 1, 7, 1, 1, 1, 5, 6, 1, 1, 7, 1, 1, 2, 8, 4, 1, 1, 9, 1, 1, 1, 1, 1, 1, 1},
{ 1, 1, 1, 1, 1, 7, 1, 1, 1, 2, 2, 2, 2, 8, 4, 1, 5, 6, 1, 1, 5, 6, 1, 1, 1},
{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 8, 8, 8, 8, 4,10, 7, 1, 1, 1, 7, 1, 1, 5, 6},
{ 1, 1, 1, 5, 6, 1, 2, 2, 2, 2, 8, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 7, 1},
{ 1, 1, 1, 7, 1, 1, 2, 8, 8, 8, 8, 4, 1, 1, 1, 1, 1, 5, 6, 1, 1, 1, 1, 1, 1},
{ 1, 1, 1, 1, 1, 1, 2, 8, 4, 4, 4, 4, 1, 1, 5, 6, 1, 7, 1, 1, 1, 5, 6, 1, 1},
{ 2, 2, 2, 2, 2, 2, 2, 8, 4, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 7, 1, 1, 1},
{ 8, 8, 8, 8, 8, 8, 8, 8, 4, 1, 5, 6, 1, 1, 1, 1, 1, 5, 6, 1, 1, 1, 1, 1, 1},
{ 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 7, 1, 1, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1},
{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}; unsigned short tile_set_2Map1BoundMapData[18][25] =
{{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}}; /* tile sequences */ int tile_set_2SeqLength[] =
{
-1
}; int tile_set_2SeqPosition[0 + 1];
int tile_set_2SeqCounter[0 + 1]; int * tile_set_2Sequences[] =
{
Empty
}; /* tile sequences */ int objsSeqLength[] =
{
-1
}; int objsSeqPosition[0 + 1];
int objsSeqCounter[0 + 1]; int * objsSequences[] =
{
Empty
}; /* bitmap data */
const struct GFX_BITMAP_DATA GfxTiles1Bitmap =
{ "Tiles1", 320, 32, 32, 32,
10, 1, 81, 1, 0,
&Tiles1Sequences[0], &Tiles1SeqLength[0],
&Tiles1SeqPosition[0], &Tiles1SeqCounter[0]
}; const struct GFX_BITMAP_DATA Gfxtile_set_2Bitmap =
{ "tile_set_2", 320, 32, 32, 32,
10, 1, 81, 1, 0,
&tile_set_2Sequences[0], &tile_set_2SeqLength[0],
&tile_set_2SeqPosition[0], &tile_set_2SeqCounter[0]
}; const struct GFX_BITMAP_DATA GfxobjsBitmap =
{ "objs", 320, 32, 32, 32,
10, 1, 81, 1, 0,
&objsSequences[0], &objsSeqLength[0],
&objsSeqPosition[0], &objsSeqCounter[0]
}; #endif

如你也是地图制作初学者,可以看看:Game: Map Design Considerations 游戏地图设计指南,希望对你有帮助。

Enjoy~

Mars

August 4,2013

Any to share, e-me: mars.fu@foxmail.com

Game: Map Design Considerations 游戏地图设计指南的更多相关文章

  1. 新版MATERIAL DESIGN 官方动效指南(一)

    Google 刚发布了新版Material Design 官方动效指南,全文包括三个部分:为什么说动效很重要?如何制作优秀的Material Design动效及转场动画,动效的意义.新鲜热辣收好不谢! ...

  2. ogre 3d游戏开发框架指南

    ogre 3d游戏开发框架指南pdf 附光盘代码 http://www.ddooo.com/softdown/74228.htm OGRE3D游戏开发框架指南.pdf http://vdisk.wei ...

  3. Egret HTML5游戏开发指南

    Egret  HTML5游戏开发指南 下载地址:https://pan.baidu.com/s/1fuxllvmRhWXoWDwH4gxN9g 关注微信公众号获取提取码: 输入:egrt 获取提取码

  4. 《Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases》论文总结

    Aurora总结 说明:本文为论文 <Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relation ...

  5. 新版MATERIAL DESIGN 官方动效指南(二)

    继上一篇,本文继续第二部分,从动效的速度.动态持续时间.通用持续时间和缓动曲线4个部分,教你创建平滑一致的Material Design 动效.再系统的干货都比不上官方的动效指南,西瓜就在这,赶紧来捡 ...

  6. Multiprocessor Operating System Design Considerations SYMMETRIC MULTIPROCESSORS

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION An SMP operating syst ...

  7. 新版MATERIAL DESIGN 官方动效指南(三)

    运动 Material design 的动效会被类似真实世界中的力的影响,类似重力. 物体在屏幕内的运动 屏幕内物体在两点之间的运动,是沿着一条自然.凹陷的弧线.屏幕上所有的运动都可以使用标准曲线. ...

  8. Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases

    INTRODUCTION   In modern distributed cloud services, resilience and scalability are increasingly ach ...

  9. ARM Cortex Design Considerations for Debug

    JTAG was the traditional mechanism for debug connections for ARM7/9 parts, but with the Cortex-M fam ...

随机推荐

  1. T-SQL运算符

    运算符 1.算术运算符 算术运算符 说明 + 加法 - 减法 * 乘法 / 除法 % 取模,两个整数相除后的余数 2.位运算符 位运算符 说明 &(与.and) 按位逻辑与运算 |(或.OR) ...

  2. 第二百一十四天 how can I 坚持

    今天肯定有需要记录的东西. html表格. table tr rd colspan rowspan, 还有呢.没了. 睡觉,明天石洋要来泛华. 睡觉.

  3. FIREDAC FDConnection 连接池 连接串

    一.FDConnection 连接池 http://docs.embarcadero.com/products/rad_studio/firedac/frames.html?frmname=topic ...

  4. 转】MySQL客户端输出窗口显示中文乱码问题解决办法

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/4008095.html 感谢! 最近发现,在MySQL的dos客户端输出窗口中查询表中的数据时,表中的中文数据都显 ...

  5. Spark的任务处理流程

    持续推送....

  6. MYSQL数据库性能调优之六:备份

    增量备份

  7. HDU 5437 Alisha’s Party (优先队列模拟)

    题意:邀请k个朋友,每个朋友带有礼物价值不一,m次开门,每次开门让一定人数p(如果门外人数少于p,全都进去)进来,当最后所有人都到了还会再开一次门,让还没进来的人进来,每次都是礼物价值高的人先进.最后 ...

  8. jgroups 常见概念

    组播(Multicast)传输:在发送者和每一接收者之间实现点对多点网络连接. 单播(Unicast)传输:在发送者和每一接收者之间实现点对点网络连接. 广播(Broadcast)传输:是指在IP子网 ...

  9. 设置ul阴影效果和边框圆角

    ul.box {position: relative;z-index: 1; /* prevent shadows falling behind containers with backgrounds ...

  10. C#判断一个类中有无"指定名称"的方法

    C#中可以通过反射分析元数据来解决这个问题,示例代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 2 ...