自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(318)
  • 资源 (1)
  • 收藏
  • 关注

转载 strict-origin-when-cross-origin

谷歌浏览器,输入:chrome://flags/#block-insecure-private-network-requests,将 Block insecure private network requests 这个插件设置为 Disabled 就行了。配置完成后使用谷歌浏览器访问资源时控制台报错strict-origin-when-cross-origin。网站当前访问是使用 https,而提交表单或 ajax 请求却使用的是 http,可以归类为跨域问题。随后使用火狐浏览器访问资源时为200。

2025-02-18 22:25:31 22

转载 WebAssembly

WebAssembly(简称wasm)是一种可移植的、体积紧凑且加载快速的二进制格式,设计用于现代网络浏览器环境。它提供了一个底层的、可验证的安全执行环境,使得开发者能够将高级语言(如C、C++、Rust等)编译成可以在Web上以接近原生速度运行的代码

2025-02-10 21:27:03 26

原创 [LUA ERROR] bad light userdata pointer

Cocos2d项目,targetSdkVersion=30,在 android 13 设备运行报错: [LUA ERROR] bad light userdata pointer ,导致黑屏。只能自己编译arm64-v8a架构的luajit.a。还是报错,4.0下的库文件还是有兼容问题。替换新编译的库文件测试运行正常。

2025-02-08 17:12:00 407

原创 Gradle国内镜像地址

替换为腾讯云的镜像地址。

2025-01-21 18:35:29 554

原创 Cocos2dx Lua绑定生成中间文件时参数类型与源码类型不匹配

可以看到生成中间代码时,定义参数的类型确实发生了变化,由::google::protobuf::uint64。变成了unsigned long long。至此类型完美匹配,编译测试OK!

2025-01-01 16:56:59 457

转载 Android CPU类型及预定义的宏

_arm__32位ARM64位ARM__i386__32位X86__x86_64__64位X86x86上的32位和64位预定义宏不太一样,注意区分下。

2024-12-31 17:04:34 55

原创 Visual Studio 2022发布UWP应用证书绑定失败

旧工程用VS2022关联应用也提示绑定成功,但是发布的产品上传后台时提示证书信息不正确,才发现应用没有用新关联的证书签名,用的还是之前的证书信息。将对应的证书文件从项目中删除,Package.appxmanifest里选择证书按钮下的信息还是不变,需要删除工程配置下的证书文件配置才可以。删除标签对应的配置,再次点击查看证书,发现关联的证书信息消失了。将旧项目缺失的配置项补上,测试,发布的应用证书信息,是最新关联的应用的。

2024-12-08 15:29:22 466

转载 Cocos2dx 变暗和变灰

搞过图形学的应该会比较容易知道,我也是搜索了才知道,我们知道白色是1或者255,黑色是0. 当一个颜色越接近0表示越接近黑色。也就是说,只要把每个像素的颜色乘以一个比1小的数,就会有变暗的效果了!那几个系数相加会等于1,不同的调整会有不同的效果。第一张就是变灰的效果图。我这里设置的是0.75。

2024-11-09 13:06:59 71

原创 未加载ucrtbased.pdb

通过【工具】->【选项】->【调试】->【符号】更改pdb文件的位置

2024-07-01 16:29:53 866

转载 零基础入门Unity Shader(八)

这里的SV_TARGET就是指定输出颜色到RenderTarget的语义,其实我们也可以采用Struct的方式,就是像应用阶段到顶点与顶点到片断一样,只是由于平时我们只需返回一个颜色所以就无需再用一个Struct了(你非要用也是可以的)。顶点着色器在处理完应用阶段传过来的数据后,会需要输出并传入片断着色器,这个时候我们同样需要定义一个结构来承载其中的数据,同样的,输出给片断着色器的值也需要语义来标识。虽然这两种语义我们可以根据需要自由定义,但是,它并不是可以无限定义的,不同的GPU硬件有不同的数量限制。

2024-06-17 16:18:59 161

转载 零基础入门Unity Shader(七)

如上图所示的代码中,我们在应用程序阶段把模型的顶点位置信息(float4 vertex:POSITION)传输到了几何阶段,然后在顶点着色器中利用UnityObjectToClipPos矩阵转换把模型顶点坐标从本地转换到齐次裁剪坐标中,并输出转换后的坐标(SV_POSITION)到光栅化阶段中,最后在光栅化的片元着色器中我们给所有像素都返回了一个颜色值_Color。,就是因为它和一根管子的概念很像,我们可以理解为这根管子的末端连接的是我们最终的显示屏幕,管子的起始端连接的是我们的原始素材。

2024-06-17 16:17:41 78

转载 零基础入门Unity Shader(六)

在Cg/HLSL中我们可以通过_Color来访问颜色,也可以通过_Color.rgba来访问,这里的.rgba就是表示颜色的四个分量,如果只想获得颜色的红通道就是_Color.r。在Shader中,我们在Properties中定义的变量是为了在材质面板中显示并方便我们调节,如果要在Cg/HLSL中使用的话就必须要重新声明一次(要求命名一样)。好了,现在我们已经了解了Cg/HLSL中的数据类型,那么Properties中的与Cg/HLSL中的是如何对应的呢?sampler2D_half(中精度2D纹理)

2024-06-17 16:16:33 53

转载 零基础入门Unity Shader(五)

顶点着色器与片断着色器的执行并不是1:1的,举个例子,一个三角面片,只有三个顶点,顶点着色器只需执行3次,而片断着色器由最终的像素数来决定,执行几百上千都是很正常的。经过顶点着色器的处理,我们已经得到了最终显示在屏幕上的顶点矩阵,内部会自动进行插值计算,以获得当前模型的所有片断像素,然后每个像素都会执行一次片断着色器,得到最终每个像素的颜色值。这一节的内容对于初学者来说学习曲线有点陡,如果没有理解也没有关系,先照着做,就当是固定规则好了,在后续我们会慢慢的进行扩展介绍,到时自然会清晰明了。

2024-06-17 16:15:14 45

转载 零基础入门Unity Shader(四)

如果我们不希望用户去调节此参数,或者为了使性能极致化,我们可以考虑把它们的代码功能移除掉,但一旦如此,材质面板中的参数将不起作用,这时我们就可以使用[NoScaleOffset]属性标记来将它们隐藏掉。默认值,当第一次指定此Shader时,或者在材质面板上执行Reset时,属性的值会自动恢复到默认值,不同的类型具体写法也不太一样,下面会结合类型进行详细说明。属性的名称,也就是变量名,在Shader的CG代码中就是通过这个名称来调用此属性内容的,在外部利用脚本调用时也是这个名称,所以一定要用英文。

2024-06-17 16:12:01 65

转载 零基础入门Unity Shader(三)

备胎,就是备胎的意思,有的时候我们写的Shader难免在一些机器上会出现不支持的问题(最终呈现的就是显示成粉红色),而这个时候我们只要添加了FallBack,并且在后面的双引号内写上了其它Shader的有效路径名称,那么在碰到不支持的硬件时这个Shader就会自动切换成FallBack内的Shader,如果FallBack内的Shader也不支持呢,那就继续从FallBack内的Shader中再找FallBack。在材质球中的路径会变成如下,其中双引号中的/表示的是创建子层级。

2024-06-17 16:10:45 183

转载 零基础入门Unity Shader(二)

标准表面着色器,是一种基于物理的着色系统(使用了Physically Based Rendering(简称PBR)技术,即基于物理的渲染技术),以模拟现实真实的方式来模拟材质与灯光之间的关系,可以很轻易的表现出各种金属反光效果,同时此种Shader的书写逻辑也更符合人类的思维模式。它代表的是当前这个材质球是与哪个Shader绑定关联的,我们可以点击它的下拉列表框从中进行选择,前提是我们知道我们想关联的那个Shader的名字路径是哪个,这一点我们在后面会具体说明。效果华丽丽的,性能也是妥妥的!

2024-06-17 16:08:11 61

转载 零基础入门Unity Shader(一)

但是Surface Shader也有它的局限性,就是Vertex/Fragment Shader能实现的效果,Surface Shader不一定能实现,反过来则成立,Surface Shader能实现的Vertex/Fragment Shader则一定可以实现。Surface Shader其实就是Unity对Vertex/Fragment Shader的又一层包装,以使Shader的制作方式更符合人类的思维模式,同时可以以极少的代码来完成不同的光照模型与不同平台下需要考虑的事情。

2024-06-17 16:05:53 47

原创 C++ 不定参数模版

定义auto类型的变量并初始化为一个字符串字面量时,编译器会进行类型推导。由于 "a" 是一个字符串字面量,它在内存中是作为一个常量字符数组存在的,但在这里并没有引用整个数组,而是将整个字符串字面量赋值给一个变量。pushToVectorIfParamIsStr函数中的T &&value参数 ,为右值引用,接收到参数"c"时,其类型依然为char const [],因此无法通过下面代码的检测。预期vec中推入的字符串是a,b,c,d,实际只推入了a,b,d,字符串"c"并没有被推入vec,什么原因呢?

2024-06-11 18:11:19 425

原创 C# 观察者模式实现

C# 观察者模式实现

2024-05-23 15:45:35 492

转载 Unity 报错:SSL CA certificate error

注意:如果是本地调用使用 http 不要使用 https,使用https需要证书验证在本地使用会报证书验证错误。证书验证失败 和 SSL CA证书错误。通过以上方式就能解决。

2024-05-23 13:50:34 929

原创 Unity实现TableView

基于Scrollview封装的TableView,实现对视野外的Cell回收利用,减少创建Cell的开销。

2024-05-18 16:48:04 422

原创 C++ JWT的使用

C++使用JWT加密参数

2024-05-15 14:16:35 512

原创 Unity Scrollview设置大小

【代码】Unity Scrollview设置大小。

2024-05-06 18:35:08 325 2

原创 Unity3d 学习之按钮绑定事件

选中待绑定的按钮->点击Button组件中On Click下方的+号->把绑定脚本的载体赋值给新增属性->点击No Function下拉框选择脚本中对应的函数。

2024-04-28 10:30:32 880 1

转载 Unity3d 如何使用Protobuf

如何在unity中使用protobuf

2024-04-11 17:18:24 609

转载 Unity动画系统详解:在Unity中如何制作动画?

Unity中内置了强大的动画系统,可以支持在Unity内制作动画,也支持从外部导入动画。动画系统基于一种名为Animation Clip(动画剪辑)的资源,这些资源以文件的形式存在工程中。这些文件内的数据记录了物体如何随着时间移动、旋转、缩放,物体上的属性如何随着时间变化。每一个Clip文件是一段动画。这些动画可以在Unity中直接制作,也可以由美术同学在3D建模软件中制作并导入到Unity中。

2024-04-08 15:29:08 1664

转载 Unity3d攻击范围的绘制

Unity3d攻击范围的绘制。

2024-03-26 15:42:09 203

转载 Unity中设置允许的最大帧数,锁定游戏的最大帧率(游戏锁帧)

在实际的游戏中一般会对项目进行一个允许范围内的最大帧率限制,锁定在某个玩起来能够流畅的帧数。可以保证游戏运行的稳定(不会让运行游戏的时候帧数忽高忽低),也可以减少性能的消耗(不至于耗尽所有的硬件性能)。Vsync Count 指的是 垂直同步 ,垂直同步的主要作用不是为了限制帧率,而是为了防止出现画面撕裂等现象。比如王者荣耀中就有一个玩家可定义帧率的选项,帧率 :节能(30帧)、高(60帧)、超高(90帧)玩家可以根据自己的设备性能情况开启不同的帧率,已达到自己满意的流畅度的同时,让手机不会那么卡顿。

2024-02-19 13:57:34 4419

原创 Unity3d实现简单的战斗

使用u3d实现一个简单的战斗demo,记下学到的知识点,以备后查。

2024-01-29 17:24:06 675

转载 ModuleNotFoundError: No module named ‘Image‘

python使用过程中遇到ModuleNotFoundError: No module named 'Image'的报错。

2024-01-27 13:52:07 157

转载 Windows7安装.net framework4.6提示“根据当前系统时钟或签名文件中的时间戳验证时要求的证书不在有效期内”

修改日期为2019仍然无效(虚拟机里操作的,不知道跟这个有没有关系),下载离线安装包顺利装上。根据当前系统时钟或签名文件中的时间戳验证时要求的证书不在有效期内。

2024-01-22 18:47:13 2182

原创 openssl计算md5

openssl计算md5

2023-12-25 15:08:50 581

原创 C++实现一些C#接口

在C#中,string类型是基于UTF-16编码的,因此,如果参考的处理方案是基于UTF-16的,C#中的string对应到C++中应使用std::u16string。调用接口时先将std::string转换成std::u16string,处理结束再将std::u16string转换成std::string。

2023-12-15 17:06:42 250

原创 Unity3d 学习笔记

俯视角,单位朝向目标的角度计算。

2023-12-12 16:21:09 114

原创 Unity3d 灯光阴影开启,法线贴图出现BUG

URP项目打开灯光的阴影后,法线贴图出现BUG。解决方案:按照下图所示调整材质的选项即可

2023-11-28 17:05:13 642

转载 从keystore中查看公钥和MD5

安卓平台备案需要填写安卓平台软件包名称、公钥和证书MD5指纹,公钥和MD5都可以从Keystore中提取出来。输入后回车会提示输入密码库口令,直接输入Keystore密码(输入过程中终端上不会显示,输完回车就行)在终端中输入指令,xxxxx/xxx/xx/xxx.keystore,xxx为Keystore路径。输入指令,回车后输入密码,再回车,即可看到公钥信息。本篇记录关于APP安卓平台备案所需要的一些信息!从Keystore获取证书MD5指纹。就能找到证书指纹MD5信息。

2023-11-24 16:56:18 1632 1

原创 Unity3D 鼠标拖动地图实现

1.鼠标按下记录鼠标位置;2.拖动时设置拖动偏移量;

2023-11-21 15:27:22 403

转载 Unity UGUI的Slider(滑动条)件组的介绍及使用

Slider(滑动条)是Unity UGUI中的一种常用UI组件用,于在用户界面中实现滑动选择的功能。通过拖动滑块,用户可以选择一个数值范围的内值。

2023-11-20 15:28:51 1577

原创 Unity3D 监听键盘事件

Unity3D 监听键盘事件。

2023-11-15 11:47:22 322

转载 Unity使用NavmeshObstacle解决多人寻路终点堵塞问题以及解决NavmeshObstacle打开抖动(瞬移)问题

是因为这是在同一帧执行的,虽然写了关闭挖洞,但是在还没来得及真正的关闭挖洞就又打开了navmeshAgent,此时navmeshAgent判断自己不在寻路网格上,于是把自己移动到最近的寻路网格上就导致了顺义。此外:如果你想各个单位能够更好的到达终点则每个单位的终点并不应该设置为同一个点,你可能需要根据每个角色的寻路半径来预先随机设置每个角色会到达的对应的位置,这样在寻路时才不会互相推挤。解决办法就是分为两帧执行,在一般的逻辑中这完全是可以接受的,因为从静止到移动确实需要花一些时间。你也可以直接改成协程。

2023-11-10 18:28:18 878 1

OpenGL GLM库

GML为OpenGL量身定做的数学库, 一个只有头文件的库,只需包含对应的头文件即可使用。

2018-04-19

空空如也

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

TA关注的人

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