“沉浸、3D世界、虚拟社交、虚拟购物”,最近“元宇宙”的概念特别火。人们畅想通过AR/VR以及其他互联网技术,把现实世界的楼房街道、天气温度、人际关系等投射到虚拟世界,构建“元宇宙”,拥有一个网络分身。这一科幻小说中常出现的场景,如今腾讯、字节跳动、Facebook(已更名为Meta,元宇宙MetaVerse的前缀)等国内外科技公司均开始抢占赛道,重金布局。

但目前来看,要想实现这一构想,开发者们还有很长一段路要走。毕竟“元宇宙”的背后是庞大的3D虚拟世界构建,需要海量且高质量的3D内容支撑,以还原真实世界。本期就和开发者们共同探讨、分享构建3D模型的一些常见方式。

主流方式——3D软件手动建模

3D软件手动建模是主流的建模方式之一。目前,市场上有大量的专业3D建模软件供使用,比如3DMax、Maya、Blender等。不同软件的建模方式多样,包括多边形、曲面、参数、逆向等,分别适用于动画、游戏、室内设计等场景的3D模型创作。

它的优点是所建模型精度高,可发挥想象任意创作。但建模师的学习成本往往很高,制作难度较大,制作周期长。映射到构建“元宇宙”,如果使用3D软件手动建模则需要投入大量的人力。

特殊需求——专业仪器扫描建模

随着3D建模知识的普及以及行业的快速发展,工业、3D打印以及电商等场景都需要运用专业仪器扫描建模,用于模型重建。这一建模方式的主要仪器类型有激光扫描仪、光场扫描仪等。

所谓激光扫描建模,是指通过激光设备反射信号测距,用算法计算出深度数据;光场扫码建模则是通过多相机阵列摄影,或使用专业光场设备扫描建模。它可以模拟出与物体表面一致的反射特性,最大程度还原真实物体材质的颜色、纹理和光泽,提高3D物体渲染的逼真度。

专业仪器扫描建模的速度比手动建模快很多,操作难度较低,可以实现高精度建模。但它的不足在于越高精的仪器设备,成本越高,而且只能根据现实中的物体进行重建,无法虚拟创作。其对现实物体的大小也有一定限制,在建模后仍需专业3D软件进行编辑处理才能投入使用。

各有利弊下,专业仪器扫描建模虽然需要建模师对模型进行修补、优化甚至二次创作,但相比手动建模已经大大减少了工作量,提高了效率。可以说,这不失为一种快速复制真实世界以构建“元宇宙”的方法。

新颖易用——拍照建模

拍照=建模?如果我们在调研某个地点时,能够拍照生成3D场地模型,一定很酷!

拍照建模是一种很新颖的3D建模方式,通过手机或照相机拍摄物体的多张照片,用算法将照片拼接起来,然后自动对齐照片、生成点云、添加纹理,最终形成模型。它的优点很多,仅需数分钟即可完成、无操作门槛、无需购置高精仪器、成本低、效果基本可以还原实物。缺点则为拍照建模的精密度与清晰程度还有待提升,只能根据现实中的物体进行建模,对物体大小、表面纹理等有一定限制。

市场上提供拍照建模的方案提供商有Epic Game的RealityCapture、华为3D建模服务、苹果公司的Object Capture API等。其中,RealityCapture3D建模软件一般需要把按照格式拍摄的照片拷贝到电脑的软件中,再上传处理并编辑,主要应用于游戏开发场景。华为3D建模服务简单易用,通过手机即可实现拍照、模型预览、下载等操作,可为C端用户创造更多建模玩法。

近几年,拍照建模逐渐流行起来。这种可以快速便捷地通过拍照生成表面纹理丰富的逼真物体模型的方式,没有美工与仪器的门槛,更适合消费者个人用户操作。也许,未来通过拍照建模实现“人人都是元宇宙的造物主”概念将不再是梦。

了解更多详情>>

访问华为开发者联盟官网

获取开发指导文档

华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

构建“元宇宙”,有哪些3D建模方式?的更多相关文章

  1. 3D建模与处理软件简介

    [前言]自半年前笔者发表博客“什么是计算机图形学”以来,时常有人来向笔者询问3D模型的构建方法与工具.笔者的研究方向是以3D技术为主,具体包括3D建模,3D处理及3D打印三个方面,在3D建模与处理方面 ...

  2. 建模:3D建模

    ylbtech-建模:3D建模 “3D建模”通俗来讲就是通过三维制作软件通过虚拟三维空间构建出具有三维数据的模型.3D建模大概可分为:NURBS和多边形网格. NURBS对要求精细.弹性与复杂的模型有 ...

  3. 为什么要学3D建模呢?你看中的肯定是这几点

    游戏行业的大环境 互联网的形态一直以来都是2D模式的,但是随着3D技术的不断进步,在未来的5年时间里,将会有越来越多的互联网应用以3D的方式呈现给用户,包括网络视讯.电子阅读.虚拟社区.网络游戏.电子 ...

  4. 数百个 HTML5 例子学习 HT 图形组件 – 3D建模篇

    http://www.hightopo.com/demo/pipeline/index.html <数百个 HTML5 例子学习 HT 图形组件 – WebGL 3D 篇>里提到 HT 很 ...

  5. 数百个 HTML5 例子学习 HT 图形组件 – 3D 建模篇

    http://www.hightopo.com/demo/pipeline/index.html <数百个 HTML5 例子学习 HT 图形组件 – WebGL 3D 篇>里提到 HT 很 ...

  6. ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse

    ROS机器人程序设计(原书第2版)补充资料 (柒) 第七章 3D建模与仿真 urdf Gazebo V-Rep Webots Morse 书中,大部分出现hydro的地方,直接替换为indigo或ja ...

  7. 3D建模软件的选择(UG,Solidworks,ProE)

    转自:3D建模软件的选择(UG,Solidworks,ProE) 自述 咱是一个码农,和web.软件.控制台打交道太多了,很想玩玩炫的东西,于是学了点点PS,结果发现完全没有美术细胞TT.最近有碰到对 ...

  8. 创想三维:5款最好用的免费3D建模软件【转】

    虽然网上有需要现成的免费三维模型,但对于许多人而言,3D打印机最吸引他们之处是可以设计创造完全属于自己的模型.问题是,现代专业级CAD软件大多价格高昂,例如Solidworks或Zbrush这样的程序 ...

  9. 《3D建模初步》参考资料

    本门课程主要从3D打印角度来介绍3D建模的简单知识.课程采用免费的3D CAD软件Autodesk 123D Design来具体演示一些简单模型的构建方法,并介绍3D打印有关的知识与方法. 课程以&l ...

  10. XFire构建服务端Service的两种方式(转)

    XFire构建服务端service的两种方式,一是用xfire构建,二是和spring集成构建. 一,xifre构建,确保把xfire的jar包导入到工程中或classpath. 1,service的 ...

随机推荐

  1. 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第十二节)

    好的,那么在上一节中呢,评论功能的后台已经写好了,这一节,先把这部分后台代码和前台对接一下. 1.评论功能实现 我们修改一下保存评论按钮的点击事件,用jQuery的方式获取文本框中的值,然后通过aja ...

  2. Nonblocking I/O and select()

    This sample program illustrates a server application that uses nonblocking and the select() API. Soc ...

  3. Android消息机制入门

    接着处理<Android 网络图片查看器>中出现的问题 使用添加子线程,修改原程序: package com.wuyudong.imagesviewer; import java.io.I ...

  4. sonar的安装与代码质量检测实例

    说明:sonar依赖数据库. mysql优化 1.笔者使用的是mysql数据库.首先对mysql做简单的优化配置. [root@localhost bin]# cat /etc/my.cnf [mys ...

  5. filter 过滤器的基本使用

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  6. Hands-On Unity 2018 x 移动游戏开发教程

    Hands-On Unity 2018 x Game Development for Mobile 使用Unity 2018.2创建具有出色游戏功能的精彩游戏   想学习在Unity制作游戏,但不知道 ...

  7. synchronized(五)

    package com.bjsxt.base.sync005;/** * synchronized的重入 * @author alienware * */public class SyncDubbo2 ...

  8. C++中的显式类型转换

    一.学习总结 1.C++中额外提供的类型转换有 (1) reinterpret_cast: 格式:reinterpret_cast<type-id> (expression)①type-i ...

  9. EasyUI Dialog 对话框 关闭事件

    在  $('#×××').dialog('close');  执行后触发 $(function(){ $("#titledialos").dialog({ onClose: fun ...

  10. mysql的show status详解(转载)

    SHOW STATUS提供服务器的状态信息(象mysqladmin extended-status一样).输出类似于下面的显示,尽管格式和数字可以有点不同: +-------------------- ...