网易首页 > 网易号 > 正文 申请入驻

HT 3D 场景视频嵌入应用展示

0
分享至

在快节奏的数字时代,视频已成为信息传播和内容消费的主要形式之一。场景嵌入技术作为一种创新媒介,正在改变我们创作、分享和体验视频的方式。



场景嵌入视频的最大优势在于能够增强观众的沉浸感。通过融合现实环境与虚拟元素,创作者可以突破传统视频制作的局限,打造更加富有创意和吸引力的内容。这种沉浸式体验不仅吸引眼球,更能够提高信息的传达效果。

接下来,让我们一同探究在 HT 中怎样把视频嵌入场景,下面会给出 2 种具体方案:

  1. 使用视频生成图片进行切换。
  2. 采用 ht-webview3d.js 插件的方式嵌入。
生成视频图片

该方案无需依赖插件,主要通过将视频的每一帧转换为图片,然后进行图片切换的方式来达到呈现视频的效果。只要是支持设置图片的场景,都能够实现视频的播放,并且能营造出曲面屏等独特的视觉效果。



利用 canvas 绘制图片时,以下代码中的 _memoryCtx 是与 canvas 相关的绘图上下文。

function registerImage(width, height,node) {
ht.Default.callLater(() => {
node._memoryCtx.clearRect(0, 0, width, height);
node._memoryCtx.drawImage(node._videoElement, 0, 0, width, height);
g3d.invalidateData(node);
registerImage(width, height,node);

创建 video 元素用于播放视频,同时创建 canvas 元素用于绘制注册图标,然后将绘制好的图标设置到相应节点上进行展示。

function video3dPlay(url, width, height, node) {
var video = document.('video');
video.setAttribute("id", "video");
video.setAttribute("controls", "controls");
video.muted = true;
video.setAttribute('src', ht.Default.convertURL(url));
var memoryCanvas = document.('canvas');
memoryCanvas.width = width;
memoryCanvas.height = height;
memoryCanvas.dynamic = true;
ht.Default.setImage('video', memoryCanvas);
node._memoryCtx = memoryCanvas.getContext('2d');
node._videoElement = video;
video.addEventListener('ended', function (e) {
video.play();
video.play(); // 播放
// video.load(); // 关闭
// video.pause(); // 暂停
registerImage(width, height,node);
// 设置图标至节点的 front.image
node.s({
'front.image': 'video'

创建一个场景,并在该场景中添加用于播放视频的节点。
var dm = new ht.DataModel();
var g3d = new ht.graph3d.Graph3dView(dm);
g3d.addToDOM();
//使用 shape 模拟曲面屏
var mpNode = new ht.Shape();
mpNode.s3([94, 257, 501]);
mpNode.setThickness(1)
mpNode.setPoints([{"x":706.5226394664013,"y":-249.7478365643907},{"x":706.5226394664013,"y":-249.7478365643907},{"x":800.9003901097786,"y":-110.60100560287732,},{"x":801.0888811155728,"y":14.704495929240132},{"x":801.277372121367,"y":140.0099974613576,},{"x":707.2766034895778,"y":251.4741695640791},{"x":707.2766034895778,"y":251.4741695640791}]);
mpNode.setSegments([1, 4, 4])
mpNode.s({
"all.visible": false,
"front.visible": true
dm.add(mpNode);
video3dPlay("assets/ht-video.mp4",mpNode.getLength(),mpNode.getTall(),mpNode);
WebView3d 插件嵌入

此方法依赖于 ht-webview3d.js 插件。需先引入 HT 软件开发工具包(SDK),再引入该插件。通过使用 ht-webview3d.js 插件,能够将 DOM 节点直接嵌入 3D 场景中,因此可以把 video 元素嵌入场景进行展示。



var dm = new ht.DataModel();
var g3d = new ht.graph3d.Graph3dView(dm);
g3d.addToDOM()
// 创建 WebView3d 节点,添加到 dm 中
var videoNode = new ht.WebView3d();
videoNode.s3([200, 200, 1]);
dm.add(videoNode);

ht.WebView3d 节点能够直接嵌入链接,插件内部会生成 iframe 来嵌入链接所指向的内容,例如可直接嵌入视频链接以展示视频。

videoNode.attachDOM(ht.Default.convertURL("assets/ht-video2.mp4"), 200);

也可以在创建 video 的 DOM 节点后插入到相应的位置,方便对视频的播放进行控制。

var video = document.('video');
video.setAttribute("controls", "controls");
video.play();
video.addEventListener('ended', function (e) {
video.play();
video.setAttribute('src',ht.Default.convertURL("assets/ht-video2.mp4"));
videoNode .attachDOM(video, 200)

使用此方法需要注意的是,ht-webview3d.js 插件插入视频时是添加 DOM 元素的方式实现的。因此,当场景设置了背景颜色时,该背景颜色会覆盖在 ht.WebView3d 生成的 DOM 节点上,导致节点内的内容无法显示。



在不断变化的数字媒体世界中,场景嵌入视频代表着未来的发展趋势。图扑软件将积极把握这一趋势,充分利用该方案,持续打造突破性作品,以丰富多元、高度定制的交互体验,不断刷新用户对数字可视化内容的想象与期待!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
苹果首批iPhone 17 Pro做工感人:拼接缝隙宽度竟差了一倍

苹果首批iPhone 17 Pro做工感人:拼接缝隙宽度竟差了一倍

快科技
2025-09-18 08:50:53
首发抢到就是赚到?iPhone 17 系列加价行情大起底,这些机型最值钱

首发抢到就是赚到?iPhone 17 系列加价行情大起底,这些机型最值钱

辉哥说动漫
2025-09-20 03:20:35
发臭的午餐送到学校才被发现!要查的话,整个环节都应该彻查清楚

发臭的午餐送到学校才被发现!要查的话,整个环节都应该彻查清楚

有范又有料
2025-09-19 11:28:51
库明加是追梦拳击普尔事件的告密者?网友:拍视频的就是他经纪人

库明加是追梦拳击普尔事件的告密者?网友:拍视频的就是他经纪人

直播吧
2025-09-19 18:14:03
上海生育率跌破东京,两对夫妻生不出1个娃?小学要成片消失?

上海生育率跌破东京,两对夫妻生不出1个娃?小学要成片消失?

二大爷观世界
2025-09-19 12:38:54
世界级名帅里皮,为何带不动国足?韦世豪才是这背后的罪魁祸首

世界级名帅里皮,为何带不动国足?韦世豪才是这背后的罪魁祸首

坦然风云
2025-08-23 17:57:40
2分!为何宫鲁鸣还坚持用李缘?谁注意他赛后一番话,球迷理解了

2分!为何宫鲁鸣还坚持用李缘?谁注意他赛后一番话,球迷理解了

体育就你秀
2025-09-19 16:13:54
DeepSeek创始人梁文锋,再次震动全球AI领域:R1训练真29.4万美

DeepSeek创始人梁文锋,再次震动全球AI领域:R1训练真29.4万美

策略述
2025-09-19 15:15:46
贝尼特斯:我在利物浦六年在埃弗顿三个月,德比我支持利物浦

贝尼特斯:我在利物浦六年在埃弗顿三个月,德比我支持利物浦

懂球帝
2025-09-20 04:49:14
国产GPU破局时刻:砺算7G100硬刚RTX 4060,图形赛道杀出黑马!

国产GPU破局时刻:砺算7G100硬刚RTX 4060,图形赛道杀出黑马!

O哎财经
2025-09-19 11:16:30
印度将成为世界的灾难!大量没有节制的人口增长,将成为殖民根源

印度将成为世界的灾难!大量没有节制的人口增长,将成为殖民根源

大道无形我有型
2025-08-09 12:27:40
今夜雨势明显!三台风“共舞”,需关注对申城的影响→

今夜雨势明显!三台风“共舞”,需关注对申城的影响→

上海徐汇
2025-09-19 15:43:24
11斤的榴莲无法带上飞机,一家五口机场外15分钟吃完,当事人:打嗝都是榴莲味,半年内不想再吃了

11斤的榴莲无法带上飞机,一家五口机场外15分钟吃完,当事人:打嗝都是榴莲味,半年内不想再吃了

观威海
2025-09-19 11:33:02
翟欣欣苏享茂离婚协议现场曝光?签字后他长舒一口气,满脸的无奈

翟欣欣苏享茂离婚协议现场曝光?签字后他长舒一口气,满脸的无奈

谈史论天地
2025-09-19 17:15:09
女优小野坂唯香饰演人妻,与男同学见面厕所战斗!

女优小野坂唯香饰演人妻,与男同学见面厕所战斗!

葫芦哥爱吐槽
2025-09-20 02:22:43
不管你承不承认,女人过了50岁,基本都会出现以下情况,看你有吗

不管你承不承认,女人过了50岁,基本都会出现以下情况,看你有吗

雪雪呀
2025-09-09 18:24:54
731全球上映:日本网友评论语出惊死人,你们怎么看?

731全球上映:日本网友评论语出惊死人,你们怎么看?

花心电影
2025-09-19 17:57:51
上海交大医学院,将迎来第14个附属医院

上海交大医学院,将迎来第14个附属医院

医学界
2025-09-19 11:32:37
日本房价崩盘回忆:当年那些选择“不买房”的人,后来都怎么样了

日本房价崩盘回忆:当年那些选择“不买房”的人,后来都怎么样了

揽星河的笔记
2025-09-17 19:45:54
连续3次打破世界纪录!湖南工业职业技术学院校友成为大国工匠

连续3次打破世界纪录!湖南工业职业技术学院校友成为大国工匠

潇湘晨报
2025-09-18 21:44:36
2025-09-20 05:04:49
可视化鲸鱼
可视化鲸鱼
图扑软件自研 HT 专注数字孪生/可视化,构建低代码工业组态物联网平台。
348文章数 88关注度
往期回顾 全部

科技要闻

直击iPhone 17开售:消费者偏爱银色橙色

头条要闻

山东入室被抢男婴到15岁没见过汽车 养家从不让他出门

头条要闻

山东入室被抢男婴到15岁没见过汽车 养家从不让他出门

体育要闻

从轮椅到铜牌 他熬了7年:下个目标唱国歌!

娱乐要闻

全智贤被全面抵制!相关代言评论区沦陷

财经要闻

习近平同美国总统特朗普通电话

汽车要闻

对话周光:一个技术理想主义者的“蜕变”

态度原创

艺术
游戏
家居
公开课
军事航空

艺术要闻

故宫珍藏的墨迹《十七帖》,比拓本更精良,这才是地道的魏晋写法

和三月七一样爱自拍,还恶趣味让叽米加班,长夜月越来越神秘了

家居要闻

公共艺术 限时体验打造

公开课

李玫瑾:为什么性格比能力更重要?

军事要闻

卫星图像显示以军坦克集结加沙城周围

无障碍浏览 进入关怀版