如何快速重置模型原点

1、什么是模型原点?

  模型原点是三维建模中的概念,它是指在一个虚拟三维空间中确定的参考点。模型原点通常位于模型的几何中心或基本组件的中心位置。如图所示:

可以看到模型的原点在模型的几何中心

2、模型原点的作用

  知道了什么是模型原点,那么模型原点有那些作用呢?

 以下是模型原点的作用点:

  1. 位置确定:模型原点可以帮助确定模型在三维空间中的位置。通过移动原点,可以将模型放置在需要的位置上,确保其在整个场景中的摆放、旋转和缩放等操作正常进行。
  2. 坐标系统:模型原点确定了模型的坐标系统,也就是三维空间的基准轴。这使得模型在与其他对象交互、进行布局和定位时更加方便。
  3. 动画和变换:在进行动画和变换操作时,模型原点作为参考点起到了关键的作用。所有的平移、旋转、缩放等操作都是以模型原点为基准进行的。
  4. 导出与引入:在导出或引入模型文件时,模型原点可以帮助保持模型在不同软件之间的一致性。它可以成为不同软件之间进行数据交换的参考点。

3、模型原点可能引起的问题

  在工作,如果模型原点不在几何中心,可能会导致一些问题,包括:

  1. 定位和对齐困难:若模型原点不在几何中心,将难以准确地定位和对齐模型。当需要将模型与其他模型或场景元素对齐时,几何中心通常是最直观的参考点。如果原点位置不正确,可能会导致模型无法精确定位。
  2. 变换失控:模型原点在进行变换操作(如平移、旋转、缩放)时起到关键作用。如果原点位置不正确,变换操作可能不会按预期执行,导致模型出现意外结果。例如,当尝试将模型整体平移时,实际上可能只有部分模型发生了平移,而非整个模型。
  3. 动画和约束异常:在动画制作和约束系统中,模型原点通常用作骨骼或控制器的附着点。如果原点位置不正确,可能导致动画运动不正常或约束无效。这可能会使得动画过程变得困难,同时影响模型的实时交互性能。
  4. 导入和导出问题:当将模型从一个软件导出到另一个软件,或者将模型从三维建模软件导入到游戏引擎中时,原点位置可能会发生变化。如果模型原点不在几何中心,导入导出过程可能会出现偏移或错位,导致模型无法正确放置或对齐到目标环境。

因此,确保模型原点位于几何中心附近是很重要的,这有助于顺利进行模型的定位、变换、动画和导入导出等操作,提高工作效率并避免潜在问题。

4、如何设置模型原点?

  市面上的3D建模软件大多都有这个功能,但是多数建模软件都是PC软件,需要安装相关程序和依赖程序,软件体积较大,安装复杂。就算安装成功后,由于软件的专业性、复杂性,多数人并不会使用或者不能熟练使用,费时费力。

  这里为大家推荐一款在线工具:GLTF编辑器 。它既不用安装也不用注册,也没有任何依赖,打开浏览器就能使用,操作及其简单方便,可以大大提升用户的工作效率。下面来介绍下如何使用GLTF编辑器 对模型进行原点重置。

  修改前, 我们用Blender看一下原始模型的原点位置,如下图所示:

模型原点的位置是在模型右侧底部

我们可以将模型加到场景中去测试下模型的旋转操作,可以很直观的感受下模型原点的作用,我们将使用NSDT场景编辑器中去作下测试。

我们看到模型是沿着垂直于模型右侧底部原点的直线在旋转。

接下来, 我们把模型导入GLTF编辑器 来重置模型原点,点击【修改中心点】按钮,直接将弹框中的X、Y、Z的值修改成0(模型的几何中心), 点击保存, 模型原点重置成功。

下面, 我们把重置原点后的模型导入NSDT场景编辑器 中, 我们再来旋转下模型看下效果。

可以看到模型是沿着垂直于模型的集合中心在旋转, 说明模型原点确实被重置了成功了。

5、结论

  GLTF编辑器 除了可修改模型原点之外,还支持以下功能:

  模型材质合并:将多个模型中使用的材质合并为一个或少数几个共享的材质。这个过程可以在三维计算机图形中进行,以优化模型的渲染性能和减少内存占用。

  模型材质修改:修改模型的材质属性,用于控制模型的外观、反射特性和光照效果。

  以及模型尺寸、旋转角度和基本属性的修改, 这部分内容给将在以后得文章进行讲述。

 原文链接:GLTF编辑器如何快速重置模型原点 (mvrlink.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/143837.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

LCR 101. 分割等和子集——力扣——背包问题、动态规矩

问题描述 代码展示 class Solution:def canPartition(self, nums: List[int]) -> bool:if len(nums) < 1:return Falsetotal_sum sum(nums)if total_sum % 2 ! 0: # 总和为奇数&#xff0c;无法分成两个相等的子集return Falsetarget_sum total_sum // 2dp [[False]…

myArm 全新七轴桌面型机械臂

引言 在不断演进的科技世界中&#xff0c;我们始终追求创新和卓越&#xff0c;以满足客户的需求并超越他们的期望。今天&#xff0c;我们很高兴地宣布我们的最新产品——myArm 300 Pi&#xff0c;一款七轴的桌面型机械臂。这款产品的独特之处在于其灵活性和可编程性&#xff0c…

Docker——容器生命周期管理(下篇)

Docker 一、run1、options说明2、-p的三种写法3、实例14、实例25、实例36、实例47、实例58、实例69、实例78、实例89、退出容器 二、start/stop/restart1、语法格式2、stop/restart 命令的 options 三、kill1、重点2、说明3、实例 四、rm1、说明2、实例 五、create实例 六、exe…

天眼查询企业信息API接口

"天眼"一般是指"天眼查"&#xff0c;这是一个提供全国企业信息查询的API接口。天眼查以"天眼"作为用户logo&#xff0c;基于人工智能算法的数据采集和分析技术&#xff0c;为企业和个人提供全量、精准、实时、权威的企业信息查询服务。 天眼查A…

美容店预约小程序搭建流程

随着科技的不断发展&#xff0c;小程序已经成为了人们生活中不可或缺的一部分。对于美容店来说&#xff0c;搭建一个预约小程序不仅可以提高工作效率&#xff0c;还可以增加客户数量、提高服务质量。那么&#xff0c;如何搭建一个美容店预约小程序呢&#xff1f;本文将为你详细…

Dockerfile 语法详解:构建定制化容器镜像的基石

Docker 已经成为现代应用程序开发和部署的关键工具之一。在 Docker 的世界中&#xff0c;Dockerfile 是一个至关重要的文件&#xff0c;它定义了如何构建容器镜像的步骤和配置。本文将深入探讨 Dockerfile 的语法&#xff0c;为您提供构建定制化容器镜像的基础知识。 Dockerfil…

React 全栈体系(十六)

第八章 React 扩展 五、Context 1. 代码 /* index.jsx */ import React, { Component } from react import ./index.css//创建Context对象 const MyContext React.createContext() const {Provider,Consumer} MyContext export default class A extends Component {state …

MySQL基础-多表查询

目录 简单概述 1.多表之间的关系 1.1 一对多/多对一 1.2 多对多 1.3 一对一 2. 多表查询-内连接 2.1 隐式内连接 2.2 显式内连接 2.3 内连接小结 3.多表查询-外连接 3.1 左外连接 3.2 右外连接 4.多表查询-自连接 4.1 应用 5.多表查询-联合查询 6.子查询 6.1 标量子…

黑马JVM总结(二十五)

&#xff08;1&#xff09;字节码指令-cinit 构造方法可以分为两类&#xff0c;一类是cinit 一类init cinit是整个类的构造方法 putstatic&#xff1a;进行static变量的赋值&#xff0c;是到常量池里找到名字一个叫做i的变量 &#xff08;2&#xff09;字节码指令-init in…

漫谈:C语言 C++ 左值、右值、类型转换

编程不是自然语言&#xff0c;编程自有其内在逻辑。 左值引起的BUG 编译器经常给出类似这样的BUG提示&#xff1a; “表达式必须是可修改的左值” “非常量引用的初始值必须是左值” 看一下示例&#xff1a; #include <iostream>void f(int& x) {} int main() {sho…

C#中实现单元测试的示例流程_MSTest测试项目

一、单元测试简介 1.1、单元测试简介 在《单元测试艺术》一书中对于单元测试的定义是&#xff1a;【一个单元测试是一段代码&#xff0c;这段代码调用一个工作单元&#xff08;指&#xff1a;调用软件中的一个方法&#xff0c;这个方法执行过程中所发生的所有行为以及最后产生…

Inno Setup安装中文语言

以版本6.2.2为例&#xff1a; 默认安装的Inno Setup是不支持中文语言的&#xff0c;需要我们自行下载安装。 一、打开官网Inno Setup Translations (jrsoftware.org) 下载的文件如下 二、然后重命名放到Inno Setup的如下安装目录中 三、然后重启Inno Setup即可。 打包后的…

家电行业 EDI:Miele EDI 需求分析

Miele是一家创立于1899年的德国公司&#xff0c;以其卓越的工程技术和不懈的创新精神而闻名于世。作为全球领先的家电制造商&#xff0c;Miele的经营范围覆盖了厨房、洗衣和清洁领域&#xff0c;致力于提供高品质、可持续和智能化的家电产品。公司的使命是为全球消费者创造更美…

SpringMVC 学习(二)Hello SpringMVC

3. Hello SpringMVC (1) 新建 maven 模块 springmvc-02-hellomvc (2) 确认依赖的导入 (3) 配置 web.xml <!--web/WEB-INF/web.xml--> <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns"http://xmlns.jcp.org/xml/ns/javaee…

maven清理本地仓库。删除_remote.repositories文件和删除失败的jar包

1.图预览 .bat文件要和仓库在同一平级目录 REPOSITORY_PATH要改成你自己仓库的地址 2、删除.lastUpdated文件(失败的jar包) 使用.bat文件 注明&#xff1a;REPOSITORY_PATHD:\software\Java\maven\repository 改成你仓库的地址 set REPOSITORY_PATHD:\software\Java\maven\rep…

河北吉力宝以步力宝健康鞋引发的全新生活生态商

在当今瞬息万变的商业世界中&#xff0c;成功企业通常都是那些不拘泥于传统、勇于创新的先锋之选。河北吉力宝正是这样一家企业&#xff0c;通过打造一双步力宝健康鞋&#xff0c;他们以功能性智能科技穿戴品为核心&#xff0c;成功创造了一种结合智能康养与时尚潮流的独特产品…

Zotero同步论文、笔记

之前用 Mendeley[1]看论文&#xff0c;看中几个功能&#xff1a; tags&#xff0c;多标签分类&#xff0c;类似微信分组&#xff0c;用来快速筛&#xff08;已添加的&#xff09;某一类文献&#xff1b;同步&#xff0c;包括 pdf 和笔记&#xff08;高亮、便签、tags&#xff…

数链科技基于PP-ChatOCR实现合同信息抽取,准确率达98%

传统大宗商品供应链领域数字化程度低&#xff0c;存在交易环节不透明、业务流程不标准、依赖主体信用评价等问题&#xff0c;业务中存在大量营业执照、身份证、终端合同等线下单据&#xff0c;严重依赖人工线下审核&#xff0c;且数字化难度大。 不同终端、机构、仓库的单据格式…

python使用websocket实现多端数据同步,多个websocket同步消息,断开链接自动清理

我使用的是flask_sock这个模块&#xff0c;我的使用场景是&#xff1a;可以让数据多端实时同步。在游戏控制后台和游戏选手的ipad上都可以实时调整角色的技能和点数什么的&#xff0c;所以需要这样的一个功能来实现数据实时同步。 下面是最小的demo案例&#xff1a; from fla…

LoadLibraryEx调用dll时有未经处理的异常,发生访问冲突

0x000000000006A220 处的第一机会异常(在 testHFHZDll.exe 中): 0xC0000005: 执行位置 0x000000000006A220 时发生访问冲突。 0x000000000006A220 处有未经处理的异常(在 testHFHZDll.exe 中): 0xC0000005: 执行位置 0x000000000006A220 时发生访问冲突。 最近做一个测试&#…