wavefront相关内容
起初,这似乎很明显......在找到 4 个索引的地方为每个面制作 2 个三角形,对吗? 含义如下: v 1.000000 1.000000 0.000000v -1.000000 1.000000 -0.000000v 1.000000 -1.000000 0.000000v -1.000000 -1.000000 -0.000000f -4 -3 -2 -1 ... 反过来,需要转换成类
..
我自己负责将 OBJ 解析器/导入器支持添加到我一直在开发的 3D 渲染引擎中.我遵循了规范 found HERE当前的例外是将所有支持限制为组、面、顶点、法线和纹理坐标(因此目前还没有材质库或自由形式的多边形支持).我的目标是简单地逐行解析——随着我的进行生成面向对象的、分层的树状场景图——并允许开发人员通过很少的手动调用自动将数据绑定到着色器程序,以便开始操纵 &查看网格.最终结果是我的引擎成
..
我目前正在尝试为 OpenGL 项目制作 Wavefront (.obj) 文件加载器.我目前使用的方法是逐行分离向量 (std::vectors) 中的顶点位置、纹理位置和法线位置,我将它们的索引(顶点、纹理和法线索引)存储在三个独立的向量(来自文件的“f"行,对于每个面). 我无法根据纹理索引对充满纹理坐标的向量进行排序.我能够在正确的位置渲染顶点,因为我的“加载器"类调用索引,但我无法
..
我在 C++ 中创建了一个程序,它也包含 opengl,我还想创建一个 obj 加载器以加载我拥有的 obj 文件!我已经创建了两个函数,它们是: void ReadFile(model *md){//打开文件读取OBJINFO.TXTifstream obj_file("tree.obj");如果(obj_file.fail())退出(1);//获取顶点数obj_file >>md->顶点;/
..
我正在使用 ModelIO 导入一些简单的 OBJ 资产,如下所示: let mdlAsset = MDLAsset(url: url, vertexDescriptor: nil, bufferAllocator: nil, preserveTopology: true, error: nil) ... 然后将它们添加到 SceneKit SCN 文件中.但是,每当我有同时具有四边形/三边形
..
我已经从 URL 导入了一个 Wavefront OBJ 文件,现在我想将它插入到我的 iOS 9 应用程序(在 Swift 中)上的场景 (SceneKit) 中.到目前为止,我所做的是: let asset = MDLAsset(URL: localFileUrl)print("count = \(asset.count)")//1 任何将其转换为 SCNNode 的帮助将不胜感激.根据
..
如何将 3D Studio 动画模型导出为 OBJ 格式(如果可能)?生成的文件会是什么样的?我该怎么读? 解决方案 不,.obj 文件不支持动画. 您可以查看.obj 规范以了解它的详细信息确实支持. 您可以潜在地每帧导出一个 .obj,但这会很麻烦.根据工具的不同,每个关键帧可能导出一个 .obj.
..
我试图用 pyopengl 读取 obj 文件,但错误来自 glGenList(1)我只想读取文件并在 opengl 中显示请你能帮我提供完整的代码吗; 我厌倦了堆栈和错误,我花了 3 小时才发布这个从 OpenGL.GL 导入 *从 tkinter 导入消息框导入系统 filename = input('请输入文件路径:')OBJ 类:def __init__(self, 文件名, sw
..
我正在观看有关使用LWJGL在YouTube上播放Open GL的视频系列,到目前为止,我已经设法使用obj格式渲染3d模型并对其进行适当的纹理处理.我想在游戏中使用基于体素的模型,因此我进入了MagicaVoxel软件,导出了具有obj格式的纹理示例,但纹理未正确映射.确实,某些颜色似乎已正确映射,但其他人的脸则具有整个纹理. 以下是预期结果的图片: 这是我的片段着色器: #ve
..
我正在尝试实现射线投射器,并且我从简单的.obj文件(犹他-茶壶)开始,目前我只为Spheres和Triangles创建类,我基本上具有交集的所有功能,生成查看光线等.所有这些都准备好了,但是我似乎无法将.obj文件解析为三角形(每个三个向量),因此我可以在自定义.obj文件而不是球体上进行光线投射./p> 这是我当前的.obj文件解析器(此处未包含完整的工作代码) char lineHea
..
我确实有一个看起来像这样的OBJ文件: #此文件使用厘米作为非参数坐标的单位.#第一个元素v -0.017050 -0.017928 0.005579v -0.014504 -0.017928 0.010577..v -0.000000 -0.017928 0.017967VT 0.397581 0.004762VT 0.397544 0.034263..VT 0.397507 0.063764
..
我正在使用C#/C ++构建跨平台的3D查看应用程序,并希望添加对Autodesk SVF文件的支持. 我查看了Autodesk Forge,但它对导出为OBJ等开放格式的支持有限,并且Autodesk SVF似乎与类似名称的简单矢量格式( https://forge.autodesk.com/blog/updated-little-more-detail-behind-autodesk-f
..
嗨,我正在尝试使用Mayavi和vtk的Python绑定将纹理映射到3d网格.我正在可视化.obj波前.该obj是一张脸的3D照片.纹理图像是三张2D照片的合成. 网格中的每个节点在图像中都有一个(uv)坐标,用于定义其颜色.网格的不同区域从图像的不同部分绘制颜色.为了说明这一点,我将实际的纹理图像替换为以下图像: 并将其映射到网格. 我的问题在鼻子周围显示出来.在红色和绿色之间
..
在我的3D对象中;我有几个盒子; obj 和有什么解决方案可以将这些面分割为目标文件并将其加载? 解决方案 导出模型之前,需要对模型进行三角剖分.那里的大多数3D编辑器都具有此选项.一些编辑器在OBJ导出器选项中将该选项作为选项.如果不是这样,您可以复制/备份模型,进行三角剖分,导出然后删除/隐藏.
..
我想递归地解析一个字符串并将结果存储在一个结构中.我写了一个可以处理一次迭代的解析器.输入的格式如下: v 1.5 2.0 2.5 v 3.0 3.5 4.0 f 1 2 3 f 4 5 6 v 4.5 5.0 5.5 v 6.0 6.5 7.0 f 7 8 9 f 10 11 12 问题在于它仅解析前4行,在遇到的第三个'v'处停止.完整的代码如下.如何修改此代码,以便也将其
..
我正在使用ModelIO导入一些简单的OBJ资产,如下所示: let mdlAsset = MDLAsset(url:url,vertexDescriptor :无,bufferAllocator:无,保留拓扑:true,错误:无) ...然后添加它们到一个SceneKit SCN文件。但是,只要我具有同时具有四边形/三边形的网格(通常是这种情况,例如眼球网格),结果网格
..
我正在尝试使用Boost Spirit库编写一个基本的OBJ文件加载器.尽管我使用标准std :: ifstreams使其工作,但我想知道是否可以使用内存映射文件对整个文件执行phrase_parse,因为它似乎提供了最佳性能,如我有以下代码,看起来似乎不错,但是当文件中有注释时,它就会中断.因此,我的问题是,如何使用Spririt忽略OBJ文件中以“#"开头的注释? struct vert
..
我正在创建一个OBJ解析器,该解析器读取文件并使用glDrawElements进行绘制.这里的事情是正确绘制了模型,但是当我尝试给它贴图时,它的映射不正确.我已阅读此处,其中"OpenGL只能使用一个索引缓冲区,而OBJ按属性使用一个索引缓冲区".我还研究了使用glDrawElements时纹理映射不正确的情况,发现我需要重新排列纹理,因为仅共享顶点,而不共享纹理.说完所有这些,我应该如何重新排列
..
一个艺术家为我提供了导出到.obj和.mtl的所有3D模型,以便可以使用OpenGL进行渲染. 但是我不知道为什么纹理顶点大于1有时是负数. 看一下这个例子: (...) vn -0.000717425 0.00106739 -0.00991695 vn 3.49779e-09 -5.22866e-09 -0.01 vn -0.00142294 0.00211706 -0.009669
..
我目前正在尝试为OpenGL项目制作Wavefront(.obj)文件加载器.我目前使用的方法逐行移动,并在矢量(std :: vectors)中分离顶点位置,纹理位置和法线位置,并将它们的索引(顶点,纹理和法线索引)存储在三个单独的位置向量(从文件的"f"行开始,针对每个面). 我无法根据纹理索引对充满纹理坐标的向量进行排序.我可以在正确的位置渲染顶点,因为我的“加载程序"类需要索引,但是
..