记录四元数
在24年7月份,我在学Unity时碰到了名为“四元数”的数学知识,把我难坏了:不是,这四个数分别是什么意思?于是11月的我,希望能穿越到7月份帮自己解答疑惑。
为什么要用四元数?
表示空间的东西,最常用的就是欧拉角了。它以xyz三轴的旋转来表示,生活中很常用。但是它有些问题:
一是“万向节死锁”。具体可以去b站找个视频去看,描述起来太抽象,简单说就是轴面在旋转后可能会重合,如x轴面与z轴面重合,这些特殊情况下可能会乱套。
而是“不唯一性”。这个好理解,比如绕y轴旋转360度和720度是一样的,这就使我们在表现一个状态时、欧拉角不具有唯一性。
四元数是什么?
这里不用纠结于复杂的数学定义(因为我也不会),只谈它是什么:它表示的是,立体几何绕空间任意轴旋转一定读书——任意轴,不一定是xyz轴了,这就很方便。它解决了以上两个问题,引入第四个参数w。
标准格式是(w,x,y,z),那么这四个参数分别是什么意思呢?
假设一个物体,绕向量(x,y,z)旋转a度,那么它的四元数是:(cos a/2,sin a/2 * x,sin a/2 * y,sin a/2 * z)。完结(我当时找好几天我都不知 ...
【C#知识点】公共前缀问题详解——substring、any、all
今天在刷leetcode时看到一道标签为“简单”的题目,说是简单,对我这种C#新人、自学编程和算法的还是很有困难的。不过从这道题中学了些知识点,于是想记录一下。
原题
123456789编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入:strs = ["flower","flow","flight"]输出:"fl"示例 2:输入:strs = ["dog","racecar","car"]输出:""解释:输入不存在公共前缀。
整体思路
看到这道题,我的思路是:首先我们进行两次遍历,第一次遍历strs的所有元素,第二次遍历我们把字符串当成数组、拿出字符来分别比较。至于字符的添加,我们用StringBuilder的append方法去加。
于是在我苦思冥想下、诞生了第一种笨蛋方法:
1234567891011121314151617181920212223 ...
【Unity1】Unity入门笔记
目录
生命周期函数
Inspector窗口可编辑的变量
MonoBehavior中的重要内容
GameObject知识点
成员变量
静态方法
创建对象
查找对象
通过名字查找单个对象
通过Tag来查找单个对象
通过Tag查找多个对象
找到场景中挂载某个脚本
实例化对象(克隆对象)的方法
删除对象的方法
过场景不移除
成员方法
创建空物体
为对象添加脚本
标签比较
设置失活/激活
次要的成员方法
时间相关_Time
时间缩放比
帧间隔时间
受scale影响
不受scale影响
游戏开始到现在的时间
受scale影响
不受scale影响
物理帧时间间隔
受scale影响
不受scale影响
帧数
Transform
Vector3基础和Transform位置
申明变量
基本运算
常用
位置
绝对位置
相对位置
对象当前的朝向
Transform位移
自己计算移动
API移动
Transform角度和旋转
角度相关
旋转相 ...
【前端学习1】Html基础知识总结
不多废话直接开始,只挑最主要的。以HTML5为标准,像是一些废弃的标签、html4里边的,我全都省略掉了(一般也用不到)。所有html,我们都写在后缀为html的文件里。写脚本时,我推荐编辑器vscode。
一、HTML基本框架(了解即可)
为什么是了解即可,因为不重要,框架不用你自己打出来,vscode直接输入个!就能自动生成。
1234567891011整个网页是从<html>这里开始的,然后到</html>结束。head标签代表页面的“头”,定义一些特殊内容,这些内容往往都是“不可见内容”(在浏览器不可见)。<head> 定义了文档的信息<title> 定义了文档的标题<base> 定义了页面链接标签的默认链接地址<link> 定义了一个文档和外部资源之间的关系<meta> 定义了HTML文档中的元数据<script> 定义了客户端的脚本文件<style> 定义了HTML文档的样式文件<head>的内部标签也非常重要,在前期大家只需要感性认知就可以。<! ...
【前端学习0】前端介绍
本系列为个人制作的前端笔记,主要是方便自己和他人看。在开始之前先写写序言。
什么是前端?
我们每天都会浏览各种网页、软件,可能你会好奇,一些网站和软件怎么做的这么好看?这就是前端。前端负责的是网页、应用的界面和交互,你所看到的很多网页特效,都是由前端写的(多是css)。
在学习之前,我们需要把html和markdown分清,两种都是标记语言。论坛“理理の茶馆”里写文章用到的多是markdown,主要写博客用的。markdown不能拿来写网页。
前端要学什么?
可以参考知乎的一篇文章,对于新人来说,最先接触的就是“前端三剑客”:Html,css,JavaScript。也是我现在在学的,其中我觉得最难的是css,因为css有很多,感觉全记住是不可能的(我建议css一大部分用到的时候再去查去学,日积月累就好)
聊聊我学到的东西,html是最基础的脚本语言(它还不是编程语言,是脚本语言),实现很基础的布局;css就是各种特效,一些漂亮的网站和app,很多都是由css实现的效果;JavScript是交互相关的,学会一门编程语言后就觉得不那么吃力了。
我是前端新人,虽说去年开始学了、但一直没坚持 ...