Iris derives that one from the frameStartNanos argument passed to the render method and shaders usually use it to do animations. Prior to this commit we always pass 0 which effectively froze any shader animations. With this commit, we now compute the frameStartNanos based on the FPS of the video we are rendering (so animations will happen in real time when watching the video) or based on the time in the replay (so animations will be influenced by playback speed / be frozen if the replay is frozen). We default to the video time based approach because the replay time one may produce undesirable results when it comes to things like motion blur and TAA.
13 lines
649 B
Java
13 lines
649 B
Java
package com.replaymod.render;
|
|
|
|
import com.replaymod.core.SettingsRegistry;
|
|
|
|
public final class Setting<T> {
|
|
public static final SettingsRegistry.SettingKey<String> RENDER_PATH =
|
|
new SettingsRegistry.SettingKeys<>("advanced", "renderPath", null, "./replay_videos/");
|
|
public static final SettingsRegistry.SettingKey<Boolean> SKIP_POST_RENDER_GUI =
|
|
new SettingsRegistry.SettingKeys<>("advanced", "skipPostRenderGui", null, false);
|
|
public static final SettingsRegistry.SettingKey<Boolean> FRAME_TIME_FROM_WORLD_TIME =
|
|
new SettingsRegistry.SettingKeys<>("render", "frameTimeFromWorldTime", null, false);
|
|
}
|