splited function at TextRender
This commit is contained in:
parent
1ab3e5241f
commit
1d457c5d58
@ -53,7 +53,7 @@ private:
|
|||||||
{
|
{
|
||||||
UTF16String str;
|
UTF16String str;
|
||||||
|
|
||||||
FontSource *fs=CreateFontSource(OS_TEXT("微软雅黑"),12);
|
FontSource *fs=AcquireFontSource(OS_TEXT("微软雅黑"),12);
|
||||||
|
|
||||||
text_render=CreateTextRender(device,fs,device_render_pass,ubo_camera_info);
|
text_render=CreateTextRender(device,fs,device_render_pass,ubo_camera_info);
|
||||||
if(!text_render)
|
if(!text_render)
|
||||||
|
@ -51,7 +51,11 @@ namespace hgl
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
TextRenderable *CreateRenderable();
|
||||||
TextRenderable *CreateRenderable(const UTF16String &str);
|
TextRenderable *CreateRenderable(const UTF16String &str);
|
||||||
|
|
||||||
|
bool Layout(TextRenderable *tr,const UTF16String &str);
|
||||||
|
|
||||||
RenderableInstance *CreateRenderableInstance(TextRenderable *text_render_obj);
|
RenderableInstance *CreateRenderableInstance(TextRenderable *text_render_obj);
|
||||||
};//class TextRender
|
};//class TextRender
|
||||||
|
|
||||||
@ -68,7 +72,7 @@ namespace hgl
|
|||||||
* @param name 字体名称
|
* @param name 字体名称
|
||||||
* @param size 字体象素高度
|
* @param size 字体象素高度
|
||||||
*/
|
*/
|
||||||
FontSource *CreateFontSource(const os_char *name,const uint32_t size);
|
FontSource *AcquireFontSource(const os_char *name,const uint32_t size);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建一个文本渲染器.
|
* 创建一个文本渲染器.
|
||||||
|
@ -138,19 +138,32 @@ namespace hgl
|
|||||||
return(true);
|
return(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TextRenderable *TextRender::CreateRenderable(const UTF16String &str)
|
||||||
|
{
|
||||||
|
return db->CreateTextRenderable(material);
|
||||||
|
}
|
||||||
|
|
||||||
TextRenderable *TextRender::CreateRenderable(const UTF16String &str)
|
TextRenderable *TextRender::CreateRenderable(const UTF16String &str)
|
||||||
{
|
{
|
||||||
TextRenderable *tr=db->CreateTextRenderable(material);
|
TextRenderable *tr=db->CreateTextRenderable(material);
|
||||||
|
|
||||||
if(tl_engine->SimpleLayout(tr,tile_font,str)<=0)
|
if(tl_engine->SimpleLayout(tr,tile_font,str)<=0)
|
||||||
{
|
return(tr);
|
||||||
delete tr;
|
|
||||||
return(nullptr);
|
|
||||||
}
|
|
||||||
|
|
||||||
return tr;
|
return tr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool TextRender::Layout(TextRenderable *tr,const UTF16String &str)
|
||||||
|
{
|
||||||
|
if(!tr)
|
||||||
|
return(false);
|
||||||
|
|
||||||
|
if(tl_engine->SimpleLayout(tr,tile_font,str)<=0)
|
||||||
|
return(false);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
RenderableInstance *TextRender::CreateRenderableInstance(TextRenderable *text_render_obj)
|
RenderableInstance *TextRender::CreateRenderableInstance(TextRenderable *text_render_obj)
|
||||||
{
|
{
|
||||||
return db->CreateRenderableInstance(text_render_obj,material_instance,pipeline);
|
return db->CreateRenderableInstance(text_render_obj,material_instance,pipeline);
|
||||||
@ -171,7 +184,7 @@ namespace hgl
|
|||||||
return font_source;
|
return font_source;
|
||||||
}
|
}
|
||||||
|
|
||||||
FontSource *CreateFontSource(const os_char *name,const uint32_t size)
|
FontSource *AcquireFontSource(const os_char *name,const uint32_t size)
|
||||||
{
|
{
|
||||||
Font fnt(name,0,size);
|
Font fnt(name,0,size);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user