zoukankan      html  css  js  c++  java
  • 关于Unity中的几何体,材质和FBX模型

    一、创建几何体的类型

    1: 创建平面 Plane;
    2: 创建立方体 Cube;
    3: 创建球体 Sphere;
    4: 创建胶囊体 Capsule;
    5: 创建圆柱体 Cylinder;
    6: 3D文字 3D text;

    创建出来的几何体,自带这些组件:

    1.transform

    2.Mesh Filter:网格

    3.Collider:碰撞体

    4.Mesh Renderer:网格绘制,把材质拖进Material属性中就可以绘制出几何体的图案

    二、材质

    在resources文件夹下面创建一个metarial文件夹,里面放几何体的材质球。

    一般是先创建材质球,把贴图拖进材质球的贴图属性中,然后在几何体中的材质属性栏,把贴好图的材质球拖进去,几何体才可以显示纹理,

    还有一种方法就是直接把贴图拖到scene视图的几何体上面,然后Unity编辑器会自动帮我们在Materials文件下面生成一个材质球。

    1.材质球的shader着色器

    shader着色器常用Standard和Mobiie/Diffuse模式

    (1)Standard模式

     Albedo:反射贴图,也就是材质的贴图

     Metallic:反射光线强度

    (2)Mobiie/Diffuse(使用的比较多)模式

     漫反射,用的是贴图的本色。

     Tiling:如果贴图属性Wrap Mode为Repeat,那么这里是设置平铺的个数,x=1,y=1:在x轴上贴图只显示1次,在y轴上贴图只显示1次。x=2,y=1:在x轴上贴图显示2次,在y轴上贴图只显示1次。足球场的制作。

         如果贴图属性Wrap Mode为Clamp,那么这里如果x=2,y=2:最后会显示一个四分之一的贴图与在右上角,其他位置用贴图拉伸填充。

     Offset

    2.贴图的属性

    Wrap Mode:Repeat平铺,Clamp拉伸

    Filter Mode:图片拉伸的算法,Point缩放时没有插值,效果差,Bilinear缩放时带插值,效果好。

    三、FBX模型导入

    在resources文件夹下面,以模型的名字命名一个文件夹,把相应的FBX和png贴图文件放进去,会自动帮我们生成一个材质文件夹。

    (导入前:FBX和图片文件,导入后:FBX,图片文件,模型文件,Materials 文件夹),使用FBX是因为美术和动画比较好

    1.各大工具导出到Unity的模型比例

    2.FBX文件里面记录的内容

     a.模型顶点坐标,三维的

     b.模型材质的纹理坐标[0,1]

     c.模型动画

    3.导入FBX和png文件到模型文件夹后自动生成的材质文件夹,里面的那个材质球可能没有正确关联到我们的贴图,这是因为材质球的命名不规范,这时候就需要手动关联贴图,Standard模式下,点击材质球的Albedo属性,选择对应的贴图。

    Mobiie/Diffuse模式下,点击图片,把贴纸放进去,再点击一些属性并变化(随便选),Materials Naming,Materials Search然后点击Apply应用就行了。

    如果是比较复杂的模型,没有关联好贴图

    可以先试一下改变复杂模型的Materials Naming,Materials Search属性看能不能自动导入。

    不行的话进行手动关联。

    手动关联的步骤:

    a.先把空的模型拖入场景。

    b.点击场景中的空模型的其中一个子节点BodyL。

    c.BodyL子节点的Materials属性里面的Element 0,Element 1表示的是这个子节点用到的材质球。

    d.在BodyL子节点的Inspector面板下,找到Element 0,Element 1对应的那两个材质组件。

    e.把Element 0,Element 1对应的那两个材质组件的模式改为Mobiie/Diffuse模式。

    f.把和BodyL子节点名字一样的图片BodyL.png(贴图)拖到Element 0,Element 1对应的那两个材质组件的图片的位置。

    但是美术一般都是自己先在Unity里面试好模型后,交给程序员的,所以模型一般没什么问题,但是从网上下载下来的资源就会遇到命名不规范,必须自己手动导入的情况。

    如果是Standard模式,则贴图的显示的颜色是混合了贴图和自定义的颜色的,看起来有点奇怪

    如果是Mobiie/Diffuse模式,则贴图是显示原来的颜色,最佳的品质,但是性能消耗比较大

    4.一个模型下面有好多子节点,不可能是只有节点,这些节点也有自己的材质,有时候不确定是哪个贴图,可以看这些子节点的材质属性的名字。

    5.美术把资源文件夹Resources整个从Unity里面导出来,用的是Assets-->Export Package,最后生成一个XXX.Package文件

     程序员用的是Assets-->Import Package,把XXX.Package文件导进来可以直接用

     其实Export Package还可以一起打包资源,脚本和场景,可以打包一整个项目,所以看到XXX.Package文件就应该知道这是别人打包好的东西,可以直接导入。

  • 相关阅读:
    PHP保留小数的相关方法
    ASP.NET Core MVC 之过滤器(Filter)
    ASP.NET Core MVC 之控制器(Controller)
    ASP.NET Core MVC 之视图组件(View Component)
    ASP.NET Core MVC 之局部视图(Partial Views)
    标签助手(TagHelper)
    ASP.NET Core MVC 之布局(Layout)
    ASP.NET Core MVC 之视图(Views)
    ASP.NET Core MVC 之模型(Model)
    九卷读书:淘宝从小到大的发展 -重读《淘宝技术这十年》
  • 原文地址:https://www.cnblogs.com/HangZhe/p/6832404.html
Copyright © 2011-2022 走看看