问题标签 [bevy]

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.

0 投票
1 回答
845 浏览

rust - Bevy 如何根据参数的类型“范围”其系统?

Bevy是一个新的 Rust 游戏引擎和 ECS,它有一个特性,它可以根据参数的类型“范围”它的系统。从它的文档

我们传递给“系统函数”的参数定义了系统在哪些实体上运行。在这种情况下,greet_people 将在具有 Person 和 Name 组件的所有实体上运行。

它看起来像这样:

Bevy 是如何做到这一点的?我以为我在某处读到 Rust 不支持这种方式的反射。

0 投票
2 回答
2343 浏览

rust - 在 Bevy 中读取鼠标点击的位置

我试图查看鼠标按下的位置,以便选择我的角色。我试过以下

这种工作,但鼠标需要在单击时移动。按下鼠标后有没有办法获取位置?

编辑:

我认为.find_latest可能会起作用,让它返回最新Some值。

0 投票
2 回答
1263 浏览

rust - In the Bevy Engine, how do I use &mut queries in the for-each system?

When extending a basic example with the mutating of a component, I tried adding &mut to a component parameter in a system. However, this triggered the no method "system" found error.

My code is here:

Looking at Into foreach system I admit that I don't fully understand how or why this doesn't work, so maybe I'm missing something basic!

Did I make a simple mistake? Are people doing stuff to work around this?

Thanks!

0 投票
1 回答
551 浏览

rust - 如何在 Bevy 中翻转精灵表

我正在尝试根据玩家在屏幕上是向左还是向右移动来翻转精灵。我目前如下修改 SpriteSheetComponents 的变换的方法似乎根本没有改变精灵:

为了翻转它,我应该修改精灵的不同组件吗?

0 投票
1 回答
561 浏览

rust - 如何更改 SpriteComponent 颜色?

我有一个查询系统,可以找到鼠标所在的对象。这不是一个按钮,但是,我想改变颜色。我不知道从哪里开始。我将查询什么属性以及如何更改它?目前,我有以下内容:

0 投票
1 回答
211 浏览

rust - 我的空 rust 项目无法编译,我该怎么办?

我昨天试图更新我的 bevy 依赖项,但一切都停止了。我从版本“0.1.2”更改为版本“0.1.3”。当我这样做时,我的项目完全停止了编译。我将依赖项改回“0.1.2”,但没有解决问题。然后我运行了 rustup update 也没有解决问题。所以,最后,我删掉了所有的项目代码,除了:

我的 cargo.toml 也很简单,唯一修改的部分如下:

所以,我得到的错误如下:

我应该怎么做才能解决这个问题?

编辑(生锈检查的结果):

rustup 检查 stable-x86_64-pc-windows-msvc - 最新:1.45.2 (d3fb005a3 2020-07-31) nightly-x86_64-pc-windows-msvc - 最新:1.47.0-nightly (f44c6e4e2 2020- 08-24)

0 投票
1 回答
1345 浏览

rust - 为什么 Bevy 无法绘制我的许多 SpriteComponents?

以下程序是大量 SpriteComponents 的一个非常简约的示例。在此示例中,使用 FPS 计数器,您可以看到 SpriteComponents 的成本似乎是多么高。

我确实注意到,如果我重用材质句柄,它确实会加快速度,但即便如此,速度还是非常慢。另外,我不确定重复使用材料手柄有多安全。我注意到在突破示例中,它们没有重用句柄。

尽管如此,在没有其他系统的情况下,我每秒可以得到大约 10 帧。

0 投票
1 回答
358 浏览

bevy - TextureAtlas 精灵索引是否反映了它们的添加顺序?

TextureAtlasBuilder用来生产一个TextureAtlas. 我正在使用该add_texture方法向图集添加多个纹理。然后,我将该纹理图集用作从SpriteSheetComponents包创建的精灵实体的一部分。

更改精灵的索引时,生成的纹理不是我所期望的。我假设纹理图集中的纹理反映了它们在构建时添加的顺序。这是一个不正确的假设吗?

0 投票
2 回答
1055 浏览

bevy - Bevy 如何在 2D 中渲染三角形(或多边形)

在 bevy 示例中,breakout 仅使用矩形,有加载精灵的示例,还有加载 3d 网格的示例。在 2d 中,我想绘制一个三角形(或其他多边形),但我无法通过文档弄清楚。

0 投票
2 回答
2746 浏览

rust - 如何使用 Bevy 在创建后获取和设置 Window 信息?

我希望能够使用 Bevy 读取和设置窗口设置。我试图用一个基本系统来做到这一点:

虽然这有效(部分),但它只为您提供原始设置,并且根本不允许更改。在这个例子中,标题不会改变,但标题的显示会改变。在另一个示例中,如果您要打印,则不会反映更改窗口大小(在运行时手动)win_desc.width