202009-28 Unity Shader实现玻璃材质效果 UnityShader学习:玻璃材质,供大家参考。主要是通过反射和折射来达到透明的效果,用菲涅尔来混叠。shader部分:Shader"Unlit/Crystal"{Properties{_Cube("Skybox",Cube)=""{}//折射角度_EtaRatio("EtaRatio",Range(0,1))=0//菲涅尔系数_FresnelBias("FresnelBias",float)=0.5_FresnelScale("FresnelScale",float)=0.5_FresnelPower("FresnelPower",float)=0.5}SubShader{Tags{"RenderType"="Opaque"}LOD1... 继续阅读 >
202009-28 Unity Shader相交算法实现简易防能量盾 UnityShader学习:相交算法实现简易防能量盾主要思路:对比物体和场景深度图在观察空间下的深度差值,深度差越小表示相交,颜色越深,在加上边缘光勾出轮廓。shader部分:Shader"Unlit/DepthOutline"{Properties{_MainTex("MainTex",2D)="white"{}_RimFactor("RimFactor",Range(0.0,5.0))=1.0_DistanceFactor("DistanceFactor",Range(0.0,10.0))=1.0_RimColor("RimColor",Color)=(1,0,0,1)_DistanceFactor2("DistanceFact... 继续阅读 >
202009-27 Unity实现QQ列表折叠菜单 本文实例为大家分享了Unity实现QQ列表折叠菜单的具体代码,供大家参考,具体内容如下主要用到了GUI的自动布局功能,VerticalLayoutGroup,注意ChildControlsSize和ChildForceExpand属性设置为Width效果:实现代码:///<summary>///折叠菜单///</summary>publicclassFoldPanel:MonoBehaviour{[SerializeField]privateGameObjectpanelItem;//折叠页[SerializeField]privateTitleItemtitleItem;[SerializeFi... 继续阅读 >
202009-27 Unity ScrollView实现动态列表生成 制作根据实时获取的数据动态改变的列表,UGUI的ScrollView已经封装好了基本的参数,总结一些值得注意的地方和动态生成列表的方法。在Canvas创建ScrollView后,基本结构如下。一.注意两点:1.Content下放自定义的列表内容,如这个item是名为“张三”的Button预制件。(制作为Button因为我的项目里需要点击列表项产生交互结果)2.如果是顶部固定,往下依次延伸的列表,Content和里边自己的item中心锚点要一致... 继续阅读 >
202009-27 Unity实现相机截图功能 最近做项目的时候需要在游戏里截一张高清截图,研究了一下写成脚本,方便以后使用。脚本可以自定义分辨率,用相机截高清截图。可以用代码动态截图,也可以在编辑模式下截图。注意截图宽高比要正确,宽高比不正确时可能会出问题。截图效果:脚本:CameraCapture.csusingUnityEngine;usingSystem.IO;///<summary>///相机截图///<para>ZhangYu2018-07-06</para>///</summary>publicclassCameraCapture:MonoBehaviour{//... 继续阅读 >
202009-27 Unity Shader实现纹理遮罩效果 纹理遮罩用处很多,简单来讲就是允许我们可以保护模型中的某些区域不受某些因素的影响。例如我们有时希望模型表面某些区域的反光强烈一些,而某些区域弱一些。为了得到更加细腻的结果,我们需要用一张遮罩纹理来控制该光照。还有一些情况就是某些模型需要多张纹理混合时,此时使用遮罩纹理可以控制如何混合这些纹理。具体流程为:通过采样得到遮罩纹理的纹素值,然后使用其中某个或者几个通道的值来与某种表面属性进行相乘。当该通... 继续阅读 >
202009-27 Unity实现图片水印生成 本文实例为大家分享了Unity实现图片水印生成的具体代码,供大家参考,具体内容如下用于图片分享时添加logo水印的功能,之前用来做你画我猜的方法,核心是用Texture2D中的SetPixels方法具体实现如下效果图:上代码,比较简单不多说了usingUnityEngine;usingSystem.Collections;usingUnityEngine.UI;publicclassWaterMarkAdd:MonoBehaviour{publicImagetargetImage;publicSpritelogoSprite;publicSpriteimageSprit... 继续阅读 >
202009-27 unity scrollRect实现按页码翻页效果 本文实例为大家分享了unity实现按页码翻页效果的具体代码,供大家参考,具体内容如下用来做背包商店的按页翻页功能,先上效果图其中,dragNum表示的是如果为3,便是滑动距离超过当前页面宽度的百分之三十位成功connect表示scrollRect下connet的大小然后是函数的初始化方法这里提供了两个方法 一个是直接提供页数参数分别代表总页数,要显示的页数以及切换到要显示的页数是否播放滑动动画以及当时用来做背包、商店的... 继续阅读 >
202009-27 unity实现鼠标跟随(ITween) 本文实例为大家分享了unity实现鼠标跟随的具体代码,供大家参考,具体内容如下需求:当鼠标放到cube上,然后移开鼠标cube会跟随鼠标移动。实现过程:首先在场景里新建一个plane(白色)和cube(黑色),这个cube就是用来跟随鼠标的物体,并且给cube添加标签tile。然后把下面移动代码拖到相机上。代码如下:usingUnityEngine;usingSystem.Collections;//鼠标跟随publicclasslinearmove:MonoBehaviour{publicGameObjectta... 继续阅读 >
202009-27 unity实现UI元素跟随3D物体 本文实例为大家分享了unity实现UI元素跟随3D物体的具体代码,供大家参考,具体内容如下在Canvas不同的渲染模式(RenderMode)下实现UI跟随3D物体当Canvas.RenderMode为ScreenSpace-Overlay时利用WorldToScreenPoint(worldPos)将物体的世界坐标转换成屏幕坐标,实时更新UI的坐标:usingUnityEngine;usingSystem.Collections;publicclassFollowWorldObj:MonoBehaviour{[SerializeField]GameObjectworldPos;//3D物体(人物... 继续阅读 >
202009-27 Unity UGUI实现滑动翻页直接跳转页数 本文实例为大家分享了UnityUGUI实现滑动翻页,直接跳转页数的具体代码,供大家参考,具体内容如下首先看一下最终效果其实这个功能基本上是老生常谈了,所以代码还是很简单usingUnityEngine;usingSystem.Collections;usingUnityEngine.UI;usingSystem.Collections.Generic;usingUnityEngine.EventSystems;usingSystem;publicclassPageView:MonoBehaviour,IBeginDragHandler,IEndDragHandler{privateScrollRectrec... 继续阅读 >
202009-27 Unity使用ScrollRect制作翻页 本文实例为大家分享了使用ScrollRect制作翻页的具体代码,供大家参考,具体内容如下1.标准的层级结构ScrollRect->ViewPort->Content,Viewport负责显示区域的大小一般和Mask一起配合使用,Content使用Layout来布局,如果想使用代码来自动定位显示位置需要在Content加上Contentsizefilter.2.ScrollRectHelperusingUnityEngine;usingUnityEngine.UI;usingUnityEngine.EventSystems;usingSystem.Collections.Generic;usingSys... 继续阅读 >
202009-27 Unity工具类ScrollView实现拖拽滑动翻页 简介:在进行UI设计的时候,经常会使用Unity中UI提供的ScrollView,类似Android中的ScrollView,在进行图片预览,多个翻页的时候,能实现很好的效果。该类中根据Unity的EventSystems中拖拽事件,实现对页码的滑动监听,在使用的时候,新建UI--->ScrollView,把该类组件添加到ScrollView上,把对应的content加入该脚本中的content,调整ScrollView和Content,设置单个滑动页的宽度,拖拽的阈值,即可监听到拖拽,如果是动态实例化Sc... 继续阅读 >
202009-27 Unity UGUI实现滑动翻页效果 本文实例为大家分享了UnityUGUI实现滑动翻页效果的具体代码,供大家参考,具体内容如下这个问题真的是老生常谈的事情了,不过在这里还是要说一下,以便以后之需首先看一下效果图最后在Content下面是一些ImageusingUnityEngine;usingSystem.Collections;usingUnityEngine.UI;usingSystem.Collections.Generic;usingUnityEngine.EventSystems;usingSystem;publicclassPageView:MonoBehaviour,IBeginDragHandler,IEndDr... 继续阅读 >
202009-27 unity实现无限列表功能 本文实例为大家分享了unity实现无限列表功能的具体代码,供大家参考,具体内容如下publicstaticclassRectTransformExtensions{publicstaticboolOverlaps(thisRectTransforma,RectTransformb){returna.WorldRect().Overlaps(b.WorldRect());}publicstaticboolOverlaps(thisRectTransforma,RectTransformb,boolallowInverse){returna.WorldRect().Overlaps(b.WorldRect(),allowInverse);}... 继续阅读 >
202009-27 unity实现简单贪吃蛇游戏 本文实例为大家分享了unity实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下首先创建一个头部,编写脚本利用WASD控制头部的移动。Vector3up=newVector3(0,1,0);Vector3down=newVector3(0,-1,0);Vector3left=newVector3(-1,0,0);Vector3right=newVector3(1,0,0);Vector3now;//头部实际前进方向floattimer=0f;floattimerGap=0.1f;voidStart(){now=up;}voidUpdate(){if(now!=up&&now!=... 继续阅读 >