骑马与砍杀2:霸主 开发日志 ——界面编辑器

翻译:贤狼赫萝@骑马与砍杀中文站

卡拉迪亚的战士们,大家好!

游戏开发可能会是一件棘手的事情。有的时候现有的技术或者工具并不能完全按照做到你想要的地步,或者没有你想象那样有效率。这就让你做出艰难的选择:改变你的设计或者自己定制一个解决方案。

这是我们在处理霸主的用户界面(UI)时意识到的问题。之前,我们把Flash和Scaleform结合起来创建自己的UI,这是游戏界里很常见的方法。我们先用Flash创建UI,然后用Scaleform让UI在游戏里运行。技术上来说,Scaleform和Flash的运行都很好,并让我们能够去通过喜好来应用UI。然而在之后不久,我们在创建和利用UI的时候发现了一些问题。

首先,这个制作过程非常缓慢。在放到游戏上测试之前,任何UI的的更改都需要在Flash上操作。随着界面变得复杂, .swf文件生成时间就会更长。然后我们每次做的更改都需要重新加载才能看到结果。即便是个小的改动,也需要把一个东西向左移动5位,这也需要很漫长的过程。

此外,Scaleform和Flash都是我们不能有效控制的第三方框架。由于需求而去更换和修改所造成的困难,让我们开始怀疑我们做的这些努力是不是值得。

最终,我们意识到我们在UI上花费的时间和精力确实拖了我们的后腿,而能拥有符合我们自己所要的游戏UI就是创建我们自己的UI库。毕竟,一些困难实际上是机会伪装起来的!

这是一个可怕的前景,因为我们在现有的UI中花了上千小时。幸运的是,在开发过程的早期我们就决定用一个叫MVVM的框架创建UI。这意味着我们部分代码会是简洁的C#而不需要依赖某个特定的UI库,而我们可以把这部分代码重新利用起来,即便我们我们也需要重新做这部分工作。耶!

接下来,我们决定了我们的新UI库是什么样子,我们提出了以下需求:

·新的库必须快速而且灵活,我们的引擎团队很努力地去削减旋绕周期的每一毫秒,他们也不希望在UI上浪费太多时间而没办法去优化配置。

·新的库也能简易运行并在运行中更改。它能有先使用文本基础的格式,比如xml,因为文本基础能让多个开发人员能更简单地合作。

·系统必须简易以便制造互动性更高的UI。

·UI布局必须独立于外观。这能让UI设计师和美工能独立工作。

我们决定命名我们的新UI框架叫Gauntlet【护手,臂铠】(没别的原因,也就是听起来很酷!)。有了Gauntlet,我们能即时进行更改,也就是在不关闭游戏的情况下编辑界面,不需要生成文件或者额外的步骤。当我们用xml文件更改界面时,我们能通过保存文件来看到结果。而且因为我们可以完全控制系统,我们就能根据需求对系统进行更改。

那这个东西是怎么运作的呢?这个系统实际上很简单。我们把xml合并到游戏界面里,当游戏加载的时候这个界面就会打开。界面的所有信息布局都指定在这个文件里。我们还能在每个xml之间引用其他xml,这意味着如果我们创建了可以多次使用的UI元素(能用在其他界面里),我们就直接引用这个元素。这能让我们能随意更改文件,并能在这类xml引用的时候直接发生变化。

我们也有一套独立的xml文件来指定不同元素的外观,就像html页面中的css文件。这种外观系统非常强大,美工可以轻松指定某个UI元素的外观和运行细节。比如说,当玩家把鼠标放在一个按钮上时,按钮就会变色,点击的时候就能播放一段动画。(也就是说UI做好了就能有绚丽的效果)

库存的xml代码

显示在游戏中的库存

我们希望Gauntlet系统能受到mod团体的欢迎。在战团,UI编辑一直是一件头疼的事情,而且总会有一些限制无法解决。有了Gauntlet系统,mod制作者就能完全掌控每个界面,唯一的限制就是他们的想象力

下一周,我们就会和设计助理Cihan Şekercioğlu谈话。如果你有什么问题想问他,请在下面留言,我们会选择一个问题来对他进行问答。

上一篇:骑马与砍杀2:霸主 开发日志 ——王国管理

下一篇:骑马与砍杀2:霸主 开发日志 ——游戏设计

骑马与砍杀2:霸主 开发日志 ——界面编辑器相关推荐

  1. 十年磨剑而今匣中长鸣——骑马与砍杀2霸主

    骑马与砍杀2是由TaleWorlds Entertainment制作并发行的一款中世纪题材策略游戏,骑马与砍杀系列也是策略游戏里最为知名的作品,在国内也有极为庞大的粉丝群体,骑砍2截止至测评时也是成功 ...

  2. 骑马与砍杀服务器修复,骑马与砍杀21.3.1公共版和热修说明 修复联机模式

    骑马与砍杀21.3.1公共版和热修说明 修复联机模式​​,北京时间5月9日,骑马与砍杀2霸主发布了最新更新,以下是更新日志说明. 公共版 版本 Native: e1.3.1 SandboxCore: ...

  3. 爬虫学习(2):贴吧之骑马与砍杀2,愿它长寿?

    前言 爷爷,你的骑砍2发售了!!!骑马与砍杀2:霸主 抢先体验版于2020年3月31日发售,到今天砍友们已经畅砍了一周,从中文站快速更新版本的消息来看,目前体验版还存在很多bug,希望经过这段时间的完 ...

  4. 《骑马与砍杀》:CRPG精神的另类复活

    这里面讲的CRPG,是更公认的computer role-playing game,即电脑角色扮演游戏的意思,而非指<骑马与砍杀>系列著名的联机MOD<cRPG>. 如果要评论 ...

  5. 骑马与砍杀2从原神抓取武器模型到导入进游戏使用

    准备: 1,ninja ripper 2.05 2,目标游戏 3,blender 4,visual studio 2022 5,骑马与砍杀2和官方编辑器 简要流程: 1,ninja ripper抓取模 ...

  6. 骑马与砍杀2 自制一个简单MOD

    准备 一个编程工具:visual studio 一个反编译工具:dotPeek 一个可运行的游戏:骑马与砍杀2 ,我这里是v1.7.1 新建项目 1.新建一个类库开发项目 2.在游戏目录的Module ...

  7. 骑马与砍杀:战团 Mount Blade Warband 2.049 + DLC Mac 原生特别版角色扮演游戏

    骑马与砍杀:战团是大受好评的<骑马与砍杀>的第一部资料片,游戏将给玩家带来大量的新元素,突出的联机功能将允许32位玩家在死亡游戏模式下于一张地图内组队一分高下.<骑马与砍杀>是 ...

  8. 骑马与砍杀服务器修复,《骑马与砍杀2》新热修补丁:联机社交系统更新、修复单机崩溃...

    目前,骑马与砍杀中文站官博公开了<骑马与砍杀2>7月1日Beta e1.4.1测试版公共版热修补丁,此次热修补丁会更新联机社交系统,同时还会修复单机崩溃问题,以下为官方原文. 官博截图: ...

  9. 帧率配置_《骑马与砍杀2》配置探究:CPU显卡怎么搭配达到理想画质和帧数?...

    核心配件介绍 本文应该是最后一篇关于<骑马与砍杀2>的测试了,经过前两篇NVIDIA和AMD显卡探究,基本可以确定这款游戏性能从大到小排序是这样的:CPU>显卡>内存,注意一款 ...

最新文章

  1. NetBeans 时事通讯(刊号 # 106 - Jun 17, 2010)
  2. DrawIcon 和 DrawIconEx都失真
  3. json spr路驾驶技术视频api_每天弄个小爬取之Python爬取批量爬取B站小视频
  4. 深度学习利器: TensorFlow系统架构及高性能程序设计
  5. LOL手游最受男玩家欢迎皮肤,迦娜女主持第一名,长腿黑丝挡不住
  6. 怎么把cad做的图分享给别人_在线协同文档分享后,别人只能看却不能写怎么办?...
  7. c++起始(名词修饰,extern “C” ,引用)
  8. JavaScript算法(实例八)递归计算每个月的兔子总数【斐波那契数列】
  9. 任务平均分配的小算法
  10. 我把朋友圈关掉了235天
  11. 【算法】排序_归并排序
  12. JUC学习之CountDownLatch入门
  13. SQL 常用脚本大全
  14. Dash_API与必应翻译的综合使用
  15. yeta机器人_Yeta智能语音电话机器人开放平台接入指南(2)
  16. DM368串口通信调试
  17. 不要想当然,相信自己(自己在C中踩过的坑)
  18. 分享两套模板,zblog模板和emlog模板。
  19. 杂谈:WiFi包和buffer
  20. 荣品RP4412开发板摄像头驱动调用及对焦控制

热门文章

  1. JAVA互联网架构之Spring学习其一配置bean及工厂
  2. 03-9 BGP route-map应用总结
  3. 从String中取某一位字符
  4. Spring系列学习之Spring Web Flow
  5. mac os 录屏快捷键_Micro Snitch——Mac防监控软件
  6. MongoDB 固定集合(Capped Collections)
  7. Linux驱动开发-编写VS1053芯片音频驱动
  8. 男孩取名起名字:才高咏絮、谦虚谨慎的男孩名字
  9. 网络训练需要的混合类型数据的组织方式
  10. 民族融合的真正功臣——闪耀于历史的汉族英雄