[UE4][蓝图]AttachToActor基本使用

                                      

作用:把一个Actor附加到另一个Actor上,附加Actor会跟随被附加Actor做相同姿态运动。多用于鸟群、鱼群 、驾驶等等控制,只需要把Leader的行动规划好,其他的直接Attach到Leader上就可以一起运动了。

Target:准备附加的actor

Parent Actor:被附加的Actor

Socket:骨骼插槽,没有可以不写

Location、Rotation、Scale都有相同的选项

Keep Relative:附加actor和被附加actor保持相对transform。

Keep World:附加actor和被附加actor保持在场景中的transform。

Snap to Target:附加actor使用被附加actor的transform。

一般情况下,Attach之后可以使用下面的函数细调附加Actor的位置和其他参数

使用DetachFromActor可以使两者分开

 

在Unreal Engine 5.3 C++中,如果你想要将一个C++函数设计成可以在蓝图使用的,以便接受字符串类型的音效资产并播放它,你需要按照以下几个步骤操作: 1. 定义C++函数:首先,在你的类中创建一个公开(Public)的虚函数,例如`UFUNCTION(BlueprintCallable)`装饰器用于标记该函数可以直接在蓝图中调用。示例代码如下: ```cpp public: virtual void PlayAudioAsset(const FString& AudioAssetName) = 0; ``` 这里的`FString`是UE4中处理文本的一个类,`AudioAssetName`就是你要传递的音效文件名。 2. 实现函数体:在基类中提供一个默认实现,但在派生类中可以根据需要重写实际播放逻辑,比如通过调用`USoundComponent`相关的API: ```cpp // 基类或模板类的实现 virtual void PlayAudioAsset(const FString& AudioAssetName) { USoundBase* Sound = LoadObject<USoundBase>(GetWorld(), *AudioAssetName, TEXT("Sound")); if (Sound) { USoundComponent* AudioComponent = CreateDefaultSubobject<USoundComponent>(TEXT("AudioComponent")); AudioComponent->AttachToActor(this, FAttachmentTransformRules(EAttachRule::SnapToTarget)); AudioComponent->Play(Sound); } } ``` 3. 派生类重写:如果你有特定的需求,如预加载音效或优化播放方式,可以在派生类中提供自定义的实现。 4. 使用蓝图:在蓝图编辑器中,你可以直接拖拽从内容浏览器选择的音效到这个暴露出来的函数上,并给参数指定相应的音效名称。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值