2015-3-23 01:27:11
地图生成部分更新。
读取地图部分,文件处理优化。增强自动元件处理。
角色移动在地图中的碰撞检测完成。
贴图更新。
不要吐槽怎么进去一部分。。体积大小是根据贴图随便设的8,可以改。
也别吐槽为什么人在上边。我不会用DX画3D的东西啊……Z轴什么的……
然后,,生成部分真是难写啊!
顺便找到了这个。
http://i3.pixiv.net/img03/img/chopper/8935090.png
id=26734
作者主页:
http://deepmoon.sakura.ne.jp/blog/diary.cgi
http://deepmoon.sakura.ne.jp/
近期任务:
文件可控式地图生成。
图层绘制。
以上。
2015-3-22 01:07:25
妹的!怒肝3h代码!恶心的继承关系者调用那初始化啥的全TM解决了!
啊,不对不对,注意一下个人形象。
嘛嘛,那么还是像一样以往一样心平气和的讲吧。
首先是红魔馆内部的素材大概拼好了。
感谢@盛夏的笨蛋,帮我找来了魔女之家的tilesets素材。
于是我想都没想二话不说就剪过来了!
然后是对文件读取系统的优化,不太好表述,就带过吧(喂!
然后是写了个cMap内mTile()读取情况的测试,效果也不错,可以在游戏内快速列出已经读取的Tile。
最后是关于地图的绘制,已经考虑过优化的情况了,写好了(初步)=。=
为了测试一下写了个伪红魔馆1F地图生成的方法,然后看了下,不错不错,走起来了。Camera也没有任何问题。
http://bbs.nyasama.com/data/attachment/album/201503/22/012828j57jss69u6h6na9j.gif
就不要吐槽随机的生成了吧,我还没正式写呐……
嘛。今天就这样了。
以上
2015-3-21 01:23:27
啊啊好累啊……
嘛嘛长话短说。刚刚写了人物行走,地图块数据读取(有脚本的哦!),摄像机部分的代码。恩。
啊,这还是我第一次写这种类似脚本解释器的东西呢,用了个比较方便的函数叫CallByName
巨方便。剩下的就是写好文件读取循环就OK辣!
然后关于摄像机和人物行走,外加地图块数据读取测试!
成品图↓
http://www.nyasama.com/bsup/nyaup/attachment/album/201503/21/012602fivzkoiq999eq8xq.gif
卧槽,我真是好激动!
所谓开坑,就是要看着这坑一点一点变深才能有继续把坑挖穿的动力呐!
喵的今天竟然累了。嘛,代码部分先不做解释了。就这样吧。
以上。
draw的话会不会用上camera..
2015-3-19 01:13:21
唔,经过仔细考虑之后发现一个问题,于是地图部分的架构做了一些调整。
恩。多了一个cTileInstance类。
来来重新来解释一下总体构架。
cMap是最外边的类。cMap里边存储了一个cMapGenerator,一个cLayer的变长数组,一个cTile的变长数组。
cLayer顾名思义,图层。一个cMap里边可能有多个图层。cLayer里边存储每层的地图数据,是一个二元变长数组,里边放cTileInstance。
cTile存地图块数据,这种地图块有木有碰撞啊,贴图用啥啊,有啥动画啊等等基本数据是存在着里边的。cMap里边的cTile数组就是为了存一张地图里的n多种图块。
cTileInstance是实际图层里放的地图数据。为啥要弄这么一个类?是为了处理和普通地图块不同的地图块时候用的。cTileInstance里边指向一个cTile,这个地图块的基本参数就是这个cTile接管,cTileInstance里边只存储了一个数据,sParamExtra,用来处理和普通块不一样的块。可以简单的理解成RMXP里边在第三层绘图层上边的事件层。
cMapGenerator依然顾名思义,不想多说了,肯定是全游戏里最最难写之一的吧……
以上
2015-3-18 01:26:07
嘛嘛以后就按照这个格式来吧。
今天也是晚自习上抽了点时间写了写cTile里边存储的参数都有啥,没写多少,照片就先不发了。
于是刚刚肝了20min左右的PS,图块的贴图总算是弄出来了。
大概这种吧,红墙是自己画的,菱形地板、地毯和桌子(TM我想要餐桌啊!)是找的。大概看了看,感觉要是这样的话,生成地图那一部分……是真难写啊……
OK,回来,这张贴图其实也看不出来什么,不就是地图块么,于是我又花了5min左右用PS简单的拼接了一下。
。
。
↓当当当当↓
恩没错,看起来有点像游戏画面了。
。
。
。
什么叫有点像啊……简直太搭配了!(好想玩!
不过这地图块还是没弄完。如果谁有魔女之家里边那种餐桌的地图块资源请务必给我来一份,我这里没有RM,也不怎么会用。
嘛今天就这些了。
题外话,我有种预感,感觉后来事情会越来越多,更的频率可能也会变慢……所以一定要在我快坑了的时候叫我!提醒我!骂我!揍我!(pia
以上。
图块素材的话,如果不怕改的话,有不少
来源是rm的地图块的素材,也是32*32一格的
而且地图画面结构也意外的相似……
(另外类似的行走图格式意外的眼熟......)
于是这里是今天的最新进展了。
晚自习抽时间写了一下关于地图部分的实现方法。
图压了,可能有点小。
大概的架构应该是这样:
cMap
- cMapGenerator
- cTile(..)
- cLayer(..)
- iMatrix(.. , ..)
- blablabla.....
一个cMap类存储所有相关的数据,所谓调用的最外边一层。
cMapGenerator是该地图匹配的随机生成器,里边放一些参数什么的,以及控制非读档地图的生成。
cTile是该地图内所有种类的图块,所以声明的时候是个数组。cTile记录每种图块的feature啊behavior啊animation(mAnim)啊什么的,可以通过调用图块类里边内置的Draw等等方法实现快速画地图。(画地图)
cLayer是存储地图数据的类,你看里边有的那个iMatrix就是存放每个地图块对应哪种cTile用的。当然cLayer里边还有一些特殊的参数,比如该图层整体是否计入碰撞判定,图层背景图cTex等等。cLayer也是一个数组,一般会有3到5个中原,该表这地图得用5层地图块叠加才能出最终效果。
然后是题外话:真TM累啊。都这点了。这个记录本子上边还有之前写过的一些东西,什么时候我没什么进展但是又得更贴的时候就发出来玩玩,还有人物技能设定呢。