自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android 项目报错 Cause: class org.gradle.internal.compiler.java.ClassNameCollecto

在setting->Android sdk->sdk tools->google play instant 关掉。并在gradle.properties里修改如下。

2024-03-12 11:06:28 412

原创 python国内下载网站

https://mirrors.huaweicloud.com/python/

2023-11-30 22:06:53 424

转载 自用-brew安装代码

#HomeBrew自动安装脚本#[email protected]#brew brew brew brew#获取硬件信息 判断inter还是苹果MUNAME_MACHINE="$(uname -m)"#在X86电脑上测试arm电脑# UNAME_MACHINE="arm64"# 判断是Linux还是Mac osOS="$(uname)"if [[ "${OS}" == "Linux" ]]then HOMEBREW_ON_LINUX=1elif [[ "${OS}"

2023-08-29 15:15:24 243

原创 齐次坐标到底是什么东西 一篇文章告诉你 用筷子教你学会齐次坐标

但是日常生活中人看到的满是相交的线,而非垂直的线,比如两条铁轨,看向无限远处,是两条相交的线,但是在欧式几何中,这两条铁轨还是垂直的,这便是欧式几何的局限性。比如一只小虫子,绕着瓶盖在转圈,这时小虫子的坐标系甚至是一个圆形会更为简单,为了解决特殊形状的坐标系,演化出双曲几何学,用于表示坐标轴是曲线的情况。回到相交线的情况,那么由相交线组成的坐标系,由于不是垂直的,斜的就要加一个斜率,把斜率设为1/w(无所谓斜率是什么,方便计算先这么设置,可以理解为XY轴的中心不变,给XY轴都加上斜率)。

2023-07-24 18:15:55 113

原创 近期比较实用的AI软件

ai软件

2023-03-03 15:41:24 174

原创 贪吃蛇小游戏 python版

贪吃蛇小游戏 python版

2022-12-09 11:07:53 270

原创 sublime删除特定内容所在行

Sublime删除包含指定内容行

2022-11-24 17:56:12 1342

原创 简单工厂,工厂、抽象工厂设计模式详解

简单工厂,工厂、抽象工厂设计模式详解

2022-09-22 16:38:56 220

原创 C++画菱形

画菱形的核心代码

2022-09-21 10:40:23 914

原创 什么是长连接和短连接

长连接短连接

2022-07-04 15:51:20 673

原创 正斜杠反斜杠的由来

计算机小故事1

2022-06-21 17:31:45 844 1

原创 批处理命令 bat文件

批处理命令

2022-06-20 18:53:19 722

原创 C++常量折叠

c++的常量折叠

2022-06-17 15:27:47 213

原创 VisualStudio遇见无法解析的外部符号报错可能是新增文件的问题

A文件掉用B文件里的类c结果在A里报 c 是无法解析的外部符号发现B文件只包含了头文件、源文件没有包含到工程内需要学习VisualStudio创建工程的流程

2022-05-31 16:41:48 259

原创 C++头文件重复引用问题

头文件重复引用的情况先看一张图A头文件,同时被B、C引用,之后D引用了B、C头文件。此时D相当于引用两次A文件C++工程的预编译就是将引用文件的代码拷贝过来在头文件的前后加上#ifndef#define#endif这些话即可...

2022-05-31 15:55:59 1055 1

原创 behaviac 学习

0.什么是 behaviacbehaviac是游戏AI、游戏原型开发设计工具通过编辑器设计逻辑,导出生成C++ \ C#代码可用于客户端&服务器端1.原理&流程软件分为两部分,看得见的编辑器 和 看不见的导出代码通过编辑器编写游戏想要的逻辑,软件可以导出对应的行为树语言有 C++、C#、bson、xml2.使用目前用处不大,之后有空更新吧...

2022-05-13 16:13:20 698

原创 Visual Studio Code 正则表达式搜索

引言VS Code 的全局搜索,可快速查找旧项目代码,或者函数名称但是不是所有时候,都知道想要的函数名字,直接搜索是搜不到的所以,要引入模糊搜索的概念在只知道部分信息的情况下,利用正则表达式,匹配目标代码块VS CODE 的正则规则通配符说明.匹配换行外的任意字符\w字母 or 数字 or 下划线 or 汉字\s空白符\d数字\b单词的开始或者结束\W不是 字母 or 数字 or 下划线 or 汉字\S不是 空白符

2022-05-06 14:56:07 1255

原创 用于空间搜索的四叉树

二叉树在讲四叉树之前先讲一下二叉树对于一个一维数组,想查找和储存某个元素,时间复杂度最低的方法是二叉查找树,是O(logn)的时间复杂度可以通过目标值和树节点值,选择二叉树的其中一个分支,一直遍历到叶子节点,找到目标位置但是二叉树只支持一维数组,扩展到二维则要用到二叉树的高维变体–>四叉树四叉树地图上的点有X,Y坐标的二维属性相对地图上的点进行查询和修改信息,要借助四叉树四叉树适合对有二维属性的数据进行查询&存储将当前地图递归的分成四份和二叉树一样,不是所有的叶子

2022-03-30 17:26:45 792

原创 cocos引擎中场景节点简介

Cocos 引擎场景介绍Cocos引擎 用树的数据结构做图形管理分别使用 场景树 和 渲染树1. Cocos 节点树Cocos 渲染树

2022-03-13 14:48:48 3765

原创 Lua的内存泄露问题

Lua内存泄漏定义:已经没有使用的,但外部依然有引用的对象lua垃圾回收机制lua的GC使用 Mark And Sweep 标记清除算法该算法设计了三种颜色标记对象(如树遍历)white 未标记(没有被使用过)gray 已标记、但关联节点未标记black 已标记、且与之关联的节点都扫描标记了算法过程:Mark阶段:先将内存中所有对象扫描并标记。Sweep阶段:将所有未标记(white)的对象释放内存泄漏形式 (持续更新中)1.全局变量因疏忽写出的全局变量,会一直保存

2021-12-30 15:31:30 2214 1

原创 cocos2dx setContentSize 的坑

在C++中直接setContentSize 并不会改变tableview的大小而是会改变渲染的位置需要配合setAnchorPoint使用在Lua中直接setContentSize 即可

2021-12-06 15:23:22 3360

原创 取余运算详解

最近刷leetcode 7.整数反转发现取余计算如果遇见负数,是很少遇见的情况,但是在实际编程过程中是很容易因为疏忽或者config中配置错误出现,负数取余的情况,所以要了解如此计算后会发生什么情况,加快刷题和debug速度python和C/C++/JAVA在商为负数的除法处理上有两种标准,在python中,商的小数部分进位,而在C/C++/JAVA中,商的小数部分被舍弃因为做测试用的是python,没想到这门语言和C++ JAVA等不一样。可能是为了计算效率做的改进...

2021-12-03 10:09:52 3840

原创 iTerm2+oh-my-zsh

iTerm2+oh-my-zshhttps://www.jianshu.com/p/246b844f4449

2021-09-14 11:44:11 48

原创 lua 中函数后面跟小括号和大括号的区别

func({param1, param2, …})func{param1, param2, …}偶尔会看到上面两种形式的函数调用该函数的定义一定如下所示local function func(param) if type(param) == "table" then -- TODO endend这是因为当函数有且只有一个参数,这个参数的类型是 table 或者 字符串 形式,可以在调用的时候省略小括号...

2020-10-27 22:42:38 1460

原创 巨垃圾的 lua BFS 实现

local QUEUE = require "queue".new()local map = {{0, 1, 1, 0, 0},{0, 0, 1, 1, 0},{0, 1, 1, 1, 0},{1, 0, 0, 0, 0},{0, 0, 1, 1, 0},}local visited = {}local function visit(pos) if pos and pos.x and pos.y then print(pos.x, pos.y, map[pos.x][pos.y

2020-10-27 15:46:44 245

原创 计数算法 对于整数的处理简直是牛逼

计数算法需要三个辅助数组A数组:存储未排序数据B数组:对A数组计数(初始化为0),且最好从1开始C数组:存储排序后的数据1.从头到尾遍历A数组,B[A[i]]++2.B[I] = B[I] + B[I - 1]3.从后到前便利 C[B[A[i]]–] = A[i]4.因为要防止有相等的数存在,故C数组每加一个数,就减一,这样如果有一样的就放到了前一个5.而且第三步是从后向前遍历数组,所以排序是有稳定性的...

2020-10-21 12:27:00 112

原创 MAC 系统没有声音的解决方案

sudo killall coreaudiod命令行输入上述命令

2020-09-21 12:20:21 660

原创 lua 循环的随机性

lua对于表的循环在lua中 循环遍历表时 都是随机遍历的。即每次取出数的顺序不同local table = {"1" = 1,"2"= 2,"3" = 3,}for i, v in pairs(table) do print(i, v)end执行上述代码的结果 可能是1 2 3的顺序输出,也可能是3 2 1 等等输出方式不过仅当表的key是字符串时是这样如果key是number的数字,那么遍历方式就会变成按照key的大小,从小到大按顺序遍历整个数组那么就没有方法对字

2020-09-04 17:48:58 514

原创 cocos2dx lua TextField 输入框 使用指南 BY 小曲奇~

cocos2dx TextField by 小曲奇~简介输入框承担了用户向内存中写入数据的角色cocos2dx 集成的可调用的输入框分为两种11.CC命名空间下的 TextFieldTTF 类2.CC->UI命名空间下的 UICCTextField 类前者继承自 label类 和 IMEDelegate类(键盘监听类)后者继承自 TextFieldTTF 类 和 TextFieldDelegate 类(只属于TextField的键盘监听类)如果分不清这二者 可以简单的理解

2020-08-29 16:48:03 1005

原创 cocos2dx lua 键盘输入分发机制

CCIMEDelegatecocos2dx 的键盘输入分发机制只在 TextField 和 EditBox 中有用到,只用用到该键盘监听机制的类才在理论上有字符输入能力用户输入有两种类型字符输入字符删除1. 输入键盘输入某个字符后系统触发 CCIMEDelegate 的 insertText 方法,执行该字符(串)的分发以 TextField 为例,TextField 类下的 insertText 方法被调用在 insertText 里调用 onTextFieldInser

2020-08-25 14:51:52 253

原创 曲奇妙妙屋 之 do{}while(0)的妙用 C++

2020-08-25 14:16:41 96

原创 lua 运算符相关问题

1. lua 运算符lua支持的运算符有 + - * / % ^(加、减/负、乘、除、取余、幂指)尤其要说的是幂指运算,这是大多数语言都不支持的,幂指运算不仅仅可以正指数,还可以负指数,贼牛逼print(2^10, 3^10, 4^0.5, -3^18, 4^-3, 6^-0.3)>>>1024.0 59049.0 2.0 -387420489.0 0.015625 0.58419068106787除了幂运算外,取余运算也是我们需要注意的,在Lua中(其

2020-08-05 10:11:07 1122

原创 lua 字符串的奇妙之处

lua 字符串和大多数语言的变量命名规则一样,不多介绍同时lua也可以使用转义字符作为字符串的内容不过lua也提供方法禁止使用转义字符print([==[123asdasd123\12\0\n\\\/\"\'\|\.]==])>>>123asdasd123\12\0\n\\\/\"\'\|\.------------print("123 asd asd123\12\0\n\\\/\"\'\|\.")&gt

2020-08-05 09:08:30 702

原创 lua 函数的上下文对函数的影响

函数返回值在上下文中的表现lua中函数的返回值可以有多个假如这个函数有三个返回值,在所有语境下他的返回值都是3个吗???来做个实验例子我们来看下面这段代码function test(a, b, c, d) print(a, b, c, d)endfunction f() return 1, 2, 3endtest(f(), 1)>>>1 1 nil nil>>>f()函数有三个返回值,打印数据可以看到,只输出了f()的一个

2020-08-04 00:58:16 252

原创 cocos2dx lua 监听模式实现

cocos2dx lua 监听模式1.在控制系统中申请监听事件池的内存self.listenEventList = {}2.在监听事件池中使用Key-Value键值对数据结构存储key中存储当前事件的名称value中存储事件发生后会出发的函数列表通过多次调用listenEvent函数,向其中加入需要监听的事件,就可以实现监听事件的注册function Controller:ListenEvent(key, tag, callback) self.listenEventList[ke

2020-07-29 15:14:27 476

原创 游戏通用功能最合理的开发模式

设计方式Dialog & Controller & Config 相组合的开发方式在Config文件中配置该界面所需的所有参数(位置、数量、种类等等)在Controller中写与后端交互的窗口 or 所有复杂的数据处理 写成一个一个接口在Dialog中写整个窗口的具体实现 调用Controller中的数据(切记不要直接调用Config的数据)而且要注意中间过程写成通用的处理方式,让dailog随config的改变而改变...

2020-07-14 10:45:32 171

原创 游戏 帧动画 & 骨骼动画的 联系和区别

帧动画精灵列表的一种在游戏进行的每一帧,记录当先渲染图片/精灵的位置,在目标位置实时渲染出该精灵。每一帧刷新渲染区域骨骼动画时代的产物人体展现出来的是皮肤,但是带动皮肤运动的骨骼随着图像渲染从CPU->GPU,渲染的内容从记录每个精灵改为记录需要渲染的位置。设计骨头的顶点,骨头之间的联系。设计蒙皮(图片精灵),蒙皮的坐标,展示的顶点。二者还是有很大区别的,是两种思考的出发点(矢量图和标量图的二维化)...

2020-07-13 14:22:17 2033

原创 Mac 下的shell编程 问题记录

在文件的开头写上#!/bin/bash用于识别这个文件时shell脚本使用$n的方式进行参数传递 $1 第一个参数 $2 第二个参数 。。。特别的$0是当前执行文件的名字#!/bin/bash if [ $# -ge 0 ]then for fileNameI in "$*"; do ./pngquant $fileNameI # delete rm $fileNameI # rename suffix=-fs8.png prefi

2020-07-05 13:15:06 120

原创 Source Tree是什么?

用于MAC系统下的git管理工具

2020-04-27 14:11:54 503

原创 MAC系统怎么显式隐藏文件

command + shift + 。

2020-04-26 17:08:42 114

空空如也

空空如也

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

TA关注的人

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