美文网首页
(备忘)OSGB文件转fbx obj等模型文件放到Unity里

(备忘)OSGB文件转fbx obj等模型文件放到Unity里

作者: 杰罗xr | 来源:发表于2020-03-11 09:56 被阅读0次

项目地址和官网
https://github.com/openscenegraph/OpenSceneGraph
http://www.openscenegraph.org/

1.

去官网下载(找最新版) OpenSceneGraph-3.6.5 released

解压后进入bin文件夹 我们可以利用其中osgconv.exe文件来转换
可以先双击 这个osgconv.exe 如果提示缺少某个dll 去百度安装几个包就解决了

大概格式 就是osgconv infile.osgb outfile.obj 也可以使用多个文件合成一个 使用-h查看更多用法

注意 众多osgb文件中一块地形有多种清晰度 我发现 结尾带T的是精度比较高的 可以单独把结尾有t的文件导出 然后区分就简单点
我还不知道怎么直接导出不同的精度模型

把导出的fbx模型和贴图一起扔到Unity中就好了

C#写的批量导出脚本 可以根据自己的需求来写

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;
using System.IO;

namespace OSGB
{
    class Program
    {
        static void Main(string[] args)
        {
            string space = " ";
            System.Diagnostics.Process exep = new System.Diagnostics.Process();
            exep.StartInfo.FileName = @"D:\Download\OpenSceneGraph-3.6.5-VC2019-64-Release\bin\osgconv.exe";
           // exep.StartInfo.Arguments = @"D:\Download\OpenSceneGraph-3.6.5-VC2019-64-Release\Tile_+253_+060_L22_0001160t2.osgb D:\Download\OpenSceneGraph-3.6.5-VC2019-64-Release\Tile_+253_+060_L22_0001160t2.fbx";
            exep.StartInfo.CreateNoWindow = false;
            exep.StartInfo.UseShellExecute = false;

            ///给到 Data文件
            string rootPath = @"E:\BaiduNetdiskDownload\实景三维\ZHZX2_OSGB\Data";

            var osgbDirs = Directory.GetDirectories(rootPath);

            foreach (var dir in osgbDirs)
            {
                string infiles = "";
                string outFile = "";
                foreach (var file in Directory.GetFiles(dir))
                {
                    infiles += file+space;
                }

                outFile = dir + ".fbx";// "\\" + Path.GetFileName(dir) + ".fbx";
                exep.StartInfo.Arguments = infiles + space + outFile;
                exep.Start();
                exep.WaitForExit();
                Console.WriteLine(outFile);
            }

            Console.WriteLine("转换结束");
            Console.Read();
        }
    }
}

相关文章

  • (备忘)OSGB文件转fbx obj等模型文件放到Unity里

    项目地址和官网https://github.com/openscenegraph/OpenSceneGraphht...

  • 三维数据格式

    obj、fbx、stl等是常规的人工模型格式。主要特点是模型效果较好,结构简单,但制作成本高。 osgb、b3dm...

  • Three.js跨域问题(无法预览)

    Three.js跨域问题 通过Three.js加载obj、FBX等格式外部模型文件的时候是ajax异步加载数据的过...

  • 3D 模型格式

    对于我们常见的3d模型格式有 fbx、gltf、obj、max、Maya等。在解析建模师提供的这些文件,我们一般都...

  • 模型

    骨骼至少要15个,unity识别的最小值 Humunoid Avator 模型导入 .fbx, .obj 导入的模...

  • OpenGL渲染流程

    1、CPU FBX→MeshRender FBX:模型文件(里面包含了UV、顶点位置、法线、切线等渲染所需要的信息...

  • 模型加载

    OBJ 文件的结构 本文主要介绍 obj 3D 模型文件及其附属文件 mtl ,下面是 obj 模型文件的数据结构...

  • FBX导入Unity3d(贴图赋予)

    1.直接将FBX文件拖入unity下的Assets上,生成了标号1和2 两个文件,如图, 将上图标号2的模型拖入上...

  • Unity3D的模型导入都有哪些技巧

    Unity3d导入3dMax模型会产生若干问题,按照官方的说明,将max模型导成fbx文件导入untiy似乎也不能...

  • 提取Unity中的fbx文件中的动画片段。

    提取Unity中的fbx文件中的动画片段。 整体思路是: 将fbx加载后,获取AnimationClip信息,然后...

网友评论

      本文标题:(备忘)OSGB文件转fbx obj等模型文件放到Unity里

      本文链接:https://www.haomeiwen.com/subject/ajifjhtx.html