R3DS Wrap基本使用方法

中文的R3DS Wrap软件的教程较少,最近刚好实操了一遍,特此记录下来。

为了描述方便,下面将R3DS Wrap简称Wrap。

软件官网:https://www.russian3dscanner.com/

一、 目的及所需输入材料

下面介绍一下使用Wrap将高模转为低模的使用方法。

虽说目的是将高模转为低模,但是从软件名称和实际操作可以看出,软件是使用低模或者说是base mesh去包裹(wrap)高模,从而得到高模上对应与低模的顶点位置。

要将高模转为低模,首先需要两个模型,一个是预先定义的低模,一个是通过相机矩阵或者其他方式获取到的高模。

为了方便操作,文章提供预定义的低模(百度网盘:(链接:https://pan.baidu.com/s/1EU_IujrY1pHWFMbwUCnmUg 提取码: l85g)),而高模来源于Wrap预定义的高模(下面会提到)。

二、基本界面

打开Wrap可以看到下面界面

1.png

可以看出,wrap的界面非常简单,由三个大模块组成(为了方便描述下面的介绍中,将各个界面定义为"1界面","2界面","3界面")

  1. 为可视化的界面,该界面又有多种视图,可以直接分别按Q、W、E、R键进行切换视图

  2. 为添加节点的界面,里面可以按Tab键,进行节点的添加。这里每一个节点是软件预定义的,一个节点表示一个操作

  3. 为对应2中某些节点需要编辑的参数

在2界面处点击Tab键,界面如下,白色框可以搜索相应的节点,也可以从下面的选项中选择想要的节点添加进来。

2.png

三、高模转为低模

3.1 加载低模和高模

  1. 下载上面百度云盘中提供的低模,并保存至硬盘中,这里我们保存在桌面上test文件夹里面。

  2. 在2界面中按Tab->Geometry->LoadGeom,出现如下界面

3.png
  1. 看到"3界面"出现了一些参数设置,选择File Names右边的...,然后选择刚刚下载好的低模,出现如下界面。如果"1界面"没有看到对应的模型,可以点击键盘的f键,这样可以获取合适的模型大小。
4.png
  1. 点击键盘的R键,看到Scans那一栏有Wrap提供的几个高模,我们随便点击一个模型,这里选中Alex的模型。可以看到"2界面"新加了两个节点,一个是LoadImage01(该节点可以加载各种map,如albedo map,normal map等,这里默认加载了albedomap),一个是LoadGeom02(该节点加载了一个高模)。这里要说明的是LoadGeom节点右侧有个蓝色的方块,表示在"1界面"中显示对于的模型,如果点击该蓝色方块,则蓝色和对应的模型都消失了。
5.png
6.png

3.2 剔除不需要的顶点(optional)

注意:这一个节是可选的,采用有些预定义模型可以不用。但是采用本文提供的低模必需有这一节的操作。由于有些预定义的低模会包含一些独立的顶点(例如左右眼球,口腔等),如果不剔除那些独立的顶点,在下面的包裹阶段会出现下图所示的错误。错误提示内容为"floating geometry contains 3 disconnected polygon components, should be one"。意思就是在执行wrapping操作的时候,低模存在多个独立的组成部分,但是wrapping操作的输入低模必须是一个。

7.png
  1. 在3.1节的基础上,选中"2界面"->点击Tab键->Selection->SelectPolygons,将LoadGeom01与SelectPolygons01节点如下图所示连接起来
8.png
  1. 点击键盘E键,使得"1界面"切换到Visual editor视图,然后选中右半边脸的面片,如下所示
9.png
  1. 点击Visual editor视图下方的Hide selected选项,可以将选中的面片隐藏起来,然后旋转模型可以看见里面的左右眼球
10.png
11.png
  1. 3步骤是为了方便观察内部的结构,现在选择Visual editor下方的Unhide all按钮,然后双击人脸上任意一处的三角形,如下图所示,说明Selectionpolygons01节点已经选择了除眼球以外的所有节点以及面片
12.png
  1. 添加Subset节点,操作为:点击Tab键->Geometry->Subset,可以看见Subset节点有两个输入,将鼠标放到输入点上可以看到输入的名字,如下图连接节点,点击q键,回到Viewpoint3D视图,这时候可以点击LoadGeom01和Subset01节点右侧的蓝色块来查看对应的可视化
13.png

完成3.2部分的所有步骤后,Subset01节点的输出为剔除低模预定义的左右眼球后得到的低模。

3.3 低模与高模对齐

  1. 要使得低模与高模对齐,需要先预定义对应的点,所以在"2界面"中添加SelectPoints节点,操作为:点击Tab键->Selection->SelectPoints。SelectPoints需要两个输入,一个为低模一个为高模,如下图所示
14.png
  1. 点击e键切换视图,可以看到左侧的"1界面"出现两个模型。如果没有看到下图中的模型,分别选中"1界面"的左右子视图然后点击f键
15.png
  1. 分别如下图选中对应的点,注意:在两个模型上选择点的顺序必须一模一样。当然选择的点可以与下图不同,可以自己定义,点越多,对齐越准
16.png
  1. 添加RigidAlignment节点,操作:点击Tab键->Alignment->RigidAlignment,如下图连接节点,在"3界面"中勾选Match scale,是的两个模型大小一致,然后切换到Viewpoint3D视图,并且在"2界面"中选择显示的LoadGeom02和RigidAlignment01节点,隐藏其它节点,可以得到如下视图
17.png

3.4 将对齐后的低模包裹高模

  1. 添加Wrapping节点,操作:点击Tab键->Alignment->Wrapping,按照下图连接节点
18.png
  1. 点击"3界面"中compute按钮可以看到如下图,表示正在计算
19.png
  1. 计算完成后,只显示LoadGeom01和Wrapping01节点,可以看到包裹后的结果如下图所示
20.png

3.5 保持与原始低模相同的点数与顺序

完成3.4就包裹完成了,但是由于3.2节为了能够成功包裹,去除了眼球,如果直接保存包裹后的结果,会丢失眼球的节点,并且包裹后的顶点顺序也不同于原始低模,所以下面要利用Lattice节点保留眼球节点,并且使得输出的顶点数和顶点顺序与原始低模一模一样。

  1. 添加Lattice节点,操作:点击Tab键->Geometry->Lattice,Lattice的节点有三个输入,可以将鼠标放置在每个输入出查看应该输入什么。由于Lattice相对较难理解,这里解释一下,Lattice可以理解为一个映射函数,第一个输入是原始的低模,表示需要进行映射的输入,第二和第三个输入分别为剔除顶点用于包裹的低模和包裹后的模型,表示包裹的映射。如果看不懂按照如下图连接节点即可
21.png

3.6 保存模型

  1. 添加SaveGeom节点,保存包裹后的低模。操作:点击Tab键->Geometry->SaveGeom,将Lattice的输入给到SaveGeom,连线如下图所示,在"3界面"File Name后面的填写保存的路径即可。保存下来的.obj文件即为包裹后的低模。
22.png

3.7 保存纹理

  1. 添加TransferTexture节点用于将高模的texture转化为与低模对应的texture,操作:点击Tab键->Image->TransferTexture,TranferTexture01有两个输入,一个是source geometry用于输入高模,一个是target geometry用于输入包裹后的低模。连接方式如下图所示。图中"3界面"处可以设置texture图片输出的大小
23.png
  1. 选中TranferTexture01节点后,点击W键可以查看带保存的纹理图片
24.png
  1. 添加SaveImage节点用来保存texture,操作:点击Tab键->Image->SaveImage。选中SaveImage01节点可以在"3界面"处可以设置保存路径以及保存图片的质量,设置完成点击Compute current frame即可完成保存
25.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,635评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,543评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,083评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,640评论 1 296
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,640评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,262评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,833评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,736评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,280评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,369评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,503评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,185评论 5 350
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,870评论 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,340评论 0 24
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,460评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,909评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,512评论 2 359