Board logo

标题: O2MANIA skin.xml 制作基本教程 [打印本页]

作者: fancyzero    时间: 2005-7-21 23:26     标题: O2MANIA skin.xml 制作基本教程


抽空来说明一下skin的基本结构
首先总体结构

<?xml version="1.0" encoding="gb2312" ?><!--此行不变!-->
<Skin>
  <Info>
        <PlayArea y="0" h="475" /><!--note的显示范围!-->
        <ScoreNumberPos x="400" y="567" /><!---分数显示位置(右对齐)!-->
        <ComboNumberPos x="80" /><!--连击显示位置(中心对齐)!-->
        <JudgmentPos y="454" /><!--判定高度!-->
  </Info>
  <Images Count = "所有用到的图片的数量">
        <Pic0 Images = "image1.bmp"><!--这里用来预定义所有用到的图片!-->
        ...
        <Picn>
  </Images>
  <Component><!--这里是最复杂的部分了!-->
        .....请看下一楼讲解
  </Component>
</Skin>

注意 有时候为了使文件内容节减会把某些
<xxxx a="b" c="d">
</xxxx>
的形式写成<xxxx a="b" c="d"/>,请记住他们是一样的

作者: fancyzero    时间: 2005-7-21 23:32

O2Mania的游戏界面被分成多个部件(Component),皮肤里的每一部件又是由多个部分(Part)组成的
然后每个部分(Part)又可以是单张图片或者多帧(Frame)的动画
当然动画不仅仅局限于图片动画,位置,大小等等都可以改变(马上还有透明度)
拿DJMAX游戏面板来举例子
资源

结果

先看怎么做底部那块:
首先先在Component节点里,这么写
  <Component>
        <Panel ID = "0">
          <Part0 FrameCount="1"><!--只有1帧,没有动画!-->
        <Frame0  ...... /><!--后面解释如何填写这里的内容!-->
          </Part0>
        </Panel>
  </Component>
这里的Panel并不是说明这个部件就是游戏面板,正真说明这个部件是什么东西的,是后面的"ID"
ID号和部件的对应表将在后面给出
经过测量源图中上半部分那以大张图片左上角坐标为[0,0]然后,宽和高是[234,126],
在屏幕上的位置(也就是这个图片的左上角,在800*600的游戏空间里的位置)是[0,474]
于是这个图片的位置,大小就可以定下来了
<Frame0 u="0" v="0" w="234" h="126" x="0" y="474" ImageName="pgmk2_1.png" />
这里的u,v,就是左上角的x,y坐标,w宽,h高,x,y就是他在屏幕上的坐标

...突发事件,明天继续
作者: fansmall    时间: 2005-7-22 00:29

刚想问 老大就贴出来了
努力学习xml中
比想象中简单一点点。。。


看起来老大正在做5key 期待中


关于定位 老大有没有好的方法?
作者: xk2y    时间: 2005-7-22 00:37

我都学学xml
作者: fancyzero    时间: 2005-7-22 00:37

用画笔啊...只要可以看坐标的绘图软件就行
看看左上角看看右下角,宽就是右 - 左 + 1
看来我应该在skin加一个支持两个角的定位,而不光是左上角加宽高
作者: wanamaka    时间: 2005-7-22 01:07

SKIN用的图片是不是只能用
512*512
256*256
128*128
这样子的呀

我用的其他尺寸就出现了对不上点的情况
作者: 暗之天星    时间: 2005-7-22 08:34

网页存了慢慢看
作者: fancyzero    时间: 2005-7-22 09:16

wanamaka,2005-07-22, 01:07:13
SKIN用的图片是不是只能用
512*512
256*256
128*128
这样子的呀

我用的其他尺寸就出现了对不上点的情况
恩,为了保证SKIN的兼容性最好用这种大小的
作者: gong0704    时间: 2005-7-22 09:43

老大,问你几个问题呗!!
为什么我用一些其他的图片的时候,图片的像素位置与程序中找到的相应位置不一样呢?这个与图片的什么有关呢?
另外,关于orgx和orgy我总是没搞懂。。
还有一个就是:
combo num那个地方,两个数字之间的距离与什么有关阿?是不是只与图片的大小有关阿?不能设定吗?
作者: fancyzero    时间: 2005-7-22 09:55

图片要向上面说的那样要256*256,512*512,128*128...这样的,必须是2的n次方,而且是正方形
orgx 和 orgy你先都填0吧,那个是对齐点的坐标,就是Frame上的哪个点去放在x,y指定的位置上,是一个相对坐标
combo num还不能指定间距
作者: gong0704    时间: 2005-7-22 10:09

恩,好的。我再玩玩
5key的skin我做好了,老大看看吧!给点意见吧。
作者: moffatts    时间: 2005-7-22 10:51

一头雾水中……想问一下,如果我只是单纯的把别人的SKIN文件里的图片换掉自己想换的(图象大小位置不变,只是样子变一下)可以实现吗?
作者: fancyzero    时间: 2005-7-22 13:16

moffatts,2005-07-22, 10:51:23
一头雾水中……想问一下,如果我只是单纯的把别人的SKIN文件里的图片换掉自己想换的(图象大小位置不变,只是样子变一下)可以实现吗?
只要你图片里每个元素的位置和原来的一样就可以
作者: 暗影逍遥子    时间: 2005-7-23 03:18

有点专业... 定上去再说.
顺便鄙视一下发垃圾帖的人. 唉. 无奈
作者: Khoo    时间: 2005-7-23 10:14

麻烦老大置顶
作者: wcyh    时间: 2005-7-23 14:43

深奥。....很努力的参详ing....
作者: RedNoah    时间: 2005-7-27 22:03

  这叫明天继续吗……好多天了……
  楼主快回来啊……小菜们都等着您光辉的引领,去寻找那流淌着奶与蜜之地。你必领着小菜们脱离鄙视的目光,好似摩西领以色列人出埃及。Virtues,Powers,Principalities,Dominations,必有这些荣耀的光辉笼罩您。




欢迎光临 浆糊论坛-RO小站 (http://bbs.rohome.cn/) Powered by Discuz! 7.2