虚幻引擎5C++编程学习3-创新互联

一、创建Actor类与学习类的命名规范

右键创建一个actor类,等待ue5把vs唤醒并完成所有的后台进程。

创新互联是专业的神农架林区网站建设公司,神农架林区接单;提供成都做网站、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行神农架林区网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

右下角可以在ue5中进行编译:

创建的actor类中已经默认定义了几个函数,他们的作用如下:

再去cpp文件中看看每个函数默认实现:

如果每帧的函数tick()没有任何作用,可以把构造函数中的true改成false,这样就不用每帧都调用tick()函数了,能显著提升整体的性能。

其他类一个典型的例子是结构体,结构体就是F开头的。 

创建派生自Actor类的蓝图BP_MyActor。

Actor的UCLASS()里面是空的,并没有写Blueprintable,为什么Actor就能直接创建蓝图呢?

直接看父类AActor的定义。

可以看到AActor类中已经定义了 Blueprintable,所以可以直接创建蓝图。

二、在蓝图中创建静态网格组件

默认的actor组件,显示为球。 

添加一个staticmesh, 直接将他拖动到根组件下,就能替换掉根组件。

PS:根组件就是这个actor的根,对于这个actor类的操作都是围绕根组件进行的,比如旋转是围绕根组件旋转,end碰撞也是根组件和别的单位碰撞。

actor蓝图主要的应用场景:

相当于提供一个模板,可以同时创建多个相同模板的单位。

创建了不同颜色的方块。

三、 在c++中创建静态网格组件

在MyActor.h中添加声明

//在任何地方都可见
	UPROPERTY(VisibleAnywhere , Category = "My Actor Components") 
	UStaticMeshComponent* staticMesh;

在MyActor.cpp中添加定义(定义在构造函数中)

//                                                        标识名,不是变量名
	staticMesh = CreateDefaultSubobject(TEXT("MystaticMesh"));

编译完成后生成对应的蓝图类。

四、导入模型与布置场景

模型的下载地址:

链接:https://pan.baidu.com/s/1e4Tn4Z7zqJ_CCFuMgaHx-A 
提取码:oyhy 

其中IcoSphere.fbx文件是一个标识的小球,XYZAxes.fbx是xyz轴。

在内容文件夹下创建models目录来存放我们的模型。

直接将两个文件拖入到Models文件夹内。

维持默认就可以。

提示模型没有平滑组信息,不用管,这是模型建构的时候出了点问题,但是不影响使用。 

导入的模型如下图:

将圈起来的材质球导入到materials中。

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


分享名称:虚幻引擎5C++编程学习3-创新互联
URL分享:http://myzitong.com/article/doopip.html