自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (15)
  • 收藏
  • 关注

原创 Unity shader 学习记录(复杂光照2-光照衰减与阴影 )

unity支持四种光源类型:平行光、点光源、聚光灯和面光源。光源最常用得属性有:位置、方向、颜色、强度遗迹衰减。1、光照衰减:在前向渲染中添加光照衰减:Shader "Unity Shaders Book/Chapter 9/Forward Rendering" { Properties { _Diffuse ("Diffuse", Color) = (1, 1, 1, 1) _Specular ("Specular", Color) = (1, 1, 1, 1) _Gloss

2021-12-31 00:52:04 1978

原创 Unity shader 学习记录(复杂光照1-渲染路径 )

本章是对前置章节的进一步补充,主要是针对多光源的解析,分为以下几个方面:(1)、渲染路径 (2)、光照衰减 (3)、阴影 (4)、标准实现的unity shader1、渲染路径:主要分为前向渲染、延迟渲染和顶点照明渲染(已经被抛弃)。我们可以在Player->Graphics->Rendering path来选择项目所需的渲染路径。也可以在camera中选择是用setting做的设置或是选择别的渲染路径。做完选择后,unity会自动查找shader中tags lightmod

2021-12-30 21:00:29 1892

原创 Unity shader 学习记录(透明效果2)

前篇介绍了透明度测试和透明度混合的鸡腿实现,下面从几个功能点深入解析:1、渲染顺序Unity提供了渲染队列来解决渲染顺序。可以使用SubShader的Queue标签来决定模型归于哪一个渲染队列。 Unity内部使用一些整数索引来表示每个渲染队列,索引号越小越早被渲染。下面是定义的五个渲染队列:用法是在subshader中加入Tag{"Queue"="AlphaTest"}或{"Queue"="Transparent"}Zwrite Off用于关闭深入写入,一般写在pass中,表示该.

2021-12-22 17:06:33 1279

原创 Unity shader 学习记录(透明效果1)

1、首先进行深度测试(是否开启)和深度检验,然后写入颜色缓冲,深度缓冲(深度缓冲要看是否开启深度写入)2、颜色缓冲和深度写入是两个不同的东西,每次得到结果会写入颜色缓冲中3、透明物体进行排序时,都考虑到有些情况会有循环覆盖个物体遮挡的问题,但是还是没什么比较通用的解决方法,所以这就是渲染透明物体大家都谨慎的原因吧。(就像明知道有个渣男,却说忍忍吧的感觉)...

2021-12-22 16:20:38 1067

原创 Unity shader 学习记录(基础纹理篇4遮罩纹理)

遮罩纹理我理解就是在原有的效果上面添加一层蒙板,这个蒙板可以根据不同区域设置不同的深度,最后出来的效果就是不同色块蒙了不同颜色的遮罩。实现也很简单,就是在计算高光反射的最后,乘这个遮罩纹理和程度。代码实现如下:Shader"UnityShadersBook/Chapter7/MaskTexture"{Properties{_Color("ColorTint",Color)=(1,1,1,1)_MainTex("MainTex...

2021-12-15 09:46:43 226

原创 Unity shader 学习记录(基础纹理篇3渐变纹理)

渐变纹理可以控制模型的漫反射,从而使模型变成卡通风格或者写实风格等。原来计算漫反射的时候,我们都是使用表面法线和光照方向的点积结果于材质的反射率相乘来得到表面的漫反射光照,现在可以用渐变纹理来进行控制。代码如下:Shader"UnityShadersBook/Chapter7/RampTexture"{Properties{_Color("ColorTint",Color)=(1,1,1,1)_RampTex("RampTe...

2021-12-15 09:46:36 180

原创 Unity shader 学习记录(基础纹理篇2法线纹理)

2、凹凸映射。凹凸映射分为高度纹理和法线纹理,因为高度映射在实时计算不能直接得到表面法线,而是需要由像素的灰度值计算,需要消耗更多的性能,所以一般游戏中用的是法线纹理。 法线纹理按照我的理解是通过一个纹理存储模型的法线信息,因此我们写shader的时候思路就是提取该纹理的信息,得到法线,然后还是按照上面的主纹理计算方式来进行计算。法线计算又分为两种:切线空间下的计算、世界空间下的计算。而切线空间下的计算更节省性能,适用于非cube2D格式下的所有,所以下面重点说切线空间下的计算。切线空间下的:.

2021-12-15 09:46:20 440

原创 Unity shader 学习记录(基础纹理篇1)

基础纹理总共分为四种(也可以说是三种,除了主纹理)。主纹理、凹凸映射(高度纹理和法线纹理)、渐变纹理、遮罩纹理。首先记录几点纹理注意事项:(1)顶点的uv坐标范围通常都被归一化到[0,1],但是纹理采样使用的不一定是在[0,1]范围内,纹理的平铺模式能决定超出范围如何进行采样。(2)OpenGL中纹理原点位于左下角,DirectX原点位于左上角,而unity采用了OpenGL用法,大情况它会帮我们在DirectX平台进行转换。主纹理代码:Shader"Unlit/SingleTe..

2021-12-14 18:02:22 128

转载 unity导表excel->lua优化

转自zblade - 博客园发现一位大佬的基地,特此转载一篇做个标记,以防以后找不到了。这是我最早而且持续时间最长的一个优化工作。在我们的游戏中,策划会有大量的配置表,全都配置在excel表中,通过编写导表工具,可以将excel表导出为对应的lua表,用于在游戏中进行lua表的加载和查找。我总结一下优化的几个节点: 1、最初版本的导表 最初版本的lua导表,是将excel中对应的key-value值逐一导出,其基本的格式可以表示为:local skill =...

2021-12-14 15:28:44 710

转载 针对移动端TBDR架构GPU特性的渲染优化

本文转自针对移动端TBDR架构GPU特性的渲染优化-腾讯游戏学堂真是篇好文章,解释了我一直以来的好多疑惑!TBDR(Tile-Base-Deffered-Rendering)是现代移动端gpu的设计架构,它同传统pc上IR(Immediate-Rendering)架构的gpu在硬件设计上是差别很大的。手游正是运行在这些移动端的TBDR架构上,所以手游的渲染优化在硬件的角度上讲有其独特之处,甚至一些特点和优化点与PC是大相径庭的,基于硬件的优化是应用程序优化很重要的一部分,最近阅读了一些tbdr的硬件

2021-12-14 15:23:05 434

转载 Unity5 如何做资源管理和增量更新

原文地址:http://blog.csdn.net/ring0hx/article/details/46376709工具Unity 中的资源来源有三个途径:一个是Unity自动打包资源,一个是Resources,一个是AssetBundle。Unity自动打包资源是指在Unity场景中直接使用到的资源会随着场景被自动打包到游戏中,这些资源会在场景加载的时候由unity自动加载。这些资源只要放置在Unity工程目录的Assets文件夹下即可,程序不需要关心他们的打包和加载,这也意味着这些资源都是静态

2021-12-14 15:22:04 533

转载 gpu instancing animation代替骨骼动画的做法

文章转自:gpu instancing animation代替骨骼动画的做法_yxriyin的专栏-CSDN博客_gpu动画最早是在Unity推出gpuinstancing后,马上有人做了一个顶点动画代替骨骼动画的方案,当时自己也测试了一下,红米2一千人可以跑60帧,确实非常不错。后来发现UWA群里也有人在讨论这个东西的做法,当时M神说可以用烘焙骨骼的方式代替烘焙顶点,这样子烘焙出来的贴图大小只和骨骼数相关。而小米超神也说是通过烘焙顶点,不过为了减少烘焙文件的大小,使用了类似RGBM的方式存储数据。

2021-12-14 15:19:44 976 1

转载 unity的gpu instancing技术

原文地址:http://gad.qq.com/program/translateview/7213959成千上万的球体,用几十个渲染批次绘制完成。对实例合并批次指示图形处理器进行绘制某些东西需要时间。要给图形处理器提供数据,包括网格和材质属性也需要时间。我们已经知道有两种方法可以减少绘制调用的数量,也就是静态批次合并和动态批次合并。Unity可以将静态对象的网格合并成一个较大的静态网格,这能够减少绘制调用。只有使用相同材质的物体才能以这种方式组合起来。而需要付出的代价是存储更多的网格数据。启

2021-12-14 15:18:19 1655

转载 Unity优化之GC优化

转自zblade - 博客园介绍:  在游戏运行的时候,数据主要存储在内存中,当游戏的数据在不需要的时候,存储当前数据的内存就可以被回收以再次使用。内存垃圾是指当前废弃数据所占用的内存,垃圾回收(GC)是指将废弃的内存重新回收再次使用的过程。  Unity中将垃圾回收当作内存管理的一部分,如果游戏中废弃数据占用内存较大,则游戏的性能会受到极大影响,此时垃圾回收会成为游戏性能的一大障碍点。  本文我们主要学习垃圾回收的机制,垃圾回收如何被触发以及如何提GC收效率来提高游戏的性能。Uni

2021-12-14 15:13:31 278

转载 Unity移动端的性能优化

1.渲染利用reflect probe代替反射、折射,尽量不用RTT、GrabPass、RenderWithShader、CommandBuffer.Blit (BuiltinRenderTextureType.CurrentActive...) 建立统一后处理框架(bloom、hdr、DOF等)代替多后处理,可以共用模糊函数,减少多次blit;另外要注意RTT的尺寸。 空气折射、热浪扭曲等使用GrabPass不是所有硬件都支持,改为RTT或者后处理来优化。 建立统一shader材质代替单一sha

2021-12-14 14:58:31 1143

转载 unity优化建议

最简单的优化建议:1.PC平台的话保持场景中显示的顶点数少于200K~3M,移动设备的话少于10W,一切取决于你的目标GPU与CPU。2.如果你用U3D自带的SHADER,在表现不差的情况下选择Mobile或Unlit目录下的。它们更高效。3.尽可能共用材质。4.将不需要移动的物体设为Static,让引擎可以进行其批处理。5.尽可能不用灯光。6.动态灯光更加不要了。7.尝试用压缩贴图格式,或用16位代替32位。8.如果不需要别用雾效(fog)9.尝试用OcclusionCulling,在

2021-12-14 14:56:42 213

原创 unity text颜色渐变

下面的组件做一个记录,可以使ui自己设置单个文字上下颜色,最终效果为,仿照艺术字using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.EventSystems;[AddComponentMenu("UI/Effect/UIColorGradient")]public class UIColorGradient : B

2021-12-14 14:43:33 2299

原创 unity shader 学习记录(基础光照篇)

unity shader 学习记录(基础光照篇)

2021-12-02 19:40:22 366

原创 unity 图片改成astc 所有机型机型检测

unity中有一个bug,导入的图片莫名的边缘会有其他颜色出现,刚开始我们以为是压缩格式的问题,但是后来改成rgba32还是有问题,google搜了一下,说是把图片设置为astc格式会使该问题消失。所以就有了下面的机型适配。(当然,切九宫也可以使得问题解决,但是九宫是治标不治本)机型 该机型是否兼容astc格式 详细信息手机:phone5s ...

2019-12-19 19:35:42 1532

原创 unity 中lua实现震屏

--[[    shake_power 震动强度    frequency 震动频率    shake_time 震动时间    start_shake_time 开始往前拉伸镜头时间    recovery_time 摄像机恢复时间    stretch_length 摄像机每次前后拉伸长度    shake_angle 震动角度]]function star...

2018-11-21 21:36:42 409

原创 lua实现定时器

先接入这个类中的循环,然后调用这个接口TimerCounter.CreateTimer(时间(按秒传入),function()end)module("TimerCounter", package.seeall ) local _timerDict = {} local quest_list = {} TimerData = {}function TimerData:...

2018-11-21 21:33:47 11065

原创 lua分割字符串

---分割字符串(连续两个分隔符时,分割成"")function string.split_string(text, pattern)local t = {}local textlen = string.len(text)local nextindex = 1while nextindex <= textlen dolocal index = string.find(...

2018-11-21 21:28:19 1583

原创 lua判断两个数组是否相等

---判断两个table是否相等function table.equal(a, b)if #a ~= #b thenreturn falseendfor i = 1, #a doif a[i] ~= b[i] thenreturn falseendendreturn trueend

2018-11-21 21:27:11 3698

原创 lua 打印table

三个方法,每个方法都要ubutong的通,详情看代码---打印table---@param table table @列表---@param title string @标题function print_table(table, title)local text = ""if title ~= nil and title ~= "" thentext = text .....

2018-11-21 21:25:56 728

原创 unity中,C#封装人物移动(1)

通过改变  _path 的值,来带动循环的执行,在方法里面可以是人物前后左右上下进行移动,也可以接入A*插件protected void moveUpdate(float elapsedTime)        {            if (_path == null)            {                return;            }      ...

2018-11-21 21:22:27 1262 3

原创 unity上加载2D地图(1)

18年年初,跳到了现在的公司,在刚进来时,CTO跟我们讲了要做的游戏类型,2D地图,3D人物(虽然后来又变成3D场景),固定视角的摄像机,随后做地图这个活落到了我身上。过程怎么想的我忘了,过去的时间有点远,现在只是记录整理一下。因为我想BB的细一点,所以会分为几篇。先说一下我的思路,我是把世界坐标0,0放在左上角,然后通过循环加载贴图,当然,贴图的大小是固定的,1024*1024,然后把贴...

2018-11-21 21:18:21 4644

原创 unity根据摄像机适配easytouch

废话不多说,直接上代码传入easytouch的园丁偏移值,根据摄像机的旋转,输出变换后的x,yfunction fitRoleCamera(joyPositionX,joyPositionY)    if CameraUtils.curCameraType == GameCameraType.Camera_3D then        local camera = CameraUt...

2018-11-21 21:11:11 384

T4M for 2017.3.1

插件经本人修改,亲测2017.3.1可用,如2017其他版本出错,请下载本人上传的另一个版本。

2018-06-27

T4M for 2017.3.1 特别定制版

unity地形编辑工具,适用于2017所有版本,本人亲自修改代码,亲测2017.3.1可用,如2017不可用,请在下方评论并联系本人,本人将再次进行修改。

2018-06-27

Easy Touch 3.1 - Touchscreen & Virtual Joystick & Buttons v3.1.3

Easy Touch 3.1 - Touchscreen & Virtual Joystick & Buttons v3.1.3,Easy Touch 3.1 - Touchscreen & Virtual Joystick & Buttons v3.1.3

2018-06-25

当资源管理器崩溃时则自动重启资源管理器

当资源管理器崩溃时则自动重启资源管理器,当资源管理器崩溃时则自动重启资源管理器

2018-06-25

CCleaner32

CCleaner是清理 Windows 个人电脑的顶级工具。这个轻巧快速的软件可以清除您不需要的临时文件、系统日志,清理注册表并且保护您的个人浏览隐私,Cleaner是一款很不错的系统优化和隐私保护工具。

2018-06-25

Git-2.14.0-64-bit和相应的TOGIT软件、语言包’

压缩包里包含Git-2.14.0-64-bit.exe、TortoiseGit-2.5.0.0-64bit.msi和TortoiseGit-LanguagePack-2.5.0.0-64bit-zh_CN.msi,解压完成后先安装git,再安装Togit,最后再安装togit中文包,就可以进行diamante管理了

2018-06-25

jdk-7windows-x64

jdk-7u67-windows-x64是java se开发工具包的升级包,非常实用,目前官网的下载地址不好找,这个版本兼容性不错,可以作为非常好的备份安装程序,有需要的朋友们就来下载使用吧。

2018-06-25

SyncToySetup

使用电脑的人经常需要备份,以防不测。SyncToy是微软提供的一个免费同步文件/目录的工具,可用于分享文件(譬如照片)、备份文件和目录。比如可以将文件备份到U盘、移动硬盘、网络共享文件夹等。

2018-06-25

NGUI_HUD_Text_v1.11

NGUI_HUD_Text_v1.11.unitypackage 此插件的作用是怪物头像上飘出受伤的血量数值或者是人物头顶上的对话内容

2018-06-25

dotnet-sdk-2.1.4-win-gs-x64

SDK:(software development kit)软件开发工具包。被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。

2018-06-25

TexturePacker_3.1.2破解

TexturePacker是一款把若干资源图片拼接为一张大图的合图工具,在游戏开发以及网页制作中经常会使用到这个工具。

2018-06-25

工商银行谷歌辅助插件

ICBCChromeExtension1.4是专为chrome浏览器而开发的一款实用的chrome工商银行网银支付扩展插件,是一款能让你在网页中使用工商银行网银进行支付交易的浏览器插件,你可以通过该插件在支持工商银行的网页交易中使用工商银行账户进行支付,无需另外下载网银控件,

2018-06-25

imageTool 打包图集

ImageTools 自定义图像的工具,便携式图像工具是一个开源的,功能强大的海量图像的自定义工具,可以帮助你调整大小,转换,裁剪,翻转/旋转您的图像。您也可以将您的图片添加水印。

2018-06-25

fluxtrial-2.1.3

unity一款插件,它将unity带入电影制作范畴,当然也能在应用到游戏过场动画、引导动画、剧情动画、技能整体表现等等。它包括Flux editor window和Inspector window两部分。

2018-06-25

PCHunter64.exe

PCHunter64.exe是一款非常好用的工具,大家都可以进行下载使用,PCHunter free是一款安全类的系统信息查看软件,在它的帮助下您不但可以深入的查看系统各类信息,还可以很方便的揪出电脑中的病毒木马,目前它不仅适用于32位的2000、XP、2003、Vista、2008、Win7和Win8操作系统,还适用于64位的Win7和Win8操作系统。

2017-09-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除