当前位置:网站首页>[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 .
边栏推荐
- 7-4 network red dot punch in strategy (DFS)
- Checkpoint of the four cornerstones of Flink
- Shen Min, CIO of science and technology innovator Digital China Group: the best practice model is failing, and open source accelerates Distributed Innovation
- Docker compose integrates redis, MySQL and microservices, and services are containerized
- [Mozilla] basic concept analysis of IPDL
- Access and traversal of string class objects
- 【926. 将字符串翻转到单调递增】
- How CEPH improves storage performance and storage stability
- High performance computing framework for image processing
- C# break continue return 三者区别
猜你喜欢

List of computer startup shortcut keys
![[cloud native] establishment of Eureka service registration](/img/da/0a700081be767db91edd5f3d49b5d0.png)
[cloud native] establishment of Eureka service registration

FPGA VGA display based on de2-115 platform

SAP HANA 错误消息 SYS_XSA authentication failed SQLSTATE - 28000
Detailed explanation and use of redis data types: key and string types

GNU EFI development environment settings

High quality and good books help guide apes and recommend "good summer books" with the four major publishers

7-13 underground maze exploration (adjacency table)

Raw socket usage

原始套接字使用
随机推荐
用于图像处理的高性能计算框架
002: what are the characteristics of the data lake
CLAHE in opencv for 16 bit image enhancement display
六月集训(第12天) —— 链表
[cloud native | kubernetes] kubernetes networkpolicy
C#入门系列(十二) -- 字符串
Reading notes of the fifth cultivation
一文读懂Dfinity生态中的首个NFT平台:IMPOSSIBLE THINGS
List of computer startup shortcut keys
哈希表的理论讲解
MySQL VI Database lock
Theoretical explanation of hash table
1268_FreeRTOS任务上下文切换的实现
链式哈希表
5 most common CEPH failure scenarios
Transport layer protocol -- TCP protocol
2021-02-22
Common tree summary
行业分析怎么做
HALCON联合C#检测表面缺陷——仿射变换(三)