- 목차
Camera.AddCommandBuffer
Declaration
/// <summary>
/// <para>Add a command buffer to be executed at a specified place.</para>
/// </summary>
/// <param name="evt">When to execute the command buffer during rendering.</param>
/// <param name="buffer">The buffer to execute.</param>
public void AddCommandBuffer(Rendering.CameraEvent evt, Rendering.CommandBuffer buffer);
같은 카메라 이벤트에 여러개의 CommandBuffer 설정가능. 또는 동일한 버퍼를 여러 번 추가가능
CommandBuffer.Blit
Declaration
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Material mat);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Material mat, int pass);
public void Blit(Texture source, Rendering.RenderTargetIdentifier dest, Vector2 scale, Vector2 offset);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Material mat);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Material mat, int pass);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Vector2 scale, Vector2 offset);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, int sourceDepthSlice, int destDepthSlice);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Vector2 scale, Vector2 offset, int sourceDepthSlice, int destDepthSlice);
public void Blit(Rendering.RenderTargetIdentifier source, Rendering.RenderTargetIdentifier dest, Material mat, int pass, int destDepthSlice);
“Graphics.Blit” 함수 사용시 Unity의 동작
- “dest” 부분에 선언된 texture를 활성화된 render texture로 설정 (RenderTexture.active)
- 즉, “Blit” 함수는 "RenderTexture.active"를 변경한다. render texture를 다른 곳에도 사용한다면, 미리 백업해둘 것
- “source” 부분에 선언된 texture를 “mat” 부분에 선언된 material의 “_MainTex” 프로퍼티로 통과
- 단, material에 “_MainTex” 프로퍼티가 없는 경우, “Bilt” 함수는 "source"에 선언된 값을 사용하지 않는다.
- material의 shader코드를 이용하여 “source” 텍스쳐를 “dest” 텍스쳐에 드로잉
참고
Unity Documentation
댓글
댓글 쓰기