随笔分类 -  UEC++总结 / GAS_API

1 2 下一页
网络同步预测-Prediction
摘要:预测(Prediction) 是解决网络延迟问题、提升玩家操作流畅度的核心机制 客户端接收玩家输入玩家操作(如 WASD 移动、跳跃)被捕获为输入事件(FInputActionValue)。客户端本地预测执行客户端不等服务器响应,直接基于输入在本地模拟角色行为(如移动、动画播放),并立即更新画面。此 阅读全文
posted @ 2025-09-15 22:28 偷懒的阿贤 阅读(21) 评论(0) 推荐(0)
如果远程玩家过早结束异步任务,并且具有该集的任务仍在运行,则该任务被杀死-SetWaitingOnRemotePlayerData()
摘要:SetWaitingOnRemotePlayerData主要用于控制游戏模式是否等待远程玩家(通常是网络多人游戏中的客户端)的数据加载完成。 调用时,可以直接杀死该使用数据的任务 阅读全文
posted @ 2025-09-15 22:01 偷懒的阿贤 阅读(3) 评论(0) 推荐(0)
确定调用 TargetData是否已发送-CallReplicatedTargetDataDelegatesIfSet()
摘要:example: const bool bCalledDelegate = AbilitySystemComponent.Get()->CallReplicatedTargetDataDelegatesIfSet(SpecHandle, ActivationPredictionKey);if (!b 阅读全文
posted @ 2025-09-15 21:57 偷懒的阿贤 阅读(5) 评论(0) 推荐(0)
从客户端拿到缓存数据-ConsumeClientReplicatedTargetData()
摘要:1 阅读全文
posted @ 2025-09-15 21:53 偷懒的阿贤 阅读(4) 评论(0) 推荐(0)
用于在能力(Ability)成功获取目标数据(Target Data)后触发回调-AbilityTargetDataSetDelegate
摘要:主要作用当玩家或 AI 通过能力进行目标选择(例如点击地面、选择敌人等)并确认目标后,AbilityTargetDataSetDelegate 会被触发,将收集到的目标数据(FGameplayAbilityTargetDataHandle)传递给绑定的函数,以便能力执行具体的效果(如伤害、治疗、生成 阅读全文
posted @ 2025-09-15 21:50 偷懒的阿贤 阅读(8) 评论(0) 推荐(0)
控制能力任务(Ability Task)是否应该广播其委托(Delegates)-ShouldBroadcastAbilityTaskDelegates ()
摘要:ShouldBroadcastAbilityTaskDelegates 是 UAbilityTask 类中的一个虚函数,主要用于控制能力任务(Ability Task)是否应该广播其委托(Delegates)。该函数的默认实现返回 true,表示能力任务会正常广播委托。在某些特殊情况下,你可能需要重 阅读全文
posted @ 2025-09-15 21:40 偷懒的阿贤 阅读(3) 评论(0) 推荐(0)
将目标数据复制到服务器-ServerSetReplicatedTargetData()
摘要:ServerSetReplicatedTargetData 通常是一个自定义的服务器端 RPC(远程过程调用)函数,用于将目标数据(如瞄准目标、交互目标等)从客户端发送到服务器,并让服务器更新相应的复制变量,以便在多台客户端之间同步该数据。 阅读全文
posted @ 2025-09-15 21:38 偷懒的阿贤 阅读(6) 评论(0) 推荐(0)
GAS中,负责封装技能所影响的目标数据(如 Actor、位置、碰撞结果等)-FGameplayAbilityTargetData
摘要:example://FGameplayAbilityTargetData_SingleTargetHit 继承自FGameplayAbilityTargetData FGameplayAbilityTargetData_SingleTargetHit 是用于表示单一目标命中信息的目标数据结构,常用于 阅读全文
posted @ 2025-09-15 21:35 偷懒的阿贤 阅读(9) 评论(0) 推荐(0)
创建预测窗口-ScopedPredictionWindow();
摘要:ScopedPredictionWindow 是一个与网络预测(Network Prediction)相关的工具类,主要用于在多人游戏中管理预测窗口的生命周期,确保客户端预测和服务器验证的一致性。 网络预测上下文管理:在客户端预测期间,ScopedPredictionWindow 会创建一个临时的 阅读全文
posted @ 2025-09-15 21:22 偷懒的阿贤 阅读(4) 评论(0) 推荐(0)
GAS中GA变量数据的同步
摘要:UAbilitySystemGlobals 是 Ability System 框架的核心全局类,负责管理能力系统的初始化、配置和全局状态。它提供了许多关键功能,是整个能力系统正常运行的基础。 UAbilitySystemGlobals::Get().InitGlobalData();//初始化需要用 阅读全文
posted @ 2025-09-15 16:46 偷懒的阿贤 阅读(4) 评论(0) 推荐(0)
在GAS中创建异步任务-AsyncTask
摘要:example: UCLASS()class AURA_API UTargetDataUnderMouse : public UAbilityTask{ GENERATED_BODY()public: UFUNCTION(BlueprintCallable, Category = "Ability| 阅读全文
posted @ 2025-09-15 16:27 偷懒的阿贤 阅读(5) 评论(0) 推荐(0)
使用标签Tag控制蒙太奇的触发时机-playmontageAndWait-Send GameplayEvent-WaitGameplayEvent
摘要:控制蒙太奇的通知,可以在蒙太奇中的通知中发送标签事件,在GA中接收标签事件 在事件通知蓝图中 阅读全文
posted @ 2025-09-15 12:02 偷懒的阿贤 阅读(5) 评论(0) 推荐(0)
在GA中添加Tag-GetDynamicSpecSourceTags().AddTag(NewTag)
摘要:GetDynamicSpecSourceTags().AddTagexample: FGameplayAbilitySpec AbilitySpec = FGameplayAbilitySpec(AbilityClass,1); AbilitySpec.GetDynamicSpecSourceTag 阅读全文
posted @ 2025-09-12 15:30 偷懒的阿贤 阅读(9) 评论(0) 推荐(0)
启动GA-Event Activated,结束GA-End Ability
摘要:在GA中 Event Activated是激活时的行为 在激活结尾时调用End Ability Event OnEndAbility是GA结束时的行为 阅读全文
posted @ 2025-09-11 17:02 偷懒的阿贤 阅读(5) 评论(0) 推荐(0)
在使用代理的时候,可以使用更简单的C++语法代替FGameplayAttribute代理,使用TStaticFuncPtr <T>
摘要:DECLARE_DELEGATE_REVAL(FGameplayAttribute, FAttributeSignature); 比如这里的代理 定义为FAttributeSignature AttributeSignature ; 但是可以不生命代理,直接声明 TBaseStaticDelegat 阅读全文
posted @ 2025-09-11 16:38 偷懒的阿贤 阅读(4) 评论(0) 推荐(0)
给GE添加自定义算法-继承GameplayModMagnitudeCalculation
摘要:继承该类 virtual float CalculateBaseMagnitude_Implementation(const FGameplayEffectSpec& Spec) const override;example: float UMMC_MaxHealth::CalculateBaseM 阅读全文
posted @ 2025-09-03 22:47 偷懒的阿贤 阅读(6) 评论(0) 推荐(0)
增加新的GameplayTags-UGameplayTagsManager::Get().AddNativeGameplayTag
摘要:UGameplayTagsManager::Get().AddNativeGameplayTagexample: UGameplayTagsManager::Get().AddNativeGameplayTag(FName("Attributes.Secondary.Armor"),FString( 阅读全文
posted @ 2025-09-02 21:46 偷懒的阿贤 阅读(5) 评论(0) 推荐(0)
关于GE中的-AttributeBased Modifiers
摘要:每个Modifier的算法是依次计算每个Modifier的运算修饰符,再将所有的Modifier进行它们之间的运算(运算只按照从上到下的顺序) 阅读全文
posted @ 2025-08-27 17:50 偷懒的阿贤 阅读(2) 评论(0) 推荐(0)

1 2 下一页