Leon Yi

第五章:光栅化

光栅化(三角形) 上节课提到了观测变换:包含视图变换和投影变换。当完成观测矩阵变换后,下一步需要怎么绘制到屏幕上?这就是光栅化 上节课提到透视投影转换为正交投影,近平面和远平面 z 轴位置不变,远平面大小变成和近平面一样大。 正交投影里:x 轴定义左(l)和右(r),y 轴定义上(t)和下(b),z 轴定义远(f)和近(n)。 锥体定义 n 和 f 在正交投影和透视投影里面都是一样...

性能优化的一般性原则

一般性原则 依据数据而不是凭空猜测 这是前端性能优化的第一原则,当我们怀疑前端性能有问题的时候,应该通过测试、浏览器开发者工具、性能分析工具来分析出哪里有问题,有的放矢,而不是凭感觉、撞运气。一个前端页面有了性能问题,瓶颈有可能是 JavaScript 执行时间过长,有可能是网络请求过多或请求资源过大,有可能是 DOM 操作频繁导致重排重绘,大方向的定位可以使用浏览器开发者工具的 Per...

前端性能优化方法

最佳实践 按需做事-不提前做 按需做事,即在代码中计算和取值应该在需要的地方进行,而不是提前进行。这是因为如果在逻辑判断之前就进行计算,而后面的逻辑判断没有进入,那么这段代码就会白白消耗时间,从而降低了代码的效率。因此,按需做事是一种更加高效的编程方式。 在函数中,有时我们会提前获取或计算所有属性,但是如果后面的逻辑判断没有用到这些属性,那么这部分计算就是无效的,浪费了时间和资源。因此...

前端性能优化方法

最佳实践 按需做事-不提前做 按需做事,即在代码中计算和取值应该在需要的地方进行,而不是提前进行。这是因为如果在逻辑判断之前就进行计算,而后面的逻辑判断没有进入,那么这段代码就会白白消耗时间,从而降低了代码的效率。因此,按需做事是一种更加高效的编程方式。 在函数中,有时我们会提前获取或计算所有属性,但是如果后面的逻辑判断没有用到这些属性,那么这部分计算就是无效的,浪费了时间和资源。因此...