- 博客(38)
- 收藏
- 关注
原创 Unity的UI扫光效果Shader
/ 2D纹理声明// 纹理采样器// 纹理缩放偏移(TRANSFORM_TEX必需):Unity 自动生成的纹理参数,用于 UV 适配CBUFFER:URP 规范写法,提升性能。
2026-05-13 18:48:27
272
原创 Unity Sprite Rect 越界问题笔记
Sprite Rect 超出纹理像素边界模式差异:Single 模式清空旧数据自动规避问题,Multiple 模式需手动清理越界数据最优选择:仅用整张图 → 用 Single 模式需要拆分多图 → 清理旧越界 Sprite 后重新切割,保留 Multiple 模式。
2026-03-19 15:32:41
420
原创 unity的背包滑动组件中道具的提示框被裁剪的问题
简单列举几个接口,滑动,点击的,实现后挂载在ScrollRect上就可以,不能挂载到其子对象上,这些事件是不被ScrollRect继续向下传递的。其中使用到一个重要的API:InverseTransformPoint,将对象的世界坐标转换为相对目标的本地坐标的方法。因为我是将提示框放在,backpackScrollRect滚动组件下,所以转换的本地坐标可以直接赋值给提示框,实现定位。这个交互事件就不多说了,可以更具自己的需求实现,不管是点击,滑动还是鼠标悬停等。),专门控制这个唯一的提示框。
2026-01-20 19:40:57
949
原创 C#的const和static的问题
是编译时常量本质:属于 “类型级别” 的常量,值在编译阶段就已确定并嵌入程序集,运行时无法修改;必须在声明时直接赋值,且只能是基础值类型(int/float/string 等),不能是引用类型(除 string 外);不支持使用unity的API =>因为: Unity API 具有 “运行时依赖” 特性// 正确:编译期确定的固定值// 错误:Vector3是引用类型,且依赖Unity运行时API,编译期无法确定值// 错误示例:方法的默认值必须是编译时常量,
2026-01-19 11:36:40
914
原创 Unity中的协程的原理
原生协程无法在纯 C# 类中使用,核心原因是调度权完全绑定 Unity 引擎和 MonoBehaviour是的成员方法,纯 C# 类没有这个方法,无法启动协程;驱动层面:Unity 引擎只对挂载了的对象管理协程调度,纯 C# 类没有 “每帧执行” 的入口(Update/FixedUpdate),协程的MoveNext()无法被驱动;生命周期层面:原生协程的生命周期和所属 MonoBehaviour 绑定,纯 C# 类无生命周期,引擎无法感知其存在。1.适配纯C#的情况,
2026-01-17 18:30:21
885
原创 react
你也可以通过组合现有的 Hook 来编写属于你自己的 Hook。当你的样式依赖于 JavaScript 变量时,你可以使用 style 属性。你只能在你的组件(或其他 Hook)的 顶层 调用 Hook。如果你想在一个条件或循环中使用 useState,请提取一个新的组件并在组件内部使用它。而大括号会让你 “回到” JavaScript 中,这样你就可以从你的代码中嵌入一些变量并展示给用户。1.React 没有特殊的语法来编写条件语句,因此你使用的就是普通的 JavaScript 代码。
2026-01-17 10:10:10
622
原创 项目的git操作流程
1.修改问题先创建分支git checkout -b 分支名称2.修改问题完成后先拉取master分支,然后切会修改分支git pullgit checkout 分支名称3.切换后进行分支合并4.本地打包git add .5.提交说明git commit -m '内容'是一个 Git 命令,用于修改最近一次的提交。:如果你发现上一次提交的信息写错了或者不够清晰,可以使用这个命令来更改提交信息。:如果你在上一次提交时忘记添加某些文件,可以先将这些文件添加到暂存区(使用),然后使用。
2026-01-17 10:06:57
373
原创 Unity第一个项目
Probuilder:快速构建模型(可以设置模型的顶点数量)可能素材是紫色没有正常显示颜色,需要对素材进行转换升级,安装好了去Tools选中刚刚安装的polybrush。第四个:快速渲染预制体的。第一个:调正地面高度的。
2026-01-17 10:05:34
686
原创 放置挂机游戏的离线和在线收益unity实现
离线开始时间戳</summary>/// <summary>收益速率(每分钟获得的金币数)</summary>/// <summary>离线前的玩家等级(用于动态计算收益速率)</summary>/// <summary>备用:服务器时间戳(防篡改,有服务器时使用)</summary>// 初始化数据profitPerMinute = 100, // 每分钟100金币/// <summary>获取当前UTC时间戳(秒)
2026-01-12 11:52:42
369
原创 C#中的大数值BigInteger的乘除改进
在计算大数值的生命值的进度条时,我们需要一个float的小数表示进度如:1/10 => 0.1f.BigInteger的乘法如何实现乘float的数 如:0.8f。在BigInteger提供的除方法Divide只会返回整数,那如何实现两个BigInteger相除返回0-1的小数呢。BigInteger的除法的官方回复的方法。
2025-10-20 18:30:00
272
原创 C#的基础学习二
1.定义输入轴:在Unity中,可以通过“Edit”菜单下的“Project Settings”,然后选择“Input”选项来查看和修改输入轴的定义。2.调用GetAxis方法:在Unity的脚本中,可以通过调用Input.GetAxis(string axisName)方法来获取指定输入轴的当前值。3.处理输入值:获取到输入轴的当前值后,开发者可以根据这个值来控制游戏角色的移动、旋转等行为。2.同一个对象中,外部作用域无法访问到内部作用域的内容,内部作用域的内容可以访问到外部作用域的内容。
2025-01-24 16:19:04
917
原创 C#的基础学习一
编程语言(例如 C#)可用于编写希望计算机执行的指令。每一种编程语言都有自己的语法,但在你学习了第一种编程语言并尝试学习另一种语言之后,你将很快意识到它们具有许多相似的概念。编程语言的作用是让人们能以人类可读且可理解的方式表达意图。用编程语言编写的指令称为“源代码”,或简称为“代码”。软件开发人员编写代码。此时,开发人员可以更新和更改代码,但计算机无法理解代码。首先,必须将代码编译为计算机可以理解的格式。称为编译器的特殊程序将源代码转换为计算机中心处理单元 (CPU) 可执行的其他格式。
2025-01-24 16:18:52
773
原创 vscode unity c#代码提示
1.第一步先看看首选项(Preferences)中的外部编译器(External Script Editor)是否关联到vscode编译器,2.选择关联的编译器后下载Unity的关联扩展。现在就可以有Unity的类型提示了!
2025-01-22 18:27:39
710
原创 unity5分钟快速开始
hierarchy中选中cube在Inspector中点击Add Component:输入脚本名称回车。编写完成后就可以crtl+s保存,返回Game窗口查看效果了。就会在project窗口的Assets看到新建的脚本。双击选中的脚本会打开vscode,然后进行编译。在Hierarchy窗口创建一个Cube。示例:自动旋转和监听键盘输入改变颜色。
2025-01-19 20:04:51
363
原创 C#使用vscode环境搭建
NET SDK(软件开发工具包)是一个免费的开源工具和库集合,您需要使用 C# 构建和运行应用程序。这是您将编写 C# 代码的地方。要构建您的第一个 .NET 应用程序,您需要安装 .NET SDK、Visual Studio Code 和 C# 开发工具包。C# 开发工具包是一组功能强大的 VS Code 扩展,可简化 C# 开发。.NET WinGet 配置文件将为您安装 .NET 9 SDK、VS Code 和 C#3、查找并选择 .NET: New Project 以创建新的 .NET 项目。
2025-01-19 17:13:54
663
原创 unity编译器新手知识点
2、private情况下的Unity组件,如Transform(如果是public的情况,也就是存在面板赋值的情况,会报未赋值而不是空引用)3、有可能组件并不是自己身上的,那么实际挂载的对象,是不是被销毁了,或者这个组件已经被销毁了。另外要特别注意,很多组件我们并不是只给一个单位使用,所以要考虑所有单位的情况,比如一群AI。控制场景窗口里作为视觉辅助的网格线,包括开启和关闭其显示,调整网格大小、颜色和透明度。1、一般发生在数组、列表中,一般是因为传递的索引为负数或超过了列表上限。
2025-01-19 13:17:01
2411
原创 unity3D的GameObject
如果需要从一个脚本访问另一个脚本,可以像往常一样使用 GetComponent,只需使用脚本类的名称(或文件名)来指定所需的组件类型。然而,由于 “this” 表示脚本而不是 GameObject,因此它实际上只会销毁调用它的脚本组件,而留下移除了脚本组件的 GameObject。MonoBehaviour允许启动,停止和管理协程,编写异步代码的方法,包括等待一段时间或者某些操作完成,同时允许其他事件代码继续执行。1.project:工程面板(存放工程资源:声音资源,模型资源,场景文件,材料,脚本)
2025-01-19 13:16:46
1397
原创 JS的原型链
每个对象都有一个原型(prototype),通过原型链实现属性和方法的继承。对象的原型是通过new操作符或对象字面量创建时隐式地指向其构造函数的原型。对象的原型本身也是一个对象,通常是通过创建的,其原型指向。是原型链的顶端,其原型(__proto__)为null,表示原型链的结束。Object构造函数本身是由Function构造函数创建的,因此指向。的原型也是它自己,形成了一个特殊的闭环。由此,对象、Object构造函数、Function。
2025-01-13 14:05:09
372
原创 前端vue3的axios二次封装
默认情况下,Vite 在 vite/client.d.ts 中为 import.meta.env 提供了类型定义。随着在 .env[mode] 文件中自定义了越来越多的环境变量,你可能想要在代码中获取这些以 VITE_ 为前缀的用户自定义环境变量的 TypeScript 智能提示。在前端开发中,常见的环境包括 development(开发环境)和 production(生产环境)。地址可以放置到环境变量中,在vue3+vite+ts的项目中,创建env文件如下。内容没有问题后就是如何动态更换请求的URL。
2025-01-12 20:28:12
1242
原创 webpack和vite的区别
vite运行无需打包等编译工作,启动快,模块的引用和编译都是交由浏览器的ES的模块来完成的,webpack运行需要先编译为bundle文件在启动的,而代码的改动会重新执行编译bundle文件。链接:原文。
2025-01-11 22:39:53
495
原创 解决浏览器输入http被自动跳转至https问题
查阅相关资料,发现这是浏览器的HSTS(HTTP Strict Transport Security)功能引起的。在安装配置SSL证书时,可以使用一种能使数据传输更加安全的Web安全协议,即在服务器端上开启HSTS ,它会告诉浏览器只能通过HTTPS访问,而绝对禁止HTTP方式。因此,只要关闭浏览器的HSTS功能就可以解决这个问题,但是只能通过特定的方式,而不是清除浏览器缓存那么简单。
2024-12-31 16:17:26
2638
原创 线性代数:求n阶行列式python编写
这是对线性代数中行列式计算问题的编程解决。def fun(c, n): if len(c) > 3: s = 0 for i in range(n): C = [] for j in range(n): C.append(c[j][1:]) C.remove(C[i]) if i % 2 == 1: #.
2022-03-20 09:00:54
1434
原创 蓝桥杯(python)试题 算法训练 唯一的sha子
资源限制时间限制:1.0s 内存限制:256.0MB问题描述 腿铮找2255有点事,但2255太丑了,所以腿铮不知道他的长相。正愁不知道到如何找他的时候,他突然看见计33班围成了一个圈在领微积分试卷。计33班有n个人,其中班长编号为0,其余同学依次按顺时针方向编号。 只听见计33小导说“x号同学顺时针方向往后数的第k个的神犇出列(不包括x号同学),领取满分试卷!”。剩下的人继续围成一个小圈。这样一个过程持续了n-1次,那么显然,最后只剩下了一个人。众所周知,2255是个大傻子,门门挂科.
2022-01-31 11:26:38
612
2
原创 蓝桥杯(python)试题 算法训练 最小距离
资源限制时间限制:1.0s 内存限制:256.0MB 最小距离问题描述 数轴上有n个数字,求最近的两个数,即min(abs(x-y))输入格式 第一行包含一个整数n。 接下来一行,表示n整数。输出格式 一个整数表示最小距离样例输入67 3 4 11 9 17样例输出1样例说明 取3和4数据规模和约定 n<=100000 所有整数<=10^7常规思路每个数与其他数相减,返回最小值 (必定超时)n = i
2022-01-09 16:01:34
1024
1
原创 蓝桥杯(python)试题 基础练习 芯片测试
资源限制时间限制:1.0s 内存限制:512.0MB问题描述 有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。 每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。 给出所有芯片的测试结果,问哪些芯片是好芯片。输入格式 输入数据第一行为一个整数n,表示芯片个数。 第二行到第n+1行为n*n的一张表,每行n个数据。表中的每个数据为0或1
2021-12-29 21:15:21
240
原创 蓝桥杯(python)试题 基础练习 FJ的字符串(递归求解)
资源限制时间限制:1.0s 内存限制:512.0MB问题描述 FJ在沙盘上写了这样一些字符串: A1 = “A” A2 = “ABA” A3 = “ABACABA” A4 = “ABACABADABACABA” … … 你能找出其中的规律并写所有的数列AN吗?输入格式 仅有一个数:N ≤ 26。输出格式 请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。样例输入3样例输出ABACABA首先题目需要我
2021-12-29 15:25:37
915
原创 蓝桥杯(python)试题 基础练习 序列求和
资源限制时间限制:1.0s 内存限制:256.0MB问题描述求1+2+3+...+n的值。输入格式输入包括一个整数n。输出格式输出一行,包括一个整数,表示1+2+3+...+n的值。样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低。样力输出5050数据规模与
2021-12-28 23:07:26
470
原创 蓝桥杯基础练习时间转换(Python解法)
蓝桥杯 试题 基础练习 时间转换 python资源限制时间限制:1.0s 内存限制:512.0MB问题描述 给定一个以秒为单位的时间t,要求用“H:M:S”的格式来表示这个时间。表示时间,表示分钟,而S表示秒,它们都是整数且没有前导的“0”。例如,若t=0,则应输出是“0:0:0”;若t=3661,则输出“1:1:1”。 输入格式 输入只有一行,是一个整数t(0<=t<=86399)。 输出格式 输出只有一行,是以“H:M:S``”的格式所表示的时间,不包括引号。
2021-12-28 22:35:25
1008
原创 python九宫格矩阵排数
九宫格的填数我用的是比较常规的方法:根据九宫算术填数规律,通过程序方式完成。填数规律:1)最大数填在中间一行、最后一列;2)行+1,列+1,如果新位置没有填数则填下一个数;3)否则,退回原位置,执行列-1操作,然后填下一个数。这里我使用python中numpy库的np.zeros((n,n))方法,创建了一个n*n阶的矩阵以便于填数和输出。#九宫算术import numpy as npn = int(input())a=np.zeros((n,n))r,c = n//2,n-1
2021-12-28 21:51:53
2292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅