自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 导出预设体的缩略图工具

在Unity中,美术如果没有时间给每一个预设体对象做对应的预设体图片,这种方式可以有效的节约美术的时间成本生成的缩略图在UI效果要求不高的前提下,生成的图片可以直接使用的using System.Collections.Generic;using System.IO;using UnityEditor;using UnityEngine;public...

2019-11-25 16:59:00 285

原创 FairyGui自动生成Wnd工具(Unity)

根据工程需求,自动生成代码工具

2019-11-19 16:55:00 517 1

原创 Unity骨骼优化(转)

https://www.cnblogs.com/whwy/p/8818020.html

2019-07-04 10:30:00 341

原创 顶点处理机制

在计算机体系结构中,管线定义为数据序列并用于处理元素。其中,某一元素的输出内容将用作下一阶段的输入内容。  相应地,GPU渲染管线接收3D场景的表达内容,并将作为输入数据。随后,将计算2D多边形的像素颜色,并输出场景图像。渲染管线主要由以下各阶段组成:  顶点处理阶段,光栅化阶段,片元处理阶段和输出合并操作顶点处理阶段:针对存储于顶点缓冲区内的各个输入顶点执行各种相关操作...

2019-06-10 15:53:00 495

原创 面向对象

--对于一个对象来说,是有属性和方法的person = {name = "chenquanlong",age=18};--第一种--[[person.eat = function()  print(person.name.."在吃饭")end--]]--当使用:定义一个值的时候,我们可以在这个方法里面使用selffunc...

2019-05-28 11:45:00 110

原创 文件读取

1.简单模式:  -- 以只读方式打开文件  file = io.open("test.lua", "r")  -- 设置默认输入文件为 test.lua  io.input(file)  -- 输出文件第一行  print(io.read())  -- 关闭打开的文件  io.close(file)  -- 以附加的方式打开只写文件 ...

2019-05-28 11:44:00 100

原创 协同程序

什么是协同(coroutine)?  协程是针对函数来说的,本来是一个普通的函数,我们只是让这个函数有协程的功能,可以理解为一个协程函数Lua 协同程序(coroutine)与线程比较类似:拥有独立的堆栈,独立的局部变量,独立的指令指针,同时又与其它协同程序共享全局变量和其它大部分东西。  协同是非常强大的功能,但是用起来也很复杂。线程和协同程序区别  线程与协同程序的主要区别在于,...

2019-05-28 11:42:00 179

原创 元表

tableA = {"lua","java","c++"}tableB = {"PHP","lua"}tableA = setmetatable(tableA,tableB);--设置tableB为tableA的元表,返回的为普通表for k,v in pairs(getmetatable(tableA)) do   print(k,v);endprint(setmetatable(ta...

2019-05-28 11:40:00 150

原创 模块与包

模块就相当于C#中的命名空间创建模块:  module = {};  module.var = "longlong";  module.func1 = function()     print("这个是模块里面的函数");  end  return module使用模块:  require "module";--引用模块  module.func1();...

2019-05-28 11:37:00 84

原创 Lua表

mytabel = {"lua"}mytabel[1]=nil;--将这个键值对进行销毁,该表的一号位置为nilmytabel = nil;--释放表占用的内存拼接:  mytabel = {"lua","C#","java",1};  print(table.concat(mytabel,“ ”,2,4));--对表中的字符串进行一个拼接,第二个参数为分隔符,第三个和第四个参数为指定拼...

2019-05-28 11:36:00 133

原创 Lua循环

While循环:a=1;while(a<20) do   if(a%2==1) then     print(a);   end   a=a+1;endfor循环:1、数值for循环for var = start,end,step do   --循环体end这里var会从start开始变化到end,每次变化加一个step进行,step不写默认为1for i=1,10 do   p...

2019-05-28 11:35:00 208

原创 Tabel表—数组和迭代器

#取得tabel(键值对)表中的最大索引,不是tabel的个数Lua中的数组:array={"lua","C#"} 1、索引默认从1开始的2、索引可以为负数的(表为键值对的形式)array = {};for i=-2,2 do   array[i] = i*3;endfor i=-2,2 do   print(array[i])endLua中的多维数组:array = {{"a","...

2019-05-28 11:33:00 317

原创 Lua字符串操作

1、string.upper(argument):字符串全部转为大写字母。2、string.lower(argument):字符串全部转为小写字母。3、string.gsub(mainString,findString,replaceString,num):  在字符串中替换,mainString为要替换的字符串, findString 为被替换的字符,replaceString 要替换...

2019-05-28 11:31:00 173

原创 Lua语法

1.注释:--:单行注释--[[ --]]: 多行注释2.命名规则:区分大小写  Lua标示符用于定义一个变量,函数获取其他用户定义的项。标示符以一个字母 A 到 Z 或 a 到 z 或下划线 _ 开头后加上0个或多个字母,下划线,数字(0到9)。最好不要使用下划线加大写字母的标示符,因为Lua的保留字也是这样的。保留字:lua为一些关键词添加一些功能,一般约定,以下划线开头连接一...

2019-05-28 11:29:00 222

原创 变量

--对于一个对象来说,是有属性和方法的person = {name = "chenquanlong",age=18};--第一种--[[ person.eat = function() print(person.name.."在吃饭") end--]]--当使用:定义一个值的时候,我们可以在这个方法里面...

2019-05-28 11:26:00 80

原创 获得预设体缩略图工具

MenuItem命令(特性)MenuItem属性可以把任意静态函数变成一个菜单命令,在Unity3D中仅静态函数能使用这个属性。在创建菜单时,可以指定特定的字符来为菜单添加快捷键,如下所示:字符%表示Windows上的ctrl键, OS X上的cmd键字符#表示shift键字符&表示alt键字符_表示单键(非组合),例如_g,表示快捷键G。...

2019-05-27 15:30:00 233

原创 C#高级特性

常用的异常类型:  System.ArgumentException:当使用不恰当的参数调用函数时抛出,这通常表示程序有Bug  System.ArgumentNullException: ArgumentException的子类,当函数为null时抛出  System.ArgumentOutOfRangeException:ArgumentException的子类,属性太...

2019-05-10 22:01:00 114

原创 C#基础(二)

静态构造:  静态构造方法是每个类执行一次,而不是每个类实例执行一次。一个类只能定义一个静态构造方法,并且必须没有参数,必须和类同名,  运行时在使用类之前自动调用静态构造方法,下面两种行为可以触发静态构造方法:    1、实例化类    2、访问类的静态成员  静态构造方法只有两个修饰符:unsafe和extern  注:如果静态方法抛出一个未处理异常,类在整个...

2019-05-10 10:16:00 92

原创 C#基础(一)

编译:  C#编译器把一系列.cs扩展名的源代码文件编译成程序集。程序集是.NET中的最小打包和部署单元。一个程序集可以是一个应用程序,或者一个库。一个普通的控制台程序或Windows应用程序是一个.exe文件,包含一个Main方法。一个库是一个.dll文件,它相当于一个没有入口的.exe文件。库是用来被应用程序或其他库调用的。.NET Framework就是一组库标识符和关键字...

2019-05-09 17:19:00 128

原创 C#语言基础

编译:C#编译器把一系列.cs扩展名的源代码文件编译成程序集。程序集是.NET中的最小打包和部署单元。一个程序集可以是一个应用程序,或者一个库。一个普通的控制台程序或Windows应用程序是一个.exe文件,包含一个Main方法。一个库是一个.dll文件,它相当于一个没有入口的.exe文件。库是用来被应用程序或其他库调用的。.NET Framework就是一组库标识符和关键字:如果使用...

2019-05-08 21:55:03 461

原创 最大子数组问题

求哪一天买入和哪一天卖出收益更高?1.暴力求解遍历所有的子数组的和进行比较,求出最大值,耗费性能,很耗时间//价格数组int[] pricesArray = new int[] { 100,113,110,85,105,102,86,63,81,101,94,106,101,79,94,90,97};//价格波动数组int[] priceFluctuationAr...

2019-05-08 15:26:00 103

原创 选择排序和冒泡排序

private int[] array = new int[] {89, 45, 68, 90, 29, 34, 17}; /// <summary> /// 冒泡排序(蛮力法) /// </summary> public void BubbleSort() { for (int...

2019-05-08 14:41:00 72

原创 使用十二面体画球体

当做一个地球的时候,可以使用六面体,八面体和20面体来画一个球体,它们的算法都是相同的,下面是20面体画球体的代码欧拉定理(欧拉公式) V + F- E = 2 (简单多面体的顶点数 V,棱数 E 和面数 F).1、这种方法的原理是:  对每一个三角面进行一次 public GameObject GetSphere(int subdivision = 5, fl...

2019-05-08 13:23:00 693

原创 C#基础(三)

访问权限修饰符:  为了提高封装性、类或类成员会在声明中添加五个访问权限修饰符之一。  public:完全访问权限,枚举类型成员或接口隐含的访问权限  private:仅在包含类型可见,类和结构体成员的默认访问权限  友元程序集:  在C#中,有public,private,internel和protected集中权限限定符,其中跨程序集编程时,经常出现不想让A程...

2019-05-07 13:22:00 63

原创 基于Jenkins的自动化打包

一个坑

2019-05-07 11:41:03 234

原创 堆栈和托管堆

引用博客:https://www.cnblogs.com/shenfengok/archive/2011/09/06/2169306.html

2019-05-05 13:33:00 117

原创 变量的生命周期

1)全局变量:  作用域:全局作用域(只需要在一个源文件中定义,就可以作用于所有的源文件);  生命周期:程序运行期一直存在;  内存分布:全局(静态存储区)。  注意:如果再两个文件中都定义了相同名字的全局变量,则连接错误:变量重定义。2)全局静态变量:  生命周期:程序运行期一直存在;  作用域:文件作用域(只在被定义的文件中可见:st...

2019-05-05 11:03:00 236

原创 光照模型

要模拟真实的光照环境来生成一张图像,需要考虑三种物理现象:  1、光线从光源中被发射出来  2、光线和场景中的一些物体相交:一些光线被物体吸收了,而另一些光线被散射到其他方向  3、摄像机吸收了一些光,产生了一张图像在光学里,我们使用辐射度来量化光。BRDF:当给定入射光线的方向和辐照度后,BRDF可以给出在某个出射方向上的光照能量分布漫反射:漫反射光照符合兰伯特...

2019-04-24 14:27:00 75

原创 UniRX简述

UniRX:是一个Unit3D的编程框架,专注于解决异步逻辑,使得异步逻辑的实现更加简单优雅。  例如:实现“只处理第一次鼠标点击事件”:  Observable.EveryUpdate() .Where(_=>Input.GetMouseButtonDown(0)) .First() .SubScribe(_...

2018-10-22 17:25:00 339

原创 Json压缩工具

一般的json文件拥有很多的空格和注释,虽然读起来比较方便,但是在运行的时候是要占一些内存的。于是json压缩工具就应运而生了,这个工具是用java做的,原理是:1:在Eclipse中导出一个可运行的jar文件2:用python运行这个jar文件,并向这个jar文件的运行程序传一些main方法的参数(一般只传路径就可以了)//bat文件的代码如下:set asse...

2018-08-05 17:23:00 592

原创 原生内存泄漏检测

1.首先配置好SDK,需要一个root的手机2.打开cmd 进入SDK中的platform-tools  cd F:\tools\android-sdk-windows\platform-tools3.执行adb.exe  F:\tools\android-sdk-windows\platform-tools>adb.exe4.进入手机  F:\tools\...

2018-08-01 13:36:00 69

原创 安卓适配

隐藏软键盘:清除消息标志 FLAG_KEEP_SCREEN_ON   getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); 软件全屏:  1.DEFAULT_FEATURES:系统默认状态,一般不需要指定  2.FEATURE_CONTEXT_MENU:启用ContextMenu,默认...

2018-07-30 11:34:00 55

原创 ApplicationListener接口的生命周期

create:游戏初次创建时被调用,一般在这里创建ApplicationListener对象,初始化布景信息,将数据或UI布局绑定到监听器等,执行完该方法后会执行resize方法,是游戏创建立即执行的方法。resize:每次游戏屏幕尺寸改变并且没有处于暂停状态时,该方法会被调用。在create函数执行完成之后,也会调用一次该方法。两个参数分别是尺寸调整之后的屏幕的宽和高,以像素为单位...

2018-07-01 19:09:00 185

原创 Blender软件基本介绍(3D建模软件)

1、Blender的好处:  1>、开源免费  2>、体积比较小  3>、和Unity的交互比较好(一般建模软件需要导出FBX的文件,然后用到Unity中,而Blender不需要导出,只需要把工程导入到Unity中就可以了)2、Blender的设置:  1>界面的汉化、File-->System-->InternationalFon...

2018-05-21 11:55:00 3561

原创 unity中给图片换颜色

slot边框.color = new Color32 (93,165,255,255);  

2018-04-25 11:56:00 2654

原创 Unity中建立文本保存数据

public void CreateYunYD() { GameToolsManager.Instance.effectType = EFFECTTYPE.YunYD; CreateYunOrWu("Effect/yunwu-yd", Vector3.zero); } public void CreateYun...

2018-04-08 16:53:00 499

原创 UGUI脚本添加Btn回调的方法

using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;using UnityEngine.EventSystems;//对添加这个脚本的对象添加EventTrigger组件[RequireComponent(typeo...

2018-03-05 14:19:00 117

原创 碰撞体速度过快穿透的问题

问题:假设现在A物体以非常高的速度移动,而unity每一帧的检测时间大概是0.02秒,也就是说如果物体A速度过快,在不用0.02秒的时间就已经穿过了其他物体,那么这个时候是无法检测A与其他物体之间的碰撞信息的主要原因是:1.未设置好更新位置的代码位置2.碰撞盒太小3.物理碰撞检测间隔太长。总之,根本原因就是在执行一次碰撞检测之前,移动的位移超过了碰撞本身的大小。...

2018-01-26 18:31:00 12131

原创 Unity中的点击,长按,划动

public void GetClickType(){ if(Input.GetMouseButtonDown(0)) { if(isGetBeginPos) { beginPosition = Input.mousePosition; isGetBeginPos = false; } if(isCheckCollider) ...

2018-01-20 17:39:00 433

原创 在对话系统中实现打字机效果

using DG.Tweening;public bool isDoTweenEnd;public void SetShowFont(Text text, string context, float timer, bool richText = true){ DoTweenAnimation doTween = text.transform.GetCompon...

2018-01-17 14:11:00 198

空空如也

空空如也

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

TA关注的人

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