自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(146)
  • 收藏
  • 关注

转载 主角场景Shader效果:光影

基本思路:unity有一种很容易实现光影效果的神器,那就是unity自带的projector。首先需要用到两张贴图:一张投影需要的光圈贴图,如下:一张根据远近距离显示暗淡的贴图(左至右,白渐变黑),如下:主要用到两个参数:_Projector 和 _ProjectorClipmul(_Projector, vertex):用于计算要投影的图片正确的显示到场景上...

2019-09-21 03:15:16 502

转载 天气系统:雨、雪

实现原理:雨和雪的实现基本类似,天空中飘的雨和雪,地上的水花和雪花,增加一个下落速度和风速,就形成了天气了。天气雪实现步骤:1、预生成Mesh:随机生成多个空中飘落的雪网格和地面上的雪花网格。2、预生成雪shader和雪花shader,雪shader支持雪的显示,雪花shader支持序列帧动画显示。3、新建一个雪相机,该相机只渲染Water层,所有和雪有关的都挂到Wate...

2019-09-21 03:15:13 379

转载 UnityShader 序列帧动画效果

实现原理:主要思想是设置显示uv纹理的大小,并逐帧修改图片的uv坐标。实现步骤1、我们首先用_Time.y和速度属性_Speed相乘得到模拟的时间。2、然后我们用time除以_HorizontalAmount的结果值作为当前的行索引,除法结果的余数则是列索引。3、接下来,我们根据行索引和列索引来构建真正的采样坐标。由于序列帧图像包含了很多张关键帧图像,这意味着采样坐标需要...

2019-09-21 03:15:10 367

转载 unity生成Android apk

前提:本文默认你安装了unity5.6版本,不是这个版本的没有Gradle(new)选项,也默认你安装了Android Studio并配置好了环境变量。Gradle(new):打包Android Studio工程。ADT(legacy):打包Eclipse工程。1、按下图所标注进行工程设置:2、最后点击上图的Export按钮,配置工程保存路径,打出来的工程是这样子。...

2019-09-21 03:15:08 347

转载 Adreno GPU Profiler工具使用总结

Adreno Profiler介绍 Adreno Profiler 是高通公司开发的一款针对运行在高通骁龙处理器上用于图形和GPGPU技术应用的性能分析和帧调试工具。工具本质上是一个OpenGL ES Draw Call Replay,此要求PC端也必须支持手机端设备的 OpenGL ES 所有特征。由于这个工具是高通提供的,所以只能运行在高通芯片的安卓机上。...

2019-09-21 03:15:05 1517

转载 浅谈cocosd之autorelease\retain\release的理解

三种情况,引出问题: 1)new出来的对象需要释放,而释放时,如果有其他人引用了这个对象,再次使用这个对象时,则会出现野指针情况。==> 于是出现了引用计数的释放管理机制。 2) 对于一个返回对象指针的方法,你若不看文档不看内部代码,你无法知道这个指针需不需要你来释放。同样的对于将一个指针或者对象作为参数给一个方法后, 你也无法知道这个方法会不会将你的对象释放掉...

2019-09-21 03:15:02 181

转载 lua和C++的交互(1)

/*以前听的一个故事,当年Java的创造者讲课的时候,一开始先拿一个简单的不能简单的小例子,不断的扩展,最后成为一个复杂而完美的程序。一个重要之重要的概念,就是栈。Lua与别的语言交互以及交换数据,是通过栈完成的。*/#include <iostream>using namespace std;extern "C" //这部分按C语言进...

2019-09-21 03:15:00 86

转载 Unity相对于Cocos2d-x的比较

1、unity:Code in C# or js cocos:(Code in C++)2、unity:可以让美工、动画、码农在同一个平台上各司其职(一起玩) cocos:码农自己玩 ex: Unity提供集成的场景编辑器,物理引擎,材质编辑、动画编辑等等,再加上本身的类插件功能,Unity好比是一套“解决方案”,相对而言cocos2d-x好比是码农用的...

2019-09-21 03:14:57 611

转载 主角场景Shader效果:遮挡透明

基本原理:被遮挡的部分关闭深度写入, 显示透明效果;未被遮挡的部分不关闭深度测试,显示正常贴图效果,即使用两个Pass即可。Pass1:关闭深度写入(ZWrite Off),深度测试渲染较远的物体,即模型被物体遮挡的部分(ztest greater)。Pass2:开启深度写入,正常渲染。 1 Shader "xj/Character/Normal" { 2 P...

2019-09-21 03:14:56 263

转载 Lua弱表Weak table

定义:弱表的使用就是使用弱引用,很多程度上是对内存的控制。1、weak表示一个表,它拥有metatable,并且metatable定义了__mode字段。2、弱引用不会导致对象的引用计数变化。换言之,一个对象只有弱引用指向它,那么gc会自动回收该对象的内存。3、__mode字段可以取以下三个值:k、v、kv。任何情况下,只要key和value中一个被gc,那么key-valu...

2019-09-21 03:14:55 157

转载 主角场景效果:人物阴影

基本原理:使用Projector和Camera结合实现的动态阴影,使用Camera渲染出一张模型轮廓图,再用Projector投射到场景的接收物体上。思路:1、创建一个GameObject用来挂载Projector和Camera。2、生成一张RenderTexture贴图,命名为mShadowRT。3、创建一个单独渲染主角轮廓的相机,挂在GameObject上,为相机替换...

2019-09-21 03:14:54 169

转载 Unity ZTest深度测试 & ZWrite深度写入

Shader深度渲染队列Queue预定义值:Background(1000)、Geometry(2000)、AlphaTest(2450)、Transparent(3000)、Overlay(4000)。渲染优先顺序: Queue值越小越先渲染,后渲染的物体会覆盖先渲染的物体。测试:我想让远处的红色方块遮挡住近处的蓝色方块,即让蓝色的先渲染,红色的后渲染,我将红块的Queu...

2019-09-21 03:14:52 523

转载 跨平台sdk接入总结

sdk说明:1、Bugly SDK:自动捕获上报App的脚本错误和原生代码引发的崩溃信息,并提供异常问题分类分析。2、语音 SDK:提供游戏内收发语音功能。接入步骤:step1:仔细通读一遍sdk接入文档step2:将需要用到的sdk代码文件拷贝至指定工程路径下step3:环境配置1)win32:1、将sdk目录下的所有dll和lib文件拷贝到pro...

2019-09-21 03:14:51 229

转载 主角场景Shader效果:描边

基本思路:Shader用两个Pass,一个渲染描边部分,一个渲染物体部分。Pass1:剔除正面,渲染背面,把顶点延法线方向外围扩展一定宽度,用来表现描边的粗细,这部分用自己设定的颜色。Pass2:剔除背面,渲染正面,正常渲染所看到的物体模型。 1 // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'mul(...

2019-09-21 03:14:50 161

转载 cocos2d-x:Particle System(粒子系统)

一、粒子系统简介:粒子系统最早出现在80年代,主要用于解决由大量按一定规则运动(变化)的微小物质在计算机上的生成和显示问题。Particle System的应用非常广泛,大的可以模拟原子弹爆炸,星云变化,小的可以模拟水波、火焰、烟火、云雾等,而这些自然现象用常规的图形算法是很难逼真再现的。Particle System可以说是一种基于物理模型来解决问题的方法,它的核心不在于如何显...

2019-09-21 03:14:49 108

转载 模型框架

一、模型打包流程二、模型创建流程三、模型API框架转载于:https://www.cnblogs.com/kane0526/p/9209147.html

2019-09-21 03:14:47 389

转载 cocos2d中各种action方法的应用

Action示例:1、移动动作cc.MoveBy:create(time, posX, posY) 在time时间内,相对当前位置基础上移动x,y个单位。 cc.MoveTo:create(time, posX, posY) 在time时间内,移动到cc.p(posX, posY)位置。2、缩放动作cc.ScaleBy:create(time, scale...

2019-09-21 03:14:46 93

转载 初识Unity Mesh

Mesh概念:Mesh是Unity中的一个组件,称为网格组件。通俗的讲,Mesh是指模型的网格,3D模型是由多边形拼接而成,而多边形实际上是由多个三角形拼接而成的。所以一个3D模型的表面其实是由多个彼此相连的三角面构成。三维空间中,构成这些三角形的点和边的集合就是Mesh。Mesh组成:1、顶点坐标数组vertexes2、顶点在uv坐标系中的位置信息数组uvs3、三角形...

2019-09-21 03:14:45 336

转载 Lua源代码阅读分析问题列表(转)

最近正在阅读lua源码,遇到座灯塔,转载如下:我个人的习惯是带着问题去研究一个新题目,比如这次阅读Lua代码,暂列下面这些问题。1)什么是基于栈、基于寄存器的虚拟机(VM)设计?Lua如何实现基于寄存器的设计?2)Lua如何解析一段代码,生成中间代码?3)Lua如何使用VM运行中间代码?4)Lua如何实现GC机制?5)ipairs与pairs的不同(这是前...

2019-09-21 03:14:44 82

转载 lua中基类和“继承机制”

基类:基类定义了所有对于派生类来说普通的属性和方法,派生类从基类继承所需的属性和方法,且在派生类中增加新的属性和方法。继承:继承是C++语言的一种重要机制,它允许在已定义的类的基础上产生新类。lua基类和C++基类极为相似,但是lua中却没有继承这一说,更没有所谓的派生类。lua只能通过一种行为(元表)来模拟C++继承这一方法。元表:lua中提供的元表是用于帮助lua数...

2019-09-21 03:14:42 393

转载 搜索算法总结

一、最基本的搜索算法:回溯算法回溯算法是所有搜索算法中最为基本的一种算法,其采用了一种“走不通就掉头”思想作为其控制结构。二、搜索算法分类:bfs与dfsdfs:栈的思想(先进后出)优先兄弟节点。容易超时,多用于求可行解。 bfs:队列的思想(先进先出)优先儿子节点。容易消耗大量内存,多用于求最优解。总结:搜索算法从最终的算法实现上来看,都可以划分成两个部分——控制结构(扩展节点...

2019-09-21 03:14:42 535

转载 STL之关联容器

关联容器包含map、set、multimap、multiset。关联容器的特点是明显的,相对于顺序容器,有如下特点:1、其内部是采用非线性的二叉树结构,具体的说是红黑树的结构原理实现的。2、set和map保证了元素的唯一性,multiset和multimap扩展了这一属性,可以允许元素不唯一。3、元素可以是有序的集合,默认在插入的时候按升序排列。关联容器的...

2019-09-21 03:14:40 81

转载 socket编程学习step2

引言:主机之间如何相互交互呢?网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口“可以唯一标识主机中的应用进程。这样利用三元组(ip地址,协议,端口)就可以标识网络的进程了,网络中的进程就可以利用这个标志与其他主机进行交互了。什么是TCP/IP、UDP?1、TCP/IP(Transmission Control Protocol/Internet Prot...

2019-09-21 03:14:38 91

转载 STL之deque

deque是一种优化了的,对序列两段进行添加和删除操作的基本序列容器。它允许较为快速的随机访问,但它不像vector把所有对象保存在一块连续的内存块,而是采用多个连续的存储块。向deque两段添加或删除元素的开销很小。它不需要重新分配空间,所以向末端增加元素比vector更有效。实际上,deque是对vector和list优缺点的结合,它是处于两者之间的一种容器。d...

2019-09-21 03:14:36 75

转载 ppt述职摘要

1、工作总结1)做了什么2)做的怎么样3)还要做什么2、个人成长和团队成长3、个人目标和团队目标1)时间+量化(具体说明)2)预期效果3)团队凝聚力4、展望转载于:https://www.cnblogs.com/kane0526/p/7419496.html...

2019-09-21 03:14:34 222

转载 STL之list

list是一个线性链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息块,一个前驱指针和一个后驱指针。它无需分配指定的内存大小且可以任意伸缩,这是因为它存储在非连续的内存空间中,并且由指针将有序的元素链接起来。list的特点:1、不使用连续的内存空间这样可以随意的进行动态操作。2、可以在内部任何位置快速的插入与删除,当然也可以在两端进行push和pop。...

2019-09-21 03:14:33 45

转载 MVC和MVP的区别

MVC: Model - View - ControllerMVP: Model - View - PresenterMVC和MVP到底有什么区别呢? 从上图可以看到在MVC里,View是可以直接访问Model的,从而View里面是能包含Model的信息的,不可避免还要包括一些业务逻辑。在MVP里更关注Model的不变,而同时有多个对Model的不同展示。...

2019-09-21 03:14:29 65

转载 Lua系统库

Lua为了保证高度的可移植性,因此,它的标准库仅仅提供了非常少的功能,特别是和OS相关的库。但是Lua还提供了一些扩展库,比如Posix库等。对于文件操作而言,该库仅提供了os.rename函数和os.remove函数。 1. 日期和时间: 在Lua中,函数time和date提供了所有的日期和时间功能。 如果不带任何参数调用time函数,它将以数字形...

2019-09-21 03:14:28 127

转载 socket编程学习step1

socket学习参考链接,赞一个:http://blog.csdn.net/hguisu/article/details/7445768sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据包套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程采用的都是流式套接字。服务端socket编程步骤:1、加载...

2019-09-21 03:14:26 56

转载 Lua输入输出库

1、简单模型)1、io.write函数: 函数模型为io.write(...))2、io.read函数: io.read(“*all”) 读取当前输入的整个文件 io.read(”*line“) 读取下一行...

2019-09-21 03:14:24 135

转载 Lua数据持久化

1、数据文件我们可以利用Lua中的table构造式来定义一种文件格式,即文件中的数据是table构造并初始化的代码 ,这种方式对于Lua程序而言是非常方便和清晰的,如:Entry{"deng","Male","22"}Entry{"li","Female","22"}该数据存储在“example.lua”文件中需要注意的是,Entry{<code>}等价于...

2019-09-21 03:14:20 365

转载 STL学习之vector

vector是一个线性顺序结构。相当于数组,但其大小可以不预先指定,并且自动扩展。它可以像指针一样被操作,由于它的特性我们完全可以将vector看做动态数组。特点:1、指定一块如同数组一样的连续存储,但空间可以动态扩展。即它可以像数组一样操作,并且可以动态操作。2、随机访问方便,它像数组一样被访问。3、节省空间,因为它是连续存储,在存储的区域是没有被浪费的,当...

2019-09-21 03:14:19 75

转载 lua函数

一、函数 在lua中函数的调用方式和C语言基本相同。 如print(“hello world”), z=add(x+y)。唯一的差别是,如果函数只有一个参数,并且该参数是字符串或者table构造器,那么圆括号可以省略,如print “hello world”, f{x=10,y=10}。 我对于table构造器的理解就是它本身就是一个构造函数或者是特殊化的结构体。...

2019-09-21 03:14:15 120

转载 STL三种标准容器

顺序性容器vector:从后面快速的插入与删除,直接访问任何元素deque:从前面或后面快速的插入与删除,直接访问任何元素list: 双链表,从任何地方快速的插入与删除关联容器set:快速查找,不允许重复值multiset:快速查找,允许重复值map:一对一映射,基于关键字快速查找,不允许重复值multiset:一对多映射,基于关键字快速查找,允许重...

2019-09-21 03:14:15 185

转载 lua库函数

这些函数都是Lua编程语言的一部分, 点击这里了解更多.assert(value) - 检查一个值是否为非nil, 若不是则(如果在wow.exe打开调试命令)显示对话框以及输出错误调试信息collectgarbage() - 垃圾收集器. (新增于1.10.1)date(format, time) - 返回当前用户机器上的时间.err...

2019-09-21 03:14:11 135

转载 Lua数据结构

lua中的table不是一种简单的数据结构,它可以作为其他数据结构的基础,如:数组,记录,链表,队列等都可以用它来表示。1、数组在lua中,table的索引可以有很多种表示方式。如果用整数来表示table的索引,即可用table来实现数组,在lua中索引通常都会从1开始。--二维数组n=10 m=10arr={}for i=1,n do ar...

2019-09-21 03:14:09 58

转载 了解C++默认编写并调用哪些函数

概念:编译器可以暗自为class创建default构造函数、copy构造函数、copy assignmengt构造函数,以及析构函数。比如你写下:struct Node{};这就好像你写下这样的代码:struct Node{ Node(){} //default构造函数 Node (const Node&amp...

2019-09-21 03:14:06 113

转载 Lua迭代器和泛型for

1、迭代器与closure在lua中,迭代器通常为函数,每调用一次函数,会返回集合中的下一个元素。每个迭代器在成功调用的时候,都需要保存一些状态,closure(闭包)完美为迭代器运用而生。function values(t) local i=0 return function() --匿名函数 i=i+1 return t[i] ...

2019-09-21 03:14:05 50

转载 lua的table排序

lua中利用到的排序的基本上就是构造函数(table)了,为了便于和C区分开来,我俗称它为表单。实例:(原理就是LUA集成的冒泡算法)排序的一般姿势(对于只包含数字或者只包含字符串的简单数组)table.sort(test)扩展版table.sort(test, function(a,b) return a.id<b.id end )实例一:...

2019-09-21 03:13:58 336

转载 数位dp

问题:在一个给定的区间[a,b]内,找满足要求的数。如果我们用暴力的话一般要考虑数的大小,而数位dp要考虑的确实数的组成。例如: 递增的 1234 1357 2468 整除13的 13 26 39 包含13的 132 2134 双峰的 152630 243052如果数的位数大于100,暴...

2019-09-21 03:13:57 61

空空如也

空空如也

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

TA关注的人

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