使用 Maya Mari 设计 3D 波斯风格道具(p1)
今天瑞云渲染小编给大家带来了Simin Farrokh Ahmadi 分享的Persian Afternoon 项目过程,解释了 Maya 和 Mari 中的建模、纹理和照明过程。

介绍
我的名字是西敏-法罗赫-艾哈迈迪,人们都叫我辛巴 在我十几岁的时候,我就意识到我喜欢艺术和创造力,当时我决定在德黑兰的艺术学院学习平面设计,读高中。然后,我追求我对空间设计的热情,获得了室内设计的学士学位,随后在伊朗和阿联酋从事了近十年的设计和档案工作。
当我被邀请在几部故事片中担任场景设计经理时,我的职业生涯发生了激动人心的转变,这次经历将我引入了多媒体世界。在新发现的兴趣的激励下,我攻读了动画专业的硕士学位,并开始制作获奖的短片,包括由赛义德-M-塔巴塔贝伊执导的《光影》。搬到蒙特利尔后,我参与了世界上扩展现实的内容创作,也参与了用户体验设计。然而,我的生活中缺少一些东西--创造视觉上令人惊叹的资产和环境的乐趣,特别是为游戏。
从小到大,我几乎每天都在玩游戏,或者沉浸在游戏攻略中,被那些复杂的细节所吸引,思考他们迷人的视觉效果背后的创意过程。最后,我抓住机会,抛开工作,开始探索Blender和Procreate作为我艺术创作的工具。几个月后,在2023年1月,一个改变生活的事件发生了,我获得了华纳兄弟公司Discovery Access Canada Doers and Dreamers数字艺术奖学金,目前我在Think Tank培训中心学习游戏的CG资产创作;道具和环境,向实现我的梦想迈出了重要一步。

灵感的来源
作为一名伊朗艺术家,我一直想为我的波斯根源和文化作出贡献。甚至在报名参加TTTC课程之前,我就积极从波斯艺术和建筑中寻找灵感。一幅特别的作品让我产生了深刻的共鸣,那就是《波斯的下午》,这是马努切尔-马勒克沙希的一幅精致的布面油画,在我看到它的那一刻就被它的情绪吸引住了。
对我来说,它体现了一种深刻的波斯式怀旧感;地毯的复杂图案、经典的椅子和柏油乐器的存在把我带到了一个不同的时间和地点。我几乎能听到正在演奏的旋律,伴随着波斯家庭就他们的日常生活进行热烈交谈的声音。这幅画确实令人着迷,尽管我知道在重现这幅画时我将面临许多挑战,但我急切地接受了这个机会。我有4周多一点的时间来完成这个项目,所以开始了安排和收集参考图片的过程,以便对物体进行建模和创建材料! 我喜欢用PureRef在一块板上看到我所有的视觉参考。

建模
我在Maya中进行建模。最初的关键步骤是在Maya中对准我的相机,使之与参考图像的视角一致。你可以在这里看到相机视图和透视图。图像中的所谓地板透视和Maya中的地板网格应该准确对齐。

试着把几个立方体放在摄像机视图工作区的不同位置,让它们与场景中的一些物体对齐。在这一步上值得花时间,否则你可能会在今后的透视对准中面临很多潜在的问题。我用同样的方法在一个单独的Maya文件中为焦油建模。对同一个物体有三个视图是为物体建模的最好方法。

、
为了创建指板上的短弦,我使用了指板本身的一些边缘环,并尝试 "修改/转换/多边形边缘为曲线"。较长的琴弦拉结是螺旋网状的。

对我来说,建模中要求最高的部分是复制扶手椅上的花纹木制品。为了实现这一点,我主要依靠绘制EP曲线,并使用将画笔附加到曲线工具上,同时玩弄压力映射参数。这样我就可以根据需要对曲线的形状和宽度进行微调。为了优化我的工作流程,我做了几个主要的曲线形状,并尝试调整这些初始形状来生成各种剪影。这种方法使我能够有效地探索不同的形式,而不必每次都从头开始。
全局比例显示你的曲线的最宽部分。另外,在压力刻度中,记得把压力图1放到刻度中。一旦你对曲线的形状感到满意,进入 "修改/转换/绘画效果到多边形",然后应用一个临时的Lambert,这样你就可以正确地看到你的网格了

我使用了带有曲线节点的MASH,将按钮分布在木制品周围。地毯是一个长方形平面,宽度和高度都有大约15个细分。在建模阶段,我尝试拉动和推动顶点,以达到类似于参考图片的粗略形状。为了添加流苏,我在Maya中使用了XGen。在将XGen原形转换为多边形后,我使用Lattice来修改发丝,并按照我的要求塑造它们。然后我用与木制品相同的方法创建了一个结的形状。下面是实施这些修改之前和之后流苏的样子。

为了获得眼镜片的厚度效果,并强调眼镜片后面纸张的扭曲形象,我夸大了凸起的形状。

我把整个场景做成了四面体,这需要解决一些难题以避免Ngons和三角形的出现。然而,这个挑战为封锁阶段增加了一个有趣的元素。在抛光阶段,我把重点放在加强网格上,在需要的地方添加支撑边环。这是建模阶段结束时的最终线框图。

在雕刻和纹理阶段之前,我需要开始UV解包过程。我使用了平面、基于相机、球形和自动投影来为场景中的不同物体创建UV。为了保持一致性,我使用了 "获取Texel密度",将墙壁/地板和地毯作为 "设置Texel密度 "的最大对象,用于其余对象。下面是我的UV解包的快速浏览:

为了方便解包过程,我利用了UV工具包中的各种工具,如布局、分布、拼接和展开。这是完成UV解包后的最终结果。

为了给扶手椅的垫子引入皱纹,并完善地毯,我将网格以OBJ的形式导入Mudbox。我使用了 "蜡"、"抓取"、"平滑 "以及 "雕刻工具 "中的 "皱纹印记 "来使网格看起来更加逼真。你可以将你的相机从Maya导出为FBX文件,并将其导入Mudbox中,以获得与Maya中相同的相机视图。只要在Mudbox中右键点击导出的摄像机,然后点击查看。确保锁定摄像机本身,其平移、缩放和旋转。
雕刻阶段完成后,我尝试使用V-Ray位移图将数据转移到Maya中的低聚网格上。在V-Ray属性中添加细分、位移控制和细分与位移质量,并记得在额外的V-Ray属性中添加纹理输入伽马和允许负值颜色与线性色彩空间,以获得32位FP贴图。下面是雕刻过程前后的对比:


上篇先说到这里,下篇会继续讲述Persian Afternoon 项目过程的纹理和灯光渲染方面内容。
本文《使用 Maya & Mari 设计 3D 波斯风格道具(p1)》内容由Renderbus瑞云渲染-云渲染平台整理发布,如需转载,请注明出处及链接:https://www.renderbus.com/share/post-id-1531/
相关文章:

使用 Maya Mari 设计 3D 波斯风格道具(p1)
今天瑞云渲染小编给大家带来了Simin Farrokh Ahmadi 分享的Persian Afternoon 项目过程,解释了 Maya 和 Mari 中的建模、纹理和照明过程。 介绍 我的名字是西敏-法罗赫-艾哈迈迪,人们都叫我辛巴 在我十几岁的时候,我就意识到我喜欢艺术和创造…...

Redis分布式问题
Redis实现分布式锁 Redis为单进程单线程模式,采用队列模式将并发访问变成串行访问,且多客户端对Redis的连接并不存在竞争关系Redis中可以使用SETNX命令实现分布式锁。当且仅当 key 不存在,将 key 的值设为 value。 若给定的 key 已经存在&…...

synchronized原理
目录 一、基本特点 二、加锁过程 2.1、偏向锁 2.2、轻量级锁 2.3、重量级锁 三、其它的优化操作 3.1、锁消除 3.2、锁粗化 一、基本特点 synchronized有以下特性: 开始是乐观锁,如果锁冲突频繁,就转换为悲观锁。开始是轻量级锁,…...
10G光模块能兼容千兆光口吗
当涉及到光网络设备和光模块的兼容性时,确保正确的匹配是至关重要的。本期文章内容,我们将探讨10G光模块与千兆光口之间的兼容性。 一、10G光模块和千兆光口的基本概念 首先,我们需要了解10G光模块和千兆光口的基本概念。10G光模块是一种用…...
css 显示省略号 和 动态显示省略号
省略是非常常见的功能。 简单的实现省略号 下面的代码就可以实现省略号,超过宽度的时候就会出现省略号 .text-name{//宽高是一定要设置的不然是会无效延伸的width: 200rpx;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;}稍微复杂点的情况&#…...
LeetCode 1253. 重构 2 行二进制矩阵
【LetMeFly】1253.重构 2 行二进制矩阵 力扣题目链接:https://leetcode.cn/problems/reconstruct-a-2-row-binary-matrix/ 给你一个 2 行 n 列的二进制数组: 矩阵是一个二进制矩阵,这意味着矩阵中的每个元素不是 0 就是 1。第 0 行的元素之…...
【八股】【C++】内存
这里写目录标题 内存空间分配new和delete原理C有几种newmalloc / free 与 new / delete区别malloc和free原理?delete和delete[]区别?C内存泄漏malloc申请的存储空间能用delete释放吗?malloc、calloc函数、realloc函数C中浅拷贝与深拷贝栈和队列的区别C里…...
数据库G等待
> db^Cgbasedbtpc:~$ dbaccess db10 -Database selected.> call insert_t();Routine executed.Elapsed time: 811.630 sec 磁盘逻辑日志,无BUF库> ^Cgbasedbtpc:~$ gbasedbtpc:~$ dbaccess db10 -Database selected.> call insert_t();Routine executed.Elapse…...
PCB封装设计指导(一)基础知识
PCB封装设计指导(一)基础知识 PCB封装是PCB设计的基础,也是PCB最关键的部件之一,尺寸需要非常准确且精确,关系到设计,生产加工,贴片等后续一系列的流程。 下面以Allegro为例介绍封装创建前的一些基础知识 1.各个psm文件代表什么 mechanical symbol 是.bsm Package sy…...
Flask框架之Restful--介绍--下载--基本使用
目录 Restful 概念 架构的主要原则 适用场景 协议 数据传输格式 url链接规则 HTTP请求方式 状态码 Restful的基本使用 介绍 优势 缺点 安装 基本使用 注意 Restful 概念 RESTful(Representational State Transfer)是一种用于设计网络应用…...

2023年上海市浦东新区网络安全管理员决赛理论题样题
目录 一、判断题 二、单选题 三、多选题 一、判断题 1.等保1.0至等保2.0从信息系统拓展为网络和信息系统。 正确 (1)保护对象改变 等保1.0保护的对象是信息系统,等保2.0增加为网络和信息系统,增加了云计算、大数据、工业控制系统、物联网、移动物联技术、网络基础…...

SQL语言的四大组成部分——DCL(数据控制语言)
1️⃣前言 SQL语言中的DCL(Data Control Language)是一组用于控制数据库用户访问权限的语言,主要包括GRANT、REVOKE、DENY等关键字。 文章目录 1️⃣前言2️⃣DCL语言3️⃣GRANT关键字4️⃣REVOKE关键字5️⃣DENY关键字6️⃣总结附࿱…...

ChatGPT新功能曝光:可记住用户信息、上传文件和工作区
🦉 AI新闻 🚀 ChatGPT新功能曝光:可记住用户信息、上传文件和工作区 摘要:一张神秘截图曝光了ChatGPT新功能,包括可记住用户信息的"My profile"、上传和管理文件的"My files"以及可以让AI使用不…...

【Unity编辑器扩展】(三)PSD转UGUI Prefab, 一键拼UI解放美术/程序(完结)
工具效果: 第一步,把psd图层转换为可编辑的节点树,并自动解析UI类型、自动绑定UI子元素: 第二步, 点击“生成UIForm"按钮生成UI预制体 (若有UI类型遗漏可在下拉菜单手动点选UI类型): 验证一键生成UI效果: 书接上…...

SpringBoot开发Restful风格的接口实现CRUD功能
基于SpringBoot开发一个Restful接口 前言一、什么是SpringBoot?二、实战---基于SpringBoot开发一个Restful接口1.开发前的准备工作1.1 添加相关依赖 (pom文件) 1.2 创建相关数据库和表1.3 数据库配置文件 2.实战开发---代码逻辑2.1 实体类2.2…...

【Servlet学习三】实现一个内存版本的简易计算器~
目录 一、方式1:使用form表单的形式(不推荐) 🌈1、前端代码:HTML文件 🌈2、后端代码:Calculator_form.java文件 🌈3、最终效果 二、方式2:使用ajax形式(…...
Linux c语言获取本机网关 ip 地址
文章目录 前言一、获取本机网关 ip 地址1.1 代码示例1.2 代码详解介绍 二、使用Netlink套接字实时监控网络事件2.1 简介2.2 示例代码 前言 这篇文章写了获取本机的ip地址和子网掩码:Linux c语言获取本机 ip、子网掩码 一、获取本机网关 ip 地址 使用Netlink套接字…...

nginx部署本地项目如何让异地公网访问?服务器端口映射配置!
接触过IIS或apache的小伙伴们,对nginx是比较容易理解的,nginx有点类似,又有所差异,在选择使用时根据自己本地应用场景来部署使用即可。通过一些对比可能会更加清楚了解: 1.nginx是轻量级,比apache占用更少…...

云时代已至,新一代数据分析平台是如何实现的?
2023 年 5 月,由 Stackoverflow 发起的 2023 年度开发者调查数据显示,PostgreSQL 已经超越 MySQL 位居第一,成为开发人员首选。PostgreSQL 在国内的热度也越来越高。6 月 17 日,PostgreSQL 数据库技术峰会在成都顺利召开。本次大会…...

【C#】简单聊下Framework框架下的事务
框架用的多了,之前版本的事务都忘记了。本次简单聊下.net framework 4.8框架下本身的事务 目录 1、SqlClient2、TransactionScope3、引用 1、SqlClient 在 C# 中,使用 using 块可以方便地实现对资源的自动释放,但它不适用于实现事务处理。为…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...

ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
LangChain 中的文档加载器(Loader)与文本切分器(Splitter)详解《二》
🧠 LangChain 中 TextSplitter 的使用详解:从基础到进阶(附代码) 一、前言 在处理大规模文本数据时,特别是在构建知识库或进行大模型训练与推理时,文本切分(Text Splitting) 是一个…...