- 博客(65)
- 收藏
- 关注
原创 URP Shader复习过程做的一些记录
Tags添加Tags标签,里面的RenderPipeline = UniverisalPipeline的作用是当前的SubShader只能用于URP管线,Queue是控制渲染队列的,填写Geometry是不透明物体,Transparent是半透明,不透明和半透明的渲染顺序是不一样的,URP会用一个DrawOpaque的指令了从近到远渲染不透明物体,和一个DrawTransParent指令从远到近渲染半透明物体多Pass下可以加的一些参数Tags {
2025-05-06 10:44:43
640
原创 【BEPU V1物理】多线程加速物理模拟 汉化笔记#5
Xbox360特别提示:若您仍在为Xbox360开发,请通过论坛联系维护者,以确保兼容性支持。
2025-04-14 00:51:04
419
原创 【BEPU V1物理】碰撞形状重中心化 汉化笔记#2
所有碰撞形状均以局部坐标系原点为中心。当从顶点/模型构建复杂形状(如凸包现状或移动网格形态)时,现状结构函数会自动计算质心、体质中心,并通过偏移所有形状数据使其与局部原点对其。这些形状构造函数会输出计算得到的数据位置(即从所有顶点坐标中减去该值以实现对齐)。
2025-04-14 00:20:25
417
原创 游戏编程模式学习(编程质量提升之路)
在稍微学习游戏编程常用的设计模式,用于到框架设计当中,再进一步替身编程质量文档地址:https://gameprogrammingpatterns.com/中文地址:https://gpp.tkchu.me/
2025-04-04 17:51:42
806
原创 关于依赖注入框架VContainer DI&&IOC 的学习记录
稍微记录一下VContainer依赖注入框架的学习过程。这个框架主要是解决代码的依赖问题,假设有个类A和一个类B,类B需要使用到类A作为依赖,这个时候就会有很强的依赖性,当类A改变代码逻辑的时候,会影响到类B,不符合代码原则,所以要进行依赖倒置原则,这个时候我们一般需要准备一个接口A来抽象一下类B需要用到的功能,这样当类A修改的时候不会影响到类B。这里主要是学习经过框架来进行依赖并且进一步提升自己的代码质量。
2025-04-02 18:25:00
1069
原创 记录关于Unitask的一些基础使用
由于最近编写一下unity的游戏框架,使用了unity自带的协程去做一些异步操作,发现有很多限制,也需要提升下代码质量,所以为稍微学习一下UniTask的使用。UniTask插件使用了懒加载的方式实现,在第一次运行一些异步操作的时候,效率会稍微比协程慢,但是之后性能消耗会是协程消耗的十分之一上下。简单贴下await在Unitask的扩展源码= null)else。
2025-04-01 23:36:11
1184
原创 保存一篇还不错的script build pipeline文章的地址
https://rootjhon.github.io/posts/SBP-Scriptable-Build-Pipeline/
2024-07-26 10:44:40
460
原创 Stable Diffusion学习记录
Stable Diffusion是一个开源免费能生成以假乱真的图片、有着强大可控性不能制作视频光影文字的AI软件,可以说是有必要学习的东西了,这里是基于秋叶大神整合的Stable Diffusion Web UI进行接触和学习。
2024-05-06 22:24:58
4415
1
原创 【Unity基础】TextMeshPro组件学习过程记录
在Hierarchy面板上右击时,我们发现TextMeshPro有两处可以进行创建,第一个在菜单3D Object里,第二个在UI里面,也就是说TextMeshPro可以创建为场景的3D对象和Canvas下的UI元素。当文字比较多的时候那么可以使用静态字体。文本的每个字符都使用了两个三角形,四个顶点,就算使用了描边,阴影等效果也不会有额外的顶点生成,这说明了TextMeshPro的强大性能。值得注意的时候,TextMeshPro能够进行水平方向的渐变,也能够支持垂直方向的渐变,也可以支持四个方向的渐变。
2024-04-26 17:26:23
4122
3
原创 Unity框架,ET框架8.1版本的打包流程记录
如果Installed:false就点击下Install进行安装,等待显示Installend:true即可。Unity菜单栏下选择YooAsset>AssetBudle Builder打开窗口,选项需要完全按照这上面。安装完成后,选择HybridCLR>Generate>All,并且等待脚本编译完成。再选择CopyAotDlls把编译完成的脚本放进工程玩家的AotDlls文件夹下。先再工程Assets文件夹下创建一个StreamingAssets文件夹。点击Click Build等待构建完成即可。
2024-04-04 20:46:35
1967
1
原创 【实时渲染】图形处理单元
早期的图像加速技术是使用三角形扫描,将这些扫描的颜色通过插值显示在屏幕上,而且也拥有访问数据的能力,将这些访问的数据通过插值显示在屏幕上程序内部又加上了许多的可见性的像素检查,如深度测试等,由于这些过程处理的次数多,每次的处理都比较简单,所有就专门从CPU中分离出一个硬件单元处理这些,从而减少CPU的工作量。
2024-02-22 11:14:24
1103
原创 【leetcode】64. 最小路径和
给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例 1:输入:grid = [[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径 1→3→1→1→1 的总和最小。
2023-11-29 16:15:47
523
原创 【leetcode】62. 不同路径
一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?输入:m = 3, n = 7输出:28示例 2:输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。
2023-11-27 11:12:40
551
原创 【leetcode】198. 打家劫舍
你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。示例 1:输入:[1,2,3,1]输出:4解释:偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。偷窃到的最高金额 = 1 + 3 = 4。
2023-11-14 20:04:53
171
原创 【leetcode】746. 使用最小花费爬楼梯
给你一个整数数组 cost ,其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。示例 1:输入:cost = [10,15,20]输出:15解释:你将从下标为 1 的台阶开始。输入:cost = [1,100,1,1,1,100,1,1,100,1]输出:6解释:你将从下标为 0 的台阶开始。
2023-11-14 19:13:23
139
原创 【leetcode】8.字符串转换整数
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。确定最终结果是负数还是正数。如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。
2023-11-13 20:54:45
237
原创 【leetcode】1137. 第 N 个泰波那契数
泰波那契序列 Tn 定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0 的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数 n,请返回第 n 个泰波那契数 Tn 的值。示例 1:输入:n = 4输出:4解释:示例 2:输入:n = 25输出:1389537。
2023-11-13 15:26:13
202
原创 【程序基础】动态规划
其实就是一种带备忘录的递归。其实就是一个大的问题拆分成许多的小问题,再读小问题进行重叠运算,这里和分治法最大的不同再于拆分小问题而直接做重叠运算,分治法是逐个解决再进行合并。一条公式为 dp = max(dpj,dpj + dpi),dpj为上一个j个小问题叠加的答案,dpi为当前小问题的答案,再由dpj + dpi 计算得到最终答案。比如说最经典的问题斐波那契数组计算,f(n) 计算出来,再计算f(n + 1) 只需要把记录下来的f(n)和f(n-1)进行累加,即可得到f(n+1)的答案。
2023-11-13 15:12:12
158
原创 【leetcode】58.最后一个单词的长度
单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1:输入:s = “Hello World”输出:5解释:最后一个单词是“World”,长度为5。示例 2:输入:s = " fly me to the moon "输出:4解释:最后一个单词是“moon”,长度为4。示例 3:输入:s = “luffy is still joyboy”输出:6解释:最后一个单词是长度为6的“joyboy”。提示:s 仅有英文字母和空格 ’ ’ 组成。
2023-11-06 16:32:05
155
原创 【leetcode】19.删除链表的倒数第 N 个结点
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5]示例 2:输入:head = [1], n = 1输出:[]示例 3:输入:head = [1,2], n = 1输出:[1]
2023-11-06 16:12:25
153
原创 【leetCode】2. 两数相加
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。
2023-11-03 18:00:18
107
原创 【leetcode】21. 合并两个有序链表
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点数目范围是 [0, 50]l1 和 l2 均按 非递减顺序 排列。
2023-11-03 10:56:02
99
原创 【程序基础】分治而之
二分查找其实就是折半查找,能使用这个查找算法的必须是一个有排序的集合,不能是乱序。如果发现是数组的mid下标的值比查找的值小就进行让right = mid - 1。如果发现是数组的mid下标的值比查找的值大就进行让left = mid + 1。对一个整体的问题进行拆分,拆分成多个子问题,再对多个子问题进行求解。如果发现是数组的mid下标的值和查找的值相等就进行让就反回mid。比如有个数组1,5,6,9,10,15,17。1.分解,多问题进行分解成为小问题。2.拆分的子问题必须是相互独立的。
2023-11-01 16:15:41
85
原创 【leetcode】28. 找出字符串中第一个匹配项的下标
给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。输入:haystack = “leetcode”, needle = “leeto”输入:haystack = “sadbutsad”, needle = “sad”解释:“leeto” 没有在 “leetcode” 中出现,所以返回 -1。解释:“sad” 在下标 0 和 6 处匹配。第一个匹配项的下标是 0 ,所以返回 0。
2023-10-25 16:57:03
80
原创 【leetcode】20.有效的括号
给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。每个右括号都有一个对应的相同类型的左括号。s 仅由括号 ‘()[]{}’ 组成。左括号必须用相同类型的右括号闭合。输入:s = “()[]{}”左括号必须以正确的顺序闭合。输入:s = “()”输入:s = “(]”
2023-10-25 16:27:59
51
原创 【leetcode】179.最大数
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。按照规则比较数x,y。取xl为x的(数位+1)*10,yl为y的(数位+1)*10。因为不能使用cpp自带的sort函数,所以直接些了个快速排序进行排序。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。就有x * yl + y 和y * xl + x。最好直接取两个数带入就知道是怎么回事了。输入:nums = [3,30,34,5,9]输入:nums = [10,2]输出:“9534330”
2023-10-25 14:33:42
63
原创 【leetcode】75.颜色分类
给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。因为题目中可以得知,大部分的数组元素都是相等的,所以使用希尔排序是最快的。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。必须在不使用库内置的 sort 函数的情况下解决这个问题。输入:nums = [2,0,2,1,1,0]输入:nums = [2,0,1]nums[i] 为 0、1 或 2。输出:[0,0,1,1,2,2]输出:[0,1,2]
2023-10-24 16:52:40
70
原创 【leetcode】268.丢失的数字
解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。解释:n = 2,因为有 2 个数字,所以所有的数字都在范围 [0,2] 内。解释:n = 9,因为有 9 个数字,所以所有的数字都在范围 [0,9] 内。解释:n = 1,因为有 1 个数字,所以所有的数字都在范围 [0,1] 内。给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。输入:nums = [9,6,4,2,3,5,7,0,1]
2023-10-24 16:15:22
77
原创 【leetcode】16. 最接近的三数之和
给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。解释:与 target 最接近的和是 2 (-1 + 2 + 1 = 2)。输入:nums = [-1,2,1,-4], target = 1。思路就是先进行一次排序,再使用一次双指针减少一次暴力查询。输入:nums = [0,0,0], target = 1。假定每组输入只存在恰好一个解。
2023-10-24 12:00:13
68
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人