问题标签 [amethyst]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
rust - 无法设置按钮颜色
基于这个 UI 示例,我在on_start
方法的末尾添加了一个自定义按钮。但是当我运行游戏时,按钮主体是不可见的,只显示它的文本(“1234567”)。
我添加到示例中的代码:
使用自定义颜色动态创建按钮的正确方法是什么?
我正在使用紫水晶 v0.15。
rust - 如何生成一个球体并将其传递给资产加载器
我在网上找到了这段代码,它可能适用于不同版本的 Amethyst 引擎:
看起来现在该generate
方法返回 aMeshBuilder
而不是Mesh
本身。我可能可以在构建器上调用该.build()
方法,但它需要两个额外的参数,其中一个是QueueId
,我没有也不知道从哪里获取它们。
我怎样才能将该代码正确地适应 Amethyst 0.15 版本?
rust - 在 Amethyst ECS 架构中添加事件通道
在Amethyst Pong 教程中,对实体/组件/系统(ECS)架构的解释让我觉得系统是在main
函数中添加到游戏中的东西,不能在运行时添加或删除。
在同一本书中,我按照这一部分添加了一个Producer
系统和一个Receiver
系统,它们都与定制的EventChannel
.
由于Receiver
和Producer
是系统,按照教程我只学习了如何将它们添加到main
函数中,而没有其他地方,而在代码示例中,Receiver
'new
方法是在World
struct
. 我没有任何关于World
when 在main
函数中的实例,因为在创建过程中似乎还为时过早,无法拥有其中之一。
如何以正确的 ECS 兼容方式完成?有没有办法在游戏循环期间从状态中检索系统并在那里订阅?会是正确的吗?
rust - How do I get an associated entity's transform?
Imagine I've crated an entity with transform:
How do I get its transform later having entity instance? E.g. (pseudo code):
user-interface - 如何在运行时将 UiWidget 创建为实体?
想象一下我创建了一个容器
我如何将它添加到世界并取回它的实体?就像是:
但它说“该特征specs::world::comp::Component
未实现amethyst_ui::prefab::UiWidget<amethyst_ui::prefab::NoCustomUi, std::string::String>
”。
我正在使用 Amethyst v0.15
rust - 如何在 Rust SPECS 中读取组件并写入具有相同组件的新实体?
我有一个正在生成其他实体的实体。例如生成器有一个位置组件,我希望生成的实体与生成器具有相同的位置。
在生成系统中,似乎我需要读取和写入一个组件,这听起来不可能。唯一的选择似乎是 a LazyUpdate
,但我想避免这种情况,因为它需要调用world::maintain
,并且我想在同一框架内的另一个系统中使用生成的实体。
我的系统代码:
我该如何解决这个问题?
linux - Rust`std::time::Instant`“惊慌失措'提供的瞬间比自己晚”
我正在尝试在 rust 中设置一个简单的计时器,它以一定的频率返回 true。
std::time::Instant
出于某种原因,在任务内使用时,这似乎总是会出现恐慌rayon
(如果重要的话,在 Legion ECS 中运行)。
这是唯一一篇包含相同信息的帖子,但归结为使用了不寻常的内核。我只是使用 Ubuntu 18.04,没有任何异常设置。
此外,我尝试了多台机器,但代码出现了同样的错误。
这与使用std::time::Instant
和有关rayon
吗?
rust - Rust Amethyst Pong 教程示例给出“错误:没有名为 `pong_tutorial_01` 的示例目标”
我刚刚克隆了 github 存储库 amethyst/amethyst,这是一个用 rust 编写的游戏引擎,以便遵循文档和教程。Amethyst文档中有关 pong 教程的文档告诉我们,您可以使用...运行示例
...但是当我尝试这个时,我得到一个错误...
错误:没有名为“pong_tutorial_01”的示例目标
现在,在大型项目中提供的运行代码示例的业务对我来说是新的,但似乎是 Rust 的适当部分,并且行为在外部项目的Cargo.toml(s)和(I想想)里面的示例子项目。但是在阅读了这里的一些 rust Cargo 书籍后,关于需要存在于示例子目录中的示例,并且有一些方法可以防止它们被自动发现(例如autoexamples = false
),除非它们以另一种方式特别配置,否则一切似乎都井井有条。
没有我学习如何配置货物的每一个细节,有没有聪明人知道为什么这不起作用?提前致谢。
ps
我在 Win 10 上运行。Rustup 更新是最新的。其他生锈的东西工作。事实上,如果我深入研究它们的目录并cargo run
直接运行它们,这些示例就可以工作,所以我认为我没有语言/工具链配置问题。我只是对为什么那个特定的命令行不能像宣传的那样工作感兴趣。
rust - Rust Amethyst 实体问题
我正在尝试将此 ron 文件部分重写为 rust 代码:
这是 amethyst git repo ( https://github.com/amethyst/amethyst/blob/v0.15.3/examples/sphere/assets/prefab/sphere.ron ) 中的一个示例文件我写了这个 rust 函数:
但是当我从on_start
回调中调用它时,它什么也不做!我用调试线(https://github.com/amethyst/amethyst/tree/v0.15.3/examples/debug_lines)运行它以排除位置错误,但球体仍然没有出现在任何地方。我花了6个多小时试图解决这个问题,但仍然没有解决方案。请告诉我我错过了什么