Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_43355755
engine
提交
0a676616
E
engine
项目概览
weixin_43355755
/
engine
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0a676616
编写于
1月 12, 2016
作者:
A
Adam Barth
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #2255 from abarth/enable_caching
Enable raster cache in compositor
上级
bb3cd9e2
eca953c1
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
13 addition
and
6 deletion
+13
-6
sky/compositor/raster_cache.cc
sky/compositor/raster_cache.cc
+13
-6
未找到文件。
sky/compositor/raster_cache.cc
浏览文件 @
0a676616
...
...
@@ -7,9 +7,11 @@
#include "base/logging.h"
#include "base/trace_event/trace_event.h"
#include "sky/compositor/paint_context.h"
#include "third_party/skia/include/core/SkCanvas.h"
#include "third_party/skia/include/core/SkImage.h"
#include "third_party/skia/include/core/SkSurface.h"
#define ENABLE_RASTER_CACHE
0
#define ENABLE_RASTER_CACHE
1
namespace
sky
{
namespace
compositor
{
...
...
@@ -77,11 +79,16 @@ RefPtr<SkImage> RasterCache::GetPrerolledImage(GrContext* context,
TRACE_EVENT2
(
"flutter"
,
"Rasterize picture layer"
,
"width"
,
physical_size
.
width
(),
"height"
,
physical_size
.
height
());
SkMatrix
matrix
=
SkMatrix
::
MakeScale
(
scaleX
,
scaleY
);
entry
.
image
=
adoptRef
(
SkImage
::
NewFromPicture
(
picture
,
physical_size
,
&
matrix
,
nullptr
));
entry
.
image
->
preroll
(
context
,
SkShader
::
kClamp_TileMode
,
SkShader
::
kClamp_TileMode
,
kMedium_SkFilterQuality
);
SkImageInfo
info
=
SkImageInfo
::
MakeN32Premul
(
physical_size
);
RefPtr
<
SkSurface
>
surface
=
adoptRef
(
SkSurface
::
NewRenderTarget
(
context
,
SkSurface
::
kYes_Budgeted
,
info
));
if
(
surface
)
{
SkCanvas
*
canvas
=
surface
->
getCanvas
();
canvas
->
clear
(
SK_ColorTRANSPARENT
);
SkMatrix
matrix
=
SkMatrix
::
MakeScale
(
scaleX
,
scaleY
);
canvas
->
drawPicture
(
picture
,
&
matrix
,
nullptr
);
entry
.
image
=
adoptRef
(
surface
->
newImageSnapshot
());
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录