Skip to content

Commit 295c1e9

Browse files
authored
fix: PencilLineRenderCapturer did not capture line results correctly (#419)
Others: * fix warning: Releasing render texture that is set to be RenderTexture.active!
1 parent e75728b commit 295c1e9

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

Runtime/Scripts/Features/RenderCache/Components/BaseRenderCapturer.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,10 @@ public void CaptureToFile(string outputFilePath, RenderCacheOutputFormat outputF
7373
protected void ReleaseRenderTexture() {
7474
if (null == m_rt)
7575
return;
76+
77+
if (RenderTexture.active == m_rt)
78+
RenderTexture.active = null;
79+
7680
m_rt.Release();
7781
m_rt = null;
7882
}

Runtime/Scripts/Features/RenderCache/Components/PencilLineRenderCapturer.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ public override IEnumerator BeginCaptureV() {
5555
Assert.IsNotNull(lineRenderer);
5656

5757
ReleaseRenderTexture();
58-
m_pencilTex = lineRenderer.Texture;
58+
Texture2D pencilTex = lineRenderer.Texture;
5959

60-
m_rt = new RenderTexture(m_pencilTex.width, m_pencilTex.height, 0);
60+
m_rt = new RenderTexture(pencilTex.width, pencilTex.height, 0);
6161
m_rt.Create();
6262

6363
#else
@@ -80,7 +80,9 @@ public override void EndCaptureV() {
8080
/// <inheritdoc/>
8181
protected override RenderTexture UpdateRenderTextureV() {
8282
#if AT_USE_PENCILLINE
83-
Graphics.Blit(m_pencilTex, m_rt);
83+
PencilLineRenderer lineRenderer = m_pencilLineEffect.PencilRenderer;
84+
Assert.IsNotNull(lineRenderer);
85+
Graphics.Blit(lineRenderer.Texture, m_rt);
8486
#endif
8587
return m_rt;
8688
}
@@ -107,7 +109,6 @@ public override Material GetOrCreateBlitToScreenEditorMaterialV() {
107109

108110
#if AT_USE_PENCILLINE
109111
[SerializeField] private PencilLineEffect m_pencilLineEffect = null;
110-
private Texture2D m_pencilTex = null;
111112
private bool m_prevPencilLineEffectEnabled = false;
112113
#endif
113114

0 commit comments

Comments
 (0)