Random Posts
Tags
Categories
Recent Comments
- yilufeiyang on 游戏服务端架构发展史(下)
- 小肥 on GDB 从裸奔到穿戴整齐
- flandre on 异步事件模型的 Self-pipe trick
- inv on 异步事件模型的 Self-pipe trick
- skywind on 异步事件模型的 Self-pipe trick
Links
Meta
Tag Archives: 抗锯齿
计算机图形算法中的光滑边缘算法经历了那些变迁?
主要有四种方法: 1. wupixel:wu xiaolin提出的最早的绘制直线和圆的平滑方法,优点是简单快速,缺点是只有一个方向的像素偏移被考虑了,效果普通,而且只能绘制1个像素宽度的直线,超过一个像素后,两个端点就会非常不自然。 2. supersampling:解析度扩大数倍绘制,四个或者多个像素合并平滑成一个像素,优点是效果好,缺点是计算量大,多用于显卡加速,cpu基本没发做,显卡负担也大: 当然小范围的ss可以用来改进界面字体效果,如windows字体长宽扩大两倍绘制后再平滑down sample成小尺寸,四个像素点均匀合并成一个像素点,会好看很多。 3. 覆盖面积计算:通过计算多边形覆盖了矩形点阵面积的百分比来计算 Alpha,多用于软件渲染,字体绘制,如高质量图形库如AGG,采用直接子像素的绘制方式来避免supersampling的性能浪费,并达到更好效果。缺点是过于复杂不如supersampling 那样简单直接,不容易的用gpu实现。 比如我五年前做的一个玩具图形库:skywind3000/pixellib · GitHub 就是用覆盖面积计算方式来平滑边缘。 4. clear type:采用子像素并考虑lcd的rgb分布,利用lcd上rgb的排列规则模拟更高的解析度,缺点是过分依赖lcd排列,以及主要是x方向的抗锯齿: 编辑于 2015-04-26
[自制开源] 轻量级图形库 PixelLib
图像:64种不同的像素格式,色彩空间变换,多种图形图像变换。 质量:支持3种级别抗锯齿效果,高质量几何图形绘制。 实现:轻量级纯软件实现,100% C代码(仅700KB代码)。 优化:SSE2/MMX优化 地址:https://github.com/skywind3000/pixellib 1. 图像变换: 支持仿射变换和透视变换,提供大量图像变换操作接口。