瑞云介绍使用ZBrush和Marmoset工具包制作的风格化巨怪战斗机

Renderbus瑞云渲染的小编今天给大家介绍下Gianluca Squillace使用 ZBrush 和 Marmoset 工具包制作巨怪战士的一些技巧。这位艺术家还贴心地告诉大家,有些步骤是可以省略跳过的,这样就可以节省时间,帮助我们快速完成角色的创作啦。快速有用的步骤可以看看下文哦!

ZBrush和Marmoset工具包制作巨怪战士

Gianluca Squillace个人简介


Gianluca Squillace是一位来自意大利米兰的3D角色艺术家。他在游戏行业工作了大约 8 年,期间在罗马一家外包工作室担任自由角色美术师一职。同时他还在米兰的IED(欧洲设计学院)里担任教授 ,负责教ZBrush、Maya 和 Substance 3D Painter。这是因为他非常喜欢与有天赋的学生合作,并为他们提供支持和指导。


当然,在此期间,他也从未停止过个人项目的工作,这些个人工作项目所带来的经验也给他目前的工作岗位奠定了坚定的基础。

Gianluca Squillace工作经历
Gianluca一直很热爱暴雪和 Riot 游戏的那种风格,因此受其启发的他决定创作一个新的角色-巨魔。而这创作期间他也尝试了各种新的工具,学习的同时又充满了新鲜感。

Gianluca创作的“巨魔”,是源于他很想要一个极具侵略性且可以让他感到自豪感的角色,因此他搜寻了各种参考资料,收集了制作道具和调色板的有用数据,以备后期创作所用。

下面是一些用 PureRef .NET 归档和整理的图片

PureRef .NET 归档和整理的图片

这些收集相关资料的举措,他认为这一步是至关重要的,因为这些资料可以帮助他带来实现最终效果所需的正确指导方针。

第一步:雕刻


雕刻过程始终是令人愉快的一步,尤其是雕刻这种角色。模型完全是用 ZBrush 制作的。Gianluca首先粗略地勾勒出主要角色元素(头部、身体、手臂等),由于有一些笨重的道具,所以他也勾勒出了这些元素以获得主要形状。在这一步中,创作者常常会容易迷失在细节中,所以这就是为什么需要先重点关注体积,然后把清理工作留到后面。

雕刻中,轮廓是增强整体特征的一个非常重要的细节。他经常切换到全黑的平面色彩,以确保方向正确。一定要记住保持一个拓扑结构良好的低多边形模型,因为这样可以更容易地修改主要形状。所以他通常会为每个部件创建一个具有活动动态细分的低多边形版本,只有在需要微观细节时才将其折叠。


以下是Gianluca从分块到最终雕刻的一些步骤:

制作巨怪战士分块到最终雕刻的一些步骤

由于角色是直接以姿势进行雕刻的,因此在单独的工具中制作某些道具非常有用。这让他可以在对称的情况下工作,之后再将它们放置在模型上。使用 ZBrush 的 "Stager "命令还让他有机会保存和处理一个物体的两种不同姿势,并在必要时进行切换。他使用了很多不同的笔刷,以下是本项目中使用的一些笔刷:

ZBrush和Marmoset工具包制作巨怪战士的笔刷

除了常用的 Move、Clay、ZModeler、DamStandard、TrimDynamic 等工具外,他还使用了 Michael Vicente 的 Orb 笔刷(他认为这是所有数字雕塑家的必备工具)、Pablo Munoz Gomez 的 Gio 笔刷和 Shane Olson 笔刷。

第二步:绘画
Gianluca决定直接在高聚物模型上绘制,并选择在 ZBrush 中进行多画面绘制。其中他从每个元素(皮肤、头发、道具等)的参考资料中提取了调色板。这里他推荐使用 Adobe Color,这是一个可以轻松从图片中提取调色板的网站。之后,他先用一些平淡的基色,然后开始添加颜色变化。

下面是一些绘画步骤:

巨怪绘画步骤

渐变色在上色阶段确实非常重要,因为它能让我们获得极佳的色彩变化,而且通过对比,还能将观众的视线引向特定区域。这确实是一个有趣的步骤,尤其是选择巨魔一族典型的图案和装饰。这是在 ZBrush 中的最终多色绘制:

ZBrush和Marmoset工具包制作巨怪战士绘画步骤

第三步:渲染


他使用 Marmoset Toolbag 4 制作了所有的渲染。使用Marmoset Toolbag 4工具让他实现了不错的实时效果,并在合成阶段使用了各种渲染通道。首先,需要将模型从 ZBrush 导入 Marmoset Toolbag 4。由于他选择使用多色绘制来着色,因此必须确保修改材质以显示顶点颜色,而不仅仅是反照率。这是因为该模型没有 UV 和纹理,如下图所示。

修改材质以显示顶点颜

一开始,他使用了简单的三点式照明设置,包括主灯、冷补光灯和强边缘灯。这种设置对于将人物从他选择的黑暗背景中分离出来非常有用。
下面是从 Marmoset Toolbag 4 中提取的一些渲染通过提取器:

Marmoset Toolbag 4 渲染器

除了灯光之外,他还通过导出以下通道来工作:

环境光遮蔽 (AO): 该通道对最终渲染至关重要。它可以通过着色来营造冷暖氛围,也可以根据所应用的材质来改变颜色。
ID 遮罩:这一通道在合成步骤中非常有用。它可以方便地选择模型的不同元素,并分别对其进行修改。
次表面散射(SSS): 他在皮肤区域使用了这一通道,在头发上也略微使用了一下,利用 ID 蒙版进行快速选择。
最后,他直接在 Photoshop 中添加了一些手绘的高光和阴影。这就是合成阶段后的最终效果:

Photoshop的手绘的高光和阴影

最后:
当然,在这种情况下,由于跳过了拓扑、UV 贴图和纹理等多个步骤,这类角色的制作速度很快(总共花费了约 20 个小时)。不过,与整个制作流程中的完整角色相比,巨魔的制作的局限性要大得多。但Gianluca认为巨魔非常适合用于新工具和个人项目的培训。其中从四分之三视角的二维概念出发创作角色,最具挑战性的是始终保持三维思维。如果仅仅依靠二维表现,很容易对姿势和比例产生错误判断。Gianluca希望这个角色能从不同的视角,而不仅仅是从正面,都能很好地发挥作用,并能让他输出一个漂亮的转身。


from:Renderbus瑞云渲染(renderbus . com)

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

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

相关文章

tp5连接多个数据库

一、如果你的主数据库配置文件都在config.php里 直接在config.php中中定义db2&#xff1a; 控制器中打印一下&#xff1a; <?php namespace app\index\controller; use think\Controller; use think\Db; use think\Request; class Index extends Controller {public fun…

腾讯mini项目-【指标监控服务重构-会议记录】2023-07-06

7/6 会议记录 Profile4个步骤 解压kafka消息初始化性能事件&#xff0c;分析事件将数据写入kafkaRun 开始执行各stage handler 上报耗时到otel-collector。。。 // ConsumerDispatchHandler consumer // // param msg *sarama.ConsumerMessage // param consumer *databus.K…

Spring实现简单的Bean容器

1.BeanDefinition&#xff0c;用于定义 Bean 实例化信息&#xff0c;现在的实现是以一个 Object 存放对象 public class BeanDefinition {/*** bean对象*/private Object bean;/*** 存放 &#xff08;定义&#xff09;Bean 对象*/public BeanDefinition(Object bean) {this.bea…

折线图geom_line()参数选项

往期折线图教程 图形复现| 使用R语言绘制折线图折线图指定位置标记折线图形状更改 | 绘制动态折线图跟着NC学作图 | 使用python绘制折线图 前言 我们折线的专栏推出一段时间&#xff0c;但是由于个人的原因&#xff0c;一直未进行更新。那么今天&#xff0c;我们也参考《R语…

吃鸡达人分享顶级作战干货,让你的战斗力爆表!

大家好&#xff01;作为一位专业吃鸡行家&#xff0c;我将为大家分享一些热门话题和实用干货&#xff0c;帮助你提高游戏的战斗力&#xff0c;让你在绝地求生中立于不败之地&#xff01; 首先&#xff0c;让我们来谈谈绝地求生作图工具推荐。我们推荐使用一款专业的作图工具&am…

SpringMVC 学习(一)Servlet

本系列文章为【狂神说 Java 】视频的课堂笔记&#xff0c;若有需要可配套视频学习。 1. Hello Servlet (1) 创建父工程 删除src文件夹 引入一些基本的依赖 <!--依赖--> <dependencies><dependency><groupId>junit</groupId><artifactId>…

VSCode 配置 Lua 开发环境(清晰明了)

概述 由于 AutoJS 学得已经差不多了&#xff0c;基本都会了&#xff0c;现在开始向其他游戏脚本框架进发&#xff0c; Lua 语言很强大&#xff0c;就不多说&#xff0c; 按键精灵、触动精灵等等都是用该语言编程脚本的&#xff0c;由于按键精灵、触动精灵 和 AutoJS 类似,不是…

CHATGPT中国免费网页版有哪些-CHATGPT中文版网页

CHATGPT中国免费网页版&#xff0c;一个强大的人工智能聊天机器人。如果你曾经感到困惑、寻求答案&#xff0c;或者需要一些灵感&#xff0c;那么CHATGPT国内网页版可能会成为你的好朋友。 CHATGPT国内免费网页版&#xff1a;你的多面“好朋友” 随着人工智能技术的不断发展&a…

Docker版部署RocketMQ开启ACL验证

一、拉取镜像 docker pull apache/rocketmq:latest 二、准备挂载目录 mkdir /usr/local/rocketmq/data mkdir /usr/local/rocketmq/conf 三、运行 docker run \ -d \ -p 9876:9876 \ -v /usr/local/rocketmq/data/logs:/home/rocketmq/logs \ -v /usr/local/rocketmq/data…

基于微信小程序的场地预约系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言系统主要功能&#xff1a;具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序&#xff08;小蔡coding&#xff09;有保障的售后福利 代码参考源码获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计…

【Linux】Linux进程控制

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;Linux &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 上一篇博客&#xff1a;【Linux】…

c++ 使用rapidjson对数据序列化和反序列化(vs2109)

RapidJSON是腾讯开源的一个高效的C JSON解析器及生成器&#xff0c;它是只有头文件的C库&#xff0c;综合性能是最好的。 1. 安装 在NuGet中为项目安装tencent.rapidjson 2. 引用头文件 #include <rapidjson/document.h> #include <rapidjson/memorystream.h> #…

java进阶-Netty

Netty 在此非常感谢尚硅谷学院以及韩顺平老师在B站公开课 Netty视频教程 Netty demo代码文件 I/O 说NIO之前先说一下BIO&#xff08;Blocking IO&#xff09;,如何理解这个Blocking呢&#xff1f;客户端监听&#xff08;Listen&#xff09;时&#xff0c;Accept是阻塞的&…

使用SPY++查看窗口信息去排查客户端UI软件问题

目录 1、使用SPY查看窗口的信息 2、使用SPY查看某些软件UI窗口用什么UI组件实现的 2.1、查看海康视频监控客户端安装包程序 2.2、查看华为协同办公软件WeLink 2.3、查看字节协同办公软件飞书 2.4、查看最新版本的Chrome浏览器 2.5、查看小鱼易连视频会议客户端软件 2.6…

WindTerm 安装使用教程【图解】

往期回顾 MobaXtermMobaXterm 安装使用教程【图解】-CSDN博客WindTermWindTerm 安装使用教程【图解】-CSDN博客 一、WindTerm 功能介绍 WindTerm 是一款 Github 上开源的 SSH 终端工具&#xff0c;到目前为止它已经收获了 16.9K 颗星&#xff0c;它是完全可以比肩 MobaXterm 工…

C语言的学习快速入门

可以按照以下步骤进行&#xff1a; 了解基本概念和语法&#xff1a;C语言是一种结构化的编程语言&#xff0c;了解基本的语法规则对于入门非常重要。可以学习关键字、变量、数据类型、运算符、控制结构等基本概念。学习编程环境&#xff1a;选择合适的编程环境&#xff0c;例如…

Spring事务几种的集中原因

Spring事务失效的几种原因 Spring Boot 项目中事务失效的原因可以有多种&#xff0c;这些原因可能导致你的事务无法正常工作。以下是一些常见的事务失效原因的详细讲解&#xff1a; 不使用Transactional注解&#xff1a; 事务需要通过Transactional注解来声明&#xff0c;如果…

基于yolov5的ignore classes训练

本文提到的忽略类别和检测中的忽略类别不一样&#xff0c;前者是在训练中加入忽略类&#xff0c;后者是在检测中仅检测想要的类。 ignore class的定义 我们在标注数据集的时候都是标注的正样本&#xff0c;训练过程中也是这样训练&#xff0c;让网络对正样本计算loss。但我们…

五、C#—字符串

&#x1f33b;&#x1f33b; 目录 一、字符串1.1 字符类型1.2 转义字符1.3 字符串的声明及赋值1.3.1 c# 中的字符串1.3.2 声明字符串1.3.3 使用字符串1.3.4 字符串的初始化1.3.4.1 引用字符串常量之初始化1.3.4.2 利用字符数组初始化1.3.4.3 提取数组中的一部分进行初始化 1.3.…

R的一些奇奇怪怪的功能

1. 欧氏距离计算 df <- data.frame(x 1:10, y 1:10, row.names paste0("s", 1:10)) euro_dist <- as.matrix(dist(df))2. 集合运算 union(x, y) # 并集 intersect(x, y) # 交集 setdiff(x, y) # 只在x中存在&#xff0c;y中不存在的元素 setequal(x, y)…