当前位置:网站首页>[CEGUI] resource loading process
[CEGUI] resource loading process
2022-06-12 10:09:00 【Lindo】
CEGUI Resource loading process
- CEGUI edition 0.8.7
Main resource types
Scheme
- scheme resources ( Include image set 、 Font resources 、 Window appearance information 、 Type mapping ) etc. . Can pass “.scheme“” take CEGUI All resources required by the system are loaded at one time .
- example :TaharezLook.scheme
<?xml version="1.0" ?>
<GUIScheme version="5" name="TaharezLook">
<Imageset filename="TaharezLook.imageset" />
<Font filename="DejaVuSans-12.font" />
<LookNFeel filename="TaharezLook.looknfeel" />
<WindowRendererSet filename="CEGUICoreWindowRendererSet" />
<FalagardMapping windowType="TaharezLook/Label" targetType="DefaultWindow" renderer="Core/Default" lookNFeel="TaharezLook/Label" />
<FalagardMapping windowType="TaharezLook/Button" targetType="CEGUI/PushButton" renderer="Core/Button" lookNFeel="TaharezLook/Button" />
<FalagardMapping windowType="TaharezLook/Checkbox" targetType="CEGUI/ToggleButton" renderer="Core/ToggleButton" lookNFeel="TaharezLook/Checkbox" />
<FalagardMapping windowType="TaharezLook/ImageButton" targetType="CEGUI/PushButton" renderer="Core/Button" lookNFeel="TaharezLook/ImageButton" />
<FalagardMapping windowType="TaharezLook/RadioButton" targetType="CEGUI/RadioButton" renderer="Core/ToggleButton" lookNFeel="TaharezLook/RadioButton" />
<FalagardMapping windowType="TaharezLook/FrameWindow" targetType="CEGUI/FrameWindow" renderer="Core/FrameWindow" lookNFeel="TaharezLook/FrameWindow" />
<FalagardMapping windowType="TaharezLook/Titlebar" targetType="CEGUI/Titlebar" renderer="Core/Titlebar" lookNFeel="TaharezLook/Titlebar" />
<FalagardMapping windowType="TaharezLook/Editbox" targetType="CEGUI/Editbox" renderer="Core/Editbox" lookNFeel="TaharezLook/Editbox" />
<FalagardMapping windowType="TaharezLook/MultiLineEditbox" targetType="CEGUI/MultiLineEditbox" renderer="Core/MultiLineEditbox" lookNFeel="TaharezLook/MultiLineEditbox" />
<FalagardMapping windowType="TaharezLook/Menubar" targetType="CEGUI/Menubar" renderer="Core/Menubar" lookNFeel="TaharezLook/Menubar" />
<FalagardMapping windowType="TaharezLook/PopupMenu" targetType="CEGUI/PopupMenu" renderer="Core/PopupMenu" lookNFeel="TaharezLook/PopupMenu" />
<FalagardMapping windowType="TaharezLook/MenuItem" targetType="CEGUI/MenuItem" renderer="Core/MenuItem" lookNFeel="TaharezLook/MenuItem" />
<FalagardMapping windowType="TaharezLook/AlternateProgressBar" targetType="CEGUI/ProgressBar" renderer="Core/ProgressBar" lookNFeel="TaharezLook/AltProgressBar" />
<FalagardMapping windowType="TaharezLook/ProgressBar" targetType="CEGUI/ProgressBar" renderer="Core/ProgressBar" lookNFeel="TaharezLook/ProgressBar" />
<FalagardMapping windowType="TaharezLook/VUMeter" targetType="CEGUI/ProgressBar" renderer="Core/ProgressBar" lookNFeel="TaharezLook/VUMeter" />
<FalagardMapping windowType="TaharezLook/VerticalScrollbar" targetType="CEGUI/Scrollbar" renderer="Core/Scrollbar" lookNFeel="TaharezLook/VerticalScrollbar" />
<FalagardMapping windowType="TaharezLook/HorizontalScrollbar" targetType="CEGUI/Scrollbar" renderer="Core/Scrollbar" lookNFeel="TaharezLook/HorizontalScrollbar" />
<FalagardMapping windowType="TaharezLook/VerticalScrollbarThumb" targetType="CEGUI/Thumb" renderer="Core/Button" lookNFeel="TaharezLook/VerticalScrollbarThumb" />
<FalagardMapping windowType="TaharezLook/HorizontalScrollbarThumb" targetType="CEGUI/Thumb" renderer="Core/Button" lookNFeel="TaharezLook/HorizontalScrollbarThumb" />
<FalagardMapping windowType="TaharezLook/LargeVerticalScrollbar" targetType="CEGUI/Scrollbar" renderer="Core/Scrollbar" lookNFeel="TaharezLook/LargeVerticalScrollbar" />
<FalagardMapping windowType="TaharezLook/LargeVerticalScrollbarThumb" targetType="CEGUI/Thumb" renderer="Core/Button" lookNFeel="TaharezLook/LargeVerticalScrollbarThumb" />
<FalagardMapping windowType="TaharezLook/TabButton" targetType="CEGUI/TabButton" renderer="Core/TabButton" lookNFeel="TaharezLook/TabButton" />
<FalagardMapping windowType="TaharezLook/TabControl" targetType="CEGUI/TabControl" renderer="Core/TabControl" lookNFeel="TaharezLook/TabControl" />
<FalagardMapping windowType="TaharezLook/TabContentPane" targetType="DefaultWindow" renderer="Core/Default" lookNFeel="TaharezLook/TabContentPane" />
<FalagardMapping windowType="TaharezLook/TabButtonPane" targetType="DefaultWindow" renderer="Core/Default" lookNFeel="TaharezLook/TabButtonPane" />
<FalagardMapping windowType="TaharezLook/ComboDropList" targetType="CEGUI/ComboDropList" renderer="Core/Listbox" lookNFeel="TaharezLook/ComboDropList" />
<FalagardMapping windowType="TaharezLook/ComboEditbox" targetType="CEGUI/Editbox" renderer="Core/Editbox" lookNFeel="TaharezLook/ComboEditbox" />
<FalagardMapping windowType="TaharezLook/Combobox" targetType="CEGUI/Combobox" renderer="Core/Default" lookNFeel="TaharezLook/Combobox" />
<FalagardMapping windowType="TaharezLook/Listbox" targetType="CEGUI/Listbox" renderer="Core/Listbox" lookNFeel="TaharezLook/Listbox" />
<FalagardMapping windowType="TaharezLook/ListHeader" targetType="CEGUI/ListHeader" renderer="Core/ListHeader" lookNFeel="TaharezLook/ListHeader" />
<FalagardMapping windowType="TaharezLook/ListHeaderSegment" targetType="CEGUI/ListHeaderSegment" renderer="Core/ListHeaderSegment" lookNFeel="TaharezLook/ListHeaderSegment" />
<FalagardMapping windowType="TaharezLook/MultiColumnList" targetType="CEGUI/MultiColumnList" renderer="Core/MultiColumnList" lookNFeel="TaharezLook/MultiColumnList" />
<FalagardMapping windowType="TaharezLook/Slider" targetType="CEGUI/Slider" renderer="Core/Slider" lookNFeel="TaharezLook/Slider" />
<FalagardMapping windowType="TaharezLook/SliderThumb" targetType="CEGUI/Thumb" renderer="Core/Button" lookNFeel="TaharezLook/SliderThumb" />
<FalagardMapping windowType="TaharezLook/ScrollablePane" targetType="CEGUI/ScrollablePane" renderer="Core/ScrollablePane" lookNFeel="TaharezLook/ScrollablePane" />
<FalagardMapping windowType="TaharezLook/Spinner" targetType="CEGUI/Spinner" renderer="Core/Default" lookNFeel="TaharezLook/Spinner" />
<FalagardMapping windowType="TaharezLook/Tooltip" targetType="CEGUI/Tooltip" renderer="Core/Tooltip" lookNFeel="TaharezLook/Tooltip" />
<FalagardMapping windowType="TaharezLook/StaticImage" targetType="DefaultWindow" renderer="Core/StaticImage" lookNFeel="TaharezLook/StaticImage" />
<FalagardMapping windowType="TaharezLook/StaticText" targetType="DefaultWindow" renderer="Core/StaticText" lookNFeel="TaharezLook/StaticText" />
<FalagardMapping windowType="TaharezLook/ItemListbox" targetType="CEGUI/ItemListbox" renderer="Core/ItemListbox" lookNFeel="TaharezLook/ItemListbox" />
<FalagardMapping windowType="TaharezLook/ListboxItem" targetType="CEGUI/ItemEntry" renderer="Core/ItemEntry" lookNFeel="TaharezLook/ListboxItem" />
<FalagardMapping windowType="TaharezLook/GroupBox" targetType="DefaultWindow" renderer="Core/Default" lookNFeel="TaharezLook/GroupBox" />
<FalagardMapping windowType="TaharezLook/Tree" targetType="CEGUI/Tree" renderer="Core/Tree" lookNFeel="TaharezLook/Tree" />
</GUIScheme>
Imageset
- Imageset Image set , Corresponding to a picture .Image It corresponds to an area on the picture .Image There is no limit to the quantity .
- example :
<Imageset autoScaled="vertical" imagefile="TaharezLook.png" name="TaharezLook" nativeHorzRes="1280" nativeVertRes="720" version="2">
<Image height="64" name="ClientBrush" width="64" xPos="2" yPos="2" />
<Image height="1" name="GenericBrush" width="1" xPos="9" yPos="71" />
Omit ...
</Imagset>
Font resources
- CEGUI Font resources of the system . Two types of Font: FreeTypeFont/ PixmapFont, Vector fonts and bitmap fonts .
- example :
<?xml version="1.0" ?>
<Font version="3" name="DejaVuSans-12" filename="DejaVuSans.ttf" type="FreeType" size="12" nativeHorzRes="1280" nativeVertRes="720" autoScaled="vertical"/>
Appearance resources
- Appearance files are related to rendering windows . Sub windows defined in the render window 、 The corresponding definition of the named area must exist in the appearance file . There are many definitions of appearance files , For relevant contents, please refer to the following official documents .
http://static.cegui.org.uk/docs/0.8.7/fal_element_ref.html
Resource loading process analysis
Scheme object , yes CEGUI Provided to uniformly load resources . Use... Through it Scheme file , It can be loaded with one click CEGUI Various resource files used by the program .
Scheme Just a unified entrance , You can also use CEGUI Various resource loading objects are provided to load resources .
scheme Will call various resource objects , Load resources . So understand scheme Load to understand the loading process of various resources .
- Block chart

Before loading resources , Need to inform CEGUI The system's resource group Directory ( Directory setting of various resources )
- example : Set up schemes Resource group .
// Set up schemes Resource group .
CEGUI::System::getSingleton().getResourceProvider().setResourceGroupDirectory("schemes", "path")
CEGUI::Scheme::setDefaultResourceGroup("schemes");
// load scheme file .
SchemeManager::getSingleton().createFromFile("TaharezLook.scheme");
- Scheme Resource loading process ( With OpenGLRender For example )

- shcemeManager The default is auto load ( Easy to load resources with one click ). Non automatic loading can be set , Load through each resource object when necessary .
- Resources are loaded synchronously , Loading a large number of resources can be time-consuming .
- Resources with the same name , Does not load repeatedly .
边栏推荐
- markdown_图片并排的方案
- Crazy temporary products: super low price, big scuffle and new hope
- MySQL optimized slow log query
- The white paper "protecting our digital heritage: DNA data storage" was released
- SAP HANA 错误消息 SYS_XSA authentication failed SQLSTATE - 28000
- QQ, wechat chat depends on it (socket)?
- Tap series article 3 | introduction to Tanzu application platform deployment reference architecture
- Redis (II) Memory mapped data structure
- 7-13 地下迷宫探索(邻接表)
- JVM (V) Virtual machine class loading (parental delegation mechanism)
猜你喜欢

MySQL 7 affair

1268_FreeRTOS任务上下文切换的实现

Redis (I) Internal data structure
![[926. flip the string to monotonic increment]](/img/fa/1838405693aa0998694d4895a611c2.png)
[926. flip the string to monotonic increment]

一文读懂Dfinity生态中的首个NFT平台:IMPOSSIBLE THINGS

CEPH performance optimization and enhancement

005: difference between data lake and data warehouse

IoT简介

Basic use of scratch

MySQL III Configuration file & log file
随机推荐
2021-09-15
Li Yang, a scientific and technological innovator and CIO of the world's top 500 group: the success of digital transformation depends on people. Decision makers should always focus on "firewood"
[Wayland] Wayland agreement description
Jetpack architecture component learning (3) -- activity results API usage
Antique mfc/gdi+ Frame LCD display control
UE4_以现成资源探索创建背景场景的方法
002: what are the characteristics of the data lake
Dazzle the "library" action - award solicitation from the golden warehouse of the National People's Congress - high availability failover and recovery of kingbasees cluster
Web3.0与数字时尚,该如何落地?
IoT简介
MYSQL的最左匹配原則的原理講解
Tap series article 3 | introduction to Tanzu application platform deployment reference architecture
2022 pole technology communication - the dispute over anmou technology is settled, and the cornerstone of the local semiconductor industry is more stable
2021-03-26
Pandorabox uses firewall rules to define non internet time
Shen Min, CIO of science and technology innovator Digital China Group: the best practice model is failing, and open source accelerates Distributed Innovation
《真北》读书笔记
MySQL optimized slow log query
np.meshgrid()函数 以及 三维空间中的坐标位置生成 以及 numpy.repeat()函数介绍
Introduction to applet