MCPcopy Create free account
hub / github.com/MyGUI/mygui / createScene

Method createScene

Demos/Demo_MsdfFont/DemoKeeper.cpp:19–128  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

17 }
18
19 void DemoKeeper::createScene()
20 {
21 // MsdfFontShader uses custom fragment program and default vertex program
22#if defined(MYGUI_OGRE_PLATFORM)
23 auto& renderManager = MyGUI::OgreRenderManager::getInstance();
24 std::string vpFile = "MyGUI_Ogre_VP." + renderManager.getShaderExtension();
25 std::string fpFile = "Msdf_Ogre_FP." + renderManager.getShaderExtension();
26 // custom VP for glsles to match shader versions (Msdf fragment shader require glsl es 300, while default MyGUI shader use glsl es 100)
27 if (renderManager.getShaderExtension() == "glsles")
28 vpFile = "Msdf_Ogre_VP." + renderManager.getShaderExtension();
29 MyGUI::RenderManager::getInstance().registerShader("MsdfFontShader", vpFile, fpFile);
30#elif defined(MYGUI_OPENGL_PLATFORM)
31 // TODO not implemented in RenderManager
32#elif defined(MYGUI_DIRECTX_PLATFORM)
33 // TODO not implemented in RenderManager
34#elif defined(MYGUI_DIRECTX11_PLATFORM)
35 MyGUI::RenderManager::getInstance().registerShader(
36 "MsdfFontShader",
37 "MyGUI_DirectX11_VP.hlsl",
38 "Msdf_DirectX11_FP.hlsl");
39#elif defined(MYGUI_OPENGL3_PLATFORM)
40 MyGUI::RenderManager::getInstance().registerShader(
41 "MsdfFontShader",
42 "MyGUI_OpenGL3_VP.glsl",
43 "Msdf_OpenGL3_FP.glsl");
44#elif defined(MYGUI_OPENGLES_PLATFORM)
45 MyGUI::RenderManager::getInstance().registerShader(
46 "MsdfFontShader",
47 "MyGUI_OpenGLES_VP.glsl",
48 "Msdf_OpenGLES_FP.glsl");
49#endif
50
51 MyGUI::ResourceManager::getInstance().load("MsdfFont.xml");
52
53 base::BaseDemoManager::createScene();
54 MyGUI::LayoutManager::getInstance().loadLayout("Wallpaper.layout");
55 const MyGUI::VectorWidgetPtr& root = MyGUI::LayoutManager::getInstance().loadLayout("HelpPanel.layout");
56 if (root.size() == 1)
57 root.at(0)->findWidget("Text")->castType<MyGUI::TextBox>()->setCaption(
58 "Msdf font, that can be scaled and rendered with a high quality, while single small texture is used "
59 "for all sizes. Small-size fonts are still better with a regular texture.");
60
61 MyGUI::Button* button1 = MyGUI::Gui::getInstance().createWidget<MyGUI::Button>(
62 "Button",
63 MyGUI::IntCoord(110, 10, 200, 50),
64 MyGUI::Align::Default,
65 "Main");
66 button1->eventMouseButtonClick += MyGUI::newDelegate(this, &DemoKeeper::increaseFontHeight);
67 button1->setCaption("Increase font height");
68 MyGUI::Button* button2 = MyGUI::Gui::getInstance().createWidget<MyGUI::Button>(
69 "Button",
70 MyGUI::IntCoord(320, 10, 200, 50),
71 MyGUI::Align::Default,
72 "Main");
73 button2->eventMouseButtonClick += MyGUI::newDelegate(this, &DemoKeeper::decreaseFontHeight);
74 button2->setCaption("Decrease font height");
75
76 MyGUI::ImageBox* fontTexture = MyGUI::Gui::getInstance().createWidget<MyGUI::ImageBox>(

Callers

nothing calls this directly

Calls 13

newDelegateFunction · 0.85
getShaderExtensionMethod · 0.80
loadLayoutMethod · 0.80
findWidgetMethod · 0.80
setImageTextureMethod · 0.80
IntCoordFunction · 0.50
registerShaderMethod · 0.45
loadMethod · 0.45
sizeMethod · 0.45
setCaptionMethod · 0.45
setPositionMethod · 0.45
setFontNameMethod · 0.45

Tested by

no test coverage detected