监听资源编辑——AssetModificationProcessor

作者:追风剑情 发布于:2017-11-8 17:39 分类:Unity3d

示例 using UnityEngine; using UnityEditor; using System.Collections; /// <summary> /// 参考 http://www.xuanyusong.com/archives/3535 /// 监听资源修改、删除、移动 /// </summary> public clas...

阅读全文>>

标签: Unity3d

评论(0) 浏览(6777)

TaskScheduler——任务调度器

作者:追风剑情 发布于:2017-11-7 20:47 分类:C#

示例 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading; usin...

阅读全文>>

标签: C#

评论(0) 浏览(2758)

监听资源导入——AssetPostprocessor

作者:追风剑情 发布于:2017-11-7 15:57 分类:Unity3d

重写AssetPostprocessor可对资源的导入、移动、删除等进行后处理 using UnityEngine; using UnityEditor; using System.Collections; /// <summary> /// 参考 http://blog.csdn.net/yhy2218/article/details/50847127...

阅读全文>>

标签: Unity3d

评论(0) 浏览(8834)

高斯消元法求解方程组(C#实现)

作者:追风剑情 发布于:2017-11-5 12:30 分类:Algorithms

     高斯消元法的主要思想是通过对系数矩阵进行行变换,将方程组的系数矩阵由对称矩阵变为三角矩阵,从而达到消元的目的,最后通过回代逐个获得方程组的解。      高斯消元法的实现简单,主要由两个步骤组成:第一个步骤就是通过选择主元,逐行消元,最终形成方程组系数矩阵的三角矩阵形式;第二步骤就是逐步回代的过程,最终矩阵的对角线上...

阅读全文>>

标签: Algorithms

评论(0) 浏览(5189)

共享材质

作者:追风剑情 发布于:2017-11-3 20:31 分类:Shader

     无论是动态批处理还是静态批处理,都要求模型之间需要共享同一个材质。但不同的模型之间总会需要有不同的渲染属性,例如,使用不同的纹理、颜色等。这时,我们需要一些策略来尽可能地合并材质。      如果两个材质之间只有使用的纹理不同,我们可以把这些纹理合并到一张更大的纹理中,这张更大的纹理被称为是一张图集(atlas)。一...

阅读全文>>

标签: Shader

评论(0) 浏览(3311)

2&10&16进制互转

作者:追风剑情 发布于:2017-11-1 14:57 分类:C#

示例 using System; using System.Collections.Generic; namespace HexTest { class Program { static void Main(string[] args) { int num = 255; ...

阅读全文>>

标签: C#

评论(0) 浏览(3196)

光源Cookie

作者:追风剑情 发布于:2017-10-30 11:54 分类:Unity3d

一、准备一张512x512的Cookie纹理 场景预览

阅读全文>>

标签: Unity3d

评论(0) 浏览(2685)

什么是伽马校正

作者:追风剑情 发布于:2017-10-28 12:33 分类:Shader

      要想渲染出更符合真实光照环境的场景就需要使用线性空间。而Unity默认的空间是伽马空间,在伽马空间下进行渲染会导致很多非线性空间下的计算,从而引入了一些误差。而要把伽马空间转换到线性空间,就需要进行伽马校正(Camma Correction)。 伽马校正中的伽马一词来源伽马曲线。通常,伽马曲线的表达如下: 其中指数部...

阅读全文>>

标签: Shader

评论(0) 浏览(6877)

Transform接口说明

作者:追风剑情 发布于:2017-10-27 16:22 分类:Unity3d

//模型正前方的世界坐标 public Vector3 forward { get; set; } //本地坐标转世界坐标 public Vector3 TransformDirection(Vector3 direction); public Vector3 TransformDirection(float x, float y, float z); public Vector3 Tr...

阅读全文>>

标签: Unity3d

评论(0) 浏览(3564)

光照衰减

作者:追风剑情 发布于:2017-10-21 19:13 分类:Shader

      Unity使用一张纹理作为查找表来在片元着色器中计算逐像素光照的衰减。这样的好处在于,计算衰减不依赖于数学公式的复杂性,我们只要使用一个参数值去纹理中采样即可。但使用纹理查找计算衰减也有一些弊端。 需要预处理得到采样纹理,而且纹理的大小也会影响衰减的精度。 不直观,同时也不方便,因此一旦把数据存储到查找表中,我们就无...

阅读全文>>

标签: Shader

评论(0) 浏览(4175)

在前向渲染中处理不同的光源类型

作者:追风剑情 发布于:2017-10-20 21:34 分类:Shader

示例 工程结构 LightShader.shader文件 // Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld' // Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject' ...

阅读全文>>

标签: Shader

评论(0) 浏览(4625)

TaskFactory

作者:追风剑情 发布于:2017-10-19 11:58 分类:C#

示例 using System; using System.Text; using System.Linq; using System.Threading; using System.Threading.Tasks; namespace TaskTest2 { class Program { static void Main(stri...

阅读全文>>

标签: C#

评论(0) 浏览(2891)

Task.WhenAll()与Task.WhenAny()

作者:追风剑情 发布于:2017-10-17 20:20 分类:C#

示例 using System; using System.Threading; using System.Threading.Tasks; namespace TaskTest1 { class Program { static void Main(string[] args) { Task ...

阅读全文>>

标签: C#

评论(0) 浏览(3865)

list.Find(Predicate<T> match)

作者:追风剑情 发布于:2017-10-16 20:17 分类:C#

示例 using System; using System.Collections.Generic; namespace PredicateTest { class Program { static void Main(string[] args) { List<int> list = n...

阅读全文>>

标签: C#

评论(0) 浏览(2994)

Task——任务可以启动子任务

作者:追风剑情 发布于:2017-10-13 21:22 分类:C#

示例 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TaskTest3 { class Program { static void...

阅读全文>>

标签: C#

评论(0) 浏览(2798)

Task——任务完成时自动启动新任务

作者:追风剑情 发布于:2017-10-13 20:55 分类:C#

示例 using System; using System.Threading; using System.Threading.Tasks; namespace TaskTest2 { class Program { static void Main(string[] args) { ...

阅读全文>>

标签: C#

评论(0) 浏览(3347)

TaskStatus

作者:追风剑情 发布于:2017-10-13 14:29 分类:C#

官方示例:任务状态 using System; using System.Threading; using System.Threading.Tasks; namespace TaskTest { class Program { static void Main(string[] args) { ...

阅读全文>>

标签: C#

评论(0) 浏览(2912)

减少draw call数目——静态批处理

作者:追风剑情 发布于:2017-10-8 20:48 分类:Shader

      Unity提供了另一种批处理方式,即静态批处理。相比于动态批处理来说,静态批处理适用于任何大小的几何模型。它的实现原理是,只在运行开始阶段,把需要进行静态批处理的模型合并到一个新的网格结构中,这意味着这些模型不可以在运行时刻被移动。但由于它只需要进行一次合并操作,因此,比动态批处理更加高效。静态批处理的另一个缺点在于,它往往需要占用更多的内存来存储合并后的...

阅读全文>>

标签: Shader

评论(0) 浏览(4127)

减少draw call数目——动态批处理

作者:追风剑情 发布于:2017-10-7 19:52 分类:Shader

      如果场景中有一些模型共享了同一个材质并满足一些条件,Unity就可以自动把它们进行批处理,从而只需要花费一个draw call就可以渲染所有模型。动态批处理的基本原理是,每一帧把可以进行批处理的模型网格进行合并,再把合并后的模型数据传递给GPU,然后使用同一个材质对其渲染。除了实现方便,动态批处理的另一个好处是,经过批处理的物体仍然可以移动,这是由于在处理...

阅读全文>>

标签: Shader

评论(0) 浏览(3856)

NGUI渲染顺序规则

作者:追风剑情 发布于:2017-10-7 15:47 分类:NGUI

渲染优先级 Camera > UIPanel > Widget Camera的Depth小的先渲染 UIPanel渲染排序优先级 Sort Layer > Sort Order > Render Q > Depth 同一个UIPanel下的Widget根据Depth排序 附上设置选项截图

阅读全文>>

标签: NGUI

评论(0) 浏览(3853)

Task——取消任务

作者:追风剑情 发布于:2017-10-6 20:15 分类:C#

示例:用一个CancellationTokenSource取消Task using System; using System.Threading; using System.Threading.Tasks; namespace TaskTest1 { class Program { static void Main(string[] ar...

阅读全文>>

标签: C#

评论(0) 浏览(3687)

Task——等待任务完成并获取结果

作者:追风剑情 发布于:2017-10-1 12:38 分类:C#

示例: task.Wait()的使用 using System; using System.Threading.Tasks; namespace TastTest { class Program { static void Main(string[] args) { //处理Task中未观察到的异...

阅读全文>>

标签: C#

评论(0) 浏览(5168)

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号