【Unity基础】2.网格材质贴图与资源打包

这篇具有很好参考价值的文章主要介绍了【Unity基础】2.网格材质贴图与资源打包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 【Unity基础】2.网格材质贴图与资源打包

    大家好,我是Lampard~~

    欢迎来到Unity基础系列博客,所学知识来自B站阿发老师~感谢 

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

(一)网格材质纹理

    第一次接触3D物体的话,会觉得好神奇啊,这个物体究竟是由什么组成的呢?其实3D物体基本就是由网格,材质和纹理3个部分构成的

(1)网格

    那什么是网格?首先需要知道我们看到的3D物体,实际上是由一个个小的三角形组成的,我们可以在Unity编译器中,在Scene页签下方选择一种Shaded Wireframe图形线框模式,就可以很清晰的看到了,三角形的数量越多,图形越精致同时GPU的渲染压力越大,像一个球就需要多个三角形来组成,而一个立方体只需要12个三角就可以了

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     无论是球还是正方体,都是由一个个小三角形组成。那问题很多的同学可能会问,为什么是三角形呢?我立刻ChatGpt一下:

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    因为三角形可以在几何上更加精确地描述物体的形状和表面细节。此外,三角形也更容易处理和渲染,因为它们具有确定的顶点和法线。虽然四边形和其他多边形也可以用于建模,但在使用现代渲染技术时,三角形仍然是最常见的面形式

    额,绕远了...好所以网格是什么呢?其实就是描述这些一个个三角形,顶点数据,纹理坐标,法线信息等等的一些数据来描述一个物体的表面。之前我们学openGL的时候有接触到【openGL2021版】obj格式文件

(2)材质

    好了什么是材质呢?

物体的物质的性质、特征或组成。材质可以是金属、塑料、木材、玻璃、陶瓷、纺织品等等。正确选择材质可以决定物体的质量、外观、特性和使用寿命。材质也可以用于表示3D模型的外观和质感。在计算机图形学中,材质通常用纹理、颜色、反射率、粗糙度、透明度等参数来描述

     简单来说,足球和保龄球长得不一样吧?虽然都是个球,但是我们要怎么表现它们的不同,那就是材质的作用

     在Unity中,我们可以给物体新建一个材质挂上去:首先在Assert目录下右键选择create创建,然后在目录下选中Material材质

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    材质有很多属性,我们先对其Albedo反照率(颜色),进行设置选一个喜欢的颜色就可以。下面我就创造了一个红色和一个蓝色材质

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     那怎么让我们场景中的物体使用这个材质呢?很简单啊,直接拖过去就行:

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     哇,一下就变色了,是不是很神奇。设置完之后我们可以看到,物体右侧的组件中,Mesh Renderer 网格渲染中,就多了一个我们刚才创建的材质信息

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    这里有一个小对勾,如果我们取消勾选,那么这个物体就不会被渲染出来

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     总而言之,材质的作用,就是使物体看起来更真实,记录如像金属一样的光泽,像玻璃一样的反射,表面带有什么花纹,是否有凹槽突起等信息

(3)纹理贴图

   那纹理又是啥呢?因为我们现实生活中,物体很少会遇到纯色的。肯定每一个物体,甚至物体的每一个地方都有区别,纹理也是材质的一个属性

    那怎么实现这个效果呢?就需要美术同学出一张纹理图,来展示这个物体的长相。我们刚才说到网格中会存在纹理坐标,就是为了描述每个小三角形对应纹理的那一块区域用的

    为了展示我去百度找了一个地球的纹理更直观些,看上去就像摊开的地球对吧~

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

Albedo反照率贴图

     那如果我想把这个纹理挂到unity上面的物体中需要怎么做呢?我们只需要把纹理资源拖到Assert目录下

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    然后在材质设置反照率的左侧有一个小按钮,点开就可以选中我们的纹理,给物体添加皮肤啦~

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

Normal Map 法线贴图

    比如我们要创建一个铁锈状的物体,首先需要给物体贴上albedo材质皮肤

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

   把这个材质挂在cube上,我们可以看到这个矩形就有了一些锈迹,但感觉还是差了一些东西

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    差什么呢?没错就是那种凹凸不平的感觉,而我们的法线贴图就是干这个活的。我们给材质的normalMap属性附上法线贴图,效果明显就真是了很多

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

Metallic和Specular

    我们可以看到编辑器中还有Metallic和Specular两个属性

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     Metallic代表的是物体的金属度,属性值越靠近0则代表越不像金属,越靠近1则代表越像金属

     Specular是光滑度,0越光滑,1越粗糙,大家可以拖动进度条试一下~

(二)导入和导出资源包

(1)资源目录

    Unity的资源(模型,场景,脚本)等都保存在Assert目录下,我们随便选中一个资源,右键Show In Explore就可以在Window文件夹中看到我们的资源目录

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    燃鹅,我们除了看到在编辑器创建的文件之外还看了许多奇奇怪怪的.meta文件,这都是啥?

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

     遇事不决问GPT:

在Unity中,每个资源文件(如场景、材质、纹理、声音等)都会有一个对应的meta文件。这个meta文件包含了资源的相关信息,如名称、UUID、依赖项、标签、修改时间等。

meta文件的主要作用是为了让Unity在处理资源时更加高效和可靠。具体来说,meta文件可以:

1. 确认资源的唯一性:由于Unity中允许多个文件使用相同的名称,meta文件的唯一UUID可以确保每个资源都具有唯一的身份信息。

2. 记录资源的依赖关系:meta文件可以记录资源之间的依赖关系,当一个资源被修改时,Unity可以自动更新依赖该资源的其他资源。

3. 存储资源的编辑状态:meta文件可以记录资源的编辑状态,包括最后一次修改的时间、作者、标签、注释等,方便开发者进行版本管理和协作开发。

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    简单来说就是一个资源文件的Log,由unity引擎自身管理,需要注意的是,如果删除了meta文件,Unity会重新生成一个新的meta文件,但是这个新文件的UUID可能与之前的不同,导致资源的引用出现问题。因此,一般不建议手动删除meta文件

(2)导出资源

    OK如果我们在一个场景辛辛苦苦编译好的内容,想分享给别人需要如何处理呢?很简单只需要右键Export package就可以了

    比如我想把整个Assert的内容分享出去,那就右键Assert文件夹,然后导出

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

    导出后可以看到一个unitypackage后缀的文件,这就是我们资源的所有信息

(3)导入资源

    嗯...导入这个资源包的方式大家不妨猜一下。没错!就是拖进去哈哈哈哈哈哈哈~方便展示我们先创建一个新的空项目,然后再拖进去就可以看到我们的资源啦:

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包

好啦今天就到这里,感谢阅读!!!
点赞,关注!!!

unity 塑料材质,Unity原理,unity,材质,游戏引擎,资源包文章来源地址https://www.toymoban.com/news/detail-814459.html

到了这里,关于【Unity基础】2.网格材质贴图与资源打包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Three.js 设置模型材质纹理贴图和修改材质颜色,材质透明度,材质网格

    1 traverse (模型循环遍历方法) 2. THREE.TextureLoader(用于加载和处理图片纹理) 3. THREE.MeshLambertMaterial(用于创建材质) 4. getObjectByProperty(通过材质的属性值获取材质信息) 在上一篇 Three.js加载外部glb,fbx,gltf,obj 模型文件 的文章基础上加入onSetSystemModelMap (设置模型材质方法

    2024年02月13日
    浏览(54)
  • Unity制作二次元卡通渲染角色材质——3、高光反射与ILM贴图

    Unity制作二次元材质角色 回到目录 大家好,我是阿赵。 这里继续来讲二次元角色的材质。上次讲了光影的色阶化问题,这次继续讲光照模型效果的问题。 之前我们说过,光照模型的最后效果是: 环境色+漫反射+高光+反射。 这里我们可以先忽略环境光,然后之前做了漫反射

    2024年02月11日
    浏览(65)
  • 【Unity Shader】从入门到着魔(1)基本概念:什么是网格?材质?Shader?

    如上图,模型的三角形面就叫做网格(Mesh),网格的本质是一堆顶点数据的规则排序,在Unity和UE中由三角形表示,Maya等DCC软件(Digital Content Creation)中则通常由四边形表示(俩个三角形刚好组成一个四边形)。 在Unity中我们新建一个Cube,

    2024年02月09日
    浏览(44)
  • 【Unity Shader】从入门到感慨(1)基本概念:什么是网格?什么是材质和Shader?

    如上图,模型的三角形面就叫做网格(Mesh),网格的本质是一堆顶点数据的规则排序,在Unity和UE中由三角形表示,Maya等DCC软件(Digital Content Creation)中则通常由四边形表示(俩个三角形刚好组成一个四边形)。 在Unity中我们新建一个Cube,

    2024年02月11日
    浏览(37)
  • 【Unity Shader】从入门到领悟(1)基本概念:什么是网格?什么是材质和Shader?

    如上图,模型的三角形面就叫做网格(Mesh),网格的本质是一堆顶点数据的规则排序,在Unity和UE中由三角形表示,Maya等DCC软件(Digital Content Creation)中则通常由四边形表示(俩个三角形刚好组成一个四边形)。 在Unity中我们新建一个Cube,

    2024年02月06日
    浏览(47)
  • Unity引擎打包AssetBundle后模型网格数据丢失问题

    大家好,我是阿赵。 在项目里面,有时候会遇到这样一个问题。在Unity编辑器里面编写了一个shader,在编辑器看,效果都是没有问题的。但如果把资源打包成AssetBundle后,会发现shader的表现不对了。遇到了这种问题的时候,一般人会各自的怀疑,怀疑是不是shader写得不对,导

    2024年02月07日
    浏览(53)
  • 技术笔记(7)Unity导入人物和场景资源,出现的材质显示问题

    Unity在导入的时候,识别到近似内容时,会用新的内容去替换同名shader的内容,而不是重新创建一个。这样就会导致第一个人物的材质显示异常,其本质是shader内容被替换了。 尝试了多次各种导入资源的方式,最终选择了一个妥协折中的方法。 在导入完第一个人物之后,就将

    2024年03月12日
    浏览(57)
  • 游戏基础常识 Unity的三种常见贴图

    Normal Map 法线贴图 看起来像蓝色的凹凸图用于体现模型细节 Diffuse Map 漫反射贴图 将平面图像福附着在3d模型上,使模型的像素按uv坐标显示贴图上的颜色信息,从而使模型拥有跟多的细节。漫反射贴图包含物体最基本的色彩信息 这就是我们实现游戏内换色的方法:更换这张贴

    2024年02月11日
    浏览(45)
  • Unity场景优化工具:Mesh Baker 基础教程(贴图篇)

    目录 前言 一、Mash Baker是什么? 二、使用步骤 1.打开场景 2.将Texture Baker添加到场景中 3.使用Texture Baker生成贴图集 4.烘焙新的模型并使每个模型独立 总结 模型贴图整合是3D游戏中美术资源优化的重要环节,我们通常把多个模型的贴图集成到一张2048大小的贴图集中,以达到减

    2024年02月02日
    浏览(43)
  • 逆向解Unity打包的代码和资源

            我之前说过用Unity打包发布apk包的时候要非常小心,加密和防逆向篡改,因为unity游戏太容易篡改或逆向出来了,所以代码混淆、加密等工作还是十分重要的。         这里我揪出来一个已经上线的棋牌游戏,根据解压缩apk后我发现有assetsbinDataManaged这个目录,

    2024年02月03日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包