- 博客(13)
- 资源 (3)
- 收藏
- 关注
原创 Flutter Engine 编译与调试
一、环境搭建1.1 GitHub帐户添加SSH密钥https://docs.github.com/en/github/authenticating-to-github/checking-for-existing-ssh-keys1.2 配置ninja下载和编译git clone git://github.com/ninja-build/ninja.git && cd ninjagit checkout release./configure.py --bootstrap
2020-08-01 01:08:58
1254
原创 SkCanvas Overview
OverView承接上文,SkCanvas是Skia的绘图上下文。 它知道将图形往哪里进行绘制(例如,指向用于离屏渲染的像素),并维护矩阵和裁剪操作。 但是请注意,与其他API(如postscript,cairo或awt)中的类似上下文不同,Skia不在上下文中存储任何其他图形属性(例如颜色,画笔大小)。 而是在每个draw call中通过SkPaint明确指定这些。SkCanvas的作用:指向要绘制的实际像素维护matrices (矩阵)和 clips(裁剪)等操作的栈Detailed De
2020-08-01 00:43:10
1311
原创 Skia Overview and API Reference
Skia简介和图形案例OverviewSkia是一个开源的2D图形库,提供各种常用的API,并可在多种软硬件平台上运行。谷歌Chrome浏览器、Chrome OS、Android、火狐浏览器、火狐操作系统以及其它许多产品都使用它作为图形引擎。Skia由谷歌出资管理,任何人都可基于BSD免费软件许可证使用Skia。Skia开发团队致力于开发其核心部分, 并广泛采纳各方对于Skia的开源贡献。功能展示与图形案例下图是一系列图形案例,用来展示Skia可以实现的功能。因为内容太多,浏览器无法渲染所有的图形
2020-08-01 00:42:23
622
原创 Skia Viewer编译教程
简介Skia Viewer展示了一系列Skia功能,可以用于了解和调试Skia系统的不同部分:查看渲染性能尝试不同的渲染方法:raster,OpenGL and Vulkan环境配置要求:ubuntu 16.04Android SDKAndroid NDKGNninja配置NDK环境变量export ANDROID_NDK_HOME=~/Android/android-ndk-r21b配置SDK环境变量export ANDROID_HOME=~/Android/Sdk
2020-08-01 00:41:27
651
原创 Vulkan 多线程渲染
1. Overview of Vulkan1.1 计算机图形软件图形软件有两个大类:专用软件包(special-purpose packages)和通用编程软件包(general program-ming packages)。专用软件包通常提供一种UI设计语言,让用户直接生成想要的图形,不用关心内部实现。这类软件例子是PS、CAD等等。相反,通用编程软件包提供一个可使用C、C++或Java等高级语言编程的图形函数库。图形函数库中提供几何图元、矩阵变换等操作,提供了间接操作硬件的软件接口,所以这组图
2020-08-01 00:36:26
2102
原创 Vulkan 简介
1. Vulkan起源和历史1.1 AMD Mantle2013年,AMD主导开发了Mantle。Mantle是面向3D游戏的新一代图形渲染 API,可以让开发人员直接操作GPU硬件底层,从而提高硬件利用率和游戏性能,效果显著。Mantle很好的带动了图形行业发展,微软参考AMD Mantle的思路开发了DirectX 12,苹果则提出了Metal。但是因为AMD行业影响力和领导力不足,Mantle没有发展成为全行业的标准。2015年,AMD宣布不在维护Mantle,Mantle功成身退。Khro
2020-08-01 00:33:53
13641
原创 Android HWUI Cache绘制流程
HWUI Cache绘制流程RenderBufferCacheRenderBufferRepresents an OpenGL render buffer. Render buffers are attached to layers to perform stencil work. 渲染缓冲,这里创建的目的是用来执行模板测试。 void allocate() { ...
2018-08-14 16:13:40
2569
原创 Android EGL OpenGL库说明和加载流程
OpenGL ES什么是OpenGL?Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used t
2018-01-09 17:19:00
5084
原创 Android Memory Tracker原理分析
Memory Tracker原理分析1. 背景公司有一个测试项,执行adb shell dumpsys meminfo + pkg命令查看内存信息:malk@malk:am$ adb shell dumpsys meminfo com.meizu.safeApplications Memory Usage (in Kilobytes):Uptime: 103881237 R
2017-12-23 18:04:32
18623
2
原创 Android gltrace tools——Snapdragon Profiler
Snapdragon Profiler1.概述Qualcomm®Snapdragon Profiler是可以运行在Windows,Macintosh和Linux计算机系统上的分析软件。 Snapdragon Profiler允许开发人员分析CPU,GPU,DSP *,内存,电源,散热,和网络数据,找到并修复性能瓶颈。“这款工具通过三种数据捕获模式显示应用程序的CPU、GPU、DS
2017-08-29 14:20:42
3022
原创 Android gltrace tools——Mali Graphics Debugger
Mali Graphics Debugger概述Mali Graphics Debugger允许开发人员在其应用程序中跟踪OpenGL ES,Vulkan和OpenCL API调用,并逐帧跟踪应用程序,以帮助识别可能的问题。ubuntu安装下载Mali Graphics Debugger 后执行如下命令tar xvzf Mali_Graphics_Debugger_
2017-08-29 13:07:15
3684
原创 Android gltrace tools——PVRTrace
PVRTrace1.概述PowerVR 提供了包括性能分析、鉴定瓶颈、修改应用程序三个功能的工具集,该工具集被称为PowerVR Graphics Tools。 PVRTrace是其中的一种记录和分析功能的程序,它可以捕获OpenGL ES应用程序所有的API调用。它由两个主要组成部分组成: - Recording Libraries:它是位于OpenGL ES应用程序和平台的
2017-08-29 12:02:00
1725
MySQL_5.1_zh.chm
2014-08-13
Java Servlet API 2.3
2014-08-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人