如何访问渲染的屏幕像素并统一操作它们? (3个GIF)

时间:2016-11-03 20:14:28

标签: unity3d shader

我正在制作一个子弹地狱射手,并且需要添加不同类型的效果,我希望我可以访问屏幕像素,因此我操纵它们,我已经能够通过移动像素和纹理2D来做独特的效果替换它们,但相机像素自己是不可编辑的,

类型1- effect2 effect1 effect3

类型2- 并能够在对象之间的屏幕线上绘制 像这样,但在游戏中不在编辑器中,并使线锯齿形,波浪形或虚线等... lines

任何提示?

1 个答案:

答案 0 :(得分:1)

正如您所说,在相机中渲染的像素是只读的,您可以执行以下操作。

0)使用Create> RenderTexture在资源中创建RenderTexture。

1)从相机渲染到RenderTexture,为此转到当前正在查看要编辑的内容的相机,并选择RenderTexture作为目标纹理。

2)您无法在运行时直接编辑RenderedTexture,但您可以将其读取并复制为新的Texture2D,从这里您可以像往常一样编辑Texture2D。

3)将新创建/更新的Texture2D添加到场景中的gameObject并从摄像机中查看(通常我在新图层上使用主摄像头)。

以下是相关条款的官方统一手册,

渲染纹理:

  

https://docs.unity3d.com/Manual/class-RenderTexture.html

相机手册(包括目标纹理):

  

https://docs.unity3d.com/Manual/class-Camera.html