笔记:制作游戏所需的数学

https://www.youtube.com/watch?v=fJS4qLifFf8&list=PLFw9ryLdiLzY1s1_XFvOOX4QJQArB-B2c

1.公式和图像

f(x) = x
f(x) = x^2
x在0到1变化时,y也对应地从0-1的变化。
但变化快慢却不同
应用 : 进度条快慢的效果
在这里插入图片描述

2.对数

在这里插入图片描述
应用:估算二进制数大概是几位十进制数
2a=10b
b=alog2=0.3a
a=blog2(10)=3.3b
可见a与b之间大概是3倍和1/3关系。
已知一个int32类型的整数,能表达的十进制数大概是1010

2)如果用52个英文字母(不分大小写)来存储数据,相当于能存储多少字节的数据呢?
已知一个字节是256位。而英文字母有24个。那么就相当于24进制数转换成256进制数。
log256(24)=0.573
0.573*52=30字节

3.浮点数

根据科学计数法 12.345=1.2345e-1
浮点数就是这么保存的,只不过由于计算机是保存二进制数,1.10101*2^(1010)
在这里插入图片描述根据指数范围可知
一个float类型的浮点数 最大2127=1.7014E38 , 最小是2-127=1.1755E-38。
但是根据浮点数的储存方式可知,数值越大,在尾数部分存储的数中,小数点左侧的位数越多,小数的位数就越少,能表现数据的精度就越低。
则当指数部分为0时,float的最大精度如下:
在这里插入图片描述随着数据的增大,float的精度变小。
在这里插入图片描述如果是距离的数据的话,到10km时,就只能大概分辨1mm。

如果时间用这个式子进行累加的话
time

4.easing分析

1)线性插值(lerp(Linear Interpolation))
在这里插入图片描述p=lerp(p,T,0.1f);
一般用于先快后慢的效果。
float Lerp(float a,floatb,float t)
{return (1f-t)a+tb;}

p=lerp(p,T,a);实际上是一个递推式
P(n

5.复数

Z=a+ib
i=sqrt(-1)
复数运算
Z1+Z2=(a1+a2)+i(b1+b2)
Z1*Z2=(a1a2-b1b2)+(a1b2+a2b1)i

而复数的运算在复平面上的几何意义就是:
加法是复平面上的平行移动。
在这里插入图片描述
乘法是复平面上,两个向量模相乘,角度相加。
在这里插入图片描述
可见复数运算其实可以看作二维向量的一种运算。
则,比如通过复数乘法制作一个螺旋
在这里插入图片描述还比如能做出曼德勃罗特集合(上帝指纹)
https://baike.baidu.com/item/%E6%9B%BC%E5%BE%B7%E5%8B%83%E7%BD%97%E9%9B%86/4888291?fromtitle=Mandelbrot%E9%9B%86%E5%90%88&fromid=1778748&fr=aladdin
在这里插入图片描述Z0=0时根据C的值,这个Zn发散或收敛。
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会尽力回答你的问题。关于通过UDP传输音视频,我了解一些相关的知识,下面是一些学习笔记: 1. gstreamer是一个流媒体框架,用于创建、处理和播放多媒体流。它支持多种音视频格式,可以通过插件扩展功能。 2. 通过gstreamer可以使用UDP协议传输音视频数据。UDP协议是一种无连接的协议,不保证数据传输的可靠性和顺序性,但是传输效率高。 3. 首先要创建一个gstreamer的pipeline,包括音视频源、编码器、UDP发送端等组件。例如: ``` gst-launch-1.0 -v filesrc location=test.mp4 ! decodebin ! x264enc ! rtph264pay ! udpsink host=192.168.1.100 port=5000 ``` 这个pipeline的作用是从test.mp4文件读取音视频流,解码后使用x264编码器进行压缩,然后使用rtph264pay将数据打包成RTP数据包,最后通过udpsink发送到指定的IP地址和端口。 4. 接收端要创建一个gstreamer的pipeline,包括UDP接收端、解包器、解码器等组件。例如: ``` gst-launch-1.0 -v udpsrc port=5000 ! application/x-rtp, payload=96 ! rtpjitterbuffer ! rtph264depay ! avdec_h264 ! autovideosink ``` 这个pipeline的作用是从UDP端口5000接收音视频数据,使用rtpjitterbuffer解决网络抖动问题,使用rtph264depay将RTP数据包解包成原始的H.264数据流,然后使用avdec_h264解码器进行解码,最后使用autovideosink播放视频。 5. 在实际使用过程中,还要考虑数据的带宽限制、网络延迟等问题,以保证音视频传输的效果。 希望这些笔记能对你有帮助。如果你还有其他问题,可以继续问我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值