在使用UE5开发项目时,RenderTarget是一种非常强大的工具,常用于生成实时纹理效果、后处理和调试。而将RenderTarget的内容转换为UTexture并储存,是许多编辑器内的需求都需要的功能。
1.材质球输出至Texture
首先创建一个Actor类,新建Graph Node并将其设置为编辑器下可点击测试的按钮:
添加RenderTarget创建、调用材质球绘制等节点逻辑:
新建后处理类型材质球,用于绘制:
最后将Actor拖入场景内点击按钮测试运行,检查目标路径下有没有创建UTexture:
cpp
Building textures: /Game/TestSaveTexture/MyTex_MyTex2.MyTex_MyTex2 (RGBA16F, 256x256 x1x1x1)
2.SceneCapture输出至Texture
有时需要通过SceneCapture抓取屏幕内容并输出,接下来修改节点逻辑以实现。
首先在Actor蓝图中添加SceneCapture组件:
修改蓝图节点,调用节点CaptureScene拍摄屏幕:
在编辑器下执行测试,查看生成的Texture: