傻瓜 笔记unity
【笔记】 浅学 bitset
bitset 简介 bitset 是 C++ 自带的一个STL。 bitset是一个01串,01串上的每一位就是1bit,在一些场合优化bool数组。 初始化 使用 bitset 需要用到 \(\text{“#include<bitset> ”}\) ,不过这个头文件在万能头里就自带了,可以直接用。 ......
阅读笔记二:《软件需求分析》
软件需求分析的概念:软件需求分析是软件开发过程中的关键步骤。它涉及识别和定义系统或应用程序的功能、性能和约束,以确保开发团队和利益相关者都理解项目的范围和目标。需求分析帮助消除歧义,降低风险,提高项目交付的质量。 需求获取:需求的获取是需求分析的起点。这涉及与各种利益相关者互动,以了解他们的需求、期 ......
CS224n笔记:word2vec(1)
目录离散语义 (discrete):分布语义 (distribute):tokens、types分布的语言模型(distributional language model):词嵌入模型Word2VecObjective func (目标函数)Loss func (损失函数)P(O|C) 和 Soft ......
【笔记】可删除堆
可删除堆 考虑到没什么人会选择手写普通的堆,所以用优先队列实现就好。 问题: 我们知道,在使用堆或优先队列的时候,我们只能取出堆顶,也就是所维护的最大或最小值。 那么如果我们要从所维护的一个元素里删除一个非最大或最小值呢? 最暴力的做法是将元素一个一个从堆顶弹出,直到弹出我们要删的元素,再将之前所弹 ......
《需求分析与系统设计》阅读笔记4
应用程序依赖与数据库的不仅仅是数据,还有数据库提供的解决并发冲突、保证数据的安全访问、保证数据一致性、事务错误恢复等功能。实体类表示应用程序中持久数据库对象,但实体类不是数据库中的持久类。必须谨慎设计业务对象和持久数据库之间的关系。 规则和描述性引用完整性约束允许在数据库中定义简单的业务规则,触发器 ......
JUC并发编程学习笔记(十九)原子引用
原子引用 带版本号的原子操作! 解决ABA问题,引入原子引用(乐观锁思想) AtomicStampedReference类解决ABA问题 package org.example.cas; import java.util.concurrent.TimeUnit; import java.util.c ......
Unity-Light(含Unity2021-2d项目升级Urp渲染管线)
Unity-Light(含Unity2021-2d项目升级Urp渲染管线) 普通渲染管线(比较老旧的光效升级方式,已舍弃) 要使场景和角色拥有光效,那就得让他们先暗下来,给他们添加相应的材质 场景材质的添加 选中需要添加材质的场景,在右侧框内的“材质”菜单中,选中Default-Diffus ......
Unity-背包系统
Unity-背包系统 简介 背包是每个成功游戏中不可缺少的,玩家获取的装备与道具将会放入背包,需要时再拿出来使用。如果没有背包来储存玩家在游戏中获得的武器和道具,或许游戏将会变得十分单一枯燥,出招方式一成不变。 有了背包系统,玩家才可以使用不同的武器,搭配不同的道具,使出不同的攻击搭配,从而 ......
Unity-射线
Unity-射线 前言 在游戏开发的过程中,许多功能的实现都需要物理检测,而 发射射线 是Unity中物理检测的通用方法。例如,我们需要检测玩家(Player)脚下是否是 地面(图层为 Ground),只需要从脚底发射一条射线,检测Player脚下GameObject的图层是否为Ground即可 ......
Unity-协程
Unity-协程 协程的简单实现 一般的程序执行都是线性的,也就是必须一行一行的执行代码。 使用Unity提供的协程,就可以类似于开辟另一条线程,调整根据你所写的代码,调整下一行代码执行的时间。 项目示例 下面的例子是一个 U3D Demo 中的代码,实现最简单的 Enemy 追击 Pl ......
Unity-敌人(Enemy)
Unity-敌人(Enemy) 引言 敌人是每个游戏中不可缺少的部分,设计得好的敌人可以给游戏增添很多乐趣,设计得差的则会非常影响我们的游戏体验。 经过这段时间的学习,我们已经接触了非常多的敌人代码的写法,但是就是没有系统的归类,导致每次写敌人,都要从头开始。现在是时候将他们进行一个系统性的 ......
Unity-单例模式
Unity-单例模式 前言 对于某些特殊的类,我们希望 在整个程序的生命周期只创建一个该类的对象 ,或是希望 在其他类没有持有该类的引用,就可以调用该类中的函数,我们就需要将这个类写成 单例模式 单例的简单实现 public class Test() { pubic abstract Test ......
Unity-场景的异步加载
Unity-场景的异步加载 为什么需要异步加载 在诸多大型游戏里,场景渲染精度都是动态的,随着场景与角色距离的增加,渲染精度也在递减,这样极大的减少了硬件性能的消耗。 但如果角色使用了某些传送技能,将自己传送到为渲染的地点,游戏可能就会因为需要瞬间渲染大量的场景而卡顿。此时就需要用到 场景的 ......
Unity-观察者模式(observer)
Unity-观察者模式(observer) 引言 了解完委托(delegate)与事件(event)之后,我们来讨论一个问题。 假设我们有一个热水器,我们给他同上电,当水温超过95度的时候:1、扬声器会开始发出语音,告诉你温度;2、液晶屏也会改变水温的显示,来提示水已经烧开了 现在我们需 ......
Unity-FSM有限状态机
Unity-FSM有限状态机 什么是有限状态机? 在编写一些需要判断多个条件的程序时,我们常常会用到 if-else 语句,这样能够很好的帮我们解决多数问题。但在游戏开发过程中,一个角色的行为不是一成不变的,需要实时的进行修改,此时如果我们使用的是 if-else 来判断角色所处状态,就需要修改 ......
Unity-对象池 & 多对象池
Unity-对象池 & 多对象池 简介 在制作游戏的过程中,人物和boss的设计往往会有释放多个子弹的攻击方式。我们可以用直接创造子弹然后销毁的办法来实现这些技能的效果,但当子弹开始变多,游戏就会不断的消耗我们的内存。为了解决这个问题,开发者们就引入了状态机。 普通对象池 创建思路 在不创建 ......
Unity-Menu&场景切换
Unity-Menu&场景切换 开始界面 1.要创建开始界面,首先要新建一个场景,用于添加游戏开始界面的内容 2.新建按钮步骤:UI>画板>Button(按钮)>根据需要设置按钮 3.给按钮添加代码,使得按下按钮就可以进入下一关/退出游戏 (1)代码内容需要用到 using UnityEngine. ......
Unity-工厂设计模式
Unity-工厂设计模式 原文出处:工厂方法设计模式 (refactoringguru.cn) 简介 工厂方法模式是一种创建型设计模式, 其在父类中提供一个创建对象的方法, 允许子类决定实例化对象的类型。 工厂(方法)模式 问题引入 假设你正在开发一款物流管理应用。 最初版本只能处理卡车运输 ......
【笔记】曼哈顿距离与切比雪夫距离的互化
【笔记】曼哈顿距离与切比雪夫距离的互化 图源:https://www.cnblogs.com/SGCollin/p/9636955.html 曼哈顿距离:\(|x_a - x_b| + |y_a - y_b|\) 切比雪夫距离:\(\max(|x_a - x_b|,|y_a - y_b|)\) 在有 ......
前端学习-JavaScript学习-JavaScript高级程序设计-第2章笔记
在HTML中使用JavaScript元素 <script>元素 元素属性 MDN <script>:脚本元素 属性 使用状态 描述 charset 可选、少用 字符集 defer 可选、少用 表示脚本可以延迟至文档完全被解析后实行,部分浏览器不支持 language 废弃 编写代码使用的语言 src ......
【笔记】二进制拆分
二进制拆分 二进制拆分是对多重背包的一种优化方式,可以极大的优化多重背包的时间。 原理 一个数可以被拆分为任意二进制的和。 例如:$7= 2^0 + 2^1 +2^2 $ 任意一个数都可以表示为几个 \(2\) 的多少次方之和的形式。 我们回顾下完全背包问题。 背包容积为 \(C\) , 有 \(n ......
Unity3D 如何用unity引擎然后用c#语言搭建自己的服务器
Unity3D是一款强大的游戏开发引擎,可以用于创建各种类型的游戏。在游戏开发过程中,经常需要与服务器进行通信来实现一些功能,比如保存和加载游戏数据、实现多人游戏等。本文将介绍如何使用Unity引擎和C#语言搭建自己的服务器,并给出技术详解以及代码实现。 对惹,这里有一个游戏开发交流小组,希望大家可 ......
阅读笔记五
第六章:对象和数据结构 对象暴露行为,隐藏数据,便于添加新对象类型而无须修改既有行为,同时难以在既有对象中添加新行为;数据结构暴露数据。 没有明显的行为,便于向既有数据结构添加新的行为,同时难以向既有函数添加新的数据结构。 数据抽象:隐藏实现关乎抽象,暴露抽象接口,以便用户无须了解数据的实现就能操作 ......
C#学习笔记之编码
归纳: 一、ASCII码 ASCII码是用来表示英文字符的一种编规范,每个ASCII字符占用1个字节,因此,ASCII编码可以表示的最大字符数为255(00H-FFH)。 二、Unicode码 Unicode也是一种字符编码方法,它占用两个字节(0000H-FFFFH),容纳65536个字符。 三、 ......
秦疆的Java课程笔记:32 基础 JavaDoc生成文档
javadoc命令是用来生成自己API文档的 参数信息: @author 作者名 @version 版本号 @since 知名需要最早使用的jdk版本 @param 参数名 @return 返回值情况 @throws 异常抛出情况 比如这就是一个JDK 21的Oracle官方API:点击跳转 pac ......
动手学深度学习笔记01
安装 https://blog.csdn.net/qq_18620653/article/details/105329219 配置显卡驱动、CUDA、cuDNN以及说明三者之间的关系 https://blog.csdn.net/qq_18620653/article/details/10532921 ......
XJTU自动化钱班辅修电气工程专业课笔记合集
通过百度网盘分享的文件:笔记整理链接:https://pan.baidu.com/s/1BrHQ1EqvlQlbWqpD5h_6Sg?pwd=shsg 提取码:shsg复制这段内容打开「百度网盘APP 即可获取」 完全为个人原创笔记内容,仅包含少量板书ppt与个别页面他人笔记截图) 另有基本所有课程 ......
秦疆的Java课程笔记:31 基础 包机制
为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。 包语句的语法格式为:package pkg1[. pkg2[. pkg3[…]]] ; 一般利用公司域名倒置作为包名 比如“百度”的域名“www.baidu.com”对应的包名应该是“com.baidu.www” 为了能够使用某一个包 ......
图解密码技术----读书笔记
第1章 环游密码世界 术语 加密 encrypt 明文 plaintext 密文 ciphertext 解密 decrypt 密码 cryptography 密码破译 cryptanalysis 破译,密码分析 破译者 cryptanalyst 对称密码 symmetric cryptography ......