Skip to content

Commit 945e8b2

Browse files
Do not call UpdateUI() when UI is not visible (close #160)
1 parent 8f5cc2f commit 945e8b2

File tree

72 files changed

+133
-129
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+133
-129
lines changed

SampleBase/include/SampleBase.hpp

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,9 @@ class SampleBase
169169

170170
virtual void Initialize(const SampleInitInfo& InitInfo) = 0;
171171

172-
virtual void Render() = 0;
173-
virtual void Update(double CurrTime, double ElapsedTime) = 0;
172+
virtual void Render() = 0;
173+
174+
virtual void Update(double CurrTime, double ElapsedTime, bool DoUpdateUI) = 0;
174175

175176
/// Called by the framework to let the application release any references to the swap chain buffers.
176177
///
@@ -226,7 +227,7 @@ class SampleBase
226227
InputController m_InputController;
227228
};
228229

229-
inline void SampleBase::Update(double CurrTime, double ElapsedTime)
230+
inline void SampleBase::Update(double CurrTime, double ElapsedTime, bool DoUpdateUI)
230231
{
231232
++m_NumFramesRendered;
232233
++m_CurrentFrameNumber;
@@ -238,7 +239,10 @@ inline void SampleBase::Update(double CurrTime, double ElapsedTime)
238239
m_LastFPSTime = CurrTime;
239240
}
240241

241-
UpdateUI();
242+
if (DoUpdateUI)
243+
{
244+
UpdateUI();
245+
}
242246
}
243247

244248
extern SampleBase* CreateSample();

SampleBase/src/SampleApp.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -894,7 +894,7 @@ void SampleApp::Update(double CurrTime, double ElapsedTime)
894894
}
895895
if (m_pDevice)
896896
{
897-
m_TheSample->Update(CurrTime, ElapsedTime);
897+
m_TheSample->Update(CurrTime, ElapsedTime, m_bShowUI);
898898
m_TheSample->GetInputController().ClearState();
899899
}
900900
}

Samples/Atmosphere/src/AtmosphereSample.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -787,7 +787,7 @@ void ComputeApproximateNearFarPlaneDist(const float3& CameraPos,
787787
}
788788

789789

790-
void AtmosphereSample::Update(double CurrTime, double ElapsedTime)
790+
void AtmosphereSample::Update(double CurrTime, double ElapsedTime, bool DoUpdateUI)
791791
{
792792
const auto& mouseState = m_InputController.GetMouseState();
793793

@@ -829,7 +829,7 @@ void AtmosphereSample::Update(double CurrTime, double ElapsedTime)
829829
float4x4::RotationArbitrary(WorldRight, fPitchDelta);
830830
}
831831

832-
SampleBase::Update(CurrTime, ElapsedTime);
832+
SampleBase::Update(CurrTime, ElapsedTime, DoUpdateUI);
833833

834834
m_fElapsedTime = static_cast<float>(ElapsedTime);
835835

Samples/Atmosphere/src/AtmosphereSample.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class AtmosphereSample final : public SampleBase
4747

4848
virtual void Initialize(const SampleInitInfo& InitInfo) override final;
4949
virtual void Render() override final;
50-
virtual void Update(double CurrTime, double ElapsedTime) override final;
50+
virtual void Update(double CurrTime, double ElapsedTime, bool DoUpdateUI) override final;
5151
virtual void WindowResize(Uint32 Width, Uint32 Height) override final;
5252

5353
virtual const Char* GetSampleName() const override final { return "Atmosphere Sample"; }

Samples/GLTFViewer/src/GLTFViewer.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1426,14 +1426,14 @@ void GLTFViewer::Render()
14261426
}
14271427
}
14281428

1429-
void GLTFViewer::Update(double CurrTime, double ElapsedTime)
1429+
void GLTFViewer::Update(double CurrTime, double ElapsedTime, bool DoUpdateUI)
14301430
{
14311431
if (m_CameraId == 0)
14321432
{
14331433
m_Camera.Update(m_InputController);
14341434
}
14351435

1436-
SampleBase::Update(CurrTime, ElapsedTime);
1436+
SampleBase::Update(CurrTime, ElapsedTime, DoUpdateUI);
14371437

14381438
m_ElapsedTime = static_cast<float>(ElapsedTime);
14391439

Samples/GLTFViewer/src/GLTFViewer.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class GLTFViewer final : public SampleBase
6161

6262
virtual void Initialize(const SampleInitInfo& InitInfo) override final;
6363
virtual void Render() override final;
64-
virtual void Update(double CurrTime, double ElapsedTime) override final;
64+
virtual void Update(double CurrTime, double ElapsedTime, bool DoUpdateUI) override final;
6565

6666
virtual const Char* GetSampleName() const override final { return "GLTF Viewer"; }
6767

Samples/ImguiDemo/src/ImguiDemo.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,9 @@ void ImguiDemo::Render()
103103
}
104104

105105

106-
void ImguiDemo::Update(double CurrTime, double ElapsedTime)
106+
void ImguiDemo::Update(double CurrTime, double ElapsedTime, bool DoUpdateUI)
107107
{
108-
SampleBase::Update(CurrTime, ElapsedTime);
108+
SampleBase::Update(CurrTime, ElapsedTime, DoUpdateUI);
109109
}
110110

111111
void ImguiDemo::WindowResize(Uint32 Width, Uint32 Height)

Samples/ImguiDemo/src/ImguiDemo.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class ImguiDemo final : public SampleBase
4242
virtual void Initialize(const SampleInitInfo& InitInfo) override final;
4343

4444
virtual void Render() override final;
45-
virtual void Update(double CurrTime, double ElapsedTime) override final;
45+
virtual void Update(double CurrTime, double ElapsedTime, bool DoUpdateUI) override final;
4646

4747
virtual const Char* GetSampleName() const override final { return "Dear Imgui Demo"; }
4848

Samples/NuklearDemo/src/NuklearDemo.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ void NuklearDemo::Render()
9595
}
9696

9797

98-
void NuklearDemo::Update(double CurrTime, double ElapsedTime)
98+
void NuklearDemo::Update(double CurrTime, double ElapsedTime, bool DoUpdateUI)
9999
{
100-
SampleBase::Update(CurrTime, ElapsedTime);
100+
SampleBase::Update(CurrTime, ElapsedTime, DoUpdateUI);
101101
}
102102

103103
void NuklearDemo::WindowResize(Uint32 Width, Uint32 Height)

Samples/NuklearDemo/src/NuklearDemo.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class NuklearDemo final : public SampleBase
4444
virtual void Initialize(const SampleInitInfo& InitInfo) override final;
4545

4646
virtual void Render() override final;
47-
virtual void Update(double CurrTime, double ElapsedTime) override final;
47+
virtual void Update(double CurrTime, double ElapsedTime, bool DoUpdateUI) override final;
4848

4949
virtual const Char* GetSampleName() const override final { return "Nuklear Demo"; }
5050

0 commit comments

Comments
 (0)