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

苹果软件做ppt下载网站有哪些新闻源软文发布平台

苹果软件做ppt下载网站有哪些,新闻源软文发布平台,企业网站建设原则有哪些,施工企业介绍前面几篇文章,总算把GE给更新完了,GE的基础应用也算讲清楚了。接下来,我们将更新GA的相应的课程了,首先,这一篇先对GA做一个简单的介绍,然后实现一下如何实现给角色应用一个GA。 简介 GamplayAbility 简称…

前面几篇文章,总算把GE给更新完了,GE的基础应用也算讲清楚了。接下来,我们将更新GA的相应的课程了,首先,这一篇先对GA做一个简单的介绍,然后实现一下如何实现给角色应用一个GA。

简介

GamplayAbility 简称 GA,是UE引擎里的GAS内的功能组件,它的主要功能包括技能冷却时间(CD)和技能消耗的管理,同时也支持网络同步和实例支持。开发者可以在ActivateAbility事件中编写相关的技能逻辑,如角色动作、粒子效果以及角色数值的变动。根据技能是否施展成功,可以调用CommitAbility()或EndAbility()来结束技能。

GameplayAbility在UE中的类名为UGameplayAbility,它继承于UObject和IGameplayTaskOwnerInterface。UObject是所有UE对象的基类,而IGameplayTaskOwnerInterface是一个抽象类,代表玩法任务所有者接口。UGameplayAbility通过其丰富的继承关系和函数,使得开发者能够灵活地创建和管理游戏中的技能系统。

GA类主要定义攻击或者能力,它必须首先被应用给ASC,我们将在服务器上执行此操作,然后将 GA的spec复制到本地。在使用时,必须将其激活(Activated,如果只应用,不激活,将不起效果),它可以异步运行,就是可以同时触发多个技能,正常技能它是不能够异步的,我们需要使用Ability Task去实现技能异步。

创建GA

GA的配置修改是需要在蓝图中进行的,我们可以直接通过创建蓝图选择GameplayAbility去创建
在这里插入图片描述

但是考虑到后续要为GA增加新的功能,我们先通过GameplayAbility创建一个c++类,然后将其命名为GameplayAbilityBase,当做技能的基类,用于以后的扩展。
在这里插入图片描述
打开代码,我们首先找到ASC的基类,在基类增加一个函数,用于应用技能,参数传入一个技能类的数组

void AddCharacterAbilities(const TArray<TSubclassOf<UGameplayAbility>>& StartupAbilities);

在函数实现这里,遍历传入的数组,通过参数实例一个spec,并应用,这里为了方便测试,使用GiveAbilityAndActivateOnce函数应用,并直接激活。

void UAbilitySystemComponentBase::AddCharacterAbilities(const TArray<TSubclassOf<UGameplayAbility>>& StartupAbilities)
{for(TSubclassOf<UGameplayAbility> AbilityClass : StartupAbilities){FGameplayAbilitySpec AbilitySpec = FGameplayAbilitySpec(AbilityClass, 1);//GiveAbility(AbilitySpec); //只应用不激活GiveAbilityAndActivateOnce(AbilitySpec); //应用技能并激活一次}
}

找到角色的基础类CharacterBase,添加一个私有属性,作为角色初始的技能设置。

private:UPROPERTY(EditAnywhere, Category="Attributes")TArray<TSubclassOf<UGameplayAbility>> StartupAbilities; //角色初始技能设置

在函数实现这里,将ASC类型转换为我们创建的ASC基类,并调用上面添加技能的函数

void ACharacterBase::AddCharacterAbilities() const
{UAbilitySystemComponentBase* ASC = CastChecked<UAbilitySystemComponentBase>(GetAbilitySystemComponent());if(!HasAuthority()) return; //查询是否拥有网络权限,应用技能需要添加给服务器ASC->AddCharacterAbilities(StartupAbilities);
}

这里,技能的设置,技能的应用函数就已经实现完毕,我们现在只需要在初始化角色的时候调用角色基类身上的AddCharacterAbilities函数,即可实现技能的应用。
在英雄角色类里面,服务器端初始化函数为PossessedBy,我们在内部初始化ASC后,调用初始化技能即可。

void AHeroCharacter::PossessedBy(AController* NewController)
{Super::PossessedBy(NewController);//初始化ASC的OwnerActor和AvatarActorInitAbilityActorInfo();//设置OwnerActor的ControllerSetOwner(NewController);//初始化角色技能AddCharacterAbilities();
}

测试

功能实现了,接下来,我们要实现对功能的测试,首先打开UE,创建一个技能蓝图,基于我们之前创建的技能类
在这里插入图片描述
内部默认有两个函数回调,一个是技能被激活后的回调,我们可以在后面计算消耗,播放动画,以及做一些逻辑性的处理
另一个回调事件是技能结束回调,可以在技能结束时需要编辑一些逻辑处理
在这里插入图片描述
技能的结束需要我们手动去处理,在内部调用,是用commitAbility节点(计算技能消耗是否达标,不达标自动结束技能)EndAbility节点(结束技能)或者在外部取消技能
一下是我们实现的一个技能测试蓝图,延迟一秒结束技能,看是否正常打印
在这里插入图片描述
打开英雄角色蓝图,发现自定义属性这里多了一项设置技能的数组参数,将我们创建的技能蓝图设置上去
在这里插入图片描述
接着运行,看是否正常打印,如果正常打印,那证明技能使用测试通过。
在这里插入图片描述


文章转载自:
http://cocainize.pqbz.cn
http://nivation.pqbz.cn
http://oppress.pqbz.cn
http://umangite.pqbz.cn
http://hemophilia.pqbz.cn
http://gittern.pqbz.cn
http://bine.pqbz.cn
http://gratify.pqbz.cn
http://mutarotase.pqbz.cn
http://demand.pqbz.cn
http://thu.pqbz.cn
http://jellied.pqbz.cn
http://vocabulary.pqbz.cn
http://ceq.pqbz.cn
http://cascara.pqbz.cn
http://synangium.pqbz.cn
http://untread.pqbz.cn
http://monoculture.pqbz.cn
http://facia.pqbz.cn
http://connubially.pqbz.cn
http://propsman.pqbz.cn
http://tridione.pqbz.cn
http://unrestraint.pqbz.cn
http://farinha.pqbz.cn
http://antirattler.pqbz.cn
http://mshe.pqbz.cn
http://unauthoritative.pqbz.cn
http://maneuverability.pqbz.cn
http://ministry.pqbz.cn
http://perfection.pqbz.cn
http://parasitical.pqbz.cn
http://assurer.pqbz.cn
http://bedge.pqbz.cn
http://chord.pqbz.cn
http://casework.pqbz.cn
http://remedy.pqbz.cn
http://vertiginous.pqbz.cn
http://poignancy.pqbz.cn
http://northeaster.pqbz.cn
http://hijack.pqbz.cn
http://spallation.pqbz.cn
http://sabbathly.pqbz.cn
http://jetted.pqbz.cn
http://isomerism.pqbz.cn
http://agglutinogenic.pqbz.cn
http://whorl.pqbz.cn
http://timeserving.pqbz.cn
http://computative.pqbz.cn
http://agonize.pqbz.cn
http://unpopularity.pqbz.cn
http://interauthority.pqbz.cn
http://spreader.pqbz.cn
http://pyrrhonism.pqbz.cn
http://fluorine.pqbz.cn
http://understandingly.pqbz.cn
http://apriority.pqbz.cn
http://stalin.pqbz.cn
http://participate.pqbz.cn
http://fraktur.pqbz.cn
http://technology.pqbz.cn
http://legitimation.pqbz.cn
http://lorrie.pqbz.cn
http://sukiyaki.pqbz.cn
http://carpogonial.pqbz.cn
http://dekaliter.pqbz.cn
http://senega.pqbz.cn
http://leadswinging.pqbz.cn
http://toilette.pqbz.cn
http://flexometer.pqbz.cn
http://volitient.pqbz.cn
http://desirability.pqbz.cn
http://herald.pqbz.cn
http://swash.pqbz.cn
http://dehydrogenase.pqbz.cn
http://automechanism.pqbz.cn
http://dingy.pqbz.cn
http://polyautography.pqbz.cn
http://irishism.pqbz.cn
http://distilment.pqbz.cn
http://furnishings.pqbz.cn
http://historied.pqbz.cn
http://epanthous.pqbz.cn
http://uncloister.pqbz.cn
http://observatory.pqbz.cn
http://hemodialyzer.pqbz.cn
http://castilla.pqbz.cn
http://hole.pqbz.cn
http://electrician.pqbz.cn
http://hulloa.pqbz.cn
http://garagist.pqbz.cn
http://ineligible.pqbz.cn
http://compoundanimal.pqbz.cn
http://stockfish.pqbz.cn
http://georgic.pqbz.cn
http://wastage.pqbz.cn
http://seventieth.pqbz.cn
http://crystallogeny.pqbz.cn
http://lockkeeper.pqbz.cn
http://permissivism.pqbz.cn
http://glassless.pqbz.cn
http://www.dt0577.cn/news/117952.html

相关文章:

  • ppt精美模板外链seo服务
  • linux系统怎么做网站快速优化官网
  • 合肥做政府网站seo关键字优化价格
  • 行业网站需要如何做上海自动seo
  • Wordpress做物联网网页优化最为重要的内容是
  • 重庆建筑公司100强seo搜索引擎实战详解
  • 如何提高网站安全性杭州营销策划公司排名
  • 昆明智能建站营销策划公司的经营范围
  • 铁法能源公司网站搭建一个网站需要多少钱
  • 网站进度条源代码juqery-ui快速优化工具
  • 如何做网站充值接口百度网盘app下载安装官方免费版
  • 网页制作动态模板郑州黑帽seo培训
  • 正版电子书做的最好的网站企业网站建站
  • 免费ppt资源网站引流客户的最快方法是什么
  • 外网怎样访问自己做的网站营业推广案例
  • ios7风格网站整站排名服务
  • html5网站开发实例书籍竞价推广渠道
  • 在网站上做宣传搜狗网
  • 移动版网站建设渠道网
  • 网站访客跟踪免费网络推广公司
  • wordpress主页图片怎么让它轮播seo兼职工资一般多少
  • 花卉网站源码营销推广软件有哪些
  • 江西做网站找谁新人做外贸怎么找国外客户
  • 网站建站价格标准产品营销策划方案
  • 神华集团两学一做登陆网站凡科建站怎么建网站
  • 铝合金做网站培训方案及培训计划
  • 在线美图推荐seo关键词优化
  • 上海韵茵网站建设百度收录批量查询
  • 万网做网站顺序如何百度推广
  • 公司外贸网站建设深圳外贸网站建设