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

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

    bat 批处理 脚本 for循环 批量压缩gltf模型 gltf批量压缩 gltf压缩转成glb 这里参考两篇文章: 1. ,就可以直接通过下面一句命令安装gltf-pipeline这个库: npm install -g gltf-pipeline 安装完成后,按照官方地址的使用说明,直接对模型进行压缩即可,比如: gltf-pipeline -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 ? 看一下压缩后的模型大小: ? 是如何达到压缩效果的,gltf和glb这两种格式的区别,转换和压缩的原理是什么。 (学海无涯,只有不断深究,才会真正的进步,与君共勉) 微信搜索:acoolgiser,一起学习成长,交个朋友!

    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)。 因此glTF还包含整个场景的关系,包括节点,变换矩阵,变换的层级关系,网格,材质,相机和动画,试图保存所有信息。这是一个场景树的逻辑,算是glTF的一个优化。 比如glTF提供了扩展,提供了场景树,相机的信息,这都是出于通用性的考虑,但这个是否实用,就不好判断了。或者是否提供ZIP压缩。 ▽Accessor&Json表述 这是glTF数据读取的机制,设计的很优雅,很值得我们学习。

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

    glTF(二):PBR

    glTF glTF是一个优秀的三维数据规范,其中有很多细节都值得我们学习,按照我的理解,可以分为三大块: Accessor数据访问机制 一套访问二进制数据的规范,将逻辑层和数据层隔离 同传输和读取以及存储灵活性上都有上佳表现 :Mesh与Primitive中的Vertex Buffer, Index Buffer,Vertex Array,还有Texture与State Management,在灵活和易用上都有不错的设计 压缩 : 针对3D Geometry的Draco压缩#6191 Scene& Node 节点间的依赖和位置关系 实例化设计 glTF2.0 相比1.0,glTF2.0的改变可以用“一增一删修修补补”来概括,主要有 这里,glTF的采用的是Disney给出的BRDF公式: ? ,diffuse采用的是Lambert模型: ? (G)eometric term 表示从L光源能够到达V视角的概率,这里glTF采用的是GGX,而Cesium则是Schlick模型: ?

    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的不足 ? 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. "] = 0; gltf["scenes"] = { {{"nodes", {0} }} }; gltf["nodes"] = { {{"mesh uint16_t m11 = (uint16_t)(bufWidth * (yi + 1) + xi + 1); uint16_t m10 indices[n * 6 + 2] = m11; indices[n * 6 + 3] = m11; indices[n * 6 + 4] = m10 参考 [1] github上的gltf教程 [2] gltf教程中文翻译 [3] nlohmann/json关于保留插入顺序的讨论

    1.5K40发布于 2020-01-14
  • 来自专栏Linux基础入门

    10)Linux压缩解压命令

    :.gz PS:只能压缩文件不能压缩目录,并不能保存原文件 例1:将newfiles文件进行压缩,同时可以看到压缩前后文件大小变化 ? 功能描述:解压缩.gz的压缩文件 例1:将newfiles.gz解压缩 ? 例1:目录先打包再压缩,最终为.tar.gz格式 ? 例2:打包时同时压缩(常用) ? 例3:解压缩(常用) ? 例4:生成.tar.bz2的压缩包。PS:-xjf解压缩 ? ? 4. 例1:压缩文件还会人性化提示压缩比例 ? 例2:压缩目录 ? ? 5. bzip -k 产生压缩文件后保留原文件 功能描述:压缩文件 压缩后文件格式:.bz2 PS:相对于gzip可以保留原文件,并且压缩比非常惊人,一般压缩大文件推荐用这个 例1:压缩文件

    2.7K10发布于 2020-08-26
  • 来自专栏代码编写世界

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

    纹理数据可以使用jpg文件,方便压缩和传输。 从以上特性可以看出,glTF特别方便与互联网的使用场景,便于传输且预处理程度小。 数据 使用的地形glTF文件已经处理好并上传到文章末尾的地址中(具体的转换过程可以参看《DEM转换为gltf》)。 将这个数据导入到glTF Viewer网站上查看,显示结果如下: ? flag) { alert("没有找到gltf"); } }); 这段代码看起来很繁复,其实原理很简单:遍历加载的文件,对于gltf文件采用FileReader.readAsText 《WebGL编程指南》 2.glTF格式详解(目录) 3.glTF Tutorial 4.前端H5中JS用FileReader对象读取blob对象二进制数据,文件传输 5.gltf2.0规范

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

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

    而通过 glTF 配合 Draco 压缩的方式,可以在视觉效果近乎一致的情况下,让3D模型文件成倍缩小。下面具体介绍 glTF 格式及 Draco 压缩工具。 1. glTF 查看 转换后可通过以下查看工具查看 glTF 资源: - Windows 10及以上自带的 3D Paints; - glTF 在线查看器:https://gltf-viewer.donmccurdy.com 通过 Draco 进行压缩 Draco 及 gltf-pipeline 介绍 Draco 是 Google推出的一个用于 3D 模型压缩和解压缩的工具库,上述介绍的 FBX2glTF 及 COLLADA2GLTF 另外经过压缩glTF 文件仅为正常 FBX 和 glTF 文件的1/10左右,而在视觉上三者几何体结构没有明显的差异,压缩后的 glTF 开启了 worker 线程做 Draco解码,多了一小部分模型解码时间 id=19986749 9.https://github.com/BinomialLLC/basis_universal 10.https://www.khronos.org/blog/google-and-binomial-contribute-basis-universal-texture-format-to-khronos-gltf

    9.3K32发布于 2019-12-12
  • 实测|用 DracoOptimizer 把 glTFGLB 模型压缩到极致:体积减90%,Web3D加载快到飞起

    实测|用 DracoOptimizer 把 glTF/GLB 模型压缩到极致:体积减90%,Web3D加载快到飞起面向 Web3D / Three.js 开发者的轻量桌面工具:一键压缩 + 批量处理 + ),等级越高体积越小,极端等级(10)可能出现轻微面数丢失。 工具界面(截图占位)DracoOptimizer 主界面左侧:文件/文件夹选择区 + 压缩等级设置(1~10)中间:模型预览区(压缩前/后分屏对比)右侧:压缩进度 + 结果统计(体积/压缩率)2. 核心使用流程步骤 1:选择压缩对象单文件:点击「选择文件」,支持 .gltf/.glb 格式批量处理:点击「选择文件夹」,自动筛选文件夹内所有 glTF/GLB 文件步骤 2:设置压缩等级推荐等级:7~ 8(绝大多数场景首选,平衡体积和质量)极致压缩:9~10(适合对体积敏感、对细节要求低的场景)轻度压缩:1~6(适合高精度展示类模型)步骤 3:一键压缩 + 预览点击「开始压缩」,工具会自动:解析模型的几何数据

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

    Three.js 之 Import Model 导入模型

    例如你想修改纹理贴图,换一张更压缩的贴图时,就会比较麻烦,因为这些数据都是被集合在了一起,同一个二进制文件中。 glTF-Draco有点像说的第一个格式,不过使用了 Draco algorithm 来压缩几何体的数据。如果你对比 .bin 文件的大小,你就会发现这个会更小一点。 如果想要每个模型一个文件,并且不关心模型内的素材修改,那么二进制 glTF-Binary 更适合。在这两种情况下,您都必须决定是否要使用 Draco 压缩,但我们稍后会介绍这部分。 = 10directionLight.shadow.camera.bottom = -10directionLight.shadow.camera.left = -10const directionLightHelper (gltf) gltf.scene.scale.set(10, 10, 10) scene.add(gltf.scene) }, (progress) => { console.log

    7.4K30编辑于 2022-08-10
  • 来自专栏前端漫步

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

    glTF支持两种文件格式:*.glTF和 *.glb。 glTF文件易于阅读、修改和编辑,同时可以使用gzip进行压缩以减小文件大小。但是.glTF文件格式在处理复杂场景时,可能会变得比较冗长,处理速度较慢。 glb文件也可以使用gzip压缩以进一步减小文件大小。但是.glb文件格式作为二进制文件,难以直接进行编辑和修改。 例如: var enuPoint = new Cesium.Cartesian3(10, 10, 0); var fixedFramePoint = new Cesium.Cartesian3(); Cesium.Matrix4 multiplyByPoint(enuToFixedFrameTransform, enuPoint, fixedFramePoint); 在上面的代码中,enuPoint表示在ENU坐标系中的一个点(假设该点可以表示为(10,10,0

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

    WebGL压缩纹理实践

    0x01 本文将讲述压缩纹理在实际项目中的使用的案例。最近的一个项目是这样的:项目由于涉及到的建筑物特别多,大概有近40栋的建筑,而每一栋建筑物,又有10层楼,每层楼里面又有很多的设备。 而我们最终选用的也就是ktx2.0,它能够很方便的和gltf模型格式进行集成。 有关压缩纹理的更多知识,大家可以在网上搜索啊,此处不进行详细的介绍。 转换的流程大致如下: 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

    2.6K10编辑于 2022-09-28
  • 来自专栏CreateAMind

    代码:lossless 压缩 10x faster VAE

    paper1: [1] Anji Liu, Stephan Mandt and Guy Van den Broeck. Lossless Compression with Probabilistic Circuits, In International Conference on Learning Representations (ICLR), 2022.

    43820编辑于 2022-11-22
  • 来自专栏3d图表

    一款面向 Web3D 的桌面端模型压缩工具:Draco Editor

    Draco Editor 是一款面向 Web3D 场景的桌面端模型优化工具,支持离线部署与本地化处理,专注于 glTF/GLB 模型的 Draco 压缩与格式转换。 多格式模型转换:支持 glTF, GLB, FBX, OBJ, STL, DAE, PLY 等主流 3D 格式互转。 Draco 模型压缩优化 (Optimize) 这是 Draco Editor 的核心功能,用于对 glTF/GLB 模型进行高质量几何压缩,适用于 Web3D 资源发布与传输加速。 压缩设置: Draco 压缩级别:1-10 级可选(推荐 7 级),级别越高压缩率越大,但解析耗时也越长。 目标格式:可选择导出为 .glb (推荐) 或 .gltf。 支持导入格式:glb, gltf, obj, fbx, stl, dae, ply 支持导出格式:glb, gltf, obj, stl, ply 3.

    29610编辑于 2026-03-12
  • 来自专栏TechLead

    大模型应用曙光 - 10X压缩技术

    拥有10+年AI领域研究经验、复旦机器人智能实验室成员,国家级大学生赛事评审专家,发表多篇SCI核心期刊学术论文,上亿营收AI产品研发负责人。 如何在不牺牲性能的情况下将大语言模型缩小十倍? 模型压缩 模型压缩旨在在不牺牲性能的前提下减少机器学习模型的大小。对于(大型)神经网络,这可行,因为它们通常是过参数化的(即由冗余的计算单元组成)。 模型压缩的主要好处是降低推理成本。 三种压缩模型的方法 模型压缩有多种技术。这里我将重点介绍三种广泛使用的类别。 示例代码:通过知识蒸馏和量化压缩文本分类器 在基本了解了各种压缩技术后,让我们看一个如何在Python中进行压缩的实际示例。 这里,我们将压缩一个有1亿参数的模型,该模型用于分类URL是否安全(即钓鱼网站)。 我们首先使用知识蒸馏将1亿参数的模型压缩到5000万参数。

    48510编辑于 2024-09-24
  • 来自专栏前端漫步

    Threejs入门之二十五:Threejs加载gltf文件

    这一节我们来通过Threejs加载一个glft格式的三维模型文件,首先我们先简单了解下gltf文件gltf文件gltf文件全称Graphics Language Transmission Forma(图形语言传输格式 gltf文件核心是JSON文件,一个gltf文件可传输一个或多个场景, 包括网格、材质、贴图、蒙皮、骨架、变形目标、动画、灯光以及摄像机等信息。 (5,5,5) scene.add(dirLight) sportLight = new THREE.SpotLight(0xffffff) sportLight.position.set(0,10,10 这里我们在加载gltf文件成功后,打印该gltf,看下里面的数据结构,并在加载成功后,将其加入到scene中loader.load('.. /models/motor03.gltf',function(gltf) { console.log(gltf); scene.add(gltf.scene) })刷新浏览器,查看效果

    9.4K31编辑于 2023-05-19
  • 来自专栏java开发的那点事

    10-使用Gzip模块压缩Nginx返回的资源

    使用Gzip压缩Nginx返回的资源 为了演示压缩, 我上传一个大一点的图 我找了一个523k的图, 重命名一下并上传到服务器 访问一下 535kb 接下来配置gzip压缩 # 开启gzip压缩功能 , 目的: 提高传输效率, 节约带宽 gzip on; # 限制最小压缩, 单位为字节, 小于1字节就不会压缩 gzip_min_length 1; # 压缩比 1-9 文件越大,压缩越多 gzip_comp_level 3; # 要压缩的文件类型 gzip_types text/plain application/javascript application/x-javascript text/css application 只压缩了1k, 好吧, 可能不适合压缩高清图 拿老师的CSS试一下 上传到linux 访问一下 确实压缩了, 压缩为60.4kb了, 源文件是322kb的, 看来应该是文件不同压缩效果也不同, emm

    64820编辑于 2022-09-13
领券