`
aigo
  • 浏览: 2735487 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

[UE4]C++代码操作SplineMesh

UE4 
阅读更多

原文:https://answers.unrealengine.com/questions/174108/can-you-give-me-an-example-of-splinemeshcomponent-1.html

 

void ARaceSpline::OnConstruction(const FTransform& Transform)
{
	for (int32 i = 0; i < mSplineComponent->GetNumSplinePoints() - 1; i++)
	{
		USplineMeshComponent* SplineMesh = ConstructObject<USplineMeshComponent>(USplineMeshComponent::StaticClass(), this);

		SplineMesh->bCreatedByConstructionScript = true;
		SplineMesh->SetMobility(EComponentMobility::Movable);
		SplineMesh->AttachParent = mSplineComponent;

		//Set the color!
		UMaterialInstanceDynamic* dynamicMat = UMaterialInstanceDynamic::Create(mSplineMeshMaterial, NULL);
		dynamicMat->SetVectorParameterValue(TEXT("Color"), FLinearColor(mSegments[i].mColor));

		SplineMesh->bCastDynamicShadow = false;
		SplineMesh->SetStaticMesh(mGridMesh);
		SplineMesh->SetMaterial(0, dynamicMat);

		//Width of the mesh 
		SplineMesh->SetStartScale(FVector2D(50, 50));
		SplineMesh->SetEndScale(FVector2D(50, 50));

		FVector pointLocationStart, pointTangentStart, pointLocationEnd, pointTangentEnd;
		mSplineComponent->GetLocalLocationAndTangentAtSplinePoint(i, pointLocationStart, pointTangentStart);
		mSplineComponent->GetLocalLocationAndTangentAtSplinePoint(i + 1, pointLocationEnd, pointTangentEnd);

		SplineMesh->SetStartAndEnd(pointLocationStart, pointTangentStart, pointLocationEnd, pointTangentEnd);
	}

	RegisterAllComponents();
}

 

分享到:
评论

相关推荐

    UE4 C++开发超好用的VS插件 Visual Assist X 10.9.2301

    总之,Visual Assist X是UE4 C++开发者的得力助手,它通过增强VS的功能,帮助开发者更高效地编写、理解和维护代码,提升了整体开发效率和代码质量。对于那些处理大型UE4项目的团队来说,Visual Assist X无疑是一个...

    UE4 C++ 离线API

    UE4 C++ 离线API 下载直接使用 无障碍

    UE4 C++教程 虚幻四C++教程

    UE4 C++教程 虚幻四C++教程

    UE4蓝图调用C++函数的工程分享

    在UE4(Unreal Engine 4)中,开发者可以结合蓝图和C++代码来构建游戏逻辑,这提供了灵活性和性能的平衡。本工程分享主要关注如何在蓝图中调用C++函数,分为两种主要方式:一是通过继承C++类的蓝图类直接调用,二是...

    ue4 c++ 多边形三角化

    在UE4(Unreal Engine 4)中,C++是一种主要的编程语言,用于实现游戏逻辑和自定义功能。在3D图形处理中,多边形的三角化是一个关键步骤,因为大多数现代图形硬件和软件都支持三角形作为基本渲染单元。本教程将深入...

    毕业设计基于C++的一款UE4射击游戏源码.zip

    毕业设计基于C++的一款UE4射击游戏源码。一款UE4射击游戏Demo,包含UE4游戏框架及整套联网射击游戏功能。一款UE4射击游戏Demo,包含UE4游戏框架及整套联网射击游戏功能。一款UE4射击游戏Demo,包含UE4游戏框架及整套...

    ue4蓝图c++动态改变staticmeshactor材质例子动态修改纹理

    这是ue4 4.22.1 engine 版本的例子。实现了通过蓝图把场景中的AStaticMeshActor和两个动态材质实例UMaterialInstanceDynamic 传给c++ 自定义函数参数。 并在自定义函数里面实现两张材质的动态交替变更,其中一张材质...

    UE4vs代码段.zip

    "UE4vs代码段.zip" 文件集合就是这样一个实用资源,它包含了一些预定义的代码片段,可以帮助开发者快速实现特定功能,提高开发效率。 首先,让我们详细了解一下这些代码段的具体内容: 1. **快捷创建碰撞事件的三...

    UE4学习笔记----使用C++之控制球体运动并使用移动粒子效果(源代码)

    UE4提供了C++的完整支持,允许开发者直接编写代码来创建自定义的游戏对象、组件和行为。相比蓝图,C++提供了更高的性能和灵活性。 2. **Actor类与Pawn类**: 在UE4中,`Actor`是所有可放置在世界中的对象的基础类...

    UE4 UI简单例子 C++

    在UE4(Unreal Engine 4)中,UI系统基于UMG(Unreal Motion Graphics),它提供了一种可视化的方式去创建用户界面,并且可以与C++代码深度集成。本示例"UE4 UI简单例子 C++"展示了如何利用C++编程语言在UE4中创建一...

    Unreal Engine 4 UDP 通信C++代码.zip_UE4 socket_UE4 UDP_UE4用UDP_UE4获

    UE4 socket 数据接收以及发送,功能示例

    UE4使用C++在蓝图中实现打开外部exe程序功能(含源码)

    在UE4(Unreal Engine 4)中,开发者经常需要集成各种自定义功能,其中之一就是通过C++代码在蓝图中实现打开外部exe程序。这个功能对于游戏中的交互性或者工具集成非常有用,例如启动辅助编辑器、执行数据分析脚本等...

    UE4的C++离线文档

    该文档包含了UE4 C++ API的所有类、函数、宏、枚举等内容,并提供了详细的说明和示例代码。 文档内容 UE4 C++离线API文档的内容主要分为以下几部分: 类(Classes):该部分包含了UE4 C++ API中所有类的信息,包括...

    UE4 C++JSON读取示例.zip

    在UE4(Unreal Engine 4)中,C++是一种常用的语言进行游戏开发,而JSON(JavaScript Object Notation)作为一种轻量级的数据交换格式,常用于存储和传输数据。本示例将详细介绍如何在UE4中使用C++来读取JSON文件。 ...

    UE4C++写入CSV文件.docx

    下面是一个简单的示例代码,演示如何使用 C++ 语言在 UE4 中写入 CSV 文件。 首先,需要创建一个继承自 UBlueprintFunctionLibrary 的 C++ 类,名为 UReadFlie。在这个类中,定义了四个静态函数:SetParameter、...

    ue4,c++,平面最小封闭区域识别

    ①:得到线段我们的线段集合S(本次项目鼠标点击得到线段(p1,p2两点)已经在ue4蓝图里面实现,这一步就不过多阐述) ②:移除孤立的线段(两端的点都是孤立的); ③:拆分所有的线段(就是将所有的相交线线段拆...

    UE4游戏编程蓝图c++语言教程

    C++和蓝图之间的一些区别是不言而喻的:有了C++,您使用通用的基于文本的编程语言编写代码。蓝图更直观,更具体地针对更高级的游戏编程:您通过将表示事件、控制结构和函数调用的图形节点串在一起来编写代码,并通过...

    UE4 微信分享SDK

    首先,你需要确保已经安装了UE4,并且对UE4的基本项目结构和C++编程有一定了解。微信分享SDK提供了iOS和Android两个平台的支持,因此你需要根据目标平台进行不同的配置。 对于iOS端,你需要在Xcode工程中引入微信...

    UE4 C++编程常用知识点总结

    包括UE4中C++的各种常用知识点,为初学ue4游戏编程的同学提升c++编程能力提供一定的帮助!

Global site tag (gtag.js) - Google Analytics