- 1、本文档共315页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARPG开发文档
ARPG游戏开发笔记1.【角色移动】首先打开Unity3d,并创建一个新的工程,然后我导入了所用到包:场景,角色模型,以及DaikonGUI(现在重新做游戏的话,GUI就不用系统自带的了,这里改用DaikonGUI)的包。然后新建了_Scene、_GUI和_Player三个文件夹,并将刚开始导入的资源包移动进去,以便后来区分。如图:接下来在场景中建立一块地形,并将其大小设置为100*100:接下来就可以使用导入的场景资源包进行地形的描绘了。不过,这里我先不进行地形之类的具体创建,毕竟这都是细节,目前应该先解决角色控制方面的问题,如图,先将先前导入的角色模型拖入场景中:初一看来,是不是好像人物的比例有些不对,似乎太小了些?所以可以在角色旁边随便创建一个立方体,比较一下:这个确实大了些,于是对比着场景中的角色,在Inspector面板中进行调整,比例大概在0.15的样子刚好合适:觉得差不多了,就可以选中导入人物的所有模型,并将Scale Factror都设置为0.15。将一同导入的有动画的模型比例也设置为0.15是必须的,因为如果忘记设置动画模型比例的话,播放动画就会造成人物变形。接下来创建一个新文件夹,并将名字重命名为_Script,这里将存放接下来游戏中所用到的所有脚本。最开始当然是创建一个控制人物的脚本啦,那么现在就在_Script文件夹下创建一个C#脚本,就命名为“PlayerControl”吧。然后双击脚本文件进入Mono编辑器中,系统已经默认生成了一些代码,删除不必要的注释后,在代码最开始分别添加上人物的各个属性,这些一开始就可以定义好:using UnityEngine;using System.Collections;public class PlayerControl : MonoBehaviour {#region 人物属性public string m_name=CWH;//名字,以后看可以让玩家自己取名字的public int m_experience=0;//这是经验,将会是隐性的属性,也就是说在玩家眼中是不可见的。原来的版本没有,这次重新做的话,还是决定加进去。public int m_maxLife=100;//生命public int m_currentLife=100;//当前生命public int m_maxMagic=50;//魔法值public int m_currentMagic=50;//当前魔法值public int m_defense=10;//防御力public int m_attack=20;//攻击力public int m_speed=3;//速度public int m_rotateSpeed=180;//旋转速度#endregion#region 对象public Transform m_transform;//定义一个自己的对象,据说有好处。private CharacterController m_controller;//定义角色控制器#endregionvoid Start () {m_transform=this.transform;m_controller=GetComponentCharacterController();}void Update (){}}然后在最下方添加一个Move函数,以作为对角色的移动等的控制:void Move(){if(Input.GetKey(KeyCode.A))//以键盘上的A键控制角色向左旋转,注意向左旋转的话,rotateSpeed是为负的。{m_transform.Rotate(m_transform.up*-m_rotateSpeed*Time.deltaTime);}else if(Input.GetKey(KeyCode.D))//以键盘上的D键控制人物向右旋转{m_transform.Rotate(m_transform.up*m_rotateSpeed*Time.deltaTime);}}这次我准备使用CharactorController控制角色,旋转的方式写完了,那么移动的方式该怎么判断呢?毕竟角色必须能够前后移动才行。于是想想可以定义一个中间变量,按W键为前,将其置为1,按S键位后,将其置为-1,然后在使用CharactorController中的SimpleMove函数时(使用角色控制器的话,只能使用其自带的SimpleMove或Move函数进行移动,否则无法产生碰撞,当初在这一点上折腾了好久才明白过来......),可以用速度乘以这个中间变量,那么最后的移动不就可以分前后了么?所以就在最前面紧接着”对象“后面,定义一堆存放变量的地方,并将移动方向m_moveDirection变量定义好:#regi
您可能关注的文档
- Centos系统下搭建ftp服务器.doc
- CentOS安装MySQL数据库的三种方法.docx
- warming up and reading I(模块1单元3).ppt
- COBOL_文件操作.pptx
- CorelDRAW Graphics Suite基本操作.doc
- CorelDRAW文件的应用.docx
- “大学生暑期社会实践”团队项目结题验收书.doc
- Cygwin下完整Linux工作环境的搭建.docx
- CentOS 5.X文本界面 LAMP平台的搭建.doc
- C语言可执行程序从什么地方开始执行.doc
- 浙江衢州市卫生健康委员会衢州市直公立医院高层次紧缺人才招聘11人笔试模拟试题参考答案详解.docx
- 浙江温州泰顺县退役军人事务局招聘编外工作人员笔试备考题库及参考答案详解一套.docx
- 江苏靖江市数据局公开招聘编外工作人员笔试模拟试题及参考答案详解.docx
- 广东茂名市公安局电白分局招聘警务辅助人员40人笔试模拟试题带答案详解.docx
- 江苏盐城市大丰区住房和城乡建设局招聘劳务派遣工作人员4人笔试模拟试题带答案详解.docx
- 浙江舟山岱山县东沙镇人民政府招聘笔试模拟试题及参考答案详解1套.docx
- 最高人民检察院直属事业单位2025年度公开招聘工作人员笔试模拟试题含答案详解.docx
- 浙江金华市委宣传部、中共金华市委网信办所属事业单位选调工作人员笔试备考题库及答案详解1套.docx
- 广东深圳市党建组织员招聘40人笔试模拟试题及答案详解1套.docx
- 江苏南京水利科学研究院招聘非在编工作人员4人笔试模拟试题及参考答案详解.docx
文档评论(0)