2D材质渲染
更新时间:2021-05-27
2D材质渲染
目前百度AR 2D方面支持plane、序列帧、视频。
图片
2D图片渲染效果图
需要在AR场景中使用自定义图片时,首先需要跳转至【素材中心】页面,使用自定义图片资源创建素材,创建流程如下图:
完成图片素材的上传后,在编辑器页面将新建的图片素材拖拽到【场景】中即可。
序列帧图片
序列帧图片,一般适用于一些动态按钮的设置,如有涉及序列帧帧数过多时,请转用蒙板视频实现。
在json文件中配置对应的序列帧图片节点参数,对应在lua中需要调用播放接口才可正常播放。
使用序列帧图片的方式与使用图片类似,需要首先在素材中心页面根据提示完成序列帧素材的创建,在编辑器页面将素材拖拽到【场景】中即可。
视频
视频类目前所提供的呈现方式主要分为普通视频和抠图视频两种,所有与百度AR合作的相关抠图视频类的AR项目,请严格按照百度AR视频制作规范制作项目所需视频素材。
- 后期抠像并非技术难点,重点在于得到符合规范的抠像素材。
- 目前引擎暂不支持全屏视频,如需全屏播放需要通过代码控制视频大小实现。
- 在一个项目中涉及普通视频,同时又存在透明视频时,common_config.json 文件需要配置不同的四个默认节点名,然后通过json节点中设置不同的defaultShaderName。具体可以参考ar项目结构包,该场景包内配置文件具备全类型,注意此场景包配置项中设置透明视频为默认。
如何呈现视频?
视频的使用方式与图片/序列帧类似,首先在【素材中心】完成视频素材的创建,然后在编辑器页面将视频拖拽到【场景】中。需要注意的是,视频根据其内容分为【透明视频】/【普通视频】,在素材中心创建素材时需要选择正确的类型。
在【场景】中添加视频素材后,需要在lua中写入启动视频播放的代码,我们只需要通过scene.video_name即可获取这个节点信息,写入路径并调start()开关即可播放。
视频文件的路径可在编辑器页面选中视频节点后,在右侧属性面板中获取。
-- Lua 中节点配置
video = scene.videoPlane:video()
:path('/res/media/bb8-render.mp4')
:repeat_count(-1)
:start()
控制视频播放
我们提供给开发者多种播放状态,开始、暂停、继续、停止,促使开发者能够更加灵活的控制视频播放状态,达到自己的产品需求。可以在按钮点击事件、视频点击事件、场景点击事件等需要的点击事件中添加控制代码,实现点击识别。 开发者可自定义id,通过id调用控制播放的方法,从而实现需求效果。
如下例:
开始:
-- Lua 中节点配置
书写格式1:
video = scene.videoPlane:video()
:path('/res/media/content.mp4')
:repeat_count(-1)
:start()
书写格式2:
video = scene.videoPlane:video():path('/res/media/content.mp4'):repeat_count(-1):start()
暂停:
-- Lua 中节点配置
video : pause()
继续:
-- Lua 中节点配置
video : resume()
停止:
-- Lua 中节点配置
video : stop()