材质(Materials)用来把网格(Mesh)或粒子渲染器(Particle Renderers)贴到游戏对象上.他们在定义对象怎么被显示发挥重要组成部分.材质包括用于呈现网状或颗粒着色器的参考,所以这些组件不能在没有材质的情况下显示.Material这个需要结合Shader来讲,计算机图形学里本身就没有Material这个东西,引擎加入这个其实是在shader和主程序之间搭建了一座桥梁,可以说Material是一个着色器管理器,所以很多接口都是对shader的控制.这里我们先讲Materia…
之前一直在想如果要在Unity3d上创建很多个具有相同结构的对象,是如何做的,后来查了相关资料发现预设体可以解决这个问题! 预设体的概念: 组件的集合体 , 预制物体可以实例化成游戏对象. 创建预设体的作用: 可以重复的创建具有相同结构的游戏对象. .1下面来讲解一下如何制作一个简单的预设体(上下为流程和结果图): .2 创建多个prefabs_new(代码,结果图): using UnityEngine; using System.Collections; //[ExecuteInEditMo…
接物体的工具 using UnityEngine; using System.Collections; public class Tool : MonoBehaviour { float hor; Vector3 moveDir; public float moveSpeed = 3f; ; void Update() { hor = Input.GetAxis ("Horizontal"); //获取移动方向向量 moveDir = hor * Vector3.right; //移动…
虽然最近Unity2018版本推出了自己的瓦片地图,但是这个瓦片地图有点BUG,在场景内把瓦片地图铺好做成预制体,动态生成的时候居然丢失了碰撞体,于是我决定还是使用Tiled软件绘制地图并使用Tiled2Unity插件导入项目 Tiled下载地址 Tiled2Unity下载地址 给瓦片地图添加碰撞体 打开一个已经画好的地图(画的丑别介意), 现在我需要给树根加上碰撞体,防止角色走到上面去(角色的碰撞体在脚掌) 打开图块编辑器 选择一个图块,可以看到图块碰撞编辑器有几种工具 这里我们选择矩形工具,…
猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/46854411 项目中,有时候导入一些资源时候.须要相应创建材质球.假设每次自己动手创建.还是挺麻烦的,以下是怎样导入资源时候自己主动创建材质球. using UnityEngine; using System.Collections; using System.Collections.Generic; usin…
猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/46854411 项目中,有时候导入一些资源时候,需要对应创建材质球,如果每次自己动手创建,还是挺麻烦的,下面是如何导入资源时候自动创建材质球. using UnityEngine; using System.Collections; using System.Collections.Generic; using…
概念 静态碰撞体(Static Collider):物体勾选为静态Static,有Collider组件,无Rigidbody组件. 静态碰撞体的陷阱 Unity在游戏初始化时,会把所有的静态碰撞体合并为一个很大的Collider,Unity会认为这些物体在游戏中是不能移动的.但是若在游戏中不小心移动了这些静态碰撞体的位置(它们是可以被移动的),那么会导致一个严重的性能问题,所有那些与被移动的静态碰撞体合并到一起的其他静态碰撞体重新被计算. 所以在游戏中不要对静态碰撞体进行移动.禁用disable…
   using System.Collections; using System.Collections.Generic; using UnityEngine; public class NewBehaviourScript : MonoBehaviour { //滚动速度 public float HorSpeed = 1.0f; public float VerSpeed = 1.0f; //Offset偏移量 //水平滚动Offset.y public float HorMin = 1.…
MeshRenderer meshRenderer=gameObject.GetComponent<MeshRenderer>();                if(meshRenderer!=null){                    Material material=meshRenderer.material;                    if(material!=null){                        do something with mat…
1.    材质 一个材质结合一个几何体可以组成一个mesh对象.材质就像物体的皮肤,决定了几何体的外表.例如:皮肤定义了一个几何体看起来是否像金属.透明与否,或者显示为线框. 基本的材质如下: 1.属性介绍 1.1基础属性 这些属性是所有材质共有的.通过这些属性可以设置材质的透明度.是否可见以及如何被引用(ID或自定义名称). 1.2.融合属性 融合决定了渲染的颜色如何与它们的后面的颜色交互. 1.3高级属性 这些属性与WebGL内部工作有关,如下: 2.基本的网格材质 设置材质属性的方法有两…