MCPcopy Create free account
hub / github.com/TankOs/SFGUI / OnSwitchRendererClick

Method OnSwitchRendererClick

examples/Test.cpp:719–774  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

717}
718
719void SampleApp::OnSwitchRendererClick() {
720 if( sfg::Renderer::Get().GetName() == "Non-Legacy Renderer" ) {
721 auto renderer = sfg::VertexBufferRenderer::Create();
722
723 sfg::Renderer::Set( renderer );
724
725 //renderer->TuneUseFBO( true );
726 renderer->TuneAlphaThreshold( .2f );
727 renderer->TuneCull( true );
728
729 m_switch_renderer->SetLabel( "Renderer: VBR" );
730
731 m_desktop.Refresh();
732 return;
733 }
734
735 if( sfg::Renderer::Get().GetName() == "Vertex Buffer Renderer" ) {
736 auto renderer = sfg::VertexArrayRenderer::Create();
737
738 sfg::Renderer::Set( renderer );
739
740 renderer->TuneAlphaThreshold( .2f );
741 renderer->TuneCull( true );
742
743 m_switch_renderer->SetLabel( "Renderer: VAR" );
744
745 m_desktop.Refresh();
746 return;
747 }
748
749 if( sfg::NonLegacyRenderer::IsAvailable() ) {
750 auto renderer = sfg::NonLegacyRenderer::Create();
751
752 sfg::Renderer::Set( renderer );
753
754 renderer->TuneUseFBO( true );
755 renderer->TuneCull( true );
756
757 m_switch_renderer->SetLabel( "Renderer: NLR" );
758
759 m_desktop.Refresh();
760 }
761 else if( sfg::VertexBufferRenderer::IsAvailable() ) {
762 auto renderer = sfg::VertexBufferRenderer::Create();
763
764 sfg::Renderer::Set( renderer );
765
766 //renderer->TuneUseFBO( true );
767 renderer->TuneAlphaThreshold( .2f );
768 renderer->TuneCull( true );
769
770 m_switch_renderer->SetLabel( "Renderer: VBR" );
771
772 m_desktop.Refresh();
773 }
774}
775
776void SampleApp::RenderCustomGL() {

Callers

nothing calls this directly

Calls 5

TuneAlphaThresholdMethod · 0.45
TuneCullMethod · 0.45
SetLabelMethod · 0.45
RefreshMethod · 0.45
TuneUseFBOMethod · 0.45

Tested by

no test coverage detected