温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

【unity实用技能】记一次失败的蓝图接口开发失败经验

发布时间:2020-10-13 15:33:27 来源:网络 阅读:999 作者:xiaosongfang 栏目:游戏开发

本来想写一个批量控制widget开关的接口,想写一个像append一样的可加pin的接口
【unity实用技能】记一次失败的蓝图接口开发失败经验

首先还是找到这个接口得代码
【unity实用技能】记一次失败的蓝图接口开发失败经验

可以看到关键的点就是 CommutativeAssociativeBinaryOperator = "true"
就是这个,标记这个接口是可以加pin的。
接下来就是照着写一下接口

// Fill out your copyright notice in the Description page of Project Settings.

#pragma once
#include "CoreMinimal.h"
#include "UObject/ObjectMacros.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "Styling/SlateTypes.h"
#include "Components/Widget.h"
#include "ExtraBlueprintFunctionHelper.generated.h"

/**
 * 
 */
UCLASS()
class CLIENT_API UExtraBlueprintFunctionHelper : public UBlueprintFunctionLibrary
{
    GENERATED_BODY()

public:
    UFUNCTION(BlueprintCallable, meta = (DisplayName = "SetBatchVisiable", CommutativeAssociativeBinaryOperator = "true"), Category = "UExtraBlueprintFunctionHelper")
    static UWidget* SetBatchVisiable(UWidget* objA, UWidget* objB);

};

这里有几个要注意的地方:
1.用了CommutativeAssociativeBinaryOperator这个标记为可拓展的话,返回值类型和传的参数类型要一致
2.如果要带流程线的话,就不能用BlueprintPure,要用BlueprintCallable
3.如果用了BlueprintCallable,那么又不能加pin了。。。
就是要不是这样
【unity实用技能】记一次失败的蓝图接口开发失败经验
要不是这样

【unity实用技能】记一次失败的蓝图接口开发失败经验

所以,失败了。。。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI