Appearance
安装引用
目录
在线引入方式
引入版本:3.0 起支持
在 HTML 页面中使用 script 标签引入在线的 sdk 资源文件地址就完成了引用。例如在 index.html 文件的 head 标签中添加如下形式代码:
使用最新版本
JavaScript
<script src="https://www.tuguan.net/public/tgapp4/TGApp.min.js"></script>引入指定版本
JavaScript
<script src="https://www.tuguan.net/public/tgapp4.0.1/TGApp.min.js"></script>初始化场景
JavaScript
var appInstance = new TGApp.App();
// 场景Id,您的场景ID可以从发布地址中获取最后的编码,3.3.2版本之后的端渲染编辑器发布的地址是一个8位的字符串,例如:n2xg53jj。
var sceneId = 'n2xg53jj';
// 如果是3.3.2之前的版本是一个32位的字符串,例如
// var sceneId = 'ed402a51-a00a-48f2-8b60-f51963440e82';
// 开始加载端渲染场景
function beginLoad() {
// 第一步,请求场景token
// token地址
const tokenUrl = `https://www.tuguan.net/api/user/v1/visitorScene/${sceneId}`;
let xhr = new XMLHttpRequest();
xhr.open('post', tokenUrl, true);
xhr.setRequestHeader('Content-Type', 'application/json charset=utf-8');
xhr.onreadystatechange = () => {
if (xhr.readyState == 4 && xhr.status == 200) {
let result = JSON.parse(xhr.responseText);
initScene(result.accessToken);
}
};
xhr.send();
}
// 初始化场景服务地址
function initScene(token) {
// 如果端渲染服务器版本 >= 3.3.2,请使用这个端渲染场景服务地址模版
var sceneUrl = `https://www.tuguan.net/publish/scene/api/${sceneId}`;
// 端渲染服务器版本 < 3.3.2,使用这个场景服务地址模版
// var sceneUrl = `http://www.tuguan.net/api/sceneEditor/v1/scenes/${sceneId}/loadAVWS`;
appInstance.initService(
{
container: document.getElementById('container'),
mode: 'scene',
url: sceneUrl,
token: token,
resourceBasePath: 'https://www.tuguan.net/public/tgapp/scene', // 在线引用的资源地址,如果是流渲染可以不写
editMode: false
},
(e) => {
console.log(e);
}
);
}点击这里查看 端渲染场景在线引用 运行效果, 此端渲染示例场景需要下载 12M 左右的场景数据到浏览器进行加载并且渲染。
点击这里查看 流渲染场景在线引用 运行效果,此流渲染示例场景需要您有 10Mbps 稳定的互联网出口带宽,并且网络防火墙中没有禁止浏览器的 UDP 协议的出站规则。
注意事项
目前仅 3.3 及以后的版本支持在线引入。
离线引入方式
引入版本:3.0 起支持
下载资源
下载离线 TGApp.zip 资源文件,解压后可以获取到如下内容:
- scene
- lib
- texture
- resource
- TGApp.min.js
- TGApp.module.min.js
其中 TGApp.min.js 为 HTML 引入方式文件;TGApp.module.min.js 为 import 引入方式文件;scene 文件夹中的子文件夹 lib、texture、resource 文件为 端渲染使用资源文件,本地开发时需放入到项目工程目录下。
使用资源
将上述获取的 TGApp.min.js、TGApp.module.min.js 文件放入到项目的适当目录中,可以根据实际情况自行处理。
端渲染离线引用示例代码
端渲染离线开发时,资源文件 lib,texture,resource 需要放在同一个目录下(这里推荐就放在解压出来的 scene 文件夹中,将 scene 文件夹放在项目工程目录内)。 资源文件的所在目录需要在程序初始化时使用 resourceBasePath 属性指定 (注意:使用在线引入方式时无需指定此属性) ,参考如下代码:
使用技巧:resourceBasePath 属性默认是 './scene',如果 lib,texture,resource 资源文件夹在 scene 目录中,并且 scene 文件夹和 html 文件在同一个目录,则无需指定 resourceBasePath 属性。
JavaScript
var appInstance = new TGApp.App();
// 场景Id,您的场景ID可以从发布地址中获取最后的编码,3.3.2版本之后的端渲染编辑器发布的地址是一个8位的字符串,例如:n2xg53jj。
var sceneId = 'n2xg53jj';
// 如果是3.3.2之前的版本是一个32位的字符串,例如
// var sceneId = 'ed402a51-a00a-48f2-8b60-f51963440e82';
// 开始加载端渲染场景
function beginLoad() {
// 第一步,请求场景token
// token地址
const tokenUrl = `https://www.tuguan.net/api/user/v1/visitorScene/${sceneId}`;
let xhr = new XMLHttpRequest();
xhr.open('post', tokenUrl, true);
xhr.setRequestHeader('Content-Type', 'application/json charset=utf-8');
xhr.onreadystatechange = () => {
if (xhr.readyState == 4 && xhr.status == 200) {
let result = JSON.parse(xhr.responseText);
initScene(result.accessToken);
}
};
xhr.send();
}
// 初始化场景服务地址
function initScene(token) {
// 如果端渲染服务器版本 >= 3.3.2,请使用这个端渲染场景服务地址模版
var sceneUrl = `https://www.tuguan.net/publish/scene/api/${sceneId}`;
// 端渲染服务器版本 < 3.3.2,使用这个场景服务地址模版
// var sceneUrl = `http://www.tuguan.net/api/sceneEditor/v1/scenes/${id}/loadAVWS`;
appInstance.initService(
{
container: document.getElementById('container'),
mode: 'scene',
url: sceneUrl,
token: token,
//resourceBasePath: './scene', // 离线资源文件所在目录,即 scene 文件夹的目录位置(包含 lib、texture,resource 资源文件夹的目录)
editMode: false
},
(e) => {
console.log(e);
}
);
}流渲染离线引用示例代码
流渲染开发,则不需要拷贝资源文件,只需要引用 js 文件即可。
JavaScript
// 创建TGAPI对象
var appInstance = new TGApp.App();
// 开始加载端渲染场景
function beginLoad() {
// 初始化服务
window.appInstance.initService({
container: document.getElementById('container'),
name: '智慧社区', // 服务名称,用于切换服务时使用
mode: 'streaming', // streaming代表流渲染
url: 'http://您的流渲染服务器IP地址: 端口', // 服务地址
token: 'abcd1234', // token
editMode: false // 是否开启编辑模式,默认不开启,编辑模式的鼠标交互和非编辑模式的不同
})
}集成方式
集成方式有两种,一种是 HTML 引入,另一种是 ES 方式引入,以下分别介绍两种引入方式并贴出代码,推荐使用 HTML 引入方式。
使用 HTML 引入
在 HTML 页面中引入下载的资源目录中的 TGApp.min.js 文件,例如 index.html 文件:
JavaScript
<script src="./lib/TGApp.min.js"></script>使用 ES 方式引入
要使用组件的页面中,在最开始的 js 代码区域填写如下代码:
JavaScript
import * as TGApp from './lib/TGApp.module.min.js';