使用UE5C++MakeRotation
时间: 2024-05-25 21:15:31 浏览: 189
MakeRotation函数是用于创建旋转矩阵的函数,它可以在UE5C中使用。它的基本语法如下:
FMatrix FMatrix::MakeRotation(const FVector& Axis, float Angle)
其中,Axis是旋转轴的向量,Angle是旋转角度(弧度制)。这个函数将返回一个旋转矩阵,可以将这个矩阵应用到需要旋转的对象上。
例如,如果要将一个Actor绕Y轴旋转90度,可以这样写:
FMatrix rotationMatrix = FMatrix::MakeRotation(FVector(0,1,0), PI/2);
Actor->SetActorTransform(FTransform(rotationMatrix));
这样,Actor就会绕Y轴旋转90度。需要注意的是,UE5C中的角度单位是弧度,所以需要将角度转换成弧度制。
相关问题
使用ue4c++ MakeRotation
MakeRotation是UE4中的一个静态函数,用于创建一个旋转矩阵。
使用方式如下:
```cpp
FRotator Rotator(0.0f, 90.0f, 0.0f);
FMatrix RotationMatrix = FMatrix::MakeRotation(Rotator);
```
其中,FRotator是欧拉角表示的旋转角度,FMatrix是4x4的矩阵,表示3D空间中的变换。
MakeRotation函数会根据输入的FRotator创建一个旋转矩阵,可以用来进行物体的旋转变换。
需要注意的是,UE4中的旋转矩阵默认采用右手坐标系,即x轴向右,y轴向上,z轴向外。如果需要使用左手坐标系,可以调用FMatrix::Inverse()函数将矩阵取反。
UE5C++创建对象
在UE5C++中,创建对象可以使用new运算符,也可以使用MakeShared、MakeUnique等智能指针函数,这些函数会自动管理内存。其中,MakeShared和MakeUnique是C++11中引入的智能指针函数,可以避免手动管理内存带来的繁琐和错误。
下面是使用new运算符创建对象的示例代码:
```c++
// 创建一个指向MyClass类对象的指针
MyClass* MyClassPtr = new MyClass();
// 使用指针调用MyClass类的成员函数
MyClassPtr->MyFunction();
// 释放对象所占用的内存
delete MyClassPtr;
```
下面是使用MakeShared和MakeUnique函数创建对象的示例代码:
```c++
// 创建一个智能指针,指向MyClass类对象
TSharedPtr<MyClass> MyClassSharedPtr = MakeShared<MyClass>();
// 使用智能指针调用MyClass类的成员函数
MyClassSharedPtr->MyFunction();
// 创建一个unique_ptr指向MyClass类对象
std::unique_ptr<MyClass> MyClassUniquePtr = MakeUnique<MyClass>();
// 使用unique_ptr调用MyClass类的成员函数
MyClassUniquePtr->MyFunction();
```
阅读全文