ZBrush中的布料技巧分享
今天主要给大家介绍一种在ZBrush®3D图形绘制软件中创建特定类型的布料的技巧,这种方法简单却非常强大。
这个想法源自下面这张图:

我们今天所要讲的技巧可能不是实现复杂的服装设计最有效的方法,但确实是测试和制作复杂形状作为起点的快方法。你可以进一步完善,将这种技巧与其他ZBrush流程相结合,创建更加有趣的布料:

首先,我们先快速看看接下来要使用的主要工具和ZBrush功能:
•Bridge Curve笔刷
•Masking
•ZRemesher
•ZModeler笔刷
同一个subtool里需要有两个活动对象,这两个对象可以是任何东西:

这两个对象不管放在哪里都没有关系,只要(理想上)两者之间有点距离就行。
同时还要确保你的对象里没有任何遮罩或细分层级,如果有,清除遮罩,并在进行下一步操作之前删除细分层级。
接下来要发挥Bridge Curve笔刷的作用了,我们将使用它通过桥接那两个对象来创建布料。
选择Bridge Curve笔刷(快捷键“BCV”),在其中一个对象上画一条闭合曲线,创建布料的两端,在这里,每一根曲线就是“边界”或者该布料的“边缘”,要确保你画的曲线面向另一个对象。

可以从底部或顶部开始,我们这里是先创建顶部的曲线,因为顶部相对来说简单一点。
现在,其中一个对象上已经有了第一条曲线,接下来可以在另一个对象上画第二条曲线了。创建好第二条曲线之后,一松开“click”ZBrush便会将这两条曲线桥接在一起。

让网格可用
现在,我们需要分离并清除刚刚创建好的网格,你会发现当你画第二条曲线创建桥接的时候,ZBrush会自动遮罩住两个对象,这时候就需要分离被遮罩的点(或者未被遮罩的点—结果一样)。在subtool面板里,“Split”下面点击“Split Masked Points”按钮,这将会在一个subtool里提供给我们“结构对象”(球体),并在另一个subtool里提供给我们布料。

现在可以开始使用布料笔刷雕刻细节了,但有时有点厚度可能会更好点,因此我们要做的第一件事就是使用ZRemesher创建一个比较清晰的拓扑。
ZRemesher过程的多边形数量取决于你自己,但建议少一点,这样最终的网格才更容易操作。记住现在只是创建基础布料,细节和褶皱部分可以不用过多考虑。

给布料提供厚度
选择Zmodeller笔刷(BZM),悬停在一个单面上,然后按空格键,确保已经选择“Qmesh”作为动作,“All polygons”作为目标,点击任一一面然后拖动,创建厚度。

记住如果多边形数量过多,这个过程将非常缓慢,这也是建议大家在Zremeshing的时候保持多边形数量较低的另一个原因。
让布料变得有趣
相信大家已经知道了大概的工作流程和工具,现在可以进行下一步了,基础网格有了之后,接下来可以使用其他ZBrush流程实现更加复杂的东西。
比如,我们用两个平面替代之前用作为“结构对象”的球体:

在每个平铺上画不规则的形状遮罩:

要从平面里“剪出”遮罩,就要使用挤出功能(Tool > Subtool > Extract),厚度设置为0,不要忘了点击Accept完成操作。

沿这些对象的边缘手动创建曲线可能非常耗时,幸运的是我们可以使用Frame mesh (在stroke > Curve功能下面)沿着对象边缘创建曲线。

选择CurveBridge笔刷,点击曲线关闭曲线,这样看起来更加有趣,看起来像是裙子布料或者桌布,接下来只要遵循之前讲过的步骤分离并清除网格,给布料一些厚度。

现在我们已经有了像样的基础网格,可以开始添加褶皱并进行移动了。
为展示我们今天所讲的技巧有多强大,可以来看看下面这些静动态图:
图1:


图2:


完成!
为方便大家保存或添加到自己的Pinterest作为参考,下图给大家汇总了整个工作流程:

步骤分别为:结构对象、桥接曲线、分离被遮罩的点、ZRemesher(多边形数量较低)、ZModeler厚度以及细节。
更多有关ZBrush 3D图形绘制软件的实例应用,请点击访问ZBrush官网,了解更多相关知识。
ZBrush中的布料技巧分享的更多相关文章
- Redis基本使用及百亿数据量中的使用技巧分享(附视频地址及观看指南)
作者:依乐祝 原文地址:https://www.cnblogs.com/yilezhu/p/9941208.html 主讲人:大石头 时间:2018-11-10 晚上20:00 地点:钉钉群(组织代码 ...
- [翻译] C# 8.0 新特性 Redis基本使用及百亿数据量中的使用技巧分享(附视频地址及观看指南) 【由浅至深】redis 实现发布订阅的几种方式 .NET Core开发者的福音之玩转Redis的又一傻瓜式神器推荐
[翻译] C# 8.0 新特性 2018-11-13 17:04 by Rwing, 1179 阅读, 24 评论, 收藏, 编辑 原文: Building C# 8.0[译注:原文主标题如此,但内容 ...
- 分享几个asp.net开发中的小技巧
下面这几个,是在实际开发或阅读中发现的一些问题,有些甚至是有很多年开发人员写出的代码,也是很多人经常犯的错误.各位可以看看,你有没有躺着中枪. 第一个,对整型变量进行非null判断. // a 是in ...
- Android技巧分享——如何用电脑下载在Google play中应用的apk文件
[Android技巧分享系列] 1.Android技巧分享——让官方模拟器和genymotion虚拟机飞起来 2.Android技巧分享——如何用电脑下载在Google play中应用的apk文件 G ...
- WebApi-路由机制 Visual Studio 2015中的常用调试技巧分享
WebApi-路由机制 一.WebApi路由机制是什么? 路由机制通俗点来说:其实就是WebApi框架将用户在浏览器中输入的Url地址和路由表中的路由进行匹配,并根据最终匹配的路由去寻找并匹配相应 ...
- SharePoint 2013技巧分享系列 - 同步Exchange显示高清用户照片
在“SharePoint 2013技巧分享系列 - Active Directory同步显示用户照片”文中介绍了如何同步Active Directory显示用户照片,但是同步完成后,用户照片尺寸和清晰 ...
- 批量删除wps文档里的回车符的方法!WPS使用技巧分享!
有时候整理文档的时候,如果是从网上复制的文字,可能会因为复制而产生很多的回车符.怎样能批量去掉这些个回车符呢,下面马上告诉你批量删除wps文档里的回车符的方法!WPS使用技巧分享! 想要批量删除批量删 ...
- Asp.net MVC Razor模板引擎技巧分享
Razor是Asp.net MVC中新的默认模板类型, 语法简单易用.这篇文章不涉及Razor的语法,主要介绍Razor的一些在MVC项目中的使用技巧,以及脱离MVC环境下,如何使用Razor. 阅读 ...
- webstorm的中文教程和技巧分享
webstorm是一款前端javascript开发编辑的神器,此文介绍webstorm的中文教程和技巧分享.webstorm8.0.3中文汉化版下载:百度网盘下载:http://pan.baidu.c ...
随机推荐
- jquery获取元素内容-text()和val()
不传参数的text()方法在获取文本内容时,会把子元素的文本也获取过来(会删除 HTML 标记),例子: <!doctype html> <html> <head> ...
- Flask框架函数
title: flask学习笔记 subtitle: 1. flask框架函数 date: 2018-12-14 10:17:28 --- Flask学习 学习Miguel Grinberg的2017 ...
- java 常用API 时间 练习
package com.orcal.demc01; import java.util.Date; public class Xuexi { public static void main(String ...
- 破解sublim_Text3
1.更改hosts文件 windows系统的hosts文件在C:\Windows\System32\drivers\etc 路径下,其他系统请自行百度 在hosts文件中加入下面两行: 127.0.0 ...
- django rest-farme-work 的使用(1)
Django REST框架是一个用于构建Web API的强大且灵活的工具包 您可能想要使用REST框架的一些原因: 可浏览性 身份认证 支持ORM和非ORM的序列化 良好的文档支持 安装初步 pip ...
- FreeMarker 语法 date 类型处理
一.java 代码 @Test public void testFreeMarker() throws Exception { //1.创建一个模板文件 //2.创建一个Configuration对象 ...
- 解析xml文件,遍历输出xml文件中的所有节点, 最终模仿实现struts2框架自动封装参数的功能
程序结构:src文件夹下存放xml文件 该文件内容: <?xml version="1.0" encoding="UTF-8"?> <myst ...
- Google Spanner (中文版)
温馨提示:本论文由厦门大学计算机系林子雨翻译自英文论文,转载请注明出处,仅用于学习交流,请勿用于商业用途. [本文翻译的原始出处:厦门大学计算机系数据库实验室网站林子雨老师的云数据库技术资料专区htt ...
- 如何利用eclipse实现批量修改文件的编码方式
在eclipse+Eclipse环境下,打开一个jsp文件,经常发现汉字无法显示,右键点击查看这个文件属性,发现文件的字符编码属性为ISO-8859-1. 目前的解决方法有:1. 手工把 ...
- oracle自定义判断是否数字函数isNumber()
右击function选择新增 如果是数字返回本身,如果不是数字返回0: create or replace function isNumber(p in varchar2) return number ...