Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
ParallaxLayer
继承: Node2D < CanvasItem < Node < Object
使用 ParallaxBackground 的视差滚动层。
描述
ParallaxLayer 必须是 ParallaxBackground 节点的子节点。每个 ParallaxLayer 都可以设置为相对于相机移动或 ParallaxBackground.scroll_offset 值。
该节点的子节点将受其滚动偏移量的影响。
注意:当该节点进入场景后,对其位置和比例的任何改变都将被忽略。
属性
|
||
|
||
|
||
physics_interpolation_mode |
|
属性说明
Vector2 motion_mirroring = Vector2(0, 0)
🔗
ParallaxLayer 重复绘制的间隔,单位为像素。用于创建无限滚动的背景。如果将某个轴设置为 0
,那么 ParallaxLayer 就只会在那个方向上绘制一次。
注意:如果想要在重复时让子节点显示的 Texture2D 进行像素级对齐,那么就应当在设置间隔时考虑纹理所使用的缩放。例如你使用 Sprite2D 节点将 600×600 的纹理进行 0.5
的缩放,然后希望纹理横向重复,那么就应该将“Mirroring”设置为 Vector2(300, 0)
。
注意:如果视口的某个轴比对应重复轴的两倍还要大,那么就无法无限重复,因为时差图层同一时间只能将该图层绘制两份。计算可见窗口时依据的是父级 ParallaxBackground 的位置,而不是图层自身的位置。因此,使用镜像时,请勿改变 ParallaxLayer 相对于父节点的位置。如果需要修改背景的位置,请改为设置 ParallaxBackground 父节点的 CanvasLayer.offset 属性。
注意:虽然这个属性的名叫 Mirroring,是“镜像”的意思,但是并不会对图层做镜像,只会进行重复。
Vector2 motion_offset = Vector2(0, 0)
🔗
该 ParallaxLayer 的偏移量,相对于父 ParallaxBackground 的 ParallaxBackground.scroll_offset。
Vector2 motion_scale = Vector2(1, 1)
🔗
复制视差图层的运动。如果一个轴被设置为 0
,它将不会滚动。