做生物学的网站/新型网络搜索引擎
Paint 3D
Microsoft Paint 3D是微软的一款图像编辑软件,它是传统的Microsoft Paint程序的升级版。
这个新版本的Paint专注于三维设计和创作,使用户可以使用简单的工具创建和编辑三维模型。
Microsoft Paint 3D具有直观的界面和易于使用的工具,使任何人都可以在没有专业技能的情况下开始创建三维模型。用户可以选择使用预设的3D对象库中的模型,也可以从头开始创作自己的模型。还可以通过导入图像或使用内置的绘图工具来添加纹理和颜色。
除了创建和编辑3D模型之外,Microsoft Paint 3D还具有一些其他的功能,例如添加文字、绘制2D图像、裁剪和调整图像大小等。这使得它成为一个多功能的图像编辑工具,既可以用来进行简单的2D图像编辑,又可以用来创建复杂的3D模型。
一旦完成了设计,用户可以将其导出为不同的文件格式,例如3D模型文件、图像文件或甚至是可交互的3D对象。这使得用户可以与其他应用程序或平台共享或使用所创建的内容。
总的来说,Microsoft Paint 3D是一个功能强大且易于使用的图像编辑软件,它为用户提供了一种简单的方式来进行三维设计和创作。无论是初学者还是有经验的设计师,都可以通过这个软件来实现自己的创意和想法。
三维内容管道
在客户端应用程序中呈现的3D内容来自不同的来源,并以不同的文件格式存储。维基百科上的3D图形文件格式列表显示了压倒性的数量,有70多种不同的3D数据文件格式,服务于不同的目的和应用案例。
例如,可以使用3D扫描仪来获得原始3D数据。这些扫描仪通常提供单个对象的几何数据,这些数据存储在OBJ、PLY或STL文件中。这些文件格式不包含有关场景结构或应如何渲染对象的信息。
可以使用创作工具创建更复杂的三维场景。这些工具允许编辑场景的结构、灯光设置、相机、动画,当然还有场景中出现的对象的3D几何体。应用程序以自己的自定义文件格式存储这些信息。例如,Blender将场景存储在.flend文件中,LightWave3D使用.lws文件格式,3ds Max使用.Max文件格式,Maya使用.ma文件。
为了呈现这样的3D内容,运行时应用程序必须能够读取不同的输入文件格式。必须解析场景结构,并且必须将3D几何数据转换为图形API所需的格式。3D数据必须传输到图形卡存储器,然后渲染过程可以用图形API调用序列来描述。因此,每个运行时应用程序都必须为其支持的所有文件格式创建导入程序、加载程序或转换器。
glTF计划
2013 年,Khronos 发起了glTF计划,目标是创建一种与 JPEG 一样普遍的图像 3D 资产格式——现在glTF和 JPEG 一样,是一项国际标准。用于高效传输和加载 3D 场景和模型。 glTF最大限度地减少了解包和处理 3D 资产的运行时处理,同时实现了复杂的普遍图形功能。 glTF为 3D 内容、工具和服务定义了一种可扩展的通用发布格式,可简化创作工作流程并实现跨行业的内容互操作使用。
glTF(全称为Graphics Language Transmission Format)是一种用于在3D图形应用程序之间传输和加载3D模型的开放标准格式。它是由Khronos Group开发和维护的,旨在提供一种高效的方式来存储和传输3D模型,适用于在各种平台和设备上展示和交互。
越来越多的应用程序和服务基于3D内容。网上商店提供带有3D预览的产品配置程序。博物馆通过3D扫描将其文物数字化,并允许游客在虚拟画廊中探索其藏品。城市规划者使用三维城市模型进行规划和信息可视化。教育工作者创建交互式的、动画化的人体三维模型。其中许多应用程序直接在web浏览器中运行,这是可能的,因为所有现代浏览器都支持使用WebGL进行高效渲染。
各种应用程序中对3D内容的需求不断增加。在许多情况下,3D内容必须通过网络传输,并且必须在客户端高效地呈现。但到目前为止,在3D内容创建和在运行时应用程序中高效渲染3D内容之间存在差距。
glTF:一种用于3D场景的传输格式
glTF的目标是以适合在运行时应用程序中使用的形式定义用于表示3D内容的标准。现有的文件格式不适用于此用例:有些文件不包含任何场景信息,只包含几何体数据;其他文件是为在创作应用程序之间交换数据而设计的,其主要目标是保留尽可能多的关于3D场景的信息,从而产生通常较大、复杂且难以解析的文件。此外,可能必须对几何数据进行预处理,以便使用客户端应用程序对其进行渲染。
现有的文件格式都不是为在网络上高效地传输3D场景并尽可能高效地渲染它们的用例而设计的。但glTF并不是“另一种文件格式”。它是3D场景传输格式的定义:场景结构是用JSON描述的,JSON非常紧凑,可以很容易地进行解析。对象的3D数据以可由通用图形API直接使用的形式存储,因此不存在解码或预处理3D数据的开销。
不同的内容创建工具现在可以提供glTF格式的3D内容。越来越多的客户端应用程序能够使用和呈现glTF。因此,glTF可能有助于弥合内容创建和渲染之间的差距。
越来越多的内容创建工具直接提供glTF导入和导出。
例如《Blender手册》记录了如何使用glTF导入和导出PBR材质。或者,可以使用glTF项目资源管理器中列出的一个开源转换实用程序,使用其他文件格式来创建glTF资产。转换器和出口商的输出可以使用Khronos glTF验证器进行验证。
glTF的设计目标是解决当前存在的3D模型传输和加载的一些问题,包括文件大小和加载时间过长。通过使用基于JSON的文本或二进制编码,glTF可以将3D模型压缩到尽可能小的文件大小,并能够在加载时快速解析和渲染。
通过引擎、浏览器和应用程序高效传输和运行时加载3D场景和模型。glTF最大限度地减少了3D资产的大小和解包和使用它们所需的运行时处理。glTF已经在整个行业中被广泛采用,相当于“JPEG for 3D”。glTF被数百种内容工具和服务使用,简化了3D创作工作流程,并实现了整个行业真实3D模型的互操作使用。
随着glTF的采用速度加快,其生态系统已发展成为一个丰富的工具和应用程序宝库,可以生成和导入glTF文件。然而,这种日益增长的多样性迫切需要一种有效的工具来对整个行业的glTF资源进行编目,并使需要生成或使用glTF资产的开发人员和艺术家能够为他们的项目找到最佳工具。
为了满足这一社区需求,Khronos创建了glTF项目浏览器,作为glTF生态系统中项目的集中搜索目录。
glTF Project Explorer用户界面
在创建glTF项目浏览器之前,glTF生态系统中的工具在官方的glTF GitHub上的README和“最新的glTF项目”问题中都列出了,但如果没有有效的路标和过滤,这些列表很快就会变得难以处理。新的glTFProjectExplorer取代了这两个以前的资源,创建了一个位置,glTF社区可以在这里维护和搜索glTF项目的最新数据库。
glTF项目浏览器是一个可搜索的目录,包括库、引擎、插件、扩展和其他工具,这些工具已由Khronos和更广泛的社区引入glTF生态系统。用户可以搜索Khronos或社区项目,根据他们需要完成的任务、他们需要的工具或软件类型、他们希望使用的语言进行筛选,甚至可以看到glTF工作组本身的“员工选择”。
鼓励所有glTF用户和开发人员为glTF项目浏览器做出贡献。如果您已经开发或知道一个您认为应该包含的用于glTF的伟大工具,请随时打开拉取请求-您可以在glTF Project Explorer repo中找到此处的说明。Project Explorer是开源的,我们欢迎任何有兴趣帮助改进该工具以打开代码本身的拉取请求的人。
请尝试一下glTF项目浏览器,并让我们知道你的想法!我们期待着与您合作,为glTF社区开发这一动态且宝贵的资源。
以下是glTF的一些主要特点和优势:
-
开放标准:glTF是一个开放标准,任何人都可以自由使用和实现。它由Khronos Group的成员组织共同制定和维护。
-
高效压缩:glTF使用基于JSON的文本或二进制编码,可以将3D模型压缩到较小的文件大小,减少传输和加载时间。
-
独立性:glTF是独立于特定图形API和平台的,可以在各种3D图形应用程序和设备上使用,包括WebGL、OpenGL、Vulkan、iOS和Android等。
-
全面支持:glTF不仅支持静态3D模型的传输和加载,还支持动画、材质、纹理、光照、骨骼动画等高级功能。
-
可扩展性:glTF通过使用扩展机制,可以根据需求添加自定义的功能和属性。
总的来说,glTF是一种高效、灵活且跨平台的3D模型格式,为开发者和用户提供了一种便捷的方式来传输、加载和展示3D模型。
它在游戏开发、虚拟现实、增强现实和Web应用程序等领域具有广泛的应用前景。
从勤劳的小蜜蜂开始
蜜蜂忙碌在花丛间,为人间带来甘甜滋味; 振翅飞舞的身影如黄金,美丽如夏日的阳光;
努力采集花粉的勤劳,是大自然的小管家;
蜜蜂努力工作不懈怠,为我们带来酿制的精华;
蜂蜜香甜润心田,蜜蜂只为花开满地。
在Paint 3D的三维库中获取模型
在Paint 3D的3D库中,有12大类模型,搜索Bee获取蜜蜂的三维模型
导入三维模型到画板
蜜蜂的正面投影
蜜蜂的三维正轴测图
可以做XYZ轴旋转操作
投影出的三维视觉
接下来,可以另存为三维模型
选中glb格式,GLB文件(.GLB)代表“GL传输格式二进制文件”,是用于共享3D数据的标准化文件格式。确切地说,它可以包含有关三维模型、场景、模型、光源、材质、节点层次和动画的信息。
当您打开GLB文件格式时,您可以实现完整的三维场景可视化,并与之交互。这就是为什么它也被称为3D资产世界的JPEG。GLB和GLTF之间存在显著差异,GLB格式是GLTF文件的一个版本,不同之处在于,GLB格式是二进制文件格式,而GLTF格式是基于JSON(JavaScript对象表示法)的。GLB将三维场景的所有元素(包括材质、节点层次和摄影机)定位在一个压缩文件中。相比之下,GLTF文件需要外部处理文件格式,例如纹理、着色器和动画数据等其他格式。这些外部元素存储在GLTF文件中,但每个元素都使用唯一的格式编码语言(JPEG用于纹理,GLSL用于着色器,BIN用于动画数据)。
因此,GLB被识别为一个独立的文件,包含单个网络中3D场景的所有组件,而GLTF被视为一个非独立文件,需要纹理、着色器和动画数据等元素的外部处理文件。
此外,GLB格式的大小比GLTF格式小33%,这使其成为一种更高效的选择,因为它需要更少的处理能力。
导入glb模型到blender
将Paint 3D导出的蜜蜂Bee.glb文件导入开源三维设计软件Blender。
使用开源三维设计软件blender设计三维模型
模型layout查看
模型modeling查看
模型sculpting查看
模型UV查看
材质贴图设计
模型shading查看
模型texture paint查看
模型动画查看
模型Geometry Nodes查看
模型俯视图
模型侧视图
模型前视图
导出为gltf格式文件
选中gltf格式 (*.gltf+*.bin+*.texture)导出
至此完成glb格式向gltf格式转换
浏览三维蜜蜂
使用3D查看器即可浏览三维蜜蜂
蜜蜂展现到屏幕上的的三维虚拟效果
gltf格式的数据结构
gltf数据结构卡片
参见:
Windows 10 Tip: A guide to the basic tools in Paint 3D | Windows Experience Blog
How to use Microsoft's Paint 3D in Windows 10 | PCWorld
glTF-Tutorials | glTF Tutorials
The-gltf-project-explorer
gltf-ecosystem-takeoff
gltf20-reference-guide.pdf
glTF | glTF – Runtime 3D Asset Delivery
glTF Tutorial | glTF-Tutorials
glTF-2.0.html
Khronos glTF 2.0 作为 ISO/IEC 国际标准发布 - Khronos Group Press Release
blender.org - Home of the Blender project - Free and Open 3D Creation Software
glTF 2.0 — Blender Manual
Explore 3D Models - Sketchfab
相关文章:

从Paint 3D入门glTF
Paint 3D Microsoft Paint 3D是微软的一款图像编辑软件,它是传统的Microsoft Paint程序的升级版。 这个新版本的Paint专注于三维设计和创作,使用户可以使用简单的工具创建和编辑三维模型。 Microsoft Paint 3D具有直观的界面和易于使用的工具࿰…...

数据库(MySQL)—— DQL语句(基本查询和条件查询)
数据库(MySQL)—— DQL语句(基本查询和条件查询) 什么是DQL语句基本查询查询多个字段字段设置别名去除重复记录 条件查询语法条件 我们今天进入MySQL的DQL语句的学习: 什么是DQL语句 MySQL中的DQL(Data Q…...

如何根据索引删除数组中的元素,并保证删除的正确性
使用 splice() 方法来删除这些索引处的数据 var array [1, 2, 3, 4, 5]; var indexesToDelete [1, 3]; // 需要删除的索引// 将需要删除的索引按照从大到小的顺序排序,以避免删除元素后索引发生变化 indexesToDelete.sort((a, b) > b - a);// 遍历需要删除的索…...

Shell编程规范与变量
目录 一、shell脚本概述 Shell脚本的概念 Shel脚本应用场景 1、shell的作用 2、shell编程规范 Shell脚本的编写 Shell脚本的运行 3、重定向与管道 交互式硬件设备 重定向操作 管道操作符号"|" 二、shell脚本变量 变量的作用 变量的类型 1、自定义变量…...

武汉星起航:策略升级,亚马逊平台销售额持续增长显实力
武汉星起航电子商务有限公司,一家致力于跨境电商领域的企业,于2023年10月30日在上海股权托管交易中心成功挂牌展示,这一里程碑事件标志着公司正式踏入资本市场,开启了新的发展篇章。公司董事长张振邦在接受【第一财经】采访时表示…...

循环链表 -- c语言实现
#pragma once // 带头双向循环链表增删查改实现 #include<stdlib.h> #include<stdio.h> #include<assert.h>typedef int LTDataType;typedef struct ListNode {LTDataType data;struct ListNode* next;struct ListNode* prev; }ListNode;//双链表申请一个新节…...

如何使git提交的时候忽略一些特殊文件?
认识.gitignore文件 在生成远程仓库的时候我们会看到这样一个选项: 这个.gitignore文件有啥用呢? .gotignore文件是Git版本控制系统中的一个特殊文件。用来指定哪些文件或者目录不被Git追踪或者提交到版本库中。也就意味着,如果我们有一些文…...

如何保证Redis双写一致性?
目录 数据不一致问题 数据库和缓存不一致解决方案 1. 先更新缓存,再更新数据 该方案数据不一致的原因 2. 先更新数据库,再更新缓存 3. 先删除缓存,再更新数据库 延时双删 4. 先更新数据库,再删除缓存 该方案数据不一致的…...

HarmonyOS实战开发-如何实现查询当前城市实时天气功能
先来看一下效果 本项目界面搭建基于ArkUI中TS扩展的声明式开发范式, 数据接口是和风(天气预报), 使用ArkUI自带的网络请求调用接口。 我想要实现的一个功能是,查询当前城市的实时天气, 目前已实现的功能…...

(三)JSP教程——JSP动作标签
JSP动作标签 用户可以使用JSP动作标签向当前输出流输出数据,进行页面定向,也可以通过动作标签使用、修改和创建对象。 <jsp:include>标签 <jsp:include>标签将同一个Web应用中静态或动态资源包含到当前页面中。资源可以是HTML、JSP页面和文…...

centos7安装真的Redmine-5.1.2+ruby-3.0.0
下载redmine-5.1.2.tar.gz,上传到/usr/local/目录下 cd /usr/local/ tar -zxf redmine-5.1.2.tar.gz cd redmine-5.1.2 cp config/database.yml.example config/database.yml 配置数据连接 #编辑配置文件 vi config/database.yml #修改后的内容如下 product…...

方法的重写
方法的重写 概念:子类继承父类之后,就拥有了符合权限的父类的属性和方法,但是当父类的方法不符合子类的要求的时候,子类也可以重新的书写自己想要的方法。所以,方法的重写,即子类继承父类的方法后…...

Terraform局部值
Terraform输入变量用于从外部传递值到Terraform模块内部进行使用,如果把Terraform代码看作是一个函数的话,Terraform输入变量就是函数的输入参数。 Terraform局部值则用于在Terraform模块内部定义反复使用的常量值或表达式,如果把Terraform代…...

vue+element-ui实现横向长箭头,横向线上下可自定义文字(使用after伪元素实现箭头)
项目场景: 需要实现一个长箭头,横向线上下可自定义文字 代码描述 <div><span class"data-model">{{ //上方文字}}</span><el-divider class"q"> </el-divider>//分隔线<span class"data-mod…...

性能监控之prometheus+grafana搭建
前言 Prometheus和Grafana是两个流行的开源工具,用于监控和可视化系统和应用程序的性能指标。它们通常一起使用,提供了强大的监控和数据可视化功能。 Prometheus Prometheus是一种开源的系统监控和警报工具包。它最初由SoundCloud开发,并于…...

25-ESP32-S3 内置的真随机数发生器(RNG)
ESP32-S3 内置的真随机数发生器(RNG)😎 引言 📚 在许多应用中,随机数发生器(RNG)是必不可少的。无论是在密码学🔒、游戏🎮、模拟🧪或其他领域,随…...

万兆以太网MAC设计(12)万兆UDP协议栈上板与主机网卡通信
文章目录 一、设置IP以及MAC二、上板效果2.1、板卡与主机数据回环测试2.2、板卡满带宽发送数据 一、设置IP以及MAC 顶层模块设置源MAC地址 module XC7Z100_Top#(parameter P_SRC_MAC 48h01_02_03_04_05_06,parameter P_DST_MAC 48hff_ff_ff_ff_ff_ff )(input …...

2024年4月17日华为春招实习试题【三题】-题目+题解+在线评测,2024.4.17,华为机试
2024年4月17日华为春招实习试题【三题】-题目题解在线评测 🔮题目一描述:扑克牌消消乐输入描述输出描述样例一样例二Limitation解题思路一:模拟,遇到连续3张相同牌号的卡牌,直接删除解题思路二:栈解题思路三…...

展开说说:Android线程池解析
何谓线程池?本人理解是存放和管理线程的一个容器。 线程池存在的意义是什么? 第一:前面博客提到过创建和销毁线程的操作本身是有性能开销的,如果把使用的线程对象存起来下次用的时候直接取出来用就省去了一次创建和销毁的成本&a…...

Selenium自动化测试面试题全家桶
🔥 交流讨论:欢迎加入我们一起学习! 🔥 资源分享:耗时200小时精选的「软件测试」资料包 🔥 教程推荐:火遍全网的《软件测试》教程 📢欢迎点赞 👍 收藏 ⭐留言 …...

Docker 容器日志占用空间过大解决办法
1、vi /etc/docker/daemon.json {"log-driver":"json-file","log-opts": {"max-size":"200m", "max-file":"1"} } 2、重新加载守护进程配置文件 systemctl daemon-reload 3、重启docker systemctl…...

update_min_vruntime()流程图
linux kernel scheduler cfs的update_min_vruntime() 看起来还挺绕的。含义其实也简单,总一句话,将 cfs_rq->min_vruntime 设置为: max( cfs_rq->vruntime, min(leftmost_se->vruntime, cfs_rq->curr->vruntime) )。 画个流…...

十进制转任意进制(以及任意进制来回转换<了解>)
十进制转任意进制: #include <iostream> #include <vector> #include <string> using namespace std; // 将十进制数转换为P进制形式的字符串 string toBase(int num, int base) {string result ""; // 初始化结果字符串为空wh…...

postcss-px-to-viewport 从入坑到放弃 (nuxt3搭建响应式官网解决方案 )
前沿 什么是 postcss-px-to-viewport 将px单位转换为视口单位的 (vw, vh, vmin, vmax) 的 PostCSS 插件。 为什么使用 postcss-px-to-viewport 在pc端盛行的时代 ,如果你不想去适配更多的pc端代码,可以采用它。 由于nuxt3本身已带postcss,所…...

C语言从入门到入门
一、引言 C语言是一种通用的、过程式的计算机编程语言,支持结构化编程、词汇变量作用域和递归等功能,其设计提供了低级别的存取权限,并且要求程序员管理所有的内存细节。C语言具有高效、灵活和可移植性等特点,因此被广泛应用于系统编程、嵌入式系统开发、游戏开发等领域。 …...

Java基础教程 - 4 流程控制
更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 4 流程控制 4.1 分支结构…...

大厂Java面试题:MyBatis中有几种加载映射器(Mapper.xml)的方式?
大家好,我是王有志。 今天给大家带来的是一道来自京东的 MyBatis 面试题:MyBatis 中有几种加载映射器(Mapper.xml)的方式? 常见加载 MyBatis 映射器的方式有 5 种,可以根据不同的使用方式来进行具体区分&…...

Flutter笔记:Widgets Easier组件库(10)快速处理承若型对话
Flutter笔记 使用Widgets Easier组件库快速处理承若型对话 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://…...

10_Linux中的计划任务
10_Linux中的计划任务 常见计划任务 Linux系统中默认在执行的计划任务 日志文件的轮询:logrotate日志文件分析logwatch任务建立locate数据库建立manpage查询数据库RPM软件日志文件删除缓存与网络有关的分析 仅执行一次的计划任务 atd和at [rootnode4 ~]# systemctl start…...

Google Play开发者账号为什么会被封?如何解决关联账号问题?
Google Play是Google提供的一个应用商店,用户可以在其中下载并安装Android设备上的应用程序、电影、音乐、电子图书等。Google Play是Android平台上较大的应用市场,包含了数百万个应用程序和游戏。但是谷歌对于上架应用的审核越趋严格,开发者…...