How to reproduce:
1. Open the “Render_Texture_Performance_Bug“ project
2. Open the “MainScene”
3. In the Game view window enable the “Rendering Statistics” window (“Stats” button)
4. Enter Play Mode and observe the “FPS” field in the “Rendering Statistics” window for 3-5 seconds
5. Exit Play Mode and change Graphics API to “Direct3D12” (Edit > Project Settings > Player > Other Settings)
6. Enter Play Mode again and observe the “FPS” field in “Stats” for 3-5 seconds
Expected result: “Direct3D11” and “Direct3D12” Graphic APIs performance difference is minuscule
Actual result: “Direct3D12” Graphics API performance is significantly less than “Direct3D11” Graphics API - by about 100 FPS
Reproduced with: 2022.3.4f1, 2023.1.3f1, 2023.2.0a22
Could not test with: 2021.3.28f1 (Could not resolve scripting errors)
Reproduced on: Windows 11
Dedicated GPU reproduced on: NVIDIA GeForce RTX 3070 Laptop GPU (by reporter), NVIDIA GeForce RTX 3050 Ti Laptop GPU
Notes:
1. Not reproducible in a new project → creating a default Render Texture (Assets > Create > Render Texture) affects the performance with a 10-15 FPS difference using the “Direct3D12” Graphics API - this is a negligible amount
2. Upon entering Play Mode for the first time the FPS will be quite low as the Assets take time to load in → entering and exiting Play Mode after this has happened will always produce a higher FPS value
3. Not reproducible when “RTH” GameObject is disabled (Hierarchy > “concert_stage (1)”)
4. Not reproducible when “RTH” GameObject “Camera” Component’s “Output Texture” is set to “None”
5. For 2023.1 and 2023.2 streams commenting out line 23 in the “GrassBendingRTPrePass” Script fixes scripting errors
6. In 2023.2 an error is logged but Play Mode can still be entered