This issue has been closed as 'Won't Fix' due to an extended period of time without updates. If this issue is important to you please let us know by posting on the AnswerHub or UDN, and Epic will re-open the ticket for further review.
A Japanese developer's making a scene that has over 4000 static point lights.
They thought the lights don't affect rendering in runtime.
But they realized the RenderThread's costs become bigger.
I made a sample project that has 3000 static point lights to investigate this problem.
[Image Removed]
And I realized that, as they said, InitDynamicShadows() in RenderThread checks all static lights, to know whether if there is any static light dynamically creates its shadow to preview.
[Image Removed]
The developer said that it costs over 20ms on console on the scene they mentioned. Furthermore, the static lights wastefully increase memory usage and loading time. To avoid this problem, They separate the all static lights to another sub level.
(They understand the lights cannot be captured for reflection.)
Also reported in this thread:
https://udn.unrealengine.com/questions/300259/optimize-rendering-thread.html
1. Put a static point lights into any scene
2. Bake the light.
3. Play in the editor
4. send commands "stat startfile" & "stat stopfile" to profile it.
5. open the log with SessionFrontend's profiler.
6. You can see the static point light in InitDynamicShaodws() on RenderThread.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-31804 in the post.
0 |
Component | UE - Graphics Features |
---|---|
Affects Versions | 4.12.1 |
Created | Jun 9, 2016 |
---|---|
Resolved | Feb 17, 2017 |
Updated | Apr 27, 2018 |