当前位置: 首页 > wzjs >正文

做推广能提高网站权重么网络服务有哪些

做推广能提高网站权重么,网络服务有哪些,目前做网站的公司有哪些,如何建立一个自己的网址文章目录 前言一、核心作用二、创建子类示例三、关键代码说明四、高级用法示例4.1 带执行流程的函数4.2 纯函数(无执行引脚)4.3 参数默认值 五、蓝图中的使用六、注意事项七、实际应用场景八、完整代码示例 前言 在 Unreal Engine 5(UE5&…

文章目录

  • 前言
  • 一、核心作用
  • 二、创建子类示例
  • 三、关键代码说明
  • 四、高级用法示例
    • 4.1 带执行流程的函数
    • 4.2 纯函数(无执行引脚)
    • 4.3 参数默认值
  • 五、蓝图中的使用
  • 六、注意事项
  • 七、实际应用场景
  • 八、完整代码示例


前言

在 Unreal Engine 5(UE5)中,UBlueprintFunctionLibrary 是一个用于在蓝图中暴露 C++ 静态函数的工具类。通过继承此类,开发者可以创建全局可访问的工具函数,让蓝图和 C++ 共享逻辑。以下是详细说明和代码示例:


一、核心作用

  • 蓝图调用 C++ 函数:将 C++ 静态函数暴露给蓝图,无需创建对象实例。
  • 代码复用:封装通用功能(如数学计算、数据转换、游戏逻辑工具等)。
  • 跨模块访问:提供跨不同游戏系统的工具函数(如 AI、UI、存档等)。

二、创建子类示例

创建一个继承自 UBlueprintFunctionLibrary 的子类,并添加静态函数:

// MyBlueprintFunctionLibrary.h
#pragma once#include "Kismet/BlueprintFunctionLibrary.h"
#include "MyBlueprintFunctionLibrary.generated.h"UCLASS()
class MYPROJECT_API UMyBlueprintFunctionLibrary : public UBlueprintFunctionLibrary
{GENERATED_BODY()public:// 示例:将两个向量相加UFUNCTION(BlueprintCallable, Category = "MyLibrary|Math")static FVector AddVectors(const FVector& A, const FVector& B);
};
// MyBlueprintFunctionLibrary.cpp
#include "MyBlueprintFunctionLibrary.h"FVector UMyBlueprintFunctionLibrary::AddVectors(const FVector& A, const FVector& B)
{return A + B;
}

三、关键代码说明

  • UFUNCTION 宏:标记函数为蓝图可调用。
    • BlueprintCallable:允许蓝图调用。
    • Category:在蓝图节点菜单中的分类。
  • 静态函数:无需对象实例即可调用。
  • 参数与返回值:需使用 UE 支持的类型(如 FVector, AActor*, int32 等)。

四、高级用法示例

4.1 带执行流程的函数

// 带执行引脚(输入/输出)的函数
UFUNCTION(BlueprintCallable, Category = "MyLibrary|Flow", meta = (ExpandEnumAsExecs = "Result"))
static void CheckHealth(float Health, EMyResult& Result);

4.2 纯函数(无执行引脚)

// 纯函数(无执行流程,仅计算)
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "MyLibrary|Math")
static bool IsHealthLow(float Health);

4.3 参数默认值

UFUNCTION(BlueprintCallable, Category = "MyLibrary|Debug")
static void LogMessage(FString Message, FColor Color = FColor::White);

五、蓝图中的使用

  1. 在蓝图中右键搜索函数名(如 “Add Vectors”)。
  2. 拖拽节点并连接参数。

六、注意事项

  • 静态函数限制:不能直接访问实例成员变量(需通过参数传递对象)。
  • 性能:频繁调用的函数需注意优化(避免在每帧调用的函数中进行复杂计算)。
  • 模块依赖:确保库类所在的模块在项目的 Build.cs 中被正确引用。

七、实际应用场景

  • 数据转换:将 FVector 转换为 FString 用于调试。
  • 游戏逻辑工具:计算伤害、生成随机位置等。
  • 系统接口:访问存档系统或成就系统的静态接口。

八、完整代码示例

// 示例:检测角色是否在视野内
UFUNCTION(BlueprintCallable, Category = "MyLibrary|AI")
static bool IsActorVisible(AActor* Target, AActor* Viewer, float MaxDistance = 1000.0f);
bool UMyBlueprintFunctionLibrary::IsActorVisible(AActor* Target, AActor* Viewer, float MaxDistance)
{if (!Target || !Viewer) return false;FVector ViewerLocation = Viewer->GetActorLocation();FVector TargetLocation = Target->GetActorLocation();// 距离检测if (FVector::Distance(ViewerLocation, TargetLocation) > MaxDistance) return false;// 视线检测FHitResult HitResult;FCollisionQueryParams Params;Params.AddIgnoredActor(Viewer);GetWorld()->LineTraceSingleByChannel(HitResult,ViewerLocation,TargetLocation,ECC_Visibility,Params);return HitResult.GetActor() == Target;
}

通过 UBlueprintFunctionLibrary,开发者可以高效地打通 C++ 与蓝图之间的逻辑,提升项目的可维护性和开发效率。

http://www.dtcms.com/wzjs/108578.html

相关文章:

  • 东莞营销型网站哪家好网络推广公司官网
  • 导购类网站怎么做河南推广网站
  • 福建省建设厅审查网站优质外链
  • 网站外链建设需要考核聚合搜索引擎接口
  • 网站建设开发方式包括购买hyein seo官网
  • 做的最好的快餐网站百度广告投放价格
  • 百度只收录wordpress广州专业seo公司
  • 延边延吉网站建设搜索引擎营销的特点有
  • 衡阳市建设网站百度应用
  • 邯山专业做网站免费的客户资源怎么找
  • b2b网站seo怎么做收录微营销平台系统
  • 沈阳成创网站建设公司如何做广告宣传与推广
  • 游戏网站建设的策划方案网络营销岗位职责和任职要求
  • 郑州网站制作汉狮网络什么是网络推广员
  • 国外的网站可以做百度推广吗公司搭建网站
  • 可以下载电影的网站怎么做可以推广的平台
  • 上传自己做的网站后台怎么办制作网站
  • 做网站需要物流信息端口外链生成器
  • 做讲课ppt的网站2345网址导航设置
  • wordpress title 自定义成都网站seo性价比高
  • 360做网站经常打骚扰电话网络营销策略包括
  • 女士服装定制网站营销推广文案
  • 手机做网站自己做购买链接怎么买
  • 网络营销推广与策划总结郑州关键词优化平台
  • 厦门正规网站建设企业百度推广关键词排名规则
  • 亚马逊注册没有公司网站怎么做seo诊断分析报告
  • 莆田网站建设设计整站排名服务
  • 宁波外贸建站公司他达拉非的副作用和危害
  • 建设部网站电子政务站长工具亚洲
  • 网站更换备案号北京昨天出啥大事了