- 博客(40)
- 资源 (4)
- 收藏
- 关注
转载 js基础之传参
JS基础之传参(值传递、对象传递)目录导航一、概念 按值传递 VS. 按引用传递 按共享传递 call by sharing 二、实例解析 探究JS值的传递方式 按共享传递 call by sharing 基本类型的不可变(immutable)性质 一、概念 我们需了解什么是按值传递(call by value),什么是按引用传递(call by reference)。在计算机科学里,这个部分叫求值策略(Evaluation Strategy)。它决定变量之间.
2022-04-01 16:58:04
2483
原创 开发工具入门
配置SublimeText的编译工具->编译系统->新建编译系统修改如下代码到新建文件内,Ctrl+S保存内容到 “SublimeText安装目录下的\Data\Packages\User”# 配置文档{ "cmd": ["软件名如:php", "$file"], "file_regex": "文件后缀(如'php',记住这里是按正则匹配的不要忽略了美元符号)$", "selector":"source.php"}# 配置案例-php{ "c...
2022-03-30 14:32:51
4912
转载 游戏策划- 暗黑破坏神
《暗黑2》经典数值公式分析总结(一)《暗黑2》经典数值公式分析总结(一)_小小Shen的博客-CSDN博客_暗黑2准确率计算公式《暗黑2》经典数值公式分析总结(二)《暗黑2》经典数值公式分析总结(二)_小小Shen的博客-CSDN博客_暗黑2怪物血量具体数值《暗黑2》经典数值公式分析总结(三)《暗黑2》经典数值公式分析总结(三)_小小Shen的博客-CSDN博客...
2022-03-23 14:14:49
267
原创 Laya源代码详解 Byte.ts
/*获取当前主机的字节序,即判断运行环境是大端还是小端。*/ static getSystemEndian(): string { if (!Byte._sysEndian) { var buffer: any = new ArrayBuffer(2);//新建一个2字节的二进制数据缓冲区 new DataView(buffer).setInt16(0, 256, true); Byte._sysEndian .
2022-02-23 10:59:10
569
转载 ArrayBuffer
类型化数组是JavaScript操作二进制数据的一个接口。这要从WebGL项目的诞生说起,所谓WebGL,就是指浏览器与显卡之间的通信接口,为了满足JavaScript与显卡之间大量的、实时的数据交换,它们之间的数据通信必须是二进制的,而不能是传统的文本格式。比如,以文本格式传递一个32位整数,两端的JavaScript脚本与显卡都要进行格式转化,将非常耗时。这时要是存在一种机制,可以像C语言那样,直接操作字节,然后将4个字节的32位整数,以二进制形式原封不动地送入显卡,脚本的性能就会大幅提升。
2022-02-22 18:06:32
1096
转载 JavaScript prototype
转载原文点这里用过JavaScript的同学们肯定都对prototype如雷贯耳,但是这究竟是个什么东西却让初学者莫衷一是,只知道函数都会有一个prototype属性,可以为其添加函数供实例访问,其它的就不清楚了,最近看了一些 JavaScript高级程序设计,终于揭开了其神秘面纱。每个函数都有一个prototype属性,这个属性是指向一个对象的引用,这个对象称为原型对象,原型对象包含函数实例共享的方法和属性,也就是说将函数用作构造函数调用(使用new操作符调用)的时候,新创建的对象会从原型对象上.
2022-02-22 11:42:45
66
原创 node-glob:js上的正则
node的glob模块允许你使用 *等符号, 来写一个glob规则,像在shell里一样,获取匹配对应规则的文件.这个glob工具基于javascript.它使用了 minimatch 库来进行匹配用法:首先下载glob包:npm install glob调用格式:var glob = require("glob")// options 是可选的glob("**/*.js", options, function (er, files) { // files 是匹...
2021-09-23 15:38:08
356
原创 gulp学习记录
任何Cant find modulke 'gulp-xxx'使用npm install gulp-xxx --save-dev 方式安装const xxx =require('gulp-xxx')xxx就能用了例如读取一个文件夹的,js 压缩处理 使用uglify()要先这样安装npm install gulp-uglify --save-devnpm install gulp-rename--save-dev代码例子:const fs = require('fs'.
2021-09-17 16:21:23
98
原创 引擎相关修改
//if(WebGLContext._useProgram===program)//returnfalse;gl.useProgram(program);WebGLContext._useProgram=program;returntrue;...
2021-06-07 15:32:30
78
原创 Layabox VSCode直接调试踩坑 layacmd 安装 超详细!
原文:https://ldc2.layabox.com/doc/?nav=zh-ts-3-0-9浪费了整整一下午 在此记录一下layabox的坑主要注意事项步骤1.2 node.js安装环境变量参照:https://www.jianshu.com/p/13f45e24b1de第一个坑:注意不要自己下载js 只有10.x版本的能成功 如果已经安装了 要卸载干净 并且删除干净C:\Users\Admin\npm 文件夹官方原文:截止到本篇文档撰写时,当前的12.x版与Gulp环境冲突,...
2020-12-10 21:27:21
1363
1
转载 如何编写一个d.ts文件的步骤详解
如何编写一个d.ts文件的步骤详解这篇文章主要给大家介绍了关于如何编写一个d.ts文件的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用d.ts具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。本文主要讲怎么写一个typescript的描述文件(以d.ts结尾的文件名,比如xxx.d.ts)。最近开始从js转ts了。但是要用到一些描述文件(d.ts),常用的比如jquery等都可以通过 npm下载到别人已经写好的npm in...
2020-12-01 16:08:47
1176
原创 layabox - 龙骨动画
layabox 使用龙骨动画的时候杂七杂八的事情很多资源未加载完 崩溃龙骨动画添加帧动画报错等等Failed to load resource: net::ERR_FILE_NOT_FOUND [file:///G:/program/20191112/bin/res/spine/undefined]自己封装了一个 要用的拿去/**@author ccj* 通用版本动画组...
2019-11-27 17:45:50
1093
原创 layabox - protobuf 完整
安装nodejs 然后在命令行输入npm install protobufjs@6.8.4 -gnpm install @egret/protobuf -g接着前往你安装nodejs的路径里面找到@egret\protobuf(这个是node需要安装的,这里不介绍)例如:我自己的路径E:\Program Files\nodejs\node_global\node_modules\@e...
2019-11-25 14:35:30
874
原创 Laya2.0 集成 Protobuf
安装node.js以及nmp、protobufjs按照安装路径找到dist文件 复制到项目所在目录 并在该目录 cmd pb-egret add 生成protofile文件夹在执行 pb-egret add 之后,bin下会生成protobuf文件夹,将 .proto 文件放到它下面,然后执行第2步。.proto 手动写一个就行 参照 protobuffer语法 例如:...
2019-11-19 19:53:10
684
转载 Android.mk
android ndk开发有一个重要的文件 Android.mk,他虽然重要,但是对它进行深入介绍的文档却比较的少,这里将对Android.mk中常用的宏和变量进行说明: 由于这一部分的内容多,资料零散,本文档会进行持续性的更新; 方便他人亦是方便自己,如果觉得还行就下右边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!
2017-11-03 16:57:51
262
转载 schedule 详解
mmiddCnBlogsHomeNew PostContactAdminRssPosts - 9 Articles - 0 Comments - 34 Cocos2d-X3.0 刨根问底(六)----- 调度器Scheduler类源码分析上一章,我们分析Node类的源码,在Node类里面耦合了一个
2017-10-31 16:51:29
10684
转载 函数指针的运用
#include "stdafx.h"#include #include #include typedef int(*FP_CALC)(int, int);int add1(int a, int b){return a + b;}int sub1(int a, int b){return a - b;}int mul1(
2017-10-31 16:31:37
242
原创 C++整理
HttpClient* HttpClient::getInstance(){ if (s_pHttpClient == nullptr) { s_pHttpClient = new (std::nothrow) HttpClient(); } return s_pHttpClient;}标准的new头文件可以定义普通的new,
2017-10-24 10:40:25
195
转载 C++多线程
原地址: http://blog.csdn.net/hujingshuang/article/details/70208443C++多线程支持库(Thread support library) C++的内置支持包括thread(线程),mutual exclusion(互斥),condition variables(条件变量)和future等。
2017-10-24 10:07:15
1580
转载 eclipse adb占用 以及重启卡死
adb端口占用问题首先通过CMD启动adb服务。这个时候会提示启动失败。服务启动失败的原因有很多,但一般是端口绑定失败。我们来查看一下端口绑定信息。如图所示,真的是端口绑定出了问题。我们来看看哪个服务占用了这个端口。这里面有2个进程占用了这个端口。
2017-10-23 10:34:38
558
原创 游戏制作学习资料
暗黑破坏神 作者王云威 原暴雪员工 https://www.zhihu.com/topic/19601882/top-answers?page=3
2017-08-09 16:32:55
398
转载 VS编译器基础 int main(int argc,char* argv[])
int main(int argc,char* argv[])详解 argc是命令行总的参数个数 argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数 命令行后面跟的用户输入的参数,比如: int main(int argc, char* argv[]) { int
2017-08-07 15:51:03
797
转载 Cocos convertToWorldSpace 参数详解
convertToWorldSpace 参数详解发表于2016/8/19 11:21:31 160人阅读分类: cocos2d-x关于这个函数作用大家都知道,是把本地坐标转换为世界坐标,但是这种说法太宽泛。到底什么是本地坐标,什么是世界坐标,这个函数的用法 :node->convertToWorldSpace(child->getPosition) 用的时候
2017-06-07 17:12:28
1228
原创 json解析导致的崩溃问题 cocos2.* 底层问题
过程:====== m_dropMsg->push("欢迎来到德州游戏的世界"); m_dropMsg->push("[#%&#]:");======void DropMsg::push( const char* szMsg ){if (parse(szMsg) && m_configQueue.size() == 1){
2016-10-19 16:07:32
1673
转载 ipv6 解决方案 详细版
苹果官方出了新的规定,要求新上架的app都必须单独支持ipv6-only的网络。具体的要求链接:https://developer.apple.com/library/mac/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/UnderstandingandPreparingfortheIPv6Transit
2016-10-14 10:38:49
3040
转载 Lua 性能优化
一般情况下,你不需要知道Lua实现表的细节,就可以使用它。实际上,Lua花了很多功夫来隐藏内部的实现细节。但是,实现细节揭示了表操作的性能开销情况。因此,要优化使用表的程序(这里特指Lua程序),了解一些表的实现细节是很有好处的。Lua的表的实现使用了一些很聪明的算法。每个Lua表的内部包含两个部分:数组部分和哈希部分。数组部分以从1到一个特定的n之间的整数作为键来保存元素(我们稍后即将讨
2016-05-19 15:17:07
571
原创 C++ 常用
去头去尾 void remove_space(string& str){ string buff(str); char space = ' '; str.assign(buff.begin() + buff.find_first_not_of(space), buff.begin() + buff.find_last_not_of(space) + 1); }
2016-05-19 10:19:30
216
转载 windows下的 c++ socket编程
Socket的概念:Socket,即套接字,用于描述地址和端口,是一个通信链的句柄。应用程序通过Socket像网络发出请求或者回应。什么事客户/服务器模式:在TCP/IP网络应用中,通信的两个进程相互作用的主要模式是客户/服务器模式,即客户端向服务器发出请求,服务器接收请求后,提供相应的服务。客户/服务器模式的建立基于以下两点:1:建立网络的
2016-05-05 14:53:08
263
原创 特效集合
--阴影 if self.shadow == nil then self.shadow = cc.Sprite:create() self.shadow:retain() self.shadow:setColor(cc.c3b(0,0,0)) end
2016-04-29 17:40:12
225
原创 各种特效集合
--阴影 if self.shadow == nil then self.shadow = cc.Sprite:create() self.shadow:retain() self.shadow:setColor(cc.c3b(0,0,0)) end
2016-04-29 17:38:55
266
原创 Lua 控制台输出
SimulatorWin.cpp// define 1 to open console ui and setup windows system menu, 0 to disable#include "ide-support/CodeIDESupport.h"#if (CC_CODE_IDE_DEBUG_SUPPORT > 0)#define SIMULATOR_WITH_
2016-04-12 15:12:42
2864
转载 Lua的模块编写与module函数
1.编写一个简单的模块Lua的模块是什么东西呢?通常我们可以理解为是一个table,这个table里有一些变量、一些函数…等等,这不就是我们所熟悉的类吗?没错,和类很像(实际上我说不出它们的区别)。 我们来看看一个简单的模块,新建一个文件,命名为game.lua,代码如下:game = {}function game.play() print("那么,开始吧"
2016-04-12 11:50:10
284
转载 Lua _G
1.全局变量的原形在Lua中,要声明全局变量很简单,那就是定义变量的时候,前面不要加上local。这个神秘的全局变量,其实本质上也是一个table,它把我们创建的全局变量都保存到一个table里了。而这个table的名字是:_G 我们来看看代码: -- 定义一个全局变量 gName = "哎哟,很挫哦"; -- 用三种方式输出变量的值
2016-04-12 11:40:30
6089
3
转载 Lua 只读 与rawget无视_newindex
1.沉默技能——拒绝__index和__newindex效果虽然__index和__newindex是很好用的功能,但是,有时候我们又希望很纯粹地去调用table或者给table赋值。那,这时候怎么办?给table重新设置一个元表?不,这个做法很糟糕~ 于是,体贴的Lua又给我们提供了这样的调用方式,如下代码: local smartMan = {
2016-04-12 11:25:03
986
转载 Lua __newindex
1.查询与更新上一篇文章我们介绍了__index元方法,总结来说,__index元方法是用于处理调用table中不存在的字段。注意,【调用】这个词,只是调用,而不是赋值。 如果,我们要对table中某个不存在的字段赋值呢?(小若:就,直接赋值啊!)没错,我们直接就能赋值了,不会报错的。问题是,如果我想监控这个操作呢?如果有人想对table不存在的字段进行赋值的时候,
2016-04-12 11:20:08
251
转载 Lua error
1.红色警报——error我们应该能经常看到类似以下的错误信息:[LUA-print] LUA ERROR: [string “src/main.lua”]:108: [string “src/main.lua”]:89: attempt to index global ‘a’ (a nil value)这是在发生错误时给我们的提示,通常,这代表我们的代码不能继续正常执行下去了
2016-04-12 11:07:21
2914
转载 Lua语法特性
1.闭合函数(closure)理论上来说,Lua的所以函数都应该称之为闭合函数,但是,这种反人类的做法,我们还是抛弃吧~按书上的描述,一个闭合函数就是:一个函数加上该函数所需访问的所有”非局部的变量“。理论什么的,很烦人,来看看一个函数:function count() local i = 0; return function() i
2016-04-12 11:01:53
418
Cannot find module Roaming\npm\node_modules\layaair2-cmd\layaair2-cmd.js
2020-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人