Kiwano Engine  v1.2.x
kiwano::Renderer类 参考abstract

渲染器 更多...

#include <Renderer.h>

类 kiwano::Renderer 继承关系图:
kiwano::Renderer 的协作图:

Public 成员函数

virtual Color GetClearColor () const
 获取清屏颜色
 
Size GetOutputSize () const
 获取渲染输出大小
 
RenderContextGetContext ()
 获取渲染上下文
 
virtual void Resize (uint32_t width, uint32_t height)=0
 重设渲染输出大小
 
void SetClearColor (const Color &clear_color)
 设置清屏颜色
 
void SetVSyncEnabled (bool enabled)
 开启或关闭垂直同步
 
void ResetResolutionWhenWindowResized (bool enabled)
 窗口大小变化时自动调整分辨率
 
virtual void CreateTexture (Texture &texture, const String &file_path)=0
 创建纹理内部资源 更多...
 
virtual void CreateTexture (Texture &texture, const BinaryData &data)=0
 创建纹理内部资源 更多...
 
virtual void CreateGifImage (GifImage &gif, const String &file_path)=0
 创建GIF图像内部资源 更多...
 
virtual void CreateGifImage (GifImage &gif, const BinaryData &data)=0
 创建GIF图像内部资源 更多...
 
virtual void CreateGifImageFrame (GifImage::Frame &frame, const GifImage &gif, size_t frame_index)=0
 创建GIF关键帧内部资源 更多...
 
virtual void CreateFontCollection (Font &font, Vector< String > &family_names, const String &file_path)=0
 创建字体集内部资源 更多...
 
virtual void CreateFontCollection (Font &font, Vector< String > &family_names, const BinaryData &data)=0
 创建字体集内部资源 更多...
 
virtual void CreateTextLayout (TextLayout &layout, const String &content, const TextStyle &style)=0
 创建文字布局内部资源 更多...
 
virtual void CreateLineShape (Shape &shape, const Point &begin_pos, const Point &end_pos)=0
 创建线段形状内部资源 更多...
 
virtual void CreateRectShape (Shape &shape, const Rect &rect)=0
 创建矩形形状内部资源 更多...
 
virtual void CreateRoundedRectShape (Shape &shape, const Rect &rect, const Vec2 &radius)=0
 创建圆角矩形形状内部资源 更多...
 
virtual void CreateEllipseShape (Shape &shape, const Point &center, const Vec2 &radius)=0
 创建椭圆形状内部资源 更多...
 
virtual void CreateShapeSink (ShapeMaker &maker)=0
 创建几何图形生成器内部资源 更多...
 
virtual void CreateBrush (Brush &brush, const Color &color)=0
 创建纯色画刷内部资源 更多...
 
virtual void CreateBrush (Brush &brush, const LinearGradientStyle &style)=0
 创建线性渐变画刷内部资源 更多...
 
virtual void CreateBrush (Brush &brush, const RadialGradientStyle &style)=0
 创建径向渐变画刷内部资源 更多...
 
virtual void CreateBrush (Brush &brush, TexturePtr texture)=0
 创建纹理画刷内部资源 更多...
 
virtual void CreateStrokeStyle (StrokeStyle &stroke_style)=0
 创建线条样式内部资源 更多...
 
virtual RenderContextPtr CreateTextureRenderContext (Texture &texture, const Size *desired_size=nullptr)=0
 创建纹理渲染上下文,将上下文的渲染输出到纹理中 更多...
 
virtual void Clear ()=0
 清除绘制内容
 
virtual void Present ()=0
 将绘制内容呈现至窗口 更多...
 
virtual void MakeContextForWindow (WindowPtr window)=0
 为窗口创建渲染上下文 更多...
 
virtual void Destroy ()
 销毁渲染器资源
 
void HandleEvent (EventModuleContext &ctx) override
 处理事件
 
- Public 成员函数 继承自 kiwano::Module
virtual void SetupModule ()
 启动模块
 
virtual void DestroyModule ()
 销毁模块
 
virtual void OnUpdate (UpdateModuleContext &ctx)
 更新时 更多...
 
virtual void BeforeRender (RenderModuleContext &ctx)
 渲染前 更多...
 
virtual void OnRender (RenderModuleContext &ctx)
 渲染时 更多...
 
virtual void AfterRender (RenderModuleContext &ctx)
 渲染后 更多...
 

静态 Public 成员函数

static RendererGetInstance ()
 获取实例
 

Protected 属性

bool vsync_
 
bool auto_reset_resolution_
 
Color clear_color_
 
Size output_size_
 
RenderContextPtr render_ctx_
 

详细描述

渲染器

成员函数说明

virtual void kiwano::Renderer::CreateBrush ( Brush brush,
const Color color 
)
pure virtual

创建纯色画刷内部资源

参数
[out]brush画刷
[in]color颜色

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateBrush ( Brush brush,
const LinearGradientStyle style 
)
pure virtual

创建线性渐变画刷内部资源

参数
[out]brush画刷
[in]style线性渐变样式

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateBrush ( Brush brush,
const RadialGradientStyle style 
)
pure virtual

创建径向渐变画刷内部资源

参数
[out]brush画刷
[in]style径向渐变样式

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateBrush ( Brush brush,
TexturePtr  texture 
)
pure virtual

创建纹理画刷内部资源

参数
[out]brush画刷
[in]texture纹理

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateEllipseShape ( Shape shape,
const Point center,
const Vec2 radius 
)
pure virtual

创建椭圆形状内部资源

参数
[out]shape形状
[in]center椭圆圆心
[in]radius椭圆半径

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateFontCollection ( Font font,
Vector< String > &  family_names,
const String &  file_path 
)
pure virtual

创建字体集内部资源

参数
[out]font字体
[out]family_names字体包含的字体族
[in]file_paths字体文件路径

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateFontCollection ( Font font,
Vector< String > &  family_names,
const BinaryData data 
)
pure virtual

创建字体集内部资源

参数
[out]font字体
[out]family_names字体包含的字体族
[in]data字体二进制资源

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateGifImage ( GifImage gif,
const String &  file_path 
)
pure virtual

创建GIF图像内部资源

参数
[out]gifGIF图像
[in]file_path图片路径

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateGifImage ( GifImage gif,
const BinaryData data 
)
pure virtual

创建GIF图像内部资源

参数
[out]gifGIF图像
[in]data图片二进制数据

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateGifImageFrame ( GifImage::Frame frame,
const GifImage gif,
size_t  frame_index 
)
pure virtual

创建GIF关键帧内部资源

参数
[out]frameGIF关键帧
[in]gifGIF图像
[in]frame_index帧下标

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateLineShape ( Shape shape,
const Point begin_pos,
const Point end_pos 
)
pure virtual

创建线段形状内部资源

参数
[out]shape形状
[in]begin_pos线段起点
[in]end_pos线段终点

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateRectShape ( Shape shape,
const Rect rect 
)
pure virtual

创建矩形形状内部资源

参数
[out]shape形状
[in]rect矩形大小

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateRoundedRectShape ( Shape shape,
const Rect rect,
const Vec2 radius 
)
pure virtual

创建圆角矩形形状内部资源

参数
[out]shape形状
[in]rect矩形大小
[in]radius圆角半径

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateShapeSink ( ShapeMaker maker)
pure virtual

创建几何图形生成器内部资源

参数
[out]maker形状生成器

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateStrokeStyle ( StrokeStyle stroke_style)
pure virtual

创建线条样式内部资源

参数
[out]stroke_style线条样式
[in]cap线段端点样式
[in]line_join线段相交样式
[in]dash_array虚线长度与间隙数组
[in]dash_size虚线数组大小
[in]dash_offset虚线偏移量

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateTextLayout ( TextLayout layout,
const String &  content,
const TextStyle style 
)
pure virtual

创建文字布局内部资源

参数
[out]layout字体布局
text文字内容
style文本样式

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateTexture ( Texture texture,
const String &  file_path 
)
pure virtual

创建纹理内部资源

参数
[out]texture纹理
[in]file_path图片路径

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::CreateTexture ( Texture texture,
const BinaryData data 
)
pure virtual

创建纹理内部资源

参数
[out]texture纹理
[in]data图片二进制数据

kiwano::RendererImpl 内被实现.

virtual RenderContextPtr kiwano::Renderer::CreateTextureRenderContext ( Texture texture,
const Size desired_size = nullptr 
)
pure virtual

创建纹理渲染上下文,将上下文的渲染输出到纹理中

参数
[in,out]texture渲染输出的纹理
[in]desired_size期望的输出大小
返回
纹理渲染上下文

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::MakeContextForWindow ( WindowPtr  window)
pure virtual

为窗口创建渲染上下文

异常
kiwano::SystemError创建上下文失败时抛出

kiwano::RendererImpl 内被实现.

virtual void kiwano::Renderer::Present ( )
pure virtual

将绘制内容呈现至窗口

异常
kiwano::SystemError呈现失败时抛出

kiwano::RendererImpl 内被实现.