tianhehechu's recent timeline updates
tianhehechu

tianhehechu

V2EX member #538245, joined on 2021-03-18 17:57:05 +08:00
Today's activity rank 25704
tianhehechu's recent replies
@burp2019 问题已修复,帖子第二个链接已升级为官网,官网菜单的 [示例] 页面,左侧目录的 [旧版示例] 可以访问此前的 Demo 页面,下拉目录可继续体验。近期会讲旧 Demo 页面内容逐步迁移到官网示例页面。
@aoyi 问题已修复,并升级成了官网,原 Demo 链接可访问
@abel533 您好,我已将 demo 页面重写为官网,示例菜单下为 Echats 示例风格,左侧 JSON 右侧画布。欢迎访问。帖子开头的第二个链接( Demo 页面)可以直接访问。
@abel533 可以的,本身就支持。只不过在线 Demo 考虑到用户可能会拿来当模板,没用添加额外功能。感谢反馈,我会马上补充一个可以在线用 JSON 调整的 Demo 。如果你想立刻体验此功能,可以访问现有的 https://nnrj.github.io/threejson/demo.html#demo=t05-01 ,点击它右侧面板中的 [JSON 场景] 标签按钮,在里面修改 JSON 后,可以改变场景。
@abel533 在 demo 页面右侧,点击 [查看 JSON] 按钮,即可看到相应场景的 JSON 。在项目目录中位于 https://github.com/nnrj/threejson/tree/master/assets/json (整项目中 Demo 的 JSON 文件基本都在这里)。在 demo 页面右侧点击 [查看源码] 能看到该页面的源文件,里面可以看到导入了 JSON ,交给了 ThreeJSON 解析去解析加载,函数名通常是 createJsonScene 。核心代码片段如:
sceneRuntime = await createJsonScene(sceneData, {
canvas,
assetsBase: "../../../assets",
resetScene: true})。

这个函数看起来复杂,是因为完整场景通常有纹理是异步的。如果要最小心智负担使用,可以使用:
createJsonSceneSimple

感谢反馈。我会尽快补充一个基于 createJsonSceneSimple 的更简单的示例,内嵌 JSON 。
@nsjs 大佬啊,欢迎加入本项目的维护
@oldManNewThought 原生 Three.js 的 JSON ,在 ThreeJSON 中并无特殊,视为三方模型的一种,可以使用 nativeThree 字段加载完整原生 JSON 场景。只有在将场景导出为原生 JSON 的地方,才用到 Three.js 的原生 JSON 。因为原生 JSON 可读性差,太多噪声,不适合作为声明式实现的 JSON 模板,并且 Three.js 官方也放弃了它的维护。ThreeJSON 采用的是一套新的定义,并且 JSON 只是它的入口和真源。ThreeJSON 还提供了命令行、脚本、AI 接口等场景描述方式,也兼容 Three.js 原生语法,几乎所有的能力都是可选的,在项目中引入后,可以无缝使用它提供的 API ,也可以从对象管理器使用 threeJsonId 、refName 等取得 Three.js 托管给 ThreeJSON 的原生 Three.js 对象,然后使用原生 Three.js 写代码。并行不悖。
@RockerXH 那太有缘了,说不定你是平行宇宙的我。你就是我,我就是你。哈哈哈哈
@qrobot 已修复改问题。感谢反馈。欢迎继续体验。
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1335 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 24ms · UTC 17:17 · PVG 01:17 · LAX 10:17 · JFK 13:17
♥ Do have faith in what you're doing.