首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏acoolgiser_zhuanlan

    bat 批处理 脚本 for循环 批量压缩gltf模型 gltf批量压缩 gltf压缩转成glb

    bat 批处理 脚本 for循环 批量压缩gltf模型 gltf批量压缩 gltf压缩转成glb 这里参考两篇文章: 1. 关于gltf压缩转成glb的工具(gltf-pipeline) https://blog.csdn.net/niujing1987/article/details/100639864 2. -i model.gltf -o modelDraco.gltf -d 就可以把model.gltf模型压缩。 (-d表示使用draco算法进行压缩) for %i in ('dir *.gltf /s /b') do gltf-pipeline -i %i -o %i -d ? 看一下压缩后的模型大小: ? 批处理的基本语法,写法、格式; 在cmd中使用%i,如果是在bat批处理文件中,要换成%%i 2. gltf-pipeline除了会用,还应该看看他的源码,draco算法到底是怎么回事?

    2.4K10发布于 2020-12-16
  • 来自专栏前端之攻略

    gltf格式的压缩文件在threejs中展示

    在H5中引入3D模型往往存在资源太大,可以通过模型网格压缩,通过glTF配合Draco压缩的方式,可以在视觉效果近乎一致的情况下,让3D模型文件成倍缩小 glTF在线查看器: https://gltf-viewer.donmccurdy.com 一、通过Draco进行压缩 Draco及gltf-pipeline的介绍 Draco是Google推出的一个用于3D模型压缩和解压缩的工具库,glTF资源可通过、Draco开发命令行工具gltf-pipeline 进行编码压缩gltf-pipeline可通过npm的方式安装使用,使用方法如下: #全局安装 npm install -g gltf-pipeline #压缩glb文件 -b表示输出glb格式, -d 表示压缩 gltf-pipeline -i model.glb -b -d #压缩glb文件并将纹理图片分离出来 gltf-pipeline -i model.glb -b -d -t 更多参数查阅 文件, 通过命令行工具 gltf-pipeline -i test.glb -o test1.glb -d 则可以生成压缩后的test1.glb文件 2、把解码文件node_modules>three

    4K51发布于 2020-12-08
  • 来自专栏LET

    glTF简介

    概述 glTF简介,Web端三维模型及其特点 Cesium如何加载,渲染glTF,逻辑结构和关键技术 个人总结,从glTF学习如何设计一个二进制格式,个人想法分享 关键字:Cesium glTF WebGL 也就是今天要讲的glTF模型渲染。 glTF的全称是GL传输格式,是一种针对GL(WebGL,OpenGL ES以及OpenGL)接口的运行时资产(asset)。 2 glTF渲染 东西再好,光说不练假把式。设计好了,只是一个开始而不是完结,还需要持续的推广和应用。这年头酒香也怕巷子深,伯牙难觅钟子期的画面有没有。 因此glTF还包含整个场景的关系,包括节点,变换矩阵,变换的层级关系,网格,材质,相机和动画,试图保存所有信息。这是一个场景树的逻辑,算是glTF的一个优化。 比如glTF提供了扩展,提供了场景树,相机的信息,这都是出于通用性的考虑,但这个是否实用,就不好判断了。或者是否提供ZIP压缩

    3.9K100发布于 2018-06-20
  • 来自专栏LET

    glTF(二):PBR

    :Mesh与Primitive中的Vertex Buffer, Index Buffer,Vertex Array,还有Texture与State Management,在灵活和易用上都有不错的设计 压缩 : 针对3D Geometry的Draco压缩#6191 Scene& Node 节点间的依赖和位置关系 实例化设计 glTF2.0 相比1.0,glTF2.0的改变可以用“一增一删修修补补”来概括,主要有 体系 其他 明确两个非重点:不支持流媒体,结构以JSON格式呈现,原始数据在可读性上并不友好 兼容性:2. 2.Roughness:光的反射计算时,我们通过normal map来反映该物体的orientation,这由物体的形状来决定。 原图效果,后两张算是灰度图,值越大越白,越偏金属(图2),也越粗糙(图3)。 ? 这里,glTF的采用的是Disney给出的BRDF公式: ? ,diffuse采用的是Lambert模型: ?

    3.5K60发布于 2018-06-20
  • 来自专栏3Dconvert

    Revit导出为GLTF

    Revit与GLTF格式简介Revit是Autodesk公司一套系列软件的名称。Revit系列软件是为建筑信息模型构建的,可帮助建筑设计师设计、建造和维护质量更好、能效更高的建筑。 GLTF是由OpenGL和Vulkan背后的3D图形标准组织Khronos所定义,成为Web上的3D对象标准。GLTF文件格式包括场景、摄像机、动画、网格、材质、纹理、渲染技术、着色器等元素。 Revit文件导出为GLTF格式Revit文件和GLTF格式都有广泛的用途,在模型应用工作中,经常需要将Revit文件导出为GLTF格式,怎么将Revit文件导出为GLTF格式呢? 3Dconvert for Revit插件支持将.rvt,.rfa,.adsk,.rte等Revit格式文件,转换为8种目标格式:GLTF、OBJ、GLB、DAE、STL、OFF、XYZ和PLY。 在插件页面选择需要转换的目标格式,目前插件支持8种目标格式:GLTF、OBJ、GLB、DAE、STL、OFF、XYZ和PLY。选择需要导出的目标格式:GLTF

    1.6K10编辑于 2023-12-01
  • 来自专栏LET

    glTF(2.1): PBR

    去年针对glTF的PBR材质,写过一篇文章。但重读这篇文章,觉得自己没讲到点子上。今天终于有时间,想着重新梳,重写一下。 Rasterization的不足 ? 如图2,为了在屏幕上渲染物体,Rasterization有两个循环: Loop objects Loop pixels Rasterization的好处是性能高,能够满足实时性的要求。 它的首要问题是如何把一个3D的物体渲染到2D的平面,更擅长处理物体的几何形状,但在渲染效果上并不真实。 BRDF 上面的光学公式就剩下f这个函数的定义了,glTF里采用的是Disney提供的Microfacet(显微镜) model,简单说,就是这个材质可以模拟各种光学现象,fragment的朝向差别较大 但glTF基于《Unreal Engine's course notes on real-time PBR》进行了预处理,优化性能。 ? 这个预处理的依据就是如上的公式。

    2.3K20发布于 2019-03-18
  • 来自专栏计算机图形学 前端可视化 WebGL

    UE导入FBX、GLTF模型

    导入GLTF 由于webgl用gltf比较多,所以手上模型多是gltf格式。 UE有插件可以导入gltf 。比如gltf for UE4, 另外一个出名的就是Datasmith,是一个官方的插件。

    4.1K10编辑于 2022-09-26
  • 来自专栏代码编写世界

    DEM转换为gltf

    概述 DEM(地形文件)天然自带三维信息,可以将其转换成gltf模型文件。DEM是栅格数据,可以通过GDAL进行读取;gltf是一种JSON格式,可以采用nlohmann/json进行读写。 2. ; gltf["asset"] = { {"generator", "CL"}, {"version", "2.0"} }; gltf["scene "] = 0; gltf["scenes"] = { {{"nodes", {0} }} }; gltf["nodes"] = { {{"mesh 2.转换的的原理非常简单,就是将DEM的每个网格绘制成两个三角形,通过顶点索引进行绘制。gltf具体的规范可以参看github上的教程,网上还有相关的中文翻译。 参考 [1] github上的gltf教程 [2] gltf教程中文翻译 [3] nlohmann/json关于保留插入顺序的讨论

    1.5K40发布于 2020-01-14
  • 来自专栏web三维

    2d户型图到gltf模型

    点击右上角【gis工具】-图像配准工具 导入户型图片 点击右侧【户型图大小一步配准到位】,按提示在户型图上沿线段绘制2点线。第2个点结束。 输入这条线对应户型的真实长度。单位为毫米。 2、切割立面墙,制作窗户或门 使用左侧【自由线剪刀】对外部围墙进行切割。 注意 按ctrl键可使用直角线切割,更美观。 切割了2次这位只的立面墙已经出来了。 2、可对多个链接的墙体合并,不需要逐个裁剪。 按着shift点击选中多个轮廓。点击左侧【面合并】 3、如果墙体是承重墙。 必须要标注名称为【承重】在最红导出gltf模型时很重要 四、将GIS数据转换成gltf模型 选择一个名称为【户型底座】的轮廓。(右键编辑轮廓) 点击左侧【选择框】-3d户型 得到了三维模型。 绘制一个更大的轮廓,手动设置名称为【户型底座】 五、导出为gltf模型或stl模型 点击头部按钮【3d户型库】,打开户型库面板 已将户型模型上传到了网络地址。

    84141编辑于 2025-07-29
  • 来自专栏代码编写世界

    WebGL简易教程(十五):加载gltf模型

    概述 2. 实例 2.1. 数据 2.2. 程序 2.2.1. 文件读取 2.2.2. glTF格式解析 2.2.3. 初始化顶点缓冲区 2.2.4. 其他 3. 结果 4. 参考 5. 相关 1. 纹理数据可以使用jpg文件,方便压缩和传输。 从以上特性可以看出,glTF特别方便与互联网的使用场景,便于传输且预处理程度小。 在这篇教程中,就通过一个带纹理的地形文件,具体解析以下glTF格式,顺便加深一下WebGL中初始化数据的理解。 2. 实例 2.1. 数据 使用的地形glTF文件已经处理好并上传到文章末尾的地址中(具体的转换过程可以参看《DEM转换为gltf》)。 《WebGL编程指南》 2.glTF格式详解(目录) 3.glTF Tutorial 4.前端H5中JS用FileReader对象读取blob对象二进制数据,文件传输 5.gltf2.0规范

    6K20发布于 2020-02-14
  • 来自专栏腾讯社交用户体验设计

    如何在页面极速渲染3D模型

    Facebook 推出的 FBX2glTF 命令行工具,可直接从github 官网下载 release 版本; b. 2. 通过 Draco 进行压缩 Draco 及 gltf-pipeline 介绍 Draco 是 Google推出的一个用于 3D 模型压缩和解压缩的工具库,上述介绍的 FBX2glTF 及 COLLADA2GLTF 如果直接提供压缩纹理格式,则不需要进行 png 的转码过程且可大大减少纹理内存。如下图方案2所示: ? 但由于 GPU 芯片提供商太多,设备的压缩纹理格式多种多样(例如安卓设备常用格式是 ETC1/ETC2,苹果设备是 PVRTC…),手动输出多种格式代价大,导致方案2较难落地。 2.

    9.3K32发布于 2019-12-12
  • 来自专栏github@hornhuang

    Android-图片压缩-2行搞定图片压缩【2019】

    图片压缩的方法有很多,这两天向同学学了一种方法,刚觉非常行之有效,与大家分享。 ---- 图片压缩的作用: 当我们上传图片到数据库时,如果是头像图片,那么在客户端显示出来一般是缩略图,这时大图是没有用的,又浪费加载时间 ---- 图片压缩的方法 /* 压缩路径下的文件 */ private } return pic; } ---- 使用解析 bitmap=Bitmap.createScaledBitmap(bitmap, 400, 400, false); 这段代码将图片大小压缩

    2.3K10发布于 2021-09-24
  • 来自专栏程序猿的大杂烩

    Linux压缩打包介绍,gzip压缩工具,bzip2压缩工具,xz压缩工具

    笔记内容: l 6.1 压缩打包介绍 l 6.2 gzip压缩工具 l 6.3 bzip2压缩工具 l 6.4 xz压缩工具 笔记日期:2017.8.5 6.1 压缩打包介绍 ? 注意:gzip不能压缩目录 6.3 bzip2压缩工具 ? 这个bzip工具比起gzip来说,要压缩得更狠一些,也就代表着耗费的cpu资源更多,而且这两个工具的压缩算法不一样。 最小化安装可能没有这个工具,需要使用yum install -y bzip2命令安装: ? bzip2和gzip的用法几乎是一模一样的: ? 解压同样的可以使用两个命令: ? ? 可以加-c选项指定压缩文件的存放路径: ? 相对的解压也可以这么做: ? bzip2也有压缩级别,可以指定压缩的级别,也是1-9的压缩级别,默认的压缩级别是9,所以一般情况下不需要指定压缩级别。   可以使用file查看压缩文件的信息: ? bzcat命令可以查看bz2格式的压缩文件的内容,原理和gzip的zcat命令一样: ? 6.4 xz压缩工具 ?

    2.4K20发布于 2020-09-23
  • 来自专栏linux基础

    Linux基础之tar归档命令、zip压缩、gzip压缩、bzip2压缩

    目录一、 tar命令的基本使用1、常用命令选项二、zip压缩命令的使用1、常用命令选项三、gzip压缩命令的使用1、常用命令选项四、bzip2压缩命令的使用1、常用命令选项2、bzcat命令五、各种压缩命令的区别一 、解开压缩文件格式:bzip2 【文件名】[root@localhost tar]# bzip2 audit.log1、常用命令选项格式:bzip2 【-9】【文件名】bzip2 -9:表示高压缩比,取值 1-9,默认为6bzip2 -d:用于解压缩文件,同bunzip2(解压缩)命令bzip2 -d:解压.bz2格式的压缩文件[root@localhost tar]# bzip2 -d audit.log.bz2 > audit1.log.bz2bzip2 -k:保留原文件压缩2、bzcat命令bzact :用于查看bz2格式的压缩文件。

    76600编辑于 2025-04-12
  • 来自专栏前端漫步

    Cesium入门之九:Cesium加载gltf文件

    glTF支持两种文件格式:*.glTF和 *.glb。 glTF文件易于阅读、修改和编辑,同时可以使用gzip进行压缩以减小文件大小。但是.glTF文件格式在处理复杂场景时,可能会变得比较冗长,处理速度较慢。 glb文件也可以使用gzip压缩以进一步减小文件大小。但是.glb文件格式作为二进制文件,难以直接进行编辑和修改。 在一个不同的坐标系下的旋转 var fixedFrameTransform = Cesium.Transforms.northEastDownToFixedFrame(origin); var quat2 第二个示例中,使用了一个变换矩阵进行了固定坐标系的旋转,结果被存储在quat2中。第三个示例使用给定的椭球体并将结果存储在提供的quat3四元数对象中。

    5.7K31编辑于 2023-10-14
  • 来自专栏计算机图形学 前端可视化 WebGL

    WebGL压缩纹理实践

    0x02 工作流 建模工程师给的是OBJ模型,项目最开始用的也是OBJ模型,首先我们需要把OBJ模型转换成GLTF格式。 可以使用插件obj2gltf进行转换。 转换的流程大致如下: npm install obj2gltf -g obj2gltf -i a.obj -o a.gltf 首先通过npm安装obj2gltf。 然后通过obj2gltf 进行模型的转换,其中 -i表示输入的OBJ模型。-o就是输出的gltf模型。 转换为gltf之后,通过对gltf进行压缩压缩的命令大致: gltfpack -i scene.gltf -o scene.glb --tc 其中tc是对贴图进行压缩,原文如下:gltfpack can also compress textures ) gltfLoader.setKTX2Loader(ktx2Loader); gltfLoader指定ktx2loader之后,就可以像加载普通gltf模型一样,加载带ktx2贴图的模型。

    2.6K10编辑于 2022-09-28
  • 来自专栏学习与分享

    【Linux】常用压缩压缩命令之bzip2详解

    1. bzip2的基本用法 1.1 压缩单个文件 使用bzip2命令压缩单个文件的基本语法如下: bzip2 文件名 实例: bzip2 example.txt 这将生成一个名为example.txt.bz2 1.2 压缩多个文件 要压缩多个文件,可以列出它们的文件名: bzip2 文件1 文件2 文件3 实例: bzip2 file1.txt file2.txt file3.txt 这将分别生成file1. txt.bz2、file2.txt.bz2、file3.txt.bz2压缩文件。 1.3 压缩整个目录 如果要压缩整个目录,只需指定目录名称: tar -cjvf 目标文件.tar.bz2 目录 实例: tar -cjvf archive.tar.bz2 my_directory 这将递归地压缩压缩文件 2.1 基本解压 要解压缩.bz2文件,使用bzip2命令的基本解压语法如下: bzip2 -d 文件名.bz2 或者简写: bunzip2 文件名.bz2 实例: bzip2 -d example.txt.bz2

    1.5K10编辑于 2024-02-21
  • 实测|用 DracoOptimizer 把 glTFGLB 模型压缩到极致:体积减90%,Web3D加载快到飞起

    实测|用 DracoOptimizer 把 glTF/GLB 模型压缩到极致:体积减90%,Web3D加载快到飞起面向 Web3D / Three.js 开发者的轻量桌面工具:一键压缩 + 批量处理 + (上手成本高),要么是在线工具(批量处理受限),因此我基于 Draco 官方算法做了一款轻量桌面工具 DracoOptimizer,专注解决「glTF/GLB 模型压缩」这一件事,兼顾易用性和压缩效果。 工具界面(截图占位)DracoOptimizer 主界面左侧:文件/文件夹选择区 + 压缩等级设置(1~10)中间:模型预览区(压缩前/后分屏对比)右侧:压缩进度 + 结果统计(体积/压缩率)2. 核心使用流程步骤 1:选择压缩对象单文件:点击「选择文件」,支持 .gltf/.glb 格式批量处理:点击「选择文件夹」,自动筛选文件夹内所有 glTF/GLB 文件步骤 2:设置压缩等级推荐等级:7~ (顶点、面、UV 等)应用 Draco 算法压缩几何信息生成压缩后的文件(默认后缀:_compressed.glb/_compressed.gltf)分屏展示压缩前/后模型(可旋转、缩放对比细节)步骤

    84210编辑于 2026-02-12
  • 来自专栏用户9379088的专栏

    Three.js 之 Import Model 导入模型

    例如你想修改纹理贴图,换一张更压缩的贴图时,就会比较麻烦,因为这些数据都是被集合在了一起,同一个二进制文件中。 glTF-Draco有点像说的第一个格式,不过使用了 Draco algorithm 来压缩几何体的数据。如果你对比 .bin 文件的大小,你就会发现这个会更小一点。 如果想要每个模型一个文件,并且不关心模型内的素材修改,那么二进制 glTF-Binary 更适合。在这两种情况下,您都必须决定是否要使用 Draco 压缩,但我们稍后会介绍这部分。 THREE.PlaneGeometry(15, 15), new THREE.MeshStandardMaterial({ color: '#607D8B', }))plane.rotateX(-Math.PI / 2) renderer.setSize(sizes.width, sizes.height)renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2)

    7.4K30编辑于 2022-08-10
  • 来自专栏运维小白

    6.3 bzip2压缩工具

    解压文件 bzip -# 1.txt 范围1-9,默认9 不能压缩目录 bzcat 1.txt.bz2 查看压缩文件的内容(含义为:先解压,后查看) bzip2 -c 1.txt > bzip2压缩文件 安装bzip2包——>yum install -y bzip2 bzip2 1.txt 压缩文件 [root@hf-01 d6z]# du -sh 1.txt 2.0M 1. 1.txt.bz2 [root@hf-01 d6z]# ls 1.txt bzip2压缩文件,并指定目录 bzip2 -c 1.txt > /tmp/2.txt.bz2 压缩1.txt文件,并压缩到 d6z]# bunzip2 1.txt.bz2 > 5.txt [root@hf-01 d6z]# ls 1.txt 4.txt 5.txt bzip2压缩级别 bzip2默认压缩级别为 9 file 查看压缩文件大小 file命令,会知道压缩文件的类型,大小 [root@hf-01 d6z]# file 1.txt.bz2 1.txt.bz2: bzip2 compressed data, block

    1K60发布于 2018-02-06
领券