微信小程序/小游戏运行环境小结
1 运行环境 微信小程序分为逻辑层和渲染层,分别运行在各自的线程中。两个线程之间的通信经由微信客户端(Native)做中转,逻辑层发送网络请求也经由Native转发。 渲染层使用WebView进行渲染,逻辑层采用JSCore运行JS脚本。因为一个小程序可能存在多个界面,所以渲染层也可能有多个WebV… 阅读更多 »微信小程序/小游戏运行环境小结
1 运行环境 微信小程序分为逻辑层和渲染层,分别运行在各自的线程中。两个线程之间的通信经由微信客户端(Native)做中转,逻辑层发送网络请求也经由Native转发。 渲染层使用WebView进行渲染,逻辑层采用JSCore运行JS脚本。因为一个小程序可能存在多个界面,所以渲染层也可能有多个WebV… 阅读更多 »微信小程序/小游戏运行环境小结
微信小游戏在小程序的基础上提供了WebGL接口的封装,使渲染能力和性能有大幅度提升。 和H5游戏相比 小游戏 = H5游戏 + (微信社交能力、文件系统、工具链) – (DOM、BOM、CSS、EVAL) 和小程序相比 小游戏 = 小程序 + (渲染、文件系统、多线程) – (多页面、WXSS、WX… 阅读更多 »微信小游戏和小程序的区别
一 http抓包 1.1 安装Charles 在电脑上安装Charles,并且让手机和电脑处在同一网段。 1.2 打开 Charles 的代理功能 通过主菜单打开Proxy | Proxy Settings 弹窗,填入代理端口(端口默认为 8888),勾选 Enable transparent HT… 阅读更多 »使用Charles进行手机抓包
目前brew还没有完全适配M1芯片的Mac系统,需要手动安装。 安装步骤 1、先创建安装目录 sudo mkdir -p /opt/homebrew 2、将目录属主改为当前用户,方便当前用户直接brew install软件 sudo chown -R $(whoami) /opt/homebrew … 阅读更多 »M1 Mac如何安装Homebrew
1 简介 在VSCode中编写的TypeScript代码不能直接运行,需要先用tsc编译为JavaScript,然后才能运行。 有什么方法能直接运行TypeScript呢?使用VSCode插件Code Runner就可以了。 2 使用步骤 首先确保拥有Node.js环境。 2.1 全局安装ts-no… 阅读更多 »VSCode插件CodeRunner直接运行TypeScript
1、什么是DrawCall 一个DrawCall就是CPU向GPU发送一次绘制命令,例如:某个场景的DrawCall是80,代表该场景每个渲染帧内GPU需要绘制80次。每一次DrawCall都需要传输纹理、顶点数据以及渲染上下文切换,是非常消耗性能的操作,DarwCall过高会直接影响游戏的整体性能… 阅读更多 »游戏DrawCall分析利器-SpectorJS使用入门
浏览器将某项请求发送到服务器,要求显示某个网页,服务器将会返回 HTTP 状态码响应请求。 一些常见的状态码为: – 200 服务器成功返回网页 – 304 未修改 – 404 请求的网页不存在 – 503 服务器超时 2xx(成功) 200(成功) 服务器已成功处理了请求。通常,这表示服务器提供了… 阅读更多 »HTTP常见状态码
三角函数公式 正弦(sin) sinA = a / c。值区间在 -1.0 到 1.0 之间 余弦(cos) cosA = b / c。值区间在 -1.0 到 1.0 之间 正切(tan) tanA = a / b。 余切(cot) cotA = b / a。 弧度计算 Math.sin(x)和Ma… 阅读更多 »游戏开发中一些常用的数学知识
简介 MySQL是一个开源免费的关系型数据库管理系统,它体积小、速度快、总体拥有成本低,且开放源代码,提供了多种编程语言的API接口,易于使用,是目前世界上使用最广泛的数据库系统之一。 启动mysql 1、使用 service 启动: service mysqld start 注:(5.0版本及以前… 阅读更多 »MySQL简介和常用命令
1、WebSocket是什么? WebScoket是一种让客户端和服务器之间能进行双向实时通信的技术。它是HTML最新标准HTML5的一个协议规范,本质上是个基于TCP的协议,它通过HTTP/HTTPS协议发送一条特殊的请求进行握手后创建了一个TCP连接,此后浏览器/客户端和服务器之间便可以通过此连… 阅读更多 »WebSocket和SocketIO使用总结
error C3130: 内部编译器错误: 未能将插入的代码块写入 PDB, 在使用VS2013编译cocos2d工程的时候,报以上错误提示。 原因 一般是PDB文件太大或磁盘空间不足所致。 解决 打开VS工程的属性,修改如下选项为Z7(Z7表示把调试信息写入obj而不是PDB文件),然后重新编译即… 阅读更多 »VS2013之error C3130 内部编译器错误的解决
MS VC++ 14.0 _MSC_VER = 1900 vs2015 平台是v140 MS VC++ 12.0 _MSC_VER = 1800 vs2013 平台是v120 MS VC++ 11.0 _MSC_VER = 1700 vs2012 平台是v110 MS VC++ 10.0 _MSC_… 阅读更多 »VS编译器各版本代号
Redis 基于内存,读写速度快,也可做持久化,但是内存空间有限,当数据量超过内存空间时,需扩充内存,而内存成本较高; MySQL 基于磁盘,读写速度没有Redis快,但是不受空间容量限制,性价比高; 应用场景 多数时候是MySQL(主)+Redis(辅),MySQL做为主存储,Redis用于缓存,… 阅读更多 »Redis和MySQL的使用
Redis简介 Redis是个开源用C编写的、支持网络、可运行在内存也可持久化的日志型、Key-Value数据库。通常用来做缓存数据库,支持五种数据类型:字符串、哈希、链表、无序集合、有序集合。 一 基本使用 1、字符串 set key value 设置key的value get key 得到key… 阅读更多 »Redis简介和常用命令
例如,发现 7545 端口被占用,希望找到占用此端口的进程并结束它。 1、打开命令行,查看占用 7545 端口的进程ID; netstat -aon | findstr “7545” 2、假设找到的进程ID为1008,则再根据进程ID,查看该进程名称; tasklist | findstr “100… 阅读更多 »windows查看被占用端口和进程
比特币采用P2P网络架构,网络中每一个节点彼此平等,共同提供网络服务。 P2P网络的工作机制,包括节点分类、节点发现、节点连接和广播等,客户端会维护一个列表,里面列出了一些“长期稳定运行”的节点,这样的节点称为“种子节点”。新的客户端可以通过种子节点来快速发现网络中的其它节点。 区块链分叉 原因:A… 阅读更多 »区块链基础知识(6)-P2P网络(区块怎样传播和同步)
区块链实际上是比特币的账本,记录着谁拥有多少比特币,只不过这个账本是保存在互联网、分布式的,而不是由一个中心机构或者服务器来存储。 比特币地址和私钥是拥有比特币的证明,交易会把比特币锁定在某个地址上,拥有这个地址的用户凭私钥来证明自己拥有这个地址。花费比特币,比特币不会消失,只是锁定到其他人的地址上… 阅读更多 »区块链基础知识(5)-比特币地址和私钥(所有权)
共识机制 前面说过,比特币网络相当于全球帐簿,每个节点都有相同的完整账本,这也是比特币安全机制的重要策略,它决定了发生过的交易记录无法篡改。但记账时如果各记各的,必然产生同步和混乱,所以只能由一人来记账,然后同步给其它人就好。那么由谁来负责记账呢? 这需要引入一种新的概念,叫共识机制。比特币采用工作… 阅读更多 »区块链基础知识(4)-共识机制和挖矿(谁来记账)
我们已经知道,比特币相当于是“全球账薄”,那这份账单是如何存储的?也就是说把账记在哪里。 区块链包含N个随时间排序的块,每个块都有一个指向前一区块的指针,所有块通过这个指针形成一个链,所以称为区块链。第一个块称为创世区块,如图: 从上图可见,区块链由多个区块组成,每个区块由区块头和区块体组成,每个区… 阅读更多 »区块链基础知识(3)-区块链的存储(怎样记账)
比特币是一种数字货币,它采用的底层技术称为区块链,区块链的主要技术包括:分布式存储、密码学、共识机制、P2P网络等。这些技术都存在已久,但由这些技术组成的比特币是创新,也可以说比特币是区块链技术应用最成功的一个落地产品。 为什么比特币这么火?是因为很多人觉得它有价值。 为什么它有价值?是因为它绝对可… 阅读更多 »区块链基础知识(2)-比特币和区块链的关系