问题标签 [collada]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
902 浏览

papervision3d - Papervision 中的 3ds collada UV 映射问题

正如我在标题中简要解释的那样,我的问题涉及在 papervision 中对 collada 导出进行纹理处理。

基本上我是从带有 uv 贴图的 Cinema 4d 中导出 collada 模型。我能够看到所有内容,但纹理显示不正确(隐藏的多边形)。

所以我决定尝试使用 3dsMax。我使用相同的代码来显示纹理:

同样,我可以看到每个元素,但这次我的模型只使用了纹理的一个像素。因此,如果我使用红色纹理并且仅将左下角的像素着色为绿色,则我的所有模型都将是绿色的。

关于如何正确地将纹理包裹在 3ds 导出模型周围的任何建议?谢谢你。

0 投票
1 回答
2702 浏览

android - 安卓科拉达

有谁知道如何在 Android 中加载 .dae (COLLADA) 文件并将这些文件与 OpenGL-Es 一起使用的教程或示例?

0 投票
1 回答
495 浏览

java - OpenGL ES2.0 框架(包括加载模型)

我必须在 android2.2 上制作 OPEN GLES2.0。
所以我想要火焰作品(包括加载模型)。(COLLADA 或 OBJ)
请让我知道它或工具的框架。

0 投票
4 回答
2629 浏览

android - 将 Collada 文件转换为 a3d (Android3d) 对象

我正在研究 Renderscript 功能并坚持使用 A3D (Android 3d) 文件格式。我找不到将 Collada 文件转换为 A3D 格式来存储我的搅拌机模型的简单方法。

我想知道你们是否有一个想法我可以试试?

有没有人有一个工作代码示例,以便可以看到我做错了什么?

更多信息:http: //developer.android.com/reference/android/renderscript/FileA3D.html

编辑:不要误认为 Asci3d 文件扩展名(也是 *.a3d )

0 投票
12 回答
26974 浏览

3d - COLLADA 文件查看器

更新:看起来这是我自己的错,因为没有研究足够的 SketchUp 的 GUI。看我自己的答案。

你好,

我计划在我的地图软件中实现“导出到 COLLADA”功能,但由于缺乏好的 COLLADA 文件查看器而受到阻碍。我尝试了几个应用程序:

  1. Google SketchUp提供了迄今为止我遇到的最佳观看体验,但导入 COLLADA 文件非常慢。我尝试了我找到的这个示例,但是将其加载到 SketchUp 需要 2-3 分钟,而且我正在一台不错的机器上运行它。由于开发导出代码涉及大量试验和错误,SketchUp 对于实验性工作来说太慢了。
  2. 我尝试过Blender,但对于不进行日常 3D 游戏开发的人来说,用户界面非常陌生。但我不得不称赞它几乎可以立即加载示例文件,这让我认为 SketchUp 的人要么故意放慢免费版本的导入速度,要么他们需要更新他们的编程技能。(更新:事实证明您可以快速加载它,请参阅我的回答,对不起,伙计们。)
  3. 我还尝试了其他一些免费查看器,但它们要么没有正确显示示例,要么查看能力非常有限(例如,没有平移或环绕)。

我会很感激任何提示,但我正在寻找第一手经验,而不仅仅是谷歌搜索(我自己尝试过)。我意识到这不是一个典型的编程问题,但我认为 StackExchange 上没有更好的地方来问这个问题。

0 投票
1 回答
1363 浏览

c++ - OpenGL的纹理映射问题

我在使用 OpenGL 映射纹理时遇到了一些问题。这是我目前正在尝试使用这些纹理正确加载的模型的链接。

现在这是一个指向所有相关文件所在目录的链接:http: //karvis.kapsi.fi/

问题可以从img1.jpg

从 3d 仓库模型中可以看出,我用红色标记的那个区域不应该用纹理映射。问题是由于某种原因,整个模型都被映射了,尽管应该也有没有纹理的区域。还有没有纹理的相同模型:img2.jpg

还有我正在编译的代码:main.cpp. 我正在使用 Asset Import Library 来导入 Collada 模型,并使用 FreeImage 来将图像转换为 RGB 格式。

有谁知道为什么会这样?也许我向OpenGL传递了错误的参数,或者是我加载这些纹理的方式还是什么?

0 投票
4 回答
2372 浏览

import - 在 Mathematica 中导入 Google Sketchup 模型

Google 的 Sketchup 是一个不错的、简单的 3D 对象建模器。此外,Google 拥有一个庞大的 3D 对象仓库,因此如果您在这方面不是特别有天赋,您实际上不必自己做太多建模。Google 地球中的许多 3D 建筑都是用 Sketchup 制作的。在 Mathematica 中导入 Sketchup 的 SKP 文件的功能会非常好,但可惜它还没有这样做。

Sketchup的免费版本不会导出为除 KMZ (Google Earth) 和 DAE (Collada) 格式之外的任何其他格式。虽然 MMA 可以读取 KMZ/KML 文件,但它不能读取包含 3D 对象的文件。DAE 文件是压缩的 Collada 文件,这些文件可以通过 MMA 的 Import 读取为 XML。生成的 XML 树与 Collada的定义一样相当复杂,并且获取对象的几何形状绝非易事(我设法从中强制转换模型的坐标集)。

我的问题是:如何在 Mathematica 中以干净的基于多边形的结构转换 SKP 文件?

我更喜欢为 MMA 提供此导入功能的导入转换器,但也欢迎其他路线。明天我将发布我目前使用的相当间接的方法作为答案。

0 投票
2 回答
2764 浏览

c++ - 动画 COLLADA 模型的问题

我在为加载的 COLLADA 模型设置动画时遇到了一些问题。我已经编写了自己的解析器,现在我也想编写自己的绘图程序。问题在于,一旦我在我的模型上启用动画,手、腿和头部就会从模型的原点伸展开。(加载器是根据这里的教程实现的:COLLADA Tutorial

我在模型的绘制函数中做的第一件事是使用读取块中的给定目标设置关节矩阵(不是世界矩阵!),例如,如果我读取如下通道:

在第一步中,我将使用 sid="transform" 修改关节的jointMatrix 中的矩阵组件(3)(2):

在所有通道修改jointMatrices后,我通过在根Joint上调用以下函数来重新计算joint的worldMatrices:

现在一切都应该准备好在我的绘制函数的最后一部分绘制我的模型宽度:

现在的问题是,输出如下所示: 在此处输入图像描述

我确定数据加载例程实现正确,因为步行人的一般动画是可见的,但网格变形: 在此处输入图像描述

正如我所说,当我取消注释该行时:

动画被禁用,模型以其标准姿势显示: 在此处输入图像描述

现在,当我在重新计算关节的worldMatrix之前像这样向jointMatrices的前3列添加标准化时:

问题仍然存在,但这次出现在另一个输出中。这个人现在看起来像一个外星人:D,但这会减少缩放: 在此处输入图像描述

我现在不完全是,我是否以正确的方式完成了规范化。这种规范化真的需要吗?教程中没有描述它,我也找不到任何相关的东西。

毕竟,我从教程页面查看了代码中插值的实现。并且:他们根本不使用任何四元数来插入孔矩阵。他们所做的是以下(这对我不起作用):

然后我在另一种方法中使用四元数(也不适用于我):

它也不适合我。似乎没有任何效果。我真的不知道这是怎么回事。


现在 2 天后,由于 datenwolf 的回答,我得到了它的工作

我想告诉所有我是如何让它工作的。现在一切似乎都清楚了,这一直只是一小步。现在我们从动画部分开始。我遍历所有通道并将开始和结束值以及范围为 0.0 1.0 的插值增量值保存到关节,通道动画:

如您所见,这里根本没有插值。我们简单地缓存所有动画关节的开始和结束值以及一个增量(我们还在每个修改的关节上设置一个标志)

现在在所有动画完成后,我们在所有根关节上调用函数 interpolateMatrices():

这并不新鲜,但现在有趣的部分是插值的实现。根本没有 qith 四元数:

}

如您所见,我们简单地对矩阵的所有值进行插值,然后对矩阵的上 3 列进行归一化。之后,我们立即重新计算该关节的 worldSpaceMatrix,以及完整的蒙皮矩阵以节省性能。现在我们几乎完成了所有工作。最后要做的是真正为顶点设置动画,然后绘制网格:

总而言之,它与我开始使用的代码几乎相同。但现在事情对我来说更清楚了,我也可以开始支持 <translation>、<rotation> 和 <scale> 动画了。随意查看我在gear3d.de上的实现(下载 SVN 主干)

我希望这可以帮助一些人在这个精彩的主题上实施他们自己的解决方案:)

0 投票
1 回答
417 浏览

flash - Away 3D 中的 Collada 骨骼

我正沮丧地尝试从 papervision-3d(不再开发中)迁移到 away-3d。我已经向客队 3d 团队发送了几条消息,但没有任何回应。

我的目标是通过从搅拌机中导出 collada 来实现交互式、基于 Web 的 3d 动画(我可以在 Papervision 中成功完成)。有骨骼但没有动画。在 PV3D 中,我使用“dae.getChildByName”来定位那些“骨骼”并应用变换(即:旋转、缩放等);在 away3d 中,模型在应用变换时完全搞砸了,尽管它在静态时加载得很好。

我不擅长编程,所以我需要使用已经可用的“类”。另外,我需要使用 Blender3D(不是 3ds,它的输出很好)。

任何建议/帮助/想法都会很棒。谢谢你。

0 投票
1 回答
169 浏览

actionscript-3 - 是我需要导出到 .dae 的包 org.papervision3d.core.io 吗?

我需要从一个 DisplayObject3D 创建一个 .DAE 文件,但不知道该怎么做。只有我找到有关如何导入 DAE 的信息。从来不知道如何导出它。

谢谢。


我不能简单地将“网格”更改为“容器”。

我不太了解这条线:

如果我这样做:

然后它用纸飞机创建一个 dae,但只有纸飞机而不是“容器”中存在的其他对象。

如何使用我的 DisplayObject3D“容器”的对象创建 dae?

谢谢