unity给子物体添加Shader】的更多相关文章

分享两个自制Shader:http://pan.baidu.com/s/1nuRcF2L Shader存放路径:\Assets\Resources\Shader\ 定义Shader类型: public enum EnumFbxType { Default, TouMing, GaoLiang, } 加载指定Shader: private static Shader myTouMing = Shader.Find("My/TouMing"); private static Shader…
Unity动态查找物体 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力快速熟悉 Unity 查找对象的具体函数为新手节省宝贵的时间,避免采坑! Chinar 教程效果: 1 GameObject -- 对象 2 Function -- 函数 支持 May Be -- 搞开发,总有一天要做的事! 全文高清图片,点击即可放大观看 (很多人竟然不知道) 1 Game…
Shader "MyUnlit/AlphaBlendDiffuse" { Properties { _Color("Color Tint(贴图染色)",Color)=(1,1,1,1) _MainTex ("Texture(主贴图)", 2D) = "white" {} //bump为unity内置的法线纹理,当未配置任何法线纹理时,bump对应模型自带的法线信息 _NormalMap("Normal Map(法线贴…
Unity使用transform.Translate()移动子物体时遇到的小问题 情况大概是这样:父物体A下有子物体B,希望使B在本地坐标系下移动1单位. B物体挂脚本代码如下: transform.Translate(1, 0, 0, Space.Self); 当A没有缩放,即scale为(1, 1, 1)时一切正常,但当A有缩放的时候,出现了意外的情况. A的缩放为(2, 1, 1)时执行该移动,B将在对于A的坐标系中向x轴正方向移动世界坐标中的1单位,而不是A坐标系中的1单位(世界坐标中2…
插件:Highlighting System v4.0 操作:在摄像机上挂上HighlightingRenderer脚本 脚本目录在\Assets\Plugins\HighlightingSystem\Scripts 方法: /// <summary> /// 给物体添加高亮 /// </summary> public static void AddGameObjectHighligh(GameObject _obj, bool _val) { if (_obj == null)…
ZBrush® 中通过遮罩为模型添加子物体的方法简单且方便,我们可以通过按住Ctrl键绘制遮罩结合相关命令创建具有抽出厚度的模型提取出作为子物体附在模型表面.本文将详细介绍在Zbrush中如何通过遮罩得到子物体. 若有疑问可直接访问:http://www.zbrushcn.com/changjian/zbrush-4r7-zhezhao-ziwuti.html 1.在Light Box(灯光盒子)默认的3D工具选择PolySphere(多边形球体)物体,单击Tool>Make PolyMesh3…
写在前面 三个月以前,在一篇讲卡通风格的Shader的最后,我们说到在Surface Shader中实现描边效果的弊端,也就是只对表面平缓的模型有效.这是因为我们是依赖法线和视角的点乘结果来进行描边判断的,因此,对于那些平整的表面,它们的法线通常是一个常量或者会发生突变(例如立方体的每个面),这样就会导致最后的效果并非如我们所愿.如下图所示:…
ZBrush 中通过遮罩为模型添加子物体的方法简单且方便,我们可以通过按住Ctrl键绘制遮罩结合相关命令创建具有抽出厚度的模型提取出作为子物体附在模型表面.本文将详细介绍在Zbrush中如何通过遮罩得到子物体. ZBrush软件下载: ZBrush 4R8(Win版):http://wm.makeding.com/iclk/?zoneid=19415 ZBrush(Win版):http://wm.makeding.com/iclk/?zoneid=19416 ZBrush(Mac版):http:…
如何判断一个物体下是否有子物体?getchild(0)!=null?显然不可取 那去获取拿到子物体数量?transform.GetChildCount();可以解决 但在新版本中已被弃用,可用transform.childCount来直接获取子物体数量. using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Example() { print(transform.…
1.默认情况下他,添加到viewGrop的子视图是直接显示出来的.有一个比较简单的方法可以为这个过程增加动画效果. 2.知识点:     给子视图添加动画效果就用:LayoutAnimationController类,用LayoutAnimationController要强调一点的是不可以给每个子视图指定 不同的动画效果,但可以决定每个子视图显示动画效果的时间. 3.例子:     下面将结合托名都渐变动画(alpha animation)和位移动画(translate animation)演示…
本文将为大家介绍在ZBrush® 软件中第三种创建子物体的方法,即使用绘制层得到子物体. 1.在Light Box(灯光盒子)默认的3D工具中选择SuperAverageMan_low人体模型,在视图文档中拖拽出来,进入Edit(编辑)模式,然后展开Geometry(几何体)面板,单击Divide(细分)按钮,将球体模型细分为5级. 2.单击Tool>Layers(工具>绘制层)面板中单击New(新建)按钮,创建一个新层,选择合适的笔刷和Alpha,在模型上拖拽鼠标左键,得到一个方形纹理,如下…
在ZBrush®中得到子物体的方法有很多,本文将为大家介绍一种新的创建子物体的方法,通过显示和隐藏得到子物. ZBrush 4R8中文版下载:http://wm.makeding.com/iclk/?zoneid=19415 1.在Light Box(灯光盒子)默认的3D工具中选择人体模型,在视图文档中拖拽出来,进入Edit(编辑)模式,然后展开Geometry(几何体)面板,单击Divide(细分)按钮,将球体模型细分为3级,如下图所示. 2.按住Shift键和Ctrl键,在人体模型的腰部上方…
在动态创建物体时,通常同父级下先创建的子物体会被后创建的遮挡,此时就需要我们用代码改变对象的层级. GameObject go;go.transform.SetAsLastSibling();//设置对象为最下层 go.transform.SetAsFirstSibling();//设置为最上层有时需要把对象放置在中间某个位置, go.transform.SetSiblingIndex(-1);//数字为-1时设置对象最下层 go.transform.SetSiblingIndex(0);//数…
项目中碰到一个问题,在tableview的headerview里面有很一个子view,设计师的要求是在下方添加一个阴影,效果如下: 以前的实现思路就是,代码如下: 添加阴影 调用视图的 layer CALayer *layer = [imageView layer]; layer.shadowOffset = CGSizeMake(, ); //(0,0)时是四周都有阴影 layer.shadowRadius = 5.0; layer.shadowColor = [UIColor blackCo…
https://blog.csdn.net/qq_31411825/article/details/61623857 Unity 3d 实现物体跟随摄像机视野运动Created by miccall (转载请注明出处 miccall.tech )1. VR实现机器人导航 - 项目里要求一个机器人跟随在角色旁边,一直飞着,就像一个精灵一样,总在主角的身边,移动,转头,都要移动到合适的位置 .还得让他面向主角,今天就来实现这个样例 . - 2. 问题思考 - 1. 物体移动到某个给定的位置(targ…
// 定义搜索节点树结构Store const nodeStore = Ext.create('Ext.data.TreeStore', { autoLoad : true, id : 'nodeStoreTreeId', fields : ['index', 'nodeId', 'name_or_index', 'to_node', 'type'], proxy : { type : 'memory', reader : { type : 'json', } }, root : { text…
如果想获取一级子节点 foreach (Transform child in this.transform) { Debug.Log(child.name); } 如果想获取所有子节点 foreach (Transform child in gameObject.GetComponentsInChildren<Transform>()) { Debug.Log(child.name); } 这样会包括所有带有transform属性的子节点. 在unityAPI中也有介绍 public clas…
     酷跑片段本来想做三条轨道,然后通过切换轨道来做,后面发现一种巧妙的方法,利用物体的父级偏移来实现轨道的切换. 比如上图,实际运动的是Car对象,通过修改MineControler的左右位置(要根据本地的方向哈)就可以实现左右中三个轨道--     短文来记录一下,警示自己的无知--路漫漫其修远兮,我将上下而求索 最近入一本<Unity API解析>,虽然涉及到的类不多,但是讲解的还是详细的,重要的函数会配有代码讲解.   细雨标记: Unity…
Unity查找物体下的所有物体 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心创新!助力快速理解 Unity 中查找对象下的所有物体为新手节省宝贵的时间,避免采坑! 1 GetComponentsInChildren () -- 获取物体下的所有物体 2 GameObject Active False -- 游戏对象关闭时 3 Solve -- 解决办法 支持 May…
public GameObject[] obj;     void Awake()     {             for (int i = 0; i < obj.Length; i++)         {             for (int j = 0; j < obj[i].transform.childCount;j++ )             {                 print("obj[i].transform.childCount="…
1.遍历Transform直接子transform private void Start() { var Equipment = building.transform.FindChild("building/building/Equipment"); foreach (Transform tran in Equipment) { Debug.LogError(tran); } } 2.递归遍历该GameObject的所有子GameObject public void Awake() {…
前文完成了最基本的镜面反射着色器,单平行光源下的逐顶点着色(per-vertex lighting),又称为古罗着色(Gouraud shading).这篇文章作为后续讨论更光滑的镜面反射方式,逐像素着色(per-pixcel lighting),又称为冯氏着色(Phong shading) 逐像素着色Per-Pixel Lighting (冯氏着色Phong Shading) 别把冯氏着色与冯氏反射模型搞混淆了,前问提到了冯氏反射模型,冯氏反射模型是为使计算机模拟接近真实的物体表面光泽提出的模…
转自http://www.itnose.net/detail/6117338.html 前文中完成最简单的漫反射shader只是单个光源下的漫反射,而往往场景中不仅仅只有一个光源,那么多个光源的情况下我们的物体表面的漫反射强度如何叠加在一起呢?前文打的tag "LightMode"="ForwardBase"又是什么意思呢? Unity内置的DiffuseShader,也就是我们创建一个Material出来时默认的Shader也是多光源的,所以这篇文章完成的shad…
转载请注明出处:http://blog.csdn.net/candycat1992/article/details/39994049 写在前面 一直以来,Unity Surface Shader背后的机制一直是初学者为之困惑的地方.Unity Surface Shader在Unity 3.0的时候被开放给公众使用,其宣传手段也是号称让所有人都可以轻松地写shader.但由于资料缺乏,很多人知其然不知其所以然,无法理解Unity Surface Shader在背后为我们做了哪些事情. 前几天一直被…
前文中完成最简单的漫反射shader只是单个光源下的漫反射,而往往场景中不仅仅只有一个光源,那么多个光源的情况下我们的物体表面的漫反射强度如何叠加在一起呢?前文打的tag "LightMode"="ForwardBase"又是什么意思呢?Unity内置的DiffuseShader,也就是我们创建一个Material出来时默认的Shader也是多光源的,所以这篇文章完成的shader与默认的diffuse shader基本效果一致.首先引入几个概念渲染路径 Rende…
转自http://www.itnose.net/detail/6117378.html 讨论完漫反射之后,接下来肯定就是镜面反射了 在开始镜面反射shader的coding之前,要扩充一下前面提到的知识,加深理解镜面反射与漫反射的区别. 引用一下一位前人博文中的一些基础概念,特别是关于冯氏反射模型的: 平行光(directional light) 一种是从特定方向射入并只会照亮面对入射方向的物体,我们称之为平行光(directional light). 环境光(ambient light) 另一…
转自http://www.itnose.net/detail/6096068.html 在上一个例子中,我们得到了由mesh组件传递的信息经过数学转换至合适的颜色区间以颜色的形式着色到物体上.这篇文章将要在此基础上研究片段的擦除(discarding fragments)和前面剪裁.后面剪裁(front face culling and back face culling)来达到透明效果. 当一个mesh组件的信息被传递后,我们可以通过代码决定哪些部分渲染(render)出来,而哪些部分不要,这…
Unity安卓平台shader平台丢失 Unity的工程切换到Android平台后,运行游戏出现shader丢失 解决办法:在Unity桌面图标的快捷方式后添加 -force-gles20 示例:"C:\Program Files\Unity_5_3_7_p4\Editor\Unity.exe" -force-gles20…
讨论完漫反射之后,接下来肯定就是镜面反射了在开始镜面反射shader的coding之前,要扩充一下前面提到的知识,加深理解镜面反射与漫反射的区别.注:这篇文章实现的镜面反射是逐顶点着色(per-vertex lighting),最后效果图可以看到高亮区域并不光滑,更光滑的着色方式请看系列10逐像素着色(per-pixcel lighting),又称冯氏着色引用一下一位前人博文中的一些基础概念,特别是关于冯氏反射模型的:平行光(directional light)一种是从特定方向射入并只会照亮面对…
如果前面几个系列文章的内容过于冗长缺乏趣味着实见谅,由于时间原因前面的混合部分还没有写完,等以后再补充,现在开始关于反射的内容了.折射与反射在物理世界中,光的反射与折射往往是同时存在的,光源由真空或者空气中射入一种材料,光在进入这种材料的同时就发生了折射,折射的程度与各个介质的折射率有关,使光的传播路线偏离原来的路线:继而如果光在通过不同传播介质的表面时,会像乒乓球一样弹回来,我们人眼能够看到东西,都是因为东西会反射光源,如果一种物质无法反射光,或者没有光源,我们就看不到东西.同样对于不同的材料…