2.0.0-alpha.1 • Published 5 years ago
@gaoding/illusion-sdk v2.0.0-alpha.1
web 端滤镜 sdk
本项目通过 emscripten
打包了 illusion-engine
,提供更快更稳定的 web 滤镜渲染 sdk
模块介绍
本项目根据 illusion-engine
的模块划分,将渲染库分为以下模块:
- Engine(渲染引擎主模块,负责渲染引擎的声明周期控制与自模块的创建)
- Layer(图层, 是包括数据源、处理效果以及自身如变换等多数据的载体)
- Source(数据源, 目前为渲染的输入图像数据)
- Filter(滤镜, 图层渲染使用到的滤镜、混合效果等)
- Target(渲染目标, 渲染结果输出的目标, 在 web 中为引擎挂载的
canvas
)
快速使用
import { installIllusionEngine } from '@gaoding/illusion-sdk';
installIllusionEngine({
useWorker: false
})
.then(async(engine) => {
await engine.init();
// 创建视图源
const source = await engine.createSource();
await source.setPixelsFromUrl(imageUrl);
// 创建滤镜
const filters = await engine.createFiltersByZip(zipDataBuffer);
// 创建图层
const layer = await engine.createLayer();
await layer.setSource(source);
await Promise.all(filters.map(async(filter) => {
await layer.addEffect(filter);
}));
await engine.addLayer(layer);
// 创建目标视图
const target = await engine.createTarget('canvasId', 500, 500);
await engine.prepare(target);
engine.submit(0);
});
如何编译
安装 emsdk
可以参考 emscripten 的官方文档
本项目开发使用版本为 1.39.19
git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install 1.39.19
source /env/emsdk_env.sh
注意: emsdk 在安装时会从 googlesource 上下载版本镜像,所以最好设置 HTTP_PROXY 进行翻墙与加速
安装依赖项
yarn install
编译 webassembly
yarn build:sdk
编译 sdk
yarn buid
运行单元测试
yarn test
运行 demo
···bash yarn dev ···
2.0.0-alpha.1
5 years ago
1.0.33
6 years ago
1.0.32
6 years ago
1.0.31
6 years ago
1.0.30
6 years ago
1.0.29
6 years ago
1.0.28
6 years ago
1.0.27
6 years ago
1.0.26
6 years ago
1.0.25
6 years ago
1.0.24
6 years ago
1.0.23
6 years ago
1.0.22
6 years ago
1.0.21
6 years ago
1.0.20
6 years ago
1.0.19
6 years ago
1.0.18
6 years ago
1.0.17
6 years ago
1.0.16
6 years ago
1.0.15
6 years ago
1.0.14
6 years ago
1.0.13
6 years ago
1.0.12
6 years ago
1.0.11
6 years ago
1.0.10
6 years ago
1.0.9
6 years ago
1.0.8
6 years ago
1.0.7
6 years ago
1.0.6
6 years ago
1.0.5
6 years ago
1.0.4
6 years ago
1.0.3
6 years ago
1.0.2
6 years ago
1.0.1
6 years ago
1.0.0
6 years ago