教你实现简单的传送带效果

效果展示

场景搭建

效果展示

RigidBody2D是一个自带重力的节点

传送带样式

根据一张基础图片,进行repeat,生成传送带样式

创建一个Sprite节点,设置texture为AltasTexture类型,并将图片素材拖拽进texture中,选择吸附为Grid snap方便框选

在altasTexture中设置其宽度为图片宽度*10,使图片进行重复

效果展示

这个时候图片只是进行拉伸而不是复制,需要在图片的import面板,设置Flags -> Repeat为Enabled,然后选择Reimport重新导入即可

可以讲该AltasTexture进行保存为tres文件方便复用

传送带移动

通过设置texture的region -> position属性来完成传送带移动效果

extends StaticBody2D

var speed = 100

func _ready():
    # 设置该线速度,可以使得靠近该传送带的物体也跟着移动
    const_linear_velocity.x = speed

func _process(delta):
    $Sprite.texture.region.position.x -= speed * delta