Unity Hair 毛发系统 初体验

news2024/11/24 13:21:32

文章目录

  • 🎈 简介
  • 🎈 所需环境
  • 🎈 下载安装
  • 🎈 使用初体验
    • 🍭 创建一个Hair示例
    • 🍭 Hair Asset
    • 🍭 尝试给Avatar创建头发
    • 🍭 如何更改材质


🎈 简介

8月份的时候Unity官方发布了Hair毛发系统,提供了集头发创作、模型蒙皮、发丝模拟和头发渲染的一体化解决方案。

com.unity.demoteam.hair

Github地址:https://github.com/Unity-Technologies/com.unity.demoteam.hair

在此之前,Unity发布的新动画短片《Enemies》就集中展示了发丝解决方案的效果,毛发的渲染十分真实,感兴趣的可以去看一下。

在这里插入图片描述

Enemies短片:https://www.youtube.com/watch?v=eXYUNrgqWUU

🎈 所需环境

  • Unity 2020.2.0f1 +
  • Compute shader enabled platform
  • 支持现在常用的渲染管线(Built-in RPURPHDRP

🎈 下载安装

可以在Package Manager中通过Add package from git URL的形式下载导入。

Add package from URL
可以将Samples一起导入,方便看其示例:

Samples

🎈 使用初体验

所用环境:

  • Unity版本:2020.3.33
  • 渲染管线:Built-in RP

🍭 创建一个Hair示例

新建一个物体为其添加Hair Instance组件:

Hair Instance Component

可见需要一个Hair Asset类型的资产,通过Assets / Create / Hair / Hair Asset进行创建,并为其赋值,但是赋值后还没有看到任何效果,需要在该资产面板中点击Build strand groups

Hair Asset

Scene窗口查看生成的实例:

Hair Instance

🍭 Hair Asset

目前没有一个官方的文档说明,只能顾名思义来理解一下部分参数的含义。

  • Placement 这里理解为生成的位置
    • Primitive 原始的(默认)
    • Custom 自定义的
    • Mesh 根据Mesh网格生成

例如给其指定Sphere的网格,点击Build生成:

Mesh Placement

  • Strands
    • Strand Count 缕(数量)
    • Strand Partical Count
    • Strand Length 长度
    • Strand Length Variation 长度变动,理解为用来表现参差不齐的效果
  • Curls 卷发
    • Radius 半径
    • Slope 斜率

调整一些数值看一下效果:

Hair Asset

Hair Instance

🍭 尝试给Avatar创建头发

首先找到一个Avatar模型:

Avatar

Hair Assets中的Placement Mesh修改为这个Avatar模型的Head Mesh,调整一些参数:

Hair Asset

Hair Instance
将人物原来的头发隐藏,替换为生成的Hair Instance,并将其放在Avatar的头部骨骼节点:

Hair 替换

还挺飘逸的~ (黄色是GIF录制导致的,忽略~)

Hair Instance

🍭 如何更改材质

Hair Instance组件下,点击Defaults(All Groups)前面的按钮可展开:

更改材质

当然这里就要考验Shader功底啦,可以先直接更改最终输出颜色为黑色看一下:

Shader

修改颜色

参数比较复杂,感兴趣的可以调节其它参数试一下效果,还是比较有意思的~

Hair Instance

Hair Instance

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

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

相关文章

第7章 Elasticsearch面试题

7 . 1 为什么要使用Elasticsearch? 系统中的数据,随着业务的发展,时间的推移,将会非常多,而业务中往往采用模糊查询进行数据的搜索,而模糊查询会导致查询引擎放弃索引,导致系统查询数据时都是全表扫描&am…

即将见面:SpreadJS V16:重大改进

内容摘自互联网::::::: 新功能背景:在SpreadJS V16之前,关于文件toJSON()之后,生成的json文件太大,一直被很多客户诟病。例如,同样一…

PySide创建界面关联项目(五) 百篇文章学PyQT

本文章是百篇文章学PyQT的第五篇,本文讲述如何使用PySide创建UI界面,并且关联入PyCharm 新建的项目中成功运行第一个PyQT程序,博主在本篇文章中将遇到和踩过的坑总结出来,可以供大家参考,希望大家安装顺利。包括 安装、…

我的Vue组件化开发首个项目todolist

TodoList 学习笔记: 总结TodoList案例 1.组件化编码流程: (1).拆分静态组件:组件要按照功能点拆分,命名不要与htm|元素冲突。 (2).实现动态组件:考虑好数据的存放位置,数据是一个组件在用, 还是一些组件在用: . 1).-个组件在…

Vue简单实例——从webpack到vue,再到weex

这一章节,我们主要针对从webpack,vue,weex的框架结构上来说明对比这三个框架的区别 主要功能: webpack: webpack是前端项目工程化的具体解决方案。 它提供了友好的前端模块化开发支持,以及代码压缩混淆&…

基于身份的分段:三种技术路线解析与建议

SmartX 趋势分享 SmartX 趋势分享由 SmartX 团队内部分享的权威机构市场报告、全球重要媒体文章精选整理而成。内容涉及现代数据中心相关产业趋势以及金融、医疗、制造等行业全球用户需求与实践前沿洞察。在“零信任实践”系列的第一篇文章中,我们介绍了两种实现零信…

基于springboot“漫画之家”系统设计与实现-计算机毕业设计源码+LW文档

摘 要 随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息。为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代&a…

vue3+ts部分场景示例

模板语法 插值变量 div{{插值}}div const message: number 84; 指定变量为数字类型 const message: string小明 ; 指定字符串类型 const message: booleanfalse ; 指定布尔值类型 const message: any小明 ; any指定任意类型 const message: object{} ; 指定对象…

代码随想录算法训练营第七天|二叉树(截止到层序遍历)

二叉树的递归遍历 递归遍历是最简单的 // 前序 class Solution { public:void traversal(TreeNode* cur, vector<int>& vec) {if (cur NULL) return;vec.push_back(cur->val); // 中traversal(cur->left, vec); // 左traversal(cur->right, vec); //…

【高级篇】线程与线程池

一、线程回顾 1、初始化线程的 4 种方式 1&#xff09;、继承 Thread public static class Thread01 extends Thread{Overridepublic void run() {System.out.println("当前线程&#xff1a;"Thread.currentThread().getId());int i 10 / 2;System.out.println(&qu…

web前端期末大作业——HTML+CSS简单的旅游网页设计与实现

&#x1f468;‍&#x1f393;静态网站的编写主要是用 HTML DⅣV CSSJS等来完成页面的排版设计&#x1f469;‍&#x1f393;&#xff0c;一般的网页作业需要融入以下知识点&#xff1a;div布局、浮动定位、高级css、表格、表单及验证、js轮播图、音频视频Fash的应用、uli、下拉…

项目上云实战:如何把Java项目搬上云服务器?

1.中小型企业项目开发完成后应如何运行&#xff1f; 最近在后台私信中&#xff0c;很多小伙伴问询博主&#xff0c;中小企业项目开发完成后&#xff0c;是否在pc机上直接运行。答案是否定的&#xff0c;专业的软件开发企业都会选择linux服务器作为运行环境&#xff0c;企业服务…

[附源码]java毕业设计学生档案管理系统论文

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

基于java+springboot+mybatis+vue+elementui的毕业生信息招聘平台

项目介绍 随着我国教育改革的重大发展&#xff0c;越来越多的人都有了机会接受高等教育&#xff0c;同时每个大学生在毕业的时候都面临着一个重要的问题&#xff0c;那就是如何进行就业和找工作的问题&#xff0c;为了能够帮助更多的大学生找到适合自己的工作&#xff0c;我们…

m基于matlab的DQPSK调制解调技术的仿真

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 4进制的DPSK通常记为DQPSK。DQPSK信号编码方式如下表&#xff1a; 表中 θk是相对于前一相邻码元的相位变化。共有A、B两种方式。B方式中相邻码元间总有相位改变&#xff0c;故有利于在…

卡尔曼滤波器

卡尔曼滤波器 参考资料&#xff1a;https://www.bilibili.com/video/BV12P411V7pc/?spm_id_from333.337.search-card.all.click&vd_source2f16c81b2e6b252c304116c646e6512c 卡尔曼滤波器是线性滤波器 在这里插入图片描述 状态预测公式&#xff1a; x^t−Ftx^t−1Btut\h…

个人信息保护法vs国家标准,37项标准为个人信息加道“安全锁”~(附整理文档及pdf下载)

如何防止个人敏感信息“过度采集”&#xff1f; 如何禁止“大数据杀熟”&#xff1f; 如何避免“个性化服务”泄露隐私&#xff1f; 2021年11月1日&#xff0c;《中华人民共和国个人信息保护法》生效施行&#xff0c;为我们在网上冲浪时守护个人隐私安全。《个人信息保护法》…

HTML静态网页作业html+css+javascript+jquery水果商城7页

常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目, A…

怎么把Epub转换成PDF格式?分享两种简单好用的转换方法

怎么把epub格式的文件转换成PDF文件格式呢&#xff1f;这两种文件格式大家在下载文件的时候可能会经常遇到&#xff0c;PDF文件格式自然不用多说&#xff0c;这是大家办公必备文件&#xff0c;但是epub格式的文件是一种电子书格式的文件&#xff0c;很多小伙伴用不习惯&#xf…

Linux基本指令(一)

文章目录Linux常用基本指令1. ls2. pwd3. cd4. touch5. tree6. mkdir7. rmdir8. rm9. man10. cp11. mv12. cat13. echo14. wc15. more16. less17. head18. tail19. date20. cal21. sort22. uniq23. find24. which25. whereis26. alias27. grep28. zip/unzip29. tar30. bc31. un…