# VKSession wx.createVKSession(Object object)
基础库 2.20.0 开始支持,低版本需做兼容处理。
小程序插件:支持,需要小程序基础库版本不低于 2.20.0
# 功能描述
创建 vision kit 会话对象。详见指南
# 参数
# Object object
属性 | 类型 | 默认值 | 必填 | 说明 | 最低版本 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
version | string | 否 | vision kit 版本。 | 2.22.0 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
track | Object | 是 | 跟踪能力配置,目前不同的跟踪能力之间是互斥的,默认使用平面跟踪能力。需要注意目前 track 中不同的跟踪配置存在互斥关系(比如 marker 跟踪配置和 OSD 跟踪配置不能同时存在),请按需配置。 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
gl | WebGLRenderingContext | 否 | 绑定的 WebGLRenderingContext 对象 | 2.23.0 |
# 返回值
# VKSession
vision kit 会话对象。错误码参考 错误码列表
# 示例代码
v1 版本:VisionKit基础能力使用参考 v2 版本:VisionKit-v2基础能力使用参考
// 以下 demo 以 v2 为例
// 创建 session 对象
const ssession = wx.createVKSession({
track: {
plane: {mode: 3},
},
version: 'v2',
gl, // WebGLRenderingContext
})
// 逐帧分析
const onFrame = timestamp => {
// 开发者可以自己控制帧率
const frame = session.getVKFrame(canvasWidth, canvasHeight)
if (frame) {
// 分析完毕,可以拿到帧对象
doRender(frame)
}
session.requestAnimationFrame(onFrame)
}
session.start(err => {
if (!err) session.requestAnimationFrame(onFrame)
})
// 渲染函数
const doRender = frame => {
// ...
}