You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
o3de/Code/Editor/TrackView
Nicholas Van Sickle db63dcbcd9
Refresh rate driven rendering tick logic (#3375)
* Implement sync interval and refresh rate API for RenderViewportWidget

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Measure actual frame timings in the viewport info overlay.

Takes the median of the sum of (frame end - frame begin) to provide more a more representative view of when frames begin and end.

Note: Until VSync is internally supported by the event loop, this will produce nearly identical frame timings as the frame will spend as much time as needed synchronously waiting on a vblank.

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Make frame timing per-pipeline, wire up refresh rate info to ViewportContext

Signed-off-by: nvsickle <nvsickle@amazon.com>

* POC: Frame limit pipeline rendering

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Switch Editor tick to every 0ms to allow better tick accumulation behavior

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Move RPISystemComponent to the tick bus, remove tick accumulation logic

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Add `AddToRenderTickAtInterval` to RenderPipeline API

This allows a pipeline to update at a set cadence, instead of rendering every frame or being directly told when to tick.

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Make ViewportContext enforce a target framerate

-Adds GetFpsLimit/SetFpsLimit for actively limiting FPS
-Calculates a render tick interval based on vsync and the vps limit and updates the current pipeline

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Add r_fps_limit and ed_inactive_viewport_fps_limit cvars

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Quick null check from a crash I bumped into

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Fix off-by-one on FPS calculation (shouldn't include the not-yet-rendered frame)

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Clarify frame time begin initialization

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Fix TrackView export.

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Address some reviewer feedback, revert RPISystem API change, fix CPU profiler.

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Add g_simulation_tick_rate

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Address review feedback, make frame limit updates event driven

Signed-off-by: nvsickle <nvsickle@amazon.com>

* Remove timestamp update from ComponentApplication::Tick

Signed-off-by: nvsickle <nvsickle@amazon.com>
4 years ago
..
2DBezierKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
AssetBlendKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
AtomOutputFrameCapture.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
AtomOutputFrameCapture.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
CaptureKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
CharacterKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
CommentKeyUIControls.cpp More fixes for Code/Editor 4 years ago
CommentNodeAnimator.cpp Legacy cleanup (#3383) 4 years ago
CommentNodeAnimator.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
ConsoleKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
DirectorNodeAnimator.cpp Windows and Linux compiling 4 years ago
DirectorNodeAnimator.h Code/Editor 4 years ago
EditorTrackViewEventsBus.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
EventKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
GotoKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
ScreenFaderKeyUIControls.cpp More fixes for Code/Editor 4 years ago
SelectKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
SequenceBatchRenderDialog.cpp Refresh rate driven rendering tick logic (#3375) 4 years ago
SequenceBatchRenderDialog.h Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
SequenceBatchRenderDialog.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
SequenceKeyUIControls.cpp More fixes for Code/Editor 4 years ago
SoundKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TVCustomizeTrackColorsDialog.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TVCustomizeTrackColorsDlg.cpp Code/Editor 4 years ago
TVCustomizeTrackColorsDlg.h Editor 4 years ago
TVEventsDialog.cpp Code/Editor 4 years ago
TVEventsDialog.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TVEventsDialog.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TVSequenceProps.cpp Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TVSequenceProps.h Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TVSequenceProps.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TimeRangeKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TrackEventKeyUIControls.cpp Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TrackViewAnimNode.cpp Fix unused warnings release (#3677) 4 years ago
TrackViewAnimNode.h Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewCurveEditor.cpp More fixes for Code/Editor 4 years ago
TrackViewCurveEditor.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewCurveEditor.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TrackViewDialog.cpp Implemented helper method of QFileDialog::getSaveFileName to prevent user from saving files with invalid names. 4 years ago
TrackViewDialog.h Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TrackViewDialog.qrc git mv Code\Sandbox\Editor Code/Editor 5 years ago
TrackViewDopeSheetBase.cpp Merge branch 'development' into cmake/linux_fix_warn_unused 4 years ago
TrackViewDopeSheetBase.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewDoubleSpinBox.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewDoubleSpinBox.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewEventNode.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewEventNode.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewFindDlg.cpp Merge branch 'development' into cmake/SPEC-7484 5 years ago
TrackViewFindDlg.h Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TrackViewFindDlg.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TrackViewKeyPropertiesDlg.cpp Remove `std::bind` usages from Code/Editor (#3358) 4 years ago
TrackViewKeyPropertiesDlg.h Editor code: tidy up BOOLs,NULLs and overrides pt3. 5 years ago
TrackViewNode.cpp Merge branch 'development' into cmake/linux_fix_warn_unused 4 years ago
TrackViewNode.h Merge branch 'development' into cmake/linux_fix_warn_unused 4 years ago
TrackViewNodeFactories.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewNodeFactories.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewNodes.cpp Implemented helper method of QFileDialog::getSaveFileName to prevent user from saving files with invalid names. 4 years ago
TrackViewNodes.h Merge branch 'development' into cmake/linux_fix_warn_unused 4 years ago
TrackViewNodes.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TrackViewPythonFuncs.cpp Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewPythonFuncs.h push/pop mismatch 4 years ago
TrackViewSequence.cpp Merge branch 'development' into cmake/linux_fix_warn_unused 4 years ago
TrackViewSequence.h Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewSequenceManager.cpp Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewSequenceManager.h Sandbox 5 years ago
TrackViewSplineCtrl.cpp Code/Editor 4 years ago
TrackViewSplineCtrl.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewTimeline.cpp Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewTimeline.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
TrackViewTrack.cpp Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewTrack.h Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewTrackPropsDlg.ui git mv Code\Sandbox\Editor Code/Editor 5 years ago
TrackViewUndo.cpp Updating PR to change lower API to return AZStd::string instead of const char* for safety. 4 years ago
TrackViewUndo.h Shorten copyright headers by splitting into 2 lines (#2213) 5 years ago
bmp00016_00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
bmp00016_01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
clapperboard_cancel.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
clapperboard_ready.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_04.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_05.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_06.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_07.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_08.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_09.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_10.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_11.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_12.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_13.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_14.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_15.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
spline_edit_bar_16.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
trackview_keys_00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
trackview_keys_01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
trackview_keys_02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
trackview_keys_03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-04.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-05.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-06.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-07.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-08.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-09.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-10.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-11.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvkeys-12.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-04.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-05.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-06.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-07.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-08.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvmain-09.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-04.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-05.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-06.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-07.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-08.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-09.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-10.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-11.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-12.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-13.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-14.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-15.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-16.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-17.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-18.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-19.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-20.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-21.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-22.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-23.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-24.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-25.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-26.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-27.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-28.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvnodes-29.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-03.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-04.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-05.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-06.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-07.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-08.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-09.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvplay-10.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvview-00.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvview-01.png git mv Code\Sandbox\Editor Code/Editor 5 years ago
tvview-02.png git mv Code\Sandbox\Editor Code/Editor 5 years ago