| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 虚幻C++实现发射人物 -> 正文阅读 |
|
[游戏开发]虚幻C++实现发射人物 |
踩到那块冒烟的板子会把人物发射出去 惯例头文件声明 class UStaticMeshComponent; protected: public:?? ? ?? ?UPROPERTY(EditDefaultsOnly) ?? ?UPROPERTY(EditDefaultsOnly) ?? ?UPROPERTY(EditDefaultsOnly,Category="partice") ?? ?//发射强度 ?? ?//发射角度 ?? ?UFUNCTION() }; 源文件实现 在此之前需要在构造函数里对组件进行初始化,很明显,这个功能需要一个静态网格体组件,一个触发盒子组件,和一个粒子组件。 ALaunchActor::ALaunchActor() ?? ?boxcomponent = CreateDefaultSubobject<UBoxComponent>(TEXT("boxcomponent")); ?? ?statimesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("staticmesh")); ?? ?boxcomponent->OnComponentBeginOverlap.AddDynamic(this, &ALaunchActor::onhit); ?? ?launchroation = 35.0f; ? ?//发射强度 } 之后写具体的发射函数 void ALaunchActor::onhit(UPrimitiveComponent * OverlappedComponent, AActor * OtherActor, UPrimitiveComponent * OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult & SweepResult) ?? ?ACharacter*character = Cast<ACharacter>(OtherActor); ?? ??? ?character->LaunchCharacter(launchvectory,true,true); ?? ??? ?UGameplayStatics::SpawnEmitterAtLocation(this, particle, GetActorLocation()); ?? ?} ?? ??? ?UGameplayStatics::SpawnEmitterAtLocation(this, particle, GetActorLocation()); ?? ?} } ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/28 4:34:31- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |