新项目 - 来自实验室的新鲜成果

作者:John Knight
量子迷你高尔夫 (quantumminigolf.sourceforge.net)

对于任何对量子力学,特别是双缝干涉实验感兴趣的人来说,量子迷你高尔夫 是一款很棒的小游戏,即使是最资深的物理学家也会觉得有趣。根据该项目的文档

量子迷你高尔夫 是一款迷你高尔夫模拟游戏,其中球的运动方式符合量子力学定律。这样的量子球可以同时存在于多个位置,并绕过障碍物发生衍射。

量子迷你高尔夫 存在两个版本:1) 纯软件版本,当您阅读此文件时,您很可能正在使用该版本,以及 2) 虚拟现实版本。在这里,用户使用真实的球杆进行游戏,球杆上标记有红外 LED,并通过网络摄像头进行跟踪。球通过安装在天花板上的视频投影仪投射到地面上。基本上,软件版本包含构建虚拟现实版本所需的所有代码。然而,构建它(目前)并不容易,因为它尚未记录在案。

New Projects - Fresh from the Labs

当物体干扰“量子团”时,分散模式发生改变的一个很好的例子。

New Projects - Fresh from the Labs

障碍物可以具有不同的密度,并且像这样的网格允许一些波形渗透物体,使事情变得更加不可预测。

New Projects - Fresh from the Labs

臭名昭著的“双缝”作为障碍物(对于普通高尔夫球来说显然是不可能的)。

安装

编译 量子迷你高尔夫 非常容易,但您需要追溯一些相当晦涩的库。该项目的 README 文件列出了以下要求

一旦您拥有了所需的库,请获取最新的 tarball,解压缩它,并在新文件夹中打开终端。输入命令

$ make 

如果没有错误,您应该可以通过输入以下命令来运行程序

$ ./quantumminigolf

用法

如前所述,量子迷你高尔夫 具有两种操作模式:虚拟现实 (VR) 模式和软件模式。VR 模式在“现实世界”中外部工作,使用投影仪、摄像头和投射到场地上的球。软件版本仅仅是在计算机屏幕上发生的基本模拟。我在这里介绍软件版本,但有关真实世界版本的更多信息,请参阅 VR 模式侧边栏。

一旦您进入主游戏屏幕,您将收到一系列关于如何控制游戏的说明。您真正需要理解的基本控件是左右键更改方向,以及 Enter 键开始游戏。移动鼠标会改变您推杆的瞄准方向。

当您瞄准并准备就绪时,单击并按住鼠标左键(按住的时间越长,施加的力量越大),球将开始移动。

假设您处于量子模式,球将从固体物体切换到波形,并以各种奇怪的方式在球场上弹跳。按下空格键或 q 键,球将停止并从这种量子态切换回固体物体——如果这是您第一次玩,可能在错误的位置。这真的取决于您根据波形当时的位置来猜测球最终会落在哪里。而且,如果您不爱冒险或者只是想测试基本机制,您可以以正常模式玩它,但这真的不是这个游戏的重点,不是吗?

这个游戏真正令人着迷的地方是量子世界如何与基本的、固体的“牛顿”世界相互作用。您可以实时观看光绕过物体的运动,但方式非常复杂!以下是来自 Friedemann 网站的更多信息

对于专家:击球时,您定义一个初始动量。然后,球被初始化为一个高斯波包,具有硬编码的宽度,以位置空间中的驱动位置和动量空间中的初始动量为中心。

...由于量子力学球在大多数时间同时存在于多个位置,因此不可能说它是否在洞中。它只是“同时在洞内和洞外”。但是,有一个技巧:量子力学允许进行“位置测量”,这将使球在某个位置坍缩。将其视为给球拍照。量子粒子可以同时存在于多个位置,但在照片中,它总是只出现在一个位置......在每场比赛结束时,您都会拍摄赛道的虚拟照片。如果球出现在洞中,您就赢了。否则你就输了。

就像 Valve 的 Portal 采用了一个非常简单的概念并制作了一款令人惊叹的游戏一样,如果您将这些量子游戏机制应用到一个大型 3D 游戏中,结果会是什么?那将非常有趣。

VR 模式

这个游戏在现实世界中变得更加刺激。在这里,您可以使用真实的球杆和球,球通过安装在六英尺高三脚架上的视频投影仪投射到赛道上。球杆上标记有红外 LED,并通过视频投影仪旁边的网络摄像头检测到。 量子迷你高尔夫 软件中的图像识别算法计算球杆位置,并将击球反馈到模拟中。

New Projects - Fresh from the Labs

量子迷你高尔夫—VR 模式

Art of Illusion—3D 建模工作室 (aoi.sourceforge.net)

我通常只介绍 0.x 开发阶段的东西,虽然这肯定不能称为新项目(它从 1999 年就开始了),但它似乎一直没有引起大多数人的注意。根据该项目的网站

Art of Illusion 是一个免费的开源 3D 建模和渲染工作室。它的许多功能可以与商业程序中的功能相媲美。亮点包括基于细分曲面的建模工具、基于骨骼的动画以及用于设计程序纹理和材质的图形语言。

New Projects - Fresh from the Labs

来自网站的 AOI 能够实现的精美效果示例(尽管此照片中是 Windows 版本)。

New Projects - Fresh from the Labs

在轻松地动态操作 3D 对象方面,Art of Illusion 独树一帜。

安装

就要求而言,您需要基本的 Java 安装才能获得至少最基本的功能。AOI 需要 Java 1.5 或更高版本,并且在 GCJ 下无法正常工作,GCJ 预装在许多 Linux 发行版中。有两个相对晦涩的要求值得追溯,因为它们极大地扩展了程序的功能。Java Open GL (JOGL) 为您提供 3D 加速功能,这在动画工作中非常宝贵,而 Java Media Framework (JMF) 可让您以 QuickTime 格式而不是一系列静止图像保存动画。JOGL 很可能在您的发行版的存储库中,但您可以在 Sun 的网站上获取 JMF:java.sun.com/products/java-media/jmf/2.1.1/download.html

该网站提供了一个 zip 文件,其中包含一个基于 Java 的安装程序,专为 i586 和 AMD64 架构设计,但如果您进一步查看页面,还可以找到其他 UNIX 和架构选项。获取最新文件并解压缩。里面有一个安装程序,文件名为 aoisetup.sh;执行此文件,但如果您想将其放在所有用户都可以运行的地方,您可能需要以 root 或 sudo 身份运行。

如果这对您来说是新的,请在 AOI 的安装程序等待您的文件夹中打开一个终端,然后输入

$ su
(enter password)
# ./aoisetup.sh 

或者,如果您使用的是像 Ubuntu 这样的基于 sudo 的发行版,请尝试输入

$ sudo ./aoisetup.sh 
(enter password)

从这里,您将获得一个基本的“下一步、下一步、下一步”风格的 GUI 界面,大多数用户应该都很熟悉。安装结束时,在 AOI 的安装位置(默认为 /usr/local/ArtOfIllusion)打开一个终端,然后输入命令

$ ./aoi.sh 

用法

虽然我很难在这短短的篇幅中充分介绍 AOI 的功能,但我至少会介绍一些主要元素。

四个窗格占据了屏幕的大部分空间,其中包含您将要处理的场景的相机角度。这些窗格已准备好立即“绘制”。左侧的简单侧边栏包含最常用的工具,例如移动、旋转、调整大小、创建正方形、创建球体等等。这使得跳入并实际制作东西比我遇到过的大多数其他 3D 建模程序更快、更直观。

明智的是,更高级的功能包含在工具栏的菜单中,但它们也很容易导航并且经过深思熟虑。一些很酷的功能包括脚本和存储库管理、即时渲染和动画预览,虽然我自己没有机会使用它,但有一个名为过程 3D 纹理编辑器的东西看起来非常强大。

虽然这个程序的呈现方式可能很简单,但该项目的目标始终是提供在高级商业应用程序中找到的功能(甚至在此过程中添加一些独特的功能),同时保持用户界面比商业产品更容易掌握。

一些真正让我印象深刻的功能是可脚本化对象、可动画纹理、扭曲效果(如扭曲和破碎)、带有权重、约束和反向运动学的骨骼动画,以及渲染到 HDRI 图像。

所有这些加起来就是一个非常强大而优雅的程序,它可以跨平台运行,因此说服同事尝试它可能不是一个棘手的问题。如果您在网站和论坛上查看,您会看到一些真正令人惊叹的图像是用 AOI 制作的——有些非常逼真,以至于我不得不看第二眼才意识到它们是计算机生成的!

我绝不是这个领域的专家,但这个项目应该比迄今为止受到的关注更多。虽然像 Blender 这样的程序立即让人联想到 3D 建模,但我以前从未听说过这个程序。希望这种情况即将改变。

正在酝酿新鲜、创新或令人兴奋的东西?发送电子邮件至 newprojects@linuxjournal.com

John Knight 是一位 26 岁的、沉迷于打鼓和攀岩的狂热分子,来自世界上最孤立的城市——西澳大利亚州的珀斯。他通常要么埋头于 Audacity 屏幕,要么疯狂地敲击低音鼓。

加载 Disqus 评论