|
dl
|
资源工厂,加载、管理、创建各种资源 更多...
#include <dl_factory.h>
Public 成员函数 | |
| void | SetPath (std::string_view path_image="image/", std::string_view path_model="model/", std::string_view path_binary="binary/", std::string_view path_temp="temp/") |
| 设置 各种路径 | |
| void | SetSpriteSampler (Sprite::Sampler sampler_normal, Sprite::Sampler sampler_ui) |
| 设置精灵的默认采样模式 | |
| Sprite::Sampler | GetSpriteSampler (bool is_ui) |
| 返回精灵的默认采样模式 | |
| void | SetReleaseMode () |
| 设置发布模式,使用binary资源 | |
| void | RegisterImagePath (std::string_view path, std::string_view name) |
| 注册图像加载路径 | |
| void | LoadModel (std::string_view path_name, std::string_view name="") |
| 加载模型文件 | |
| std::vector< std::string > | GetAllModel () |
| std::string | GetPathImage () |
| 返回图像目录 | |
| std::string | GetPathVoice () |
| 返回音效目录 | |
| std::string | GetPathModel () |
| 返回模型目录 | |
| std::string | GetPathBinary () |
| 返回资源缓存目录,例如"binary/" | |
| std::string | GetPathBinary3D () |
| 返回3d资源缓存目录,例如"binary/3d/" | |
| std::string | GetPathBinary2D () |
| 返回2d资源缓存目录,例如"binary/2d/" | |
| std::string | GetPathTemp () |
| 返回临时文件路径,例如"temp/" | |
| std::string | GetPathNameTemp (std::string_view str_fmt="") |
| 返回临时文件名,例如"temp/1" | |
| gcActor | CreateActor (std::string_view name) |
| 创建一个演员,通过指定模型文件 | |
| gcActor | CreateActorDefault () |
| Camera * | GetCamera () |
| 返回相机(3d) | |
| size_t | LoadSkybox (std::string_view path) |
| 加载天空盒 | |
| void | SetSkybox (size_t id) |
| 设置天空盒 | |
| void | SetDebugView3D (DebugView3D type) |
| 设置调试绘图(3d) | |
| DebugView3D | GetDebugView3D () |
| void | UpdateDebugView () |
| gcSprite | CreateSpriteDefault (const Color &col=ColorDef::WHITE) |
| 创建默认精灵 | |
| gcSprite | CreateSprite (const SpriteID &spr_id) |
| 创建一个精灵 | |
| gcSprite | CreateSprite (std::string_view name, std::size_t index=0) |
| 创建一个精灵 | |
| gcSprite | CreateSprite (size_t rt_id) |
| 创建一个精灵 | |
| gcSprite | CreateSpriteRandom (std::string_view name) |
| 创建一个精灵,随机选中下标 | |
| bool | RegisterSprite (std::string_view name, size_t index, Image *img, const Position &anchor={}) |
| 注册一个精灵(动态) | |
| bool | UpdateSprite (std::string_view name, size_t index, Image *img, const Position &anchor={}) |
| 更新一个精灵 | |
| bool | HasSprite (std::string_view name) |
| 检测精灵是否存在 | |
| std::vector< gcSprite > | CreateSpriteMulti (std::string_view name, std::size_t num=0, std::size_t index=0) |
| 创建多个精灵,从已加载的精灵表复制 | |
| gcSprite | CloneSprite (gcSprite &spr) |
| 复制一个精灵 | |
| gcSprite | CloneSprite (const gcSprite &spr) |
| std::vector< std::string > | GetFolderAllSpriteName (std::string_view folder_name) |
| 返回一个文件夹下的所有精灵 | |
| size_t | GetSpriteSheetNum (std::string_view name) |
| 返回精灵的sheet有多少张 | |
| SpriteID | GetSpriteId (std::string_view name, size_t index) |
| 返回精灵的id | |
| bool | GetSpriteId (std::string_view name, size_t index, SpriteID &id) |
| 返回精灵的id | |
| Size | GetSpriteTexSize (const SpriteID &spr_id) |
| 返回精灵的纹理大小 | |
| Size | GetSpriteTexSize (gcSprite &spr) |
| Quad | GetSpriteQuad (const SpriteID &spr_id) |
| 返回精灵的默认quad | |
| Quad | GetSpriteQuad (gcSprite &spr) |
| std::string | GetSpriteName (const SpriteID &spr_id) |
| 返回精灵的名字 | |
| std::string | GetSpriteName (gcSprite &spr) |
| std::string | GetSpriteNameIndex (const SpriteID &spr_id) |
| 返回精灵的名字和下标,例如 btn,0 | |
| std::string | GetSpriteNameIndex (gcSprite &spr) |
| Position | GetSpriteAnchor (const SpriteID &spr_id) |
| 返回精灵的默认锚点 | |
| Position | GetSpriteAnchor (gcSprite &spr) |
| Color | GetSpriteColor (const SpriteID &spr_id) |
| 返回精灵的默认颜色 | |
| Color | GetSpriteColor (gcSprite &spr) |
| gcAnimation | CreateAnimation (std::string_view name, std::string_view state, unsigned dir=0) |
| 创建精灵动画 | |
| gcAnimation | CloneAnimation (gcAnimation ani) |
| gcSprite | RenderSprite (std::string_view name, size_t index=0) |
| 创建临时精灵,并绘制 | |
| gcSprite | RenderSpriteDefault () |
| gcText | RenderText () |
| 创建临时文本,并绘制 | |
| gcAnimation | RenderAnimation (std::string_view name, std::string_view state, unsigned dir=0) |
| size_t | LoadFont (std::string_view path_name) |
| 加载字体 | |
| size_t | GetFontSize () |
| 返回加载的字体数量 | |
| CharImage * | GetChar (const CharInfo &info) |
| 获得字符图像 | |
| float | CreateSpriteChar (const CharInfo &info, gcSprite &spr, gcSprite &spr_outline) |
| 创建一个字符精灵 | |
| float | CreateSpriteChar (const CharInfo &info, gcSprite &spr) |
| gcText | CreateText (size_t font_id=0, unsigned font_size=16, const Color &col=ColorDef::WHITE, unsigned font_outline=0, const Color &col_outline=ColorDef::BLACK, unsigned font_shadow=0, const Color &col_shadow=ColorDef::BLACK) |
| 创建一个文本 | |
| gcText | CreateTextDefault () |
| gcText | CloneText (gcText txt, bool copy_str=true) |
| 复制一个文本 | |
| Coor * | GetRootCoor (size_t i) |
| 返回根坐标系 | |
| void | AddColor (std::string_view name, const Color &col) |
| 添加一个颜色 | |
| Color | GetColor (std::string_view name) |
| 返回一个颜色 | |
| std::optional< Color > | GetColorCheck (std::string_view name) |
| 返回一个颜色,会检查 | |
| void | LoadColorJson (std::string_view path_name) |
| 从json文件加载颜色标签 | |
| void | SetOrderPickup (float order) |
| 设置拾取ui的当前order | |
| float | GetOrderPickup () |
| void | SetOrderPickupShow (bool show) |
| bool | GetOrderPickupShow () |
| void | DeleteBinary (bool b_all, bool b_2d, bool b_3d) |
| 删除输出目录内容 | |
| void | ExportTexture2D () |
| 导出所有2d纹理 | |
| bool | CompressMir2Res (std::string_view path) |
| 打包传奇补丁包(TODO 有问题不要使用) | |
| FactoryImp * | GetImp () |
| void | _render_sprite (Sprite *spr) |
| void | _add_pickup_sprite (Sprite *spr) |
| void | _add_pickup_text (Text *txt) |
| void | _clear_pickup () |
| void | _render_pickup () |
友元 | |
| class | System |
| class | Engine |
资源工厂,加载、管理、创建各种资源
在文件 dl_factory.h 第 40 行定义.
|
inline |
在文件 dl_factory.h 第 498 行定义.
|
inline |
在文件 dl_factory.h 第 502 行定义.
|
inline |
在文件 dl_factory.h 第 506 行定义.
| void dl::Factory::_render_pickup | ( | ) |
| void dl::Factory::_render_sprite | ( | Sprite * | spr | ) |
| void dl::Factory::AddColor | ( | std::string_view | name, |
| const Color & | col ) |
添加一个颜色
| [in] | name | 名字 |
| [in] | col | 颜色值 |
| gcAnimation dl::Factory::CloneAnimation | ( | gcAnimation | ani | ) |
在文件 dl_factory.h 第 285 行定义.
复制一个文本
在文件 dl_factory.h 第 420 行定义.
| bool dl::Factory::CompressMir2Res | ( | std::string_view | path | ) |
打包传奇补丁包(TODO 有问题不要使用)
| gcActor dl::Factory::CreateActor | ( | std::string_view | name | ) |
创建一个演员,通过指定模型文件
| [in] | name | 名字 |
| 失败返回默认演员,错误写入日志。 |
|
inline |
在文件 dl_factory.h 第 186 行定义.
| gcAnimation dl::Factory::CreateAnimation | ( | std::string_view | name, |
| std::string_view | state, | ||
| unsigned | dir = 0 ) |
创建精灵动画
| [in] | name | 动画名(集合) |
| [in] | state | 状态 |
| [in] | dir | 方向 |
| gcSprite dl::Factory::CreateSprite | ( | size_t | rt_id | ) |
创建一个精灵
| [in] | rt_id | RenderTarget的id |
| gcSprite dl::Factory::CreateSprite | ( | std::string_view | name, |
| std::size_t | index = 0 ) |
创建一个精灵
| [in] | name | 名字,例如“ui.btn0” |
| [in] | index | 下标 |
| 失败返回默认精灵,错误产生日志。 |
在文件 dl_factory.h 第 389 行定义.
| float dl::Factory::CreateSpriteChar | ( | const CharInfo & | info, |
| gcSprite & | spr, | ||
| gcSprite & | spr_outline ) |
创建一个字符精灵
| [in] | info | 字符信息 |
| [out] | spr | 返回的精灵 |
| [out] | spr_outline | 返回的精灵(描边),如果描边大小为0,则不会返回 |
| 横向偏移距离 |
|
nodiscard |
创建默认精灵
| std::vector< gcSprite > dl::Factory::CreateSpriteMulti | ( | std::string_view | name, |
| std::size_t | num = 0, | ||
| std::size_t | index = 0 ) |
创建多个精灵,从已加载的精灵表复制
| [in] | name | 名字,例如“ui.btn0” |
| [in] | num | 数量,为0时表示全部 |
| [in] | index | 下标起始 |
|
inline |
| gcText dl::Factory::CreateText | ( | size_t | font_id = 0, |
| unsigned | font_size = 16, | ||
| const Color & | col = ColorDef::WHITE, | ||
| unsigned | font_outline = 0, | ||
| const Color & | col_outline = ColorDef::BLACK, | ||
| unsigned | font_shadow = 0, | ||
| const Color & | col_shadow = ColorDef::BLACK ) |
创建一个文本
| [in] | font_id | 字体编号 |
| [in] | font_size | 字体大小(单位为像素,英文字母大约为一半大小) |
| [in] | col | 颜色 |
| [in] | font_outline | 描边大小 |
| [in] | col_outline | 描边颜色 |
| [in] | font_shadow | 阴影偏移 |
| [in] | col_shadow | 阴影颜色 |
| 失败返回nullptr |
|
inline |
在文件 dl_factory.h 第 411 行定义.
| void dl::Factory::DeleteBinary | ( | bool | b_all, |
| bool | b_2d, | ||
| bool | b_3d ) |
删除输出目录内容
| void dl::Factory::ExportTexture2D | ( | ) |
导出所有2d纹理
| std::vector< std::string > dl::Factory::GetAllModel | ( | ) |
| Camera * dl::Factory::GetCamera | ( | ) |
返回相机(3d)
| Color dl::Factory::GetColor | ( | std::string_view | name | ) |
返回一个颜色
| [in] | name | 通过AddColor添加的颜色,如果是开头为0x,则返回对应十六进制颜色 |
| 失败返回白色,并发出警告 |
| std::optional< Color > dl::Factory::GetColorCheck | ( | std::string_view | name | ) |
返回一个颜色,会检查
| DebugView3D dl::Factory::GetDebugView3D | ( | ) |
| std::vector< std::string > dl::Factory::GetFolderAllSpriteName | ( | std::string_view | folder_name | ) |
返回一个文件夹下的所有精灵
| size_t dl::Factory::GetFontSize | ( | ) |
返回加载的字体数量
|
inline |
在文件 dl_factory.h 第 494 行定义.
|
inline |
在文件 dl_factory.h 第 477 行定义.
|
inline |
在文件 dl_factory.h 第 480 行定义.
|
inline |
返回资源缓存目录,例如"binary/"
在文件 dl_factory.h 第 141 行定义.
|
inline |
返回2d资源缓存目录,例如"binary/2d/"
在文件 dl_factory.h 第 155 行定义.
|
inline |
返回3d资源缓存目录,例如"binary/3d/"
在文件 dl_factory.h 第 148 行定义.
|
inline |
返回图像目录
在文件 dl_factory.h 第 120 行定义.
|
inline |
返回模型目录
在文件 dl_factory.h 第 134 行定义.
|
inline |
|
inline |
返回临时文件路径,例如"temp/"
在文件 dl_factory.h 第 162 行定义.
|
inline |
返回音效目录
在文件 dl_factory.h 第 127 行定义.
| Coor * dl::Factory::GetRootCoor | ( | size_t | i | ) |
返回根坐标系
| [in] | i | 下标 0作为2d全局使用 |
| 不需要用户手动释放,失败返回空 |
在文件 dl_factory.h 第 331 行定义.
在文件 dl_factory.h 第 336 行定义.
| SpriteID dl::Factory::GetSpriteId | ( | std::string_view | name, |
| size_t | index ) |
返回精灵的id
| 失败返回默认精灵,且打印警告 |
| bool dl::Factory::GetSpriteId | ( | std::string_view | name, |
| size_t | index, | ||
| SpriteID & | id ) |
返回精灵的id
| 失败不会进行任何处理 |
| std::string dl::Factory::GetSpriteName | ( | const SpriteID & | spr_id | ) |
返回精灵的名字
|
inline |
在文件 dl_factory.h 第 321 行定义.
| std::string dl::Factory::GetSpriteNameIndex | ( | const SpriteID & | spr_id | ) |
返回精灵的名字和下标,例如 btn,0
|
inline |
在文件 dl_factory.h 第 326 行定义.
在文件 dl_factory.h 第 316 行定义.
|
inline |
返回精灵的默认采样模式
在文件 dl_factory.h 第 77 行定义.
| size_t dl::Factory::GetSpriteSheetNum | ( | std::string_view | name | ) |
返回精灵的sheet有多少张
在文件 dl_factory.h 第 311 行定义.
| bool dl::Factory::HasSprite | ( | std::string_view | name | ) |
检测精灵是否存在
| void dl::Factory::LoadColorJson | ( | std::string_view | path_name | ) |
从json文件加载颜色标签
| size_t dl::Factory::LoadFont | ( | std::string_view | path_name | ) |
加载字体
| [in] | path_name | 路径名称 |
| void dl::Factory::LoadModel | ( | std::string_view | path_name, |
| std::string_view | name = "" ) |
加载模型文件
| [in] | path_name | 绝对路径 或 资源路径 |
| [in] | name | 自定义名称 |
| size_t dl::Factory::LoadSkybox | ( | std::string_view | path | ) |
加载天空盒
| [in] | path | 路径 |
| 返回id |
|
inline |
| bool dl::Factory::RegisterSprite | ( | std::string_view | name, |
| size_t | index, | ||
| Image * | img, | ||
| const Position & | anchor = {} ) |
注册一个精灵(动态)
| [in] | name | 命名 |
| [in] | index | 下标 |
| [in] | img | 图像 |
| [in] | anchor | 锚点 |
| gcAnimation dl::Factory::RenderAnimation | ( | std::string_view | name, |
| std::string_view | state, | ||
| unsigned | dir = 0 ) |
| gcSprite dl::Factory::RenderSprite | ( | std::string_view | name, |
| size_t | index = 0 ) |
创建临时精灵,并绘制
| gcSprite dl::Factory::RenderSpriteDefault | ( | ) |
| gcText dl::Factory::RenderText | ( | ) |
创建临时文本,并绘制
| void dl::Factory::SetDebugView3D | ( | DebugView3D | type | ) |
设置调试绘图(3d)
| void dl::Factory::SetOrderPickup | ( | float | order | ) |
设置拾取ui的当前order
|
inline |
在文件 dl_factory.h 第 479 行定义.
|
inline |
|
inline |
设置发布模式,使用binary资源
在文件 dl_factory.h 第 84 行定义.
| void dl::Factory::SetSkybox | ( | size_t | id | ) |
设置天空盒
| [in] | size_t | id |
|
inline |
设置精灵的默认采样模式
在文件 dl_factory.h 第 69 行定义.
| void dl::Factory::UpdateDebugView | ( | ) |
| bool dl::Factory::UpdateSprite | ( | std::string_view | name, |
| size_t | index, | ||
| Image * | img, | ||
| const Position & | anchor = {} ) |
更新一个精灵
| [in] | name | 命名 |
| [in] | index | 下标 |
| [in] | img | 图像(必须和原大小一致) |
| [in] | anchor | 锚点(本次启动有效。若仅为了更新锚点,请勿调用此接口) |
|
friend |
在文件 dl_factory.h 第 43 行定义.
|
friend |
在文件 dl_factory.h 第 42 行定义.