MockMechanics —— 沙盒建造游戏

MockMechanics 是一个沙盒建造游戏,同时也是一项机械/可视化编程语言。MockMechanics 仅使用简单的块和图形,以及直观的编程形式来创建复杂的交互式机制,这跟《我的世界》有点类似。

MockMechanics 具备真实的物理引擎,可以使用 MockMechanics 制作一些非常有趣的东西,包括可演奏的乐器、机械的原型、算法的视觉表示、游戏和许多其他东西。比如下图是一个在 MockMechanics 创建的俄罗斯方块游戏。

MockMechanics 使用 clojure 编写,因此除了直接拖动块的可视化编程,也可以选择使用 clojure 作为脚本语言,来控制作品的行为。比如可以构建一个机器人手臂(很容易,有点像搭乐高),然后使用 clojure 让它拾取物体。

构建说明:

  • 树形结构:所有机器都是零件的 3d 树形结构,因此每个零件都有一个父级。可以先将一个零件添加到地面,然后将零件添加到该零件,依此类推以创建您想要的结构。当你移动一个部件时,它的所有孩子都会随之移动。
  • 模式:该程序有不同的模式(在右侧按钮栏上选择),每个视图有相同的 3d 环境,但允许您以不同的方式与之交互,例如添加模式允许添加对象,编辑模式允许缩放和移动。
  • 值:每个部分都有一个与之关联的值,该值的含义取决于是哪个部分。轨迹值表示它从 0 到 1 的旋转,1 为 360 度。 wagon 值是距其所在轨道路径上的起点的距离,按钮(和块)值在按下时为 1,否则为 0。灯值在打开时为 1,在关闭时为 0。您可以通过将其值设置为 1 来运行芯片,或者播放扬声器的声音。探针在接触另一个探针时的值为 1,否则为 0。
  • 行为:要使事物移动(或按下按钮、灯等),请将其添加到图形芯片部件并运行图形。该图在 x 轴上具有时间(以秒为单位),即水平轴和 y 轴上的值。例如,一个轨道从 (0,0) 到 (1,1) 的图形函数在运行时会在 1 秒内将该轨道旋转 360 度。
  • 决策:要将一个部件的行为与另一个部件的行为联系起来(比如按下按钮时运行图表),需要使用主板部件来连接这些部件的值。可以使用逻辑门使输出成为输入的任何函数。当调用主板时(当其中一个触发输入发生变化时),它会计算并将其输出的值设置为零或一。例如,假设您将按钮引脚直接连接到灯并将按钮设置为触发器(默认情况下)。当您按下按钮时,灯会亮起,当您松开时,灯会熄灭。按钮按下和释放运行主板(因为按钮是触发器)并且由于灯连接到按钮,它的值变为与按钮相同,1(按下按钮,灯亮)或0(按钮释放,灯)离开)。或者您可以使用探针来检查世界上的情况,例如,当按下按钮并且该块靠近该块时,则运行该芯片。
  • 设置:可以通过修改根目录中的 settings.clj 文件来设置一些首选项。
优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/p/mockmechanics

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。