ue4中如何获取camera的画面数据

 时间:2024-10-15 04:09:17

1、默认的UE4会以AGameMode中设置DefaultPawnClass对象中摄影机作为默认摄影机。有时候我们想要一个全局的摄影机对场景进行观察,这就需要重新创建一个摄影机,并在这两个摄影机直接切换。下面看下UE4中如何实现切换默认Camera。

ue4中如何获取camera的画面数据

2、在APlayerController类中,有一个SetViewTarget方法,参数是一个AActor指针,就是实现此功能的。因为参数必须是AActor,即必须是AActor中包含的Camera组件才有效,所有,先创建一个AActor对象。

ue4中如何获取camera的画面数据

3、ChangeViewTarget()方法提供给Blueprint调用,用于在Character的Camera和FreeCamera之间切换。

ue4中如何获取camera的画面数据

4、其次在源文件CamData.cpp加入UTexture2D* UCamData::VideoTexture(){UsbCamera >> frame;UTexture2D* TextureRed = NULL;for (int x = 0; x<VideoFrameSize.X; x++)// 640{for (int y = 0; y<VideoFrameSize.Y; y++)// 480{int i = x + (y * VideoFrameSize.X);Data[i] = FColor(frame.data[i * 3 + 2],frame.data[i * 3 + 1],frame.data[i * 3 + 0],255);}}TextureRed = UTexture2D::CreateTransient((int32)VideoFrameSize.X,(int32)VideoFrameSize.Y, PF_B8G8R8A8); //创建纹理void* TextureData = TextureRed->PlatformData->Mips[0].BulkData.Lock(LOCK_READ_WRITE); //锁定纹理FMemory::Memcpy(TextureData, Data.GetData(), Data.Num());TextureRed->PlatformData->Mips[0].BulkData.Unlock(); //解锁纹理TextureRed->UpdateResource(); //更新纹理

ue4中如何获取camera的画面数据

5、在Editor中创建一个从AFreeCameraActor继承的Actor,并拖放到场景中去。可以看到一个包含了摄影机的对象。然后编辑Level Blueprint,加入脚本代码

ue4中如何获取camera的画面数据

6、好了,以上就是小编今天带给大家的文章,希望对各位网友有所帮助。

ue4中如何获取camera的画面数据
  • blender物体橙色无法编辑
  • Blender如何将球面的噪波纹理更改为条纹造型
  • Blender 2.8x 如何模拟流体
  • blender2.83给视频添加字幕
  • Blender怎么将3D游标设置到边中点
  • 热门搜索
    爱我中华手抄报资料 迈好初中第一步手抄报 二年级手抄报图片大全 民族民风手抄报 文明礼仪的手抄报 创建森林城市手抄报 安全小报手抄报图片 二年级手抄报内容 关于欢度春节的手抄报 诚信从我做起手抄报