Category Archives: 图形编程

使用 GlowFilter实现字体沟边与发光

如果你正在使用 Flash,那么实现下面一个字体效果是一件十分简单的事情: textfield.filters = [ new GlowFilter(0, 1, 2, 2, 10) ]; 这样就可以了,接着把字体设置成宋体12号,颜色是0xffff99,就成了。 如果要实现上面类似QQ面板的发光效果,也只需要一行: textfield.filters = [ new GlowFilter(0xffffffff, 1, 6, 6, 0.9) ]; 看起来这个 GlowFilter是无所不能呀,那么如果你在使用C++的话,如何用C++来实现一个Glow效果呢? 而且如果你正在使用3D引擎的话,如何用GPU来实现上面的效果呢?详细见下文:

Loading

Posted in 图形编程 | 5 Comments

Windows字体为什么那么难看?

1)很多字库比如宋体,12号以下都是点阵字体。 2)GDI太老了,只有5级灰度,而且AA是横向的,Y轴方向没有AA。 3)雅黑又不能通用,且小字号时高低不平。   改进: 1)字体SuperSample。 2)勾边。

Loading

Posted in 图形编程, 编程技术 | 1 Comment

美术资源超级压缩方法

如何在质量下降不大的情况下降低一倍的占用?如何让臃肿的美术资源压缩再压缩?   JPEG->WDP/WEBP   大部分项目都陆续废掉了JPEG,而最好的代替品是微软的HD Photo,wdp格式,在PSNR差不多的情况下,wdp能比JPEG小一倍多。 (wdp的encoder/decoder不好找的话,我这里有一份微软的库) 观察下面的演示图片不要缩放PDF,用100%显示才看得清楚差别 JPEG 16.18 KB,可以看出脸部方块已经很严重,头发等高频部分已经看不清楚,帽子和墙面质量损失严重,而下面这张WDP文件(HDPHOTO,XnView可以转换)只有13.85KB大小,质量却比JPEG好很多。(通常情况下峰值信噪比差不多的话,WDP能够小一倍): 压缩比从强到弱依次是:WDP>WEBP>JPEG2000>JPEG。因此换用WDP格式能缩小不少资源。   PNG->WEBP 非界面元素,仅仅是为了使用ARGB32的资源,可以用webp的带alpha有损格式代替,能节省不少。   实时纹理压缩 PS Vita里面已经大范围用到了实时纹理压缩方法,DXT格式存储纹理仅仅是为了方便显卡,但是它的地压缩率却害苦了硬盘。废除DXT格式,用wdp格式或者webp格式有损保存图片(不要用JPEG了,JPEG太差)。运行时动态载入并且动态生成dxt格式再载入显卡。如此在质量微弱损失的情况下,可以至少获得4-5倍的空间节省。 PS Vita使用的动态生成dxt的库叫:

Loading

Posted in 图形编程 | Tagged | 1 Comment

生成类苹果图标

修改了半年多的业余作品pixellib,基本稳定了。下面是用它生成的一些类似苹果系统的图标:

Loading

Posted in 图形编程 | 3 Comments

[讲稿] ActionScript3 入门讲稿

  若干年前学习 ActionScript的记录,下载地址: http://www.skywind.me/mw/images/3/3c/ActionScript3.rar

Loading

Posted in 图形编程, 游戏开发 | Tagged | 1 Comment

[讲稿] CGDC2009 演讲:游戏峡谷地图自动生成

2009年在上海 CGDC的演讲稿《游戏地图自动生成》,该算法主要用来生成山地峡谷地图。

Loading

Posted in 图形编程, 游戏开发 | Tagged , | 1 Comment

[讲义] 游戏客户端十二小时入门

这是我2005-2007年在公司培训时候的讲义,当时现场效果相当热烈: 可以到下面地址下载:

Loading

Posted in 图形编程, 大浪淘沙, 游戏开发, 编程技术 | Tagged | 1 Comment

[自制开源] 轻量级图形库 PixelLib

图像:64种不同的像素格式,色彩空间变换,多种图形图像变换。 质量:支持3种级别抗锯齿效果,高质量几何图形绘制。 实现:轻量级纯软件实现,100% C代码(仅700KB代码)。 优化:SSE2/MMX优化 地址:https://github.com/skywind3000/pixellib 1. 图像变换: 支持仿射变换和透视变换,提供大量图像变换操作接口。

Loading

Posted in 图形编程, 开源项目, 游戏开发, 编程技术 | Tagged , , , | 7 Comments