自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 资源 (5)
  • 收藏
  • 关注

转载 Unity 下载文件 WWW与HttpWebRequest 断点续传

描述对于一个网络游戏来说,下载网络上面的文件一定是必不可少的一个功能,例如更新资源包。在Unity中,我们可以用系统的WWW或者HttpWebRequest来实现文件的下载。其中有些较大的文件下载需要断点续传的功能(即下载了一部分突然中断下载后,再次下载直接从上次下载的地方继续下载,而不是重新下载),需要使用HttpWebRequest。这一篇我们主要就讲一讲这两种下载方式的实现(主要都是代码)。基类首先先创建一个基类,里面存放下载需要的一些数据,例如文件url,下载存放路径等等。pub

2022-04-07 12:19:49 954 1

原创 Lua保留指定小数位数

string.format("%.1f",0.16) 默认会四舍五入比如:%0.2f 会四舍五入后,保留小数点后2位print(string.format("%.1f",0.16)) ---会输出0.2,而不是0.1Lua保留一位小数--- nNum 源数字--- n 小数位数function Tool. GetPreciseDecimal(nNum, n) if type(nNum) ~= "number" then return nNum; en

2022-01-04 15:07:16 4892

原创 lua获取限制字数后的字符串

function GetCharNewStrByLimit(str,limitCharNum) local bytes = {str:byte(1,#str)} local length,begin,cutByteLength = 0,false,0 for _, byte in ipairs(bytes) do if byte < 128 or byte >= 192 then begin = false length = length + 1 elseif no..

2021-11-06 14:10:24 382

原创 lua获取字符串中文英文的长度

--[[ UIF编码里面,字符的第一个字节范围是0x00-0x7F(0-127)或者0xC2-0xF4(194-244), 英文是单字节,所以都在这个范围内,中文是双字节,所以第一个在这个范围内,第二个在128-193内 [^\128-\129]是个模式,匹配128到193以外的字节,只会匹配的到字符的第一个字节,所以这个表达式就能计算出来字符总个数了]]---- 获取字符串长度function UIHelps.GetCharStrLen(str) local b.

2021-11-05 11:34:37 413

原创 NGUI的ScrollView实现UI列表滑动

NGUI的ScrollView实现UI列表滑动:ScrollView.cs + UIListView.cs + item挂载DragScrollView

2021-09-09 14:21:42 196

原创 Unity 移动鼠标旋转相机,相机围绕中心点旋转,角度限制

using System;using System.Linq;using UnityEngine;using UnityEngine.PlayerLoop;public class CameraRotate : MonoBehaviour{ private CameraController cameraController; private void Start() { cameraController = UITools.GetOrCreateComp.

2021-08-17 17:55:58 954

原创 Unity鼠标移动旋转相机

void MouseRotate() { float rotaH = Input.GetAxis("Mouse X"); float rotaV = Input.GetAxis("Mouse Y"); transform.Rotate(Vector3.up * rotaH * rotateSpeed * Time.deltaTime, Space.World); transform.Rotate(Vector3.right * -ro.

2021-08-03 17:53:55 280

原创 tolua中调用unity的gameObject的SetActive的测试

function UniversalUtil.SetActive(gameObject,active) if gameObject.activeSelf ~= active then gameObject:SetActive(active) endend--print("测试start_直接设置") --for i=0,20000000 do -- UniversalUtil.SetActive(self.BtnLoginToLoginServ.

2021-07-14 11:22:15 330

原创 Change UI Prefabs Font for UnityEditor(NGUI UILabel)

using System;using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;using UnityEditor.Experimental.GraphView;/// <summary>/// UI替换字体/// </summary>public class UIFontEditor : EditorWindow{ pr.

2021-03-24 17:59:02 126

原创 lua 中 iparis 和 pairs的区别

遍历数组型(连续数字下标)table时,pairs和ipairs效果相同遍历非数组型(数字字母混合,或者非连续数字)table时:pairs:先输出数字类型key的键值(按照key的出现顺序),再输出字母类型key的键值(无序)ipairs:从第一个数字key开始,依次输出所有的key+1的键值,遇到字母下标并不会结束遍历,只是不输出而已.从效果上看,pairs完全包括了ipairs的能力通常遍历table的需求是:不考虑table是数组型table还是非数组型table,遍历table

2021-03-23 14:59:18 721

原创 bat循环输出1到10,并执行python命令

循环一个数字序列:FOR /L %variable IN (start,step,end) DO command [command-parameters] 该集表示以增量形式从开始到结束的一个数字序列。因此,(1,1,5)将产生序列 1 2 3 4 5,(5,-1,1)将产生序列(5 4 3 2 1)示例:@echo offfor /l %%i in (1,1,100) do (echo %%i)pausebat循环输出0到3,执行python命令for.

2020-11-26 13:47:55 1971

原创 Egret之自定义Tween缓动动画函数

/** * 自定义Tween动画类 */namespace TweenPro{ export class Ease { constructor(){}; /** * asine out * 缓动动画函数:先较快,后较慢,再较快 * @param t[0,1] */ static asinOut(t:number):number { //反正弦函数 return (Math.asin(..

2020-11-19 18:37:19 785

原创 Egret开发问题/经验集锦

1.image.source=读取资源可同步,可异步。当异步资源时,设置布局参数.right,.left等可能不生效

2020-11-05 16:23:47 256

原创 Python自定义生成egret中的xxx.res.json文件

import reimport sysimport os#遍历文件def ErgodicFiles(path,resjsonPath,urlPath): print(path) fileGroupsList=[] fileResourcesList=[] for filename in os.listdir(path): strs = filename.split(".") keyName = strs[0] g.

2020-10-29 14:53:09 254

原创 批处理svn自动更新

"D:/Program Files/TortoiseSVN/bin/TortoiseProc.exe" /command:update /path:"E:/SvnProjects/xxx/xxx" /closeonend:3"D:/Program Files/TortoiseSVN/bin/TortoiseProc.exe" -SVN路径/command:update -SVN更新命令/path:"E:/SvnProjects/xxx/xxx" -项目路径/closeonend:3...

2020-10-26 10:44:16 557

原创 多个.bat依次完成后顺序执行

E:\SvnProjects\xxx\PublishTools\PublishA.bat&&E:\SvnProjects\xxx\PublishTools\PublishB.bat

2020-10-10 16:54:12 2590

原创 指定文件生成crc32码写入到指定后缀文件里

#生成CRC32校验码,作为资源版本号,在资源配置json文件写入from ctypes import * import binascii def getFileCRC(_path): try: blocksize = 1024 * 64 f = open(_path,"rb") str = f.read(blocksize) crc = 0 while len(str) != 0: .

2020-10-10 16:38:33 543 1

原创 egret项目,通过gulp,根据输入资源类型,按文件夹名称作为group名称,自动生成xxx.res.json文件

gulpfile.jsvar gulp = require('gulp'); var fs = require("fs");//type 角色0,动画1var type=1;var resPath,dirPath,resName;function SetTypePath(n){ switch(n) { //角色 case 0: resPath="../resource/Arts/Animals/xxxA/"; dirPath="Arts/Animals/xx...

2020-09-27 15:50:46 238

原创 python 根据输入,修改文件里面内容

import reimport syspath = "E:/SvnProjects/xxx/xxx/template/web/index.html"#修改index.html文件,设置网络类型def updatefiles(netModel): f = open(path,'r') alllines=f.readlines() f.close() ff = open(path,'w') for line in alllines: if re.search('var ServerNe.

2020-09-25 14:34:57 243

转载 egret 通过gulp 修改default.res.json资源分组

转自:https://www.pianshen.com/article/328588304/转到egret,第一步想搞的就是他的资源分组,我是懒人,不想什么鬼都要自己手动去拖!哦,对了,ui方面我比较喜欢使用fairygui,习惯每个功能模块对应一个包资源,所以在egret里面我把一个文件夹定义为一个组,组名就是文件夹的名字(不要文件夹里面内嵌文件夹,我没这个需求,所以不知道内嵌会出现什么情况,也没去试验过,嘿嘿)当然,也可以指定这个文件夹为预加载的组,可以在下面的context.res.preloa

2020-09-24 16:41:17 432

原创 .bat批处理删除、复制文件文件夹

@echo startset curPath=E:\SvnProjects\Monopolyset targetPath=E:\Xampp\htdocsset originalPath=E:\SvnProjects\Monopoly\Monopoly\bin-release\webset resPublishPath=E:\SvnProjects\Monopoly\Monopoly\resource_Publish::echo 清空目标发布文件夹echo %targetPath%rd /.

2020-09-18 15:33:31 537

原创 通过openpyxl (Python)读取.txt文本,写入.xlsx(Excel)

import openpyxldef read_txt(): with open(r'DKBanword.txt','r',encoding='utf-8') as f:#打开txt文件 data = f.read().replace('\n', '') #遍历txt文件内容存放到列表 contents = data.split('、') #过滤重复字段、空字符字段 newContents=[] for c in contents: if c not in newCon.

2020-08-27 14:54:09 2389 1

原创 windows10 系统自带定时执行任务

启动程序,程序或脚本中选中需要执行的脚本,在“起始于(可选)”这里一定要填写相应执行程序或是BAT文件的所在目录,要不然是执行不成功的。

2020-08-27 13:56:43 1109

原创 Change Font in Unity3d

using UnityEngine;using System.Collections;using UnityEditor;using System.Collections.Generic;using UnityEngine.UI;public class ChangeFontEditor : EditorWindow { [MenuItem("Tools/Change Font")] static void CreateWindow() { GetWindow<ChangeF.

2020-08-26 17:07:12 132

原创 MVC、MVP、MVVM浅要理解记录

架构设计框架的出现,是为了解决一些问题与痛点。减少耦合,开发变得更简单,提高开发效率。MVC、MVP、MVVM是递进发展的前端框架。MVP与MVVM是基于MVC发展出来的。解决的核心问题为,让开发者关注的点越来越少,更加专注于视图层的开发。MVC开发者需要同时关注Model、View、Controller,单向:V=>C=>M,M的改动会动过事件分发改变V的渲染。缺点:耦合度相对高,需要关注三方。pureMVC纯正MVC,每个功能都有Model、View、Controlle.

2020-06-02 14:42:53 168

原创 欧拉角与万向节锁的理解

参考文章:https://blog.csdn.net/fengya1/article/details/50721768概念:unity 3D欧拉角的旋转顺序(父子关系)是y-x-z。即旋转y轴x和z轴都变,旋转x轴只有z轴变化,旋转z轴其它轴不变。再解释说明前,先说明一些坐标概念。模型坐标系---及模型导入时的坐标系,通过此坐标系记录模型顶点等的位置。世界坐标系---主要作用是表示模型与模型间的相对位置。惯性坐标系---和模型坐标系原点相同,但是坐标轴的方向和世界坐标系相同,作用应该

2020-05-28 18:05:58 241

原创 复习冒泡/选择/快速排序法 by TypeScript

Sort():void { let arrs:number[] = [22,55,11,502,896,3,222,5,11,22,1]; this.SelectSequence(arrs); //this.BubbleSequence(arrs); //this.QuickSequence(arrs,0,arrs.length-1); arrs.forEach(element => { console.log(element); }); } /**选择排序法 .

2020-05-28 16:09:40 203

原创 javascript/typescript正则表达式:是否中文/是否中英文

private static chineseReg:RegExp; /** * 是否中文 * */ public static IsChinese(s:string):boolean { if(!this.chineseReg) this.chineseReg = new RegExp('^[\u4E00-\u9FFF]+$'); if(!this.chineseReg.test(s)) { return false; } else { ret.

2020-05-14 21:46:06 1463

原创 TypeScript 正则表达式 只能输入中文

/** * 是否中文 */ public static IsChinese(s:string):boolean { if(!this.chineseReg) this.chineseReg = new RegExp('^[\u4E00-\u9FFF]+$'); if(!this.chineseReg.test(s)) { return false; ...

2020-05-07 11:23:36 1020

原创 typescript 枚举转字符串

enum EUILayer{ UI=0, Tips, System, Length=3}console.log(EUILayer[0])==>>“UI”

2020-05-06 14:08:22 3475 1

原创 Copy_ScriptsFolder.bat

set TRUNK_PATH=.\Enhance\Assetsset SERVER_PATH=.\Enchant_Server\Assets:: xcopy Options:: /D 只复制那些源时间比目标时间新的文件.:: /R 覆盖只读文件.:: /S 复制目录和子目录,不包括空目录.:: /Y 取消提示以确认要覆盖现有目标文件.:: /I 如果目标不存在,且要复制多个文件,...

2020-04-29 14:24:27 146

原创 egret 关于displayObject反复设置visible的值的时候,内部做了值判断,不会增加性能消耗

DisplayObject.prototype.$setVisible = function (value) { var self = this; if (self.$visible == value) { return; } self.$visible = valu...

2020-04-20 12:03:27 372

原创 修改egret引擎源码

例如修改源码事件:前往引擎安装目录:C:\Users\youname\AppData\Roaming\Egret\engine\5.2.33\src\egret\events修改完后在wing的命令终端执行:1.egret make --egretversion 5.2.332.egret build -e...

2020-04-14 14:44:11 977

原创 egret version tool

# -*- coding: UTF8 -*-#版本控制文件生成 import timeimport datetimeimport osimport tkinter as tkfrom tkinter import filedialogimport json#获取文件的大小,结果保留两位小数,单位为MB'''def get_FileSize(filePath): filePat...

2020-04-03 15:44:51 179

原创 egret 资源管理与版本控制

图片等资源版本控制:两种方式1.通过CRC通过ResDepot发布资源,每个资源名称会自动添加CRC码a.资源通过预加载(分组)进游戏,通过RES.getRes("")、RES.getResAsync()获取资源(default.res.json中的name)2.通过每个资源文件url添加版本号EgretVersionTool:选择resource文件夹,获取资源的修改时间,并且写...

2020-04-03 15:21:17 663

原创 egret 资源管理

/** * 资源管理 */class RESMgr { private static instance:RESMgr; public static get Instance():RESMgr { if(this.instance==null) { this.instance = new RESMgr(); } return this.insta...

2020-04-03 14:28:53 447

原创 typescript 记录

items: Object;删除属性:delete this.items[key];返回值:return this.items[key];

2020-03-24 15:28:34 130

原创 egret 全屏(安卓/PC浏览器)

public static SetFullScreen() { //document.getElementById("fullScreen").style.display = "none"; //document.getElementById("exitScreen").style.display = "block";//error let el = document.docu...

2020-03-19 13:47:13 538

原创 egret 横竖屏自适应

public static get GetContextStage():egret.Stage { return egret.MainContext.instance.stage; } private static isSetFixedHeight:boolean=true; private static isSetFixedWidth:boolean=true; ...

2020-03-17 20:10:47 1564 1

原创 TypeScript 字典

/** * 字典类 * */namespace Core{ export class Dictionary { items: Object; constructor() { this.items = {}; } has(key: any): boolean { return this.items.hasOwnProperty(key); } ...

2020-03-05 10:02:41 982

curvegraphByUnity.rar

Unity动态画曲线(心电图),两份例子,一份是用linerender,一份是rawimage;做了优化,消耗性能小

2019-07-09

gdi32.dll类库文件

gdi32.dll类库文件,在移动端System.Drawing.dll,还依赖GDi32.dll之类的

2019-06-24

System.Drawing.dll.rar

将System.Drawing.dll C#类库放到unity项目中plugins目录下,就可以直接用了,移动端可能也需要gdi32.dll

2019-06-24

c#图像相似度对比

通过网上的例子,加上用灰度直方图方法计算相似度的算法,写了一个例子,经测试效果达到百分之95准确率

2019-06-24

LuckyTurntableDemo.rar

unity写的幸运转盘demo,代码清晰,方便拓展。与unity版本无关,所有版本都可以运行

2019-05-17

空空如也

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

TA关注的人

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