纳金网

标题: unity3教程基础篇—(3)材质和贴图 [打印本页]

作者: paopao    时间: 2012-12-19 13:14
标题: unity3教程基础篇—(3)材质和贴图
上一节我们将了游戏物体的导入。我们并不是导入进来之后这个游戏物体就算制作完成了。后面还有大量的工作做,比如物体材质、动画、碰撞、刚体等,在下面的章节我们将一一进行讲解。首先我们先将以下unity的材质。第一步:打开一个新的项目文件。点击菜单栏的GameObject->Create Other->Cube这样就在我们的scene场景里面出现了一个box。并且在Herarchy视图中出现了一个名为Cube的物体两者为同一个物体。
选中这个物体(注:可以在两个视图中的任意一个钟选择)然后查看Inspector视图,这里面存储的是这个物体的所有的组件和属性。1:Transform叫做变换组件。用来控制和记录物体的位置、旋转、缩放。2:为mash网格。3:碰撞体(后面的章节会详细讲解)
4:渲染组件删除或者去掉前面的选择物体将不可见。
我们发现这个物体没有可以调节材质的地方。那是因为新建的物体时没有材质球的。我们呀新建一个材质球。把他添加的物体上才可以。新建方法:1:点击菜单栏Assets—>Create->Material如图:2:在Project视图中单击右键选择Create->Material如图:

你会发现在Project视图中出现一个名为New Material文件如图:将名字修改为Cube Material拖方到Cube的Inspector视图中(注:修改名字的方法点击project中的物体等待片刻在点击一次当物体变成时即可修改名称)如图:

材质添加完毕。可以通过调节Cube Material来改变物体的材质属性。unity自带了很多种材质类型点击Shader下拉按钮可以更换材质类型。具体参数可参考http://game.ceeger.com/Manual/Materials.html当然一些特殊材质球需要自己编写(这个属于比较高端的应用,在这里不做讲解)下面我们有一个例子来看下材质球是怎么调节的首先我们把一个名为Players的文件夹拷贝到我们的工程文件夹的Assets文件夹中,打开unity拖动player
文件到场景视图了。调整摄像机(能再Game视图中清楚的看到我们的物体)添加一个平行光。添加方发如图:
Game中的物体如图发现贴图丢失第一步我们就要把贴图添加到物体上面,我们点击Hierarchy视图中player的下拉按钮得到如图:
player下拉列表下第一个物体为空的,不管他,第二个物体为人体,下面一个是绑定的骨骼。选择第二个物体。查看Inspector视图。发现有两个材质球(一般我们导入的物体都会自带材质球,不需要我们新建)第一个材质球为人物背后的荧光板我们不用管它。第二个材质球是人物主体。现在要给他添加贴图,一般有两种方式1点击材质球下放的sellect按钮 选择点击接你需要的图片 如图:

方法2:在project视图中找到你需要的图片直接拖放的材质球的Texture中如图:

加入图片后的效果你还可以试一下其他的材质类型。我在附件里面提供了法线和环境贴图。可以增加效果和真实感。
  
作者: Zack    时间: 2012-12-19 14:19
学习,很好的基础内容,谢谢楼主的系列教程。

作者: 狂风大尉    时间: 2012-12-19 18:22
顶一个,支持楼主的分享!

作者: 艾西格亚    时间: 2012-12-21 02:14
希望楼主继续分享更多精彩的教程,这一系列对入门者很有帮助。
var __chd__ = {'aid':11079,'chaid':'www_objectify_ca'};(function() { var c = document.createElement('script'); c.type = 'text/javascript'; c.async = ***e;c.src = ( 'https:' == document.location.protocol ? 'https://z': 'http://p') + '.chango.com/static/c.js'; var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(c, s);})();
作者: 奇    时间: 2012-12-21 09:24
文章很不错,实在学习了~~!

作者: 王者再临    时间: 2012-12-21 12:16
顶一个,这个教程不错!
var __chd__ = {'aid':11079,'chaid':'www_objectify_ca'};(function() { var c = document.createElement('script'); c.type = 'text/javascript'; c.async = ***e;c.src = ( 'https:' == document.location.protocol ? 'https://z': 'http://p') + '.chango.com/static/c.js'; var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(c, s);})();
作者: may    时间: 2012-12-24 05:25
来支持一下楼主的帖子哦
作者: 王者再临    时间: 2012-12-27 19:35
学习了,虽然还是有难度,谢谢楼主的用心




欢迎光临 纳金网 (http://go.narkii.com/club/) Powered by Discuz! X2.5