如何在 Three.js 中等待纹理从 JSON 模型加载完成?

2023-11-29

我有一个基于 AlteredQualia 的皮肤示例成功加载的 JSON 模型。但是,我不想在模型加载完成之前透露该模型。正如您在此示例中所看到的,模型首先出现,然后加载它们的纹理资源:http://alteredqualia.com/ Three/examples/webgl_animation_skinning_tf2.html

我向网页添加了一个不透明的 div,然后使用 JSONloader.load() 函数的回调将该 div 移开。不幸的是,当网格体添加到场景中时,会触发此回调,而该场景似乎并未被仍在加载的蒙皮图像阻挡,因此我最终“显示”了一个不完整的场景。

我应该如何解决这个问题?我看到有一个函数 THREE.ImageUtils.loadTexture() 具有回调函数,但它似乎不涉及网格声明和定义的用例,如下所示:

var mesh = new THREE.SkinnedMesh(geometry,new THREE.MeshFaceMaterial(materials));
//geometry and materials are both parameters of jsonloader.load callback

我查看了 MeshFaceMaterial 和 SkinnedMesh 的源代码,但在那里找不到解决方案。

感谢您提供的任何帮助。


目前这个问题还没有得到妥善解决。目前,当所有内容都加载时,没有回调或调度事件:/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Three.js 中等待纹理从 JSON 模型加载完成? 的相关文章

随机推荐

  • 如何将 BufferedImage 转换为某种颜色?

    具体来说 我的图像都是透明的纯黑色 我想在绘制图像时为图像分配任意颜色 以便黑色区域更改为新颜色 我尝试使用 RGBImageFilter 它只返回我想要的颜色 但出了问题并且根本没有绘制任何内容 ColourFilter 扩展了 RGBI
  • TableView 中具有多个部分的正确 indexPath.row 选择?

    我有多个部分的表视图 每个部分都有不同的行数 当我选择特定部分中的特定行时 如何找到正确的indexPath row 有教程吗 我不知道你所说的 正确 是什么意思 这indexPath row始终是该部分的本地变量 这意味着 section
  • 在 AJAX 加载的页面中使用 fancybox

    我在这个组中搜索并四处搜索 但仍然没有找到答案 我还看到有些人有我的问题 但线程没有帮助 所以我在这里 这个问题很简单 为了帮助你 我打包了一个 zip 其中包含 您可以测试的文件 http www ivanhalen com fancyp
  • 使用 Linq to Entities 插入现有行的副本 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正在使用实体框架 我有一个带有自动生成的主键的表以及与其他主数据表的许多外键关系 我们需要一个复制功能 其中我们可以从表中选择任何现有行并将其作为副本插入到同一个表中 我需要复制所
  • 来自 Makefile 子目录的源代码

    我有一个使用 Makefile 构建的 C 库 直到最近 所有源代码都在一个目录中 并且 Makefile 做了类似的事情 SOURCES wildcard cpp 效果很好 现在我添加了一些位于子目录中的源 例如subdir 我知道我能做
  • 使用 dplyr 更改第一行 group_by 主题 ID 的变量值

    超过 2 000 个科目 我想按主题将每个第一行的 time2 值更改为 0 例如 ID 2 主题的第一行的 time2 为 1 考虑到 2k 科目 如何将其更改为 0 ID time1 time2 1 0 0 1 0 1 1 1 5 2
  • 如何通过单击取消选中单选按钮?

    与复选框不同 单选按钮一旦被单击 用户就无法取消选择 有什么方法可以使用 Javascript 以编程方式切换它们吗 最好不使用 jQuery 您可以设置 HTML 对象的属性checked to false像这样 document get
  • 如何在构建时始终运行命令而不考虑任何依赖项?

    我想运行一个解析整个源代码树的 cmake 命令 因此我无法列出 cmake 的 add custom command add custom target 命令中所有可能的依赖项 是否可以告诉 cmake 不带任何条件地运行命令 我尝试了在
  • 运动事件问题

    我想知道如何获得 MotionEvent 的准确 get x 和 get y 值 发生的情况是 当我触摸屏幕上的特定区域时 我会告诉要发生一个动作 问题是 一旦我触摸屏幕并将手指移开 它仍然认为我的手指位于同一位置 因为这是我最后触摸的位置
  • 如何在网格布局中显示二维数组

    I have Array myArray new Array 5 5 or Array myArray new Array 7 9 or new Array 12 13 我想将数组显示在GridLayout 我找到了很多例子 但没有二维数组
  • 适用于 MVC 5 模型的 Typeahead.js

    我刚刚使用 MVC 5 模型包装器的 Typeahead js 实现了 typeahead 功能 http timdwilson github io typeahead mvc model 一切正常 但我只是不知道如何设置建议下拉列表中显示
  • 处理 Chrome 中的“Enter”/“Return”键

    我有一个 AJAX y 类型的页面 当用户单击 GO 时 我需要执行特定的 JavaScript 函数 我还想在用户点击 Enter 或 Return 时模拟 GO 点击 请注意 我不想 提交 页面 原因是因为我是通过 JavaScript
  • 如何更改 Nimbus 中单个 JProgressBar 的颜色?

    我正在尝试更改 Nimbus LAF 外观和感觉 中单个 JProgressBar 的颜色 这个解决方案确实有效 但它改变了所有 JProgressBars 的颜色 UIDefaults defaults UIManager getLook
  • 更改窗口内容时的资源管理

    首先 我觉得自己并没有完全了解如何在窗口的多个 页面 之间导航 例如 我有一个名为 MainWindow 的窗口 在其中 我有一个页眉和一个页脚 中间是一个包含内容的面板 该面板最初包含内容 A 单击 A 中的某些内容后 我想从视图中删除
  • 具有扩展接口的派生类的集合。如何在没有动态转换的情况下访问派生接口?

    假设我有一个 动物 类型的抽象对象 动物有公纯虚法 吃 我想将 Animal 派生为 狗 和 猫 每个都有一个扩展接口 例如 我希望 Dog 有一个公共方法 chases Tail 而 Cat 有一个公共方法 destroy Furnitu
  • 如何启用嵌入式 tomcat 日志记录

    我在我的java应用程序中使用嵌入式tomcat 下面是我的源代码 但是 tomcat 没有生成任何日志 embedded new Embedded embedded setDebug 3 org apache catalina logge
  • 使用 Java 的 AES-256-GCM 解密中的标签不匹配错误

    我用 Javascript 编写了以下函数 用于使用 aes 256 gcm 进行加密 encrypt function text masterkey try random initialization vector var iv cryp
  • 在 inno setup 中运行 InstallUtil {app}/file.exe

    我想将服务文件复制到 app 目录 然后将其用作 InstallUtil exe 中的参数 这是我的代码的一部分 Files Source WCFService exe DestDir app Source WCFService exe c
  • Maven:“由以下原因引起:java.lang.NoClassDefFoundError:com/omnesys/omne/om/OMN”

    我想将第 3 方外部 jar 添加到我的 Maven 存储库中 我的项目是Spring Boot Error Exception in thread main java lang reflect InvocationTargetExcept
  • 如何在 Three.js 中等待纹理从 JSON 模型加载完成?

    我有一个基于 AlteredQualia 的皮肤示例成功加载的 JSON 模型 但是 我不想在模型加载完成之前透露该模型 正如您在此示例中所看到的 模型首先出现 然后加载它们的纹理资源 http alteredqualia com Thre