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
,它将不会滚动。