注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

眼睛想旅行

技术就是我的生命与信仰!

 
 
 

日志

 
 
关于我

精通C,C++,python,Erlang。并熟悉各种其他编程语言,用cocos2dx游戏引擎作过几个项目。会MySQL增删改查,了解OpenGL渲染原理。懂单片机,能设计数字电路系统,会画电路图和设计电路板。喜欢了解最新前沿技术,并持续关注和学习新技术。

网易考拉推荐

游戏,角色,及属性方法总结  

2014-07-06 18:28:11|  分类: 游戏策划案 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
总的来说,现在的游戏基本上就是那些套路了。不过游戏的设计中,对于程序员来说最难的东西应该就是战斗系统的编程。而战斗系统中最最重要的角色,就是精灵了。所以,一个游戏,一般最最复杂的东西应该算是精灵类了。经过我整理,现在对游戏中的精灵类做一些总结,作为抛砖引玉的方式和大家分享一下我的一些经验。出说一下场景和导演的作用。
游戏中的角色
游戏角色类动画,属性及方法总结。
精灵,或者说是角色一般都有移动方法,技能和相应的动画。
代有多方向的移动的精灵类:精灵类的移动方向分为2,4,8,16方向,动画分为骨格动化和帧动画,
先说动画,
骨格动画,一般来说是用工具生成的。真对不同的游戏引擎会有有很多工具。3D游戏一般会有动作角本。2D游戏一般会有骨格动画编辑器。
帧动画,这种形式的动画一般在2D游戏中非常常见,可以说现在帧动画在2D游戏的动画中所占的比例一定在70%以上。因为这样的动画对动画设计人员的要求比较低,直接3转2就可以生成序列帧动画了。
下边说一下,一般一个角色都会有的角色属性。至于装备了什么的,其实只不过是穿上之后改变了这些属性的值而已。
角色的基本数据属性有:
1,移动速度,
2,移动方向动画,(动画其实也是角色一个属性)
3,攻击速度,
4,普通攻击力,
5魔法攻击力,
6,虚假血量值,
7,真实血量值,
8,魔法值,
9,普通护甲值,
10,魔法护甲值,
11,最大技能数量,
12,当前技能数量,
13,技能属性数据类包括技能动画,
14,精灵碰撞体积,
15,血量条,
16,魔法条,
17,升级动画,
18,掉血动画,
19,死亡动画。
角色的基本动画调用方法有
根据不同方向的移动动画,
1).2个方向的移动动画方法,只有向左向右,扒下和向上跳,向上爬的动画,些动来横版过过类动画。升级动画,死亡动画。
2).4个方向的移动动画方法,有向左,向右,向上,向下动画,有时会有跳的动画。升级动画,死亡动画。
3).8个方向的移动动画方法。有向左,向左上,向右,向右上,向下,向左下,向右下,向左上的八个方向动画。升级动画,死亡动画。
4).16个方向的移动动画方法。再在8个方向的基础之上更加细化的角色的动画。这里有16个方向的移动动画,升级动画,死亡动画。
角色的普通攻击基本方法有:
1.开始攻击某个目标方法,
分解方法:
1)先将目标存入自已的攻击目标列表中,再扣除目标被攻击后的真实血量,再向目标所在方向攻击,同时在攻击动画的中间使目标虚假显示血量掉血,同时目标显示血量条以掉血动画。
2.被某个目标开始攻击的方法,
分解方法:
1)当某个目标开始攻击自已时,先将目标及攻击力存入自已的被攻击目录列表中,同时自已的真实血量减去对方攻击力。
3.攻击某个目标动作结束后调用的方法,
分解方法:
1)在开始攻击之后,攻击动作结束时,调用的方法。从自已的攻击列表中一个一个的取出要攻击的目标对象,再使用所有目标运行被某个目标攻击结束方法。同时自已回归攻击结束状态。
4.被某个目标攻击动作结束时调用的方法,
分析方法:1)攻击自已的人攻击动作结束了,这个时候,自已要开始显示掉血动画。并将攻击者从自已的被攻击列表中移除掉。
角色攻击类技能方法有:
1.开始释放某个技能,
分解方法:
1)是瞬发技能,则直接调用目标被技能攻击的方法,可以是AOE,也可以是BUFF类的方法。
2)非瞬发技能时,则开始播放技能动画。技能结束时再调用目标被技能攻击的动画。如果是目标掉血技能,要先检查目标真实血量。并扣除技能攻击力。
2.被技能攻击方法:
分解方法:2)自已被目标的瞬发技能攻击,自身马上严生技能效果,可以是AOE,也可以是BUFF类的方法。
2)被非瞬发技能攻击,如果是攻击前,则减自身真实血量,如果是攻击技能结束时,则显示掉血动画,同时扣除显示用的虚拟血量。
角色对自已释放的技能方法:
1.瞬发技能。瞬间对自已释放技能,并产生效果。
2.有技能动画时间的技能。先进行动画播放,播放完动画之后再对自已产生技术效果。

游戏中的界面UI:

总的来说,游戏中的界面UI其实也就是那些东西,
按钮,一般都会有一个点击之后的回调方法,在这个方法里,可以设置按钮被点击之后其他UI或者角要发也一些改变的设置。
列表视图,就是一个显示一列属性,或者数值的视图,一般这种视图都可以滑动或者滚动。
图片,这个就是用来显示一张图片的。
进度条,用来显示一个需要时间的东西,或者需要一定量积累的东西当前达到了什么程度,一般会有两个方法,一个是用来设置当前进度到什么程度的,一个是用来在进度结束时产生一个回调的。一般有两个型状的,一种是长条型的,一种是圆型的。
滑动条,这个就是用来设置一个有最大最小值的中间值大小的,当滑动结束时,会调用一个方法,滑动开始时也会调用一个方法。
文本框,一看名字就知道这个是用来显示文本的控件。只是这个文本框用户不能编辑。
文本编辑框,这个是一个可以编辑内存的文本框,是用户用来和设备进行文本交流的窗口。他一般都会有当输入一个字符时和当删除一个字符时,以及当用户按了回车或者确后的几个方法。
场景
其实我不太想提这个东西,因为场景其实就是一个游戏情景,或者说是一个角色相互交互的容器。本质上没有什么大的功能。但他在游戏中的地位也不一般,因为所有要表现出来的动画或角色,或界面都是要放在场景中用户才能看到的。这就像,世界再真实,我们要有一个把物体放入世界的空间,然后所有人才能在世界的空间中走动,交互。说大一点,我们现实生活的宇宙其实就是一个场景,只是宇宙这个场景比较大我们没有办法跳出这个场景而已。
导演
导演,管理了所有的场景,他是负责场景切换的。有的时候他还管理场景中的时间。因为场景中的所有可交互的,不可交互的,动的,不能动的。都是在导演的系统时间控制之下在场景中相互转化与作用的。
好了,今天就总结到这里吧。这一套总结的理论我自已觉得应该是适合所有游戏的,不论是3D还是2D的游戏。转载的话,请注明一下出处。
  评论这张
 
阅读(318)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017