@@ -79,7 +79,8 @@ public class RenderTargetProperty
7979 public RenderTargetIdentifier colorTargetIdentifier ;
8080 public RenderTargetIdentifier ? depthTargetIdentifier ;
8181 public RenderTextureDescriptor colorTargetDescriptor ;
82- public Rect Viewport ;
82+ public Vector2 ? ActualScreenSize ;
83+ public Rect ? Viewport ;
8384 public bool isRequiredToChangeViewport = false ;
8485 public RenderTexture colorTargetRenderTexture = null ;
8586 public RenderTexture depthTargetRenderTexture = null ;
@@ -135,13 +136,15 @@ internal void ApplyToCommandBuffer(CommandBuffer cb, DepthRenderTexture depthRen
135136 }
136137 else if ( renderFeature == RenderFeature . HDRP )
137138 {
139+ var normalizedArea = new Vector4 (
140+ Viewport . Value . width / depthTargetRenderTexture . width ,
141+ Viewport . Value . height / depthTargetRenderTexture . height ,
142+ Viewport . Value . x / depthTargetRenderTexture . width ,
143+ Viewport . Value . y / depthTargetRenderTexture . height ) ;
144+
138145 var m = AllocateBlitArrayMaterial ( ) ;
139146 m . SetTexture ( "_BackgroundTex" , depthTargetRenderTexture ) ;
140- m . SetVector ( "textureArea" , new Vector4 (
141- Viewport . width / depthTargetRenderTexture . width ,
142- Viewport . height / depthTargetRenderTexture . height ,
143- Viewport . x / depthTargetRenderTexture . width ,
144- Viewport . y / depthTargetRenderTexture . height ) ) ;
147+ m . SetVector ( "textureArea" , normalizedArea ) ;
145148 cb . SetRenderTarget ( depthRenderTexture . renderTexture ) ;
146149 cb . ClearRenderTarget ( true , true , new Color ( 0 , 0 , 0 ) ) ;
147150 cb . Blit ( null , depthRenderTexture . renderTexture , m ) ;
@@ -152,23 +155,25 @@ internal void ApplyToCommandBuffer(CommandBuffer cb, DepthRenderTexture depthRen
152155 }
153156
154157 // restore
155- SetDefaultRenderTarget ( cb , blitter ) ;
158+ SetDefaultRenderTarget ( cb , blitter ) ;
156159 }
157160 }
158161
159162 internal void ApplyToCommandBuffer ( CommandBuffer cb , BackgroundRenderTexture backgroundRenderTexture , IEffekseerBlitter blitter )
160163 {
161164 if ( isRequiredToChangeViewport )
162165 {
166+ var normalizedArea = new Vector4 (
167+ Viewport . Value . width / colorTargetRenderTexture . width ,
168+ Viewport . Value . height / colorTargetRenderTexture . height ,
169+ Viewport . Value . x / colorTargetRenderTexture . width ,
170+ Viewport . Value . y / colorTargetRenderTexture . height ) ;
171+
163172 if ( colorTargetRenderTexture . dimension == TextureDimension . Tex2DArray )
164173 {
165174 var m = AllocateBlitArrayMaterial ( ) ;
166175 m . SetTexture ( "_BackgroundTex" , colorTargetRenderTexture ) ;
167- m . SetVector ( "textureArea" , new Vector4 (
168- Viewport . width / colorTargetRenderTexture . width ,
169- Viewport . height / colorTargetRenderTexture . height ,
170- Viewport . x / colorTargetRenderTexture . width ,
171- Viewport . y / colorTargetRenderTexture . height ) ) ;
176+ m . SetVector ( "textureArea" , normalizedArea ) ;
172177 blitter . SetRenderTarget ( cb , backgroundRenderTexture . renderTexture , xrRendering ) ;
173178 cb . ClearRenderTarget ( true , true , new Color ( 0 , 0 , 0 ) ) ;
174179 blitter . Blit ( cb , colorTargetIdentifier , backgroundRenderTexture . renderTexture , m , xrRendering ) ;
@@ -177,11 +182,7 @@ internal void ApplyToCommandBuffer(CommandBuffer cb, BackgroundRenderTexture bac
177182 {
178183 var m = AllocateBlitMaterial ( ) ;
179184 m . SetTexture ( "_BackgroundTex" , colorTargetRenderTexture ) ;
180- m . SetVector ( "textureArea" , new Vector4 (
181- Viewport . width / colorTargetRenderTexture . width ,
182- Viewport . height / colorTargetRenderTexture . height ,
183- Viewport . x / colorTargetRenderTexture . width ,
184- Viewport . y / colorTargetRenderTexture . height ) ) ;
185+ m . SetVector ( "textureArea" , normalizedArea ) ;
185186 blitter . SetRenderTarget ( cb , backgroundRenderTexture . renderTexture , xrRendering ) ;
186187 cb . ClearRenderTarget ( true , true , new Color ( 0 , 0 , 0 ) ) ;
187188 blitter . Blit ( cb , colorTargetIdentifier , backgroundRenderTexture . renderTexture , m , xrRendering ) ;
@@ -197,21 +198,21 @@ internal void ApplyToCommandBuffer(CommandBuffer cb, BackgroundRenderTexture bac
197198 }
198199
199200 // restore
200- SetDefaultRenderTarget ( cb , blitter ) ;
201-
201+ SetDefaultRenderTarget ( cb , blitter ) ;
202+
202203 }
203204
204- internal void SetDefaultRenderTarget ( CommandBuffer cb , IEffekseerBlitter blitter )
205- {
206- if ( depthTargetIdentifier . HasValue )
207- {
208- blitter . SetRenderTarget ( cb , colorTargetIdentifier , depthTargetIdentifier . Value , xrRendering ) ;
209- }
210- else
211- {
212- blitter . SetRenderTarget ( cb , colorTargetIdentifier , xrRendering ) ;
213- }
214- }
205+ internal void SetDefaultRenderTarget ( CommandBuffer cb , IEffekseerBlitter blitter )
206+ {
207+ if ( depthTargetIdentifier . HasValue )
208+ {
209+ blitter . SetRenderTarget ( cb , colorTargetIdentifier , depthTargetIdentifier . Value , ActualScreenSize , xrRendering ) ;
210+ }
211+ else
212+ {
213+ blitter . SetRenderTarget ( cb , colorTargetIdentifier , xrRendering ) ;
214+ }
215+ }
215216
216217 Material AllocateBlitArrayMaterial ( )
217218 {
0 commit comments