新闻

CES 2011 关键词

2011 CES 关键词:CES2011 关键词 : 平板电脑、android3.0、裸眼3D、智能电视、 双核4G 。平板电脑除了 ipad,全是 andriod 的天下。

诺基亚英特尔Linux系统合并 联手推MeeGo平台

诺基亚与英特尔公司合并各自的 Linux 操作系统,推出了一个名为 Meego 的新手机平台。新平台将提供对智能手机、上网本与上网电视的支持。Meego 系统融 合了英特尔的 Moblin 与诺基亚的 Maemo 系统以及 QT 开发工具包。

GNOME 3:面向“Task”的桌面

本周,由Ubuntu背后的公司Canonical和Google赞助进行的《GNOME Usability Hackfest 2010》已经在圆满结束,关于GNOME 3的更详细特性已经显露。开发者已经放出GNOME 3 UI交互设计的草稿,顿时掀起一阵热烈讨论。

CES 2010: all stuff

2010 CES 的热点包括:上网本,E-reader,HDTV,Tablet,Mobile等。

Ubuntu 9.10 Alpha 6 出来了

Ubuntu 9.10 的新特征包括:速度快,KMS,平滑的 Xplash,包括 N 多新特性的 GNOME 2.28。

在 iPhone 应用 OpenGL ES 2.0 渲染器进行互动光线追踪

两款新 iPhone 应用展现了 OpenGL ES 2.0 渲染器在新 iPhone 3GS 中 PowerVR SGX 图形芯片的力量。 Quaternion Julia Raytracer 是第一款 iPhone 3GS 实时 GPU 光线追踪应用程序,它渲染高精度的四元 Julia 分形,通过修改分形参数可创建无限量复杂形状。iGPUTrace 在图像拍摄环境中创建完全互动的真实感光泽图像,罗盘和加速计可控制3D空间中的镜头移动。详情参见:http://angisoft.de

设计模式

GUI 系统需求描述

GUI 系统的需求描述文档,列举了一个 GUI 系统应该具有的功能和在设计时应 该考虑的问题。

设计模式速查手册

本文简单明了地总结了 23 种设计模式,介绍了每种模式的意图、适用环境,并 给出了类图和 C++ 代码,是个不错的速查手册。

GUI 设计与设计模式系列: GUI 主循环设计及其在 MiniGUI, GTK, QT 的实现

本文介绍了 GUI 主循环的设计思路,并分析了 MiniGUI, GTK, QT 的主循环。

GUI 设计与设计模式系列: Cache Buffer

在 GUI 系统中对资源进行高效管理是非常重要的问题。文本以图片管理为例, 提出一个基于哈希表的 cache buffer。

GUI 设计与设计模式系列: 回调函数

GUI 系统中,回调函数扮演着非常重要的角色。本文结合一些具体的 GUI 系统,介绍了回调函数的设计和使用。

GUI 设计与设计模式系列:layout

Layout 是看不见的容器组件,它可以包含 widget,并且能够根据窗口大小自动 调整 widget 的位置和尺寸。本文总结了一些主流 GUI 系统 Layout 的设计思 路和特色。

GUI 设计与设计模式系列:消息队列的设计和实现

消息驱动机制是 GUI 系统的基础,消息驱动的底层基础设施之一是消息队列, 它是整个 GUI 系统运转的中枢,本文介绍了一个基于环形队列的消息队列实现方 法,给出了它的数据结构、主要操作流程和核心代码。

物理引擎

推荐一个网站:PhysDev 物理开发网

物理开发网致力于为广大物理编程爱好者提供一个学习交流的空间,主要是交流物理引擎、物理编程、游戏开发物理学、GPU物理运算等相关的知识。

Box2D on PSP

网上有人把 Box2D 移植到 PSP 上了,PSP 具有 VFPU 数学运算能力,效果还是 不错,这里有下载和 demo 视频。该作者的网站有很多关于游戏引擎和开发的资 料,非常不错。 http://drakon.xxl-web.pl

Android port of Box2D

本文介绍了移植 Box2D 到 Android 的过程,给出了具体的移植方法和设计思路。

Box2D-js:Box2D 的 Javascript 实现

本文介绍了用 javascript 实现的 2D 物理引擎 Box2D,利用它可以在浏 览器中实现带丰富物理效果的游戏和 UI。

Ubuntu 下编译运行 Box2D

本文介绍了在 Ubuntu 下编译运行 Box2D 的过程、方法和注意事项。

Box2D:一个 2D rigid body 物理引擎

Box2D 是一个2D rigid body 物理引擎,本文介绍了它的基本情况、主 要特色以及使用 Box2D 开发程序的基本思路。

窗口管理

支持3D动效的窗口管理器——Mutter

mutter 将作为 GNOME3 的窗口管理器,它基于 Clutter 开发,支持 3D 特效。

组合窗口管理器

目前,主流的 GUI 系统都采用了组合窗口管理器,本文对组合窗口管理器做了介绍,包括它的历史、2D的特色、3D 的特色以及它带来的可用性。

MiniGUI 的多窗口管理技术

本文是 MiniGUI 作者发表在 IBM developerworks 上的 MiniGUI 系列文章中的 一篇,详细介绍了 MiniGUI (早期版本)的多窗口管理技术,包括 Z 序的概念, 多窗口剪切算法等,并给出了一些关键算法的代码。

窗口管理器的分类

本文介绍了四类窗口管理器,分别是 compositing, stacking, tiling, dynamic.

什么是窗口管理器

结合 EWMH spec,本文介绍了窗口管理器的基本功能。

Windows Manager overview

介绍了窗口管理器的概念、Inter-Client Communication Conventions Manual、Extended Window Manager Hints,并给出了目前常见的窗口管理器。

GTK+开发

Gtk+ 3 Roadmap Draft2

该 Roadmap 对 GTK+3 作了详细的介绍,包括 introduction, planned features, contributor features, whishlist items, progress tracking 等。 想了解 GTK+3 的过来一探究竟吧。

GObject 对象系统

本文是 IBM developerWorks 上宋国伟先生写的,介绍了对象的定义和实现、属性和方法以及对象的继承机制。简单的说,GObject对象系统是一个建立在GLIB基础上的,用C语言完成的,具有跨平台特色的、灵活的、可扩展的、非常容易映射到其它语言的面向对象的框架。如果你是一个C语言的执着的追随者,你没有理由不研究一下它。

GTK+ 中的面向对象机制

GTK+ 虽然是用 C 语言开发,但它使用了面向对象的设计思想,并通过一些技 巧实现了面向对象中的封装、继承和多态。本文介绍了这些技巧和方法。

GTK+ 与 MFC 不完全对比

MFC 已经江河日下,日渐式微,而 GTK+ 可谓欣欣向荣,如日中天。这里无意于 落井下石,痛打落水狗,贬 MFC 而尊 GTK+ 。自己即在使用 MFC 也在使用 GTK+ ,不会偏袒其中之任何一方。这个对比完全出于个人对两者的理解,说它 是不完全对比,一方面只是一时兴起想做个笔记而已,另外一方面我对两者的理 解也是有限的。本文从李先静的 blog 转载而来。

GTK+ 与 QT 的比较

本文来自 GTK+ 的邮件列表,GTK+ 的开发人员对 GTK+ 和 QT 做了简单的比较。

QT开发

倒影(reflection)特效的实现

本文介绍了使用 OpenGL ES 开发 UI 需要考虑的问题和基本开发思路。

翻页(folding)特效的实现

本文收集了一套 OpenGL ES 系列教程,重磅推荐。

用 2D 图像处理的方法实现 genie 特效

genie 特效是 Mac OS X 标志性的特效,它是基于 OpenGL 来实现的。QT lab 里的开发人员使用 2D 图像处理的方式实现了 genie 效果,该方法是通过对源图片做一些处理并搭配上动画而实现的,本文介绍了具体技术细节,并提供源代码下载。

Port QT to S60 Policy

QT 已被移植到 S60 平台上,文本介绍了总体思路和各个模块的移植细节。

QT Paint System

本文分析了 QT 的 paint system,详细介绍了构成 paint system 的三个类:QPainter, QPainterEngine, QPaintDevice。

Android开发

Android 中的 framebuffer

本文介绍了 Android 的 framebuffer 的整体架构,图文并茂,比较清晰。

Android GUI 的更新过程

本文介绍了 Android GUI 的更新过程。

gallery3d 代码分析之从渲染流程看

本文根据 gallery3d 的渲染过程分析其源代码。

gallery3d 代码分析之 GlSurfaceView

本文简要介绍了如何使用 android SDK 提供的 GlSurfaceView 进行 OpenGL ES 开发。

gallery3d 代码分析之概览

本文简要介绍了 gallery3d,给出了分析 gallery3d 源代码需要考虑的问题,并给出了构件图。

在 Android 上实现绕 Y 轴旋转

本文介绍了实现绕 Y 轴旋转的方法。

Android Activity 生命周期

本文详细介绍了 Activity 的生命周期,非常明了。

基于 Android NDK 进行 OpenGL ES 开发

本文详细介绍了如何利用 Anroid NDK 开发 native OpenGL ES程序。

Mac OS X开发

一个简单的 iPhone 图像处理库

本文介绍了一个 iPhone 图像处理库,提供了边缘检测、直方图均衡等功能。

Mac OS X 图形栈

本文介绍了 Mac OS X 的图形栈,分析了它的原理和体系结构。

Design Show

TAT Velvet 窗帘 UI

整套UI以模拟窗帘拉动的效果为主线,桌面小插件的激活、侧边栏程序的呼出(地图的查看、网页的浏览)、菜单界面的显露,都强调了一个“拖拽窗帘”的感觉。并且其流畅程度,丝毫不逊色于iPhone、以及众多的Android二次开发界面。

Miscrosoft Windows Phone 7 深度剖析

美国东部时间2010年10月11日晚9:30,微软在纽约正式发布了针对智能手机的 Windows Phone 7 操作系统。本文对 Windows Phone 7 做了详细介绍,包括:外观、键盘、联系人、social networking、短信、电子邮件、SMS、浏览器、Zune、Camera和照片管理、Markplace、XBox Live、Office、Maps、搜索等。

Samsung Wave Bada UI

三星在 MWC 2010 大会上展出了第一款搭载自有系统 Bada 的智能手机 Wave S8500。

Microsoft Windows Phone 7

在 Mobile World Congress 2010 上,微软正式公布新一代的手机操作系统:Windows Phone 7 Series,Windows Phone 7操作系统在外观和首页布局方面给人以焕然一新的感觉。

Sony Ericsson's UXP Android UI

Sony Ericsson 开发的 Android UI,主要特色是Timescape, infinite pivot, Mediascape。

图形渲染

Mipmaping in OpenGL

本文介绍了如何在 OpenGL 中 Mipmap。

在 OpenGL 中使用各异向性纹理过滤

本文介绍了如何在 OpenGL 中使用各异向性纹理过滤。

旗帜(waving texture)特效的实现

本文详细介绍了如何实现3D的旗帜(waving texture)特效。

3D 图形编程的数学基础(1) 向量及其运算

本文介绍了向量的定义、模、三维空间中两点间的距离,向量的规范化,向量的基本运算等。

倒影(reflection)特效的实现

本文介绍了如何实现倒影(reflection)特效。

翻页(folding)特效的实现

本文收集了一套 OpenGL ES 系列教程,重磅推荐。

Typical UI development with OpenGL ES

本文介绍了使用 OpenGL ES 开发 UI 需要考虑的问题和基本开发思路。

OpenGL ES 系列教程

本文收集了一套 OpenGL ES 系列教程,重磅推荐。

基于 OpenGL 进行 3D 开发

本文介绍了基于 OpenGL 进行 3D 开发的基本思路,帮助初学者快速理清思路。

动画引擎

MD2 文件格式

MD2模型文件格式是大名鼎鼎的 id software 于1997年11月发布Quake 2时推广 出来的。由于它比较简单,容易使用,所以应用很广,是一种经典的动画模型格 式。该文件格式由两部分组成,一部分是文件头,包含文件 ID 号、版本号和模 型各种数据的起始地址等;另一部分是文件的主体,包含了有关模型的各种数据, 如顶点数据、纹理数据、法向量数据等。本文详细介绍了 MD2 的文件格式。

分析 android 的动画模块

Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果;第二类是 Frame 动画,即顺序播放事先做好的图像,跟电影类似。本文分析了 Tween 动画的实现原理。

Overview of Animation

本文介绍了动画的基本概念和分类,并分析了各类动画的优缺点。

OpenGL 开发

Frame Buffer Object 总结

本文总结了FBO技术。

反锯齿技术Anti-Aliasing

本文总结了反锯齿技术,重点介绍了全景反锯齿。

视锥裁剪

本文介绍了视锥裁剪技术,并给出了 OpenGL 实现。

Mipmaping in OpenGL

本文介绍了如何在 OpenGL 中 Mipmap。

在 OpenGL 中使用各异向性纹理过滤

本文介绍了如何在 OpenGL 中使用各异向性纹理过滤。

3D 图形编程的数学基础(1) 向量及其运算

本文介绍了向量的定义、模、三维空间中两点间的距离,向量的规范化,向量的基本运算等。

OpenGL ES 系列教程

本文收集了一套 OpenGL ES 系列教程,重磅推荐。

基于 OpenGL 进行 3D 开发

本文介绍了基于 OpenGL 进行 3D 开发的基本思路,帮助初学者快速理清思路。

X Window 开发

揭开Wayland的面纱(二):Wayland应运而生

本文详细介绍了 Wayland。

揭开Wayland的面纱(一):X Window的前生今世

本文回顾了 X Window 的历史,,为后面介绍 Wayland 打下基础。

Gallium3D 介绍

Gallium3D 是非常先进的技术,Mesa 7.5 也将其引入了,本文对 Gallium3D 做了详细介绍。

Direct Rendering Infrastructure (DRI) 简介

本文介绍了 DRI,描述了设计目标、项目历史、当前状态、开发环境和将来的计划。

DRI 体系结构分析

本文详细介绍了 DRI(Direct Rendering Infrastructure) 的体系结构,给出了模块图、数据流图和控制流图。

X Server Design Document

X Server 详细设计文档: html版本 pdf版本

Clutter开发

clutter Gesture: A Gesture-Recognition Framework

本文介绍了 Clutter Gesture, 一个手势识别框架,支持点击、滑动、多点触摸等。

clutter-md2:装载与显示 md2 模型

本文介绍了 clutter-md2 库,它基于 clutter 实现了 md2 模型的装载与显示。

Clutter : 释放 OpenGL 威力的新途径

本文根据 jserv 在台南昆山科技大学的演讲稿整理而成,详细介绍了 Clutter 的背景、功能、设计思路、编程方法,是个难得的教程。

Wormhole to Clutter 0.8

本文对 clutter 0.8 作了较全面的介绍,既有 COGL, Backend, Texture, Multiple stage, Layout 等核心模块, 也包括 clutter-box2d, clutter MD2, Clutter Webkit, Metacity-clutter, GStreamer integration, Clutter Cairo 等外围模块,并提供了一些基于 clutter 开发的项目链接。

Clutter Box2D

通过集成开源的 2D 物理引擎库,clutter 可以非常容易的实现碰撞、自由落体等带物理效果的 UI。

Clutter教程

本文给出一个 Clutter 教程,它通过一些例子帮助读者学习怎样使用Clutter 开发图形用户界面。教程原文为英文版,作者是 Murray Cumming,中文版由刘鹏翻译。

MiniGUI开发

MiniGUI 十年回顾

这篇文章,是为纪念 MiniGUI 发布 10 年(2009 年)而写的。从 2010 年到现在的 2011 年中期,这个世界的变化很快。MiniGUI 和飞漫软件从水平市场逐渐集中精力于手机这个垂直市场,而 2007 年 Google 发布的 Android 系统,如秋分扫落叶般发展迅速,看起来将在 2012 年全面占据中低端(千元)智能机市场。MiniGUI 这个产品的生命周期,也似乎要走到尽头了——起码在手机市场,大概也只能在功能手机这个领域存活三到五年左右的时间。但不管如何,大家了解下 MiniGUI 这个嵌入式系统、移动终端中关键系统软件的发展历程,应该还算是有些用的吧。

MiniGUI 的多窗口管理技术

本文是 MiniGUI 作者发表在 IBM developerworks 上的 MiniGUI 系列文章中的 一篇,详细介绍了 MiniGUI (早期版本)的多窗口管理技术,包括 Z 序的概念, 多窗口剪切算法等,并给出了一些关键算法的代码。

MiniGUI-Processes 体系结构

MiniGUI-Processed 即 MiniGUI 进程版,每个程序都是单独的进程,采用客户/ 服务器结构,实现了一个多进程窗口系统。采用 Unix 域套接字实现进程间通信, 使用共享内存机制使所有进程共享光标等公共资源。

MiniGUI-Threads 体系结构

MiniGUI-Threads 即 MiniGUI 线程版,基于多线程机制,采用了微客户/服务器 体系结构,该体系结构的核心实现主要集中在消息队列上,本文详细介绍了微客 户/服务器结构和消息队列。

MiniGUI 资源链接

本文收集了网络上的介绍 MiniGUI 的文章,主要是 IBM Developworks 上的专栏文章, 囊括了 MiniGUI 的体系结构、窗口剪切算法、输入层、输出层和字符集/字体的 处理等等。这些文章描述的是早期版本的 MiniGUI

DirectFB开发

DirectFB代码导读

本文介绍了 DirectFB 的各个模块,并给出了若干值得注意的问题。

DirectFB窗口管理器(unique)研究笔记

本文介绍了窗口管理器的概念,并详细介绍了 DirectFB 中的两个窗口管理器 default 和 unique。

Our Experiences on DirectFB in Embedded Application Development

本文根据 IGEL 公司和 Renesas 公司的工程师做的 presentation 整理而成, 介绍了他们使用 DirectFB 开发嵌入式应用程序的经验,内容包括 DirectFB 的 体系结构、硬件加速带来的性能提升、GFX graphics 驱动开发方法、DirectFB 缺少的 features 等内容。本文图文并茂,对使用者较深入的理解 DirectFB 有很大帮助。

DirectFB 综述

DirectFB 提供了硬件图形加速、输入设备支持和抽象、集成了支持透明窗口和多显示层的窗口系统。它提供一个完整的硬件抽象层,支持完整的图形操作。

PSP 开发

JGE 游戏引擎粒子系统分析

JGE 游戏引擎提供了粒子系统,基于粒子系统可以实现火、爆炸、烟、云、雾等效果。本文对该粒子系统的实现做了深入剖析。

JGE 游戏引擎动画模块分析

本文详细分析了 JGE 游戏引擎的动画模块,包括该模块的各个类,类之间的关系,并给出了类图和序列图,最后分析了一个播放动画的例子。

JGE 引擎:从使用者角度分析

JGE 游戏引擎的使用者是指使用 JGE 引擎的游戏开发人员,本文从使用JGE 开发游戏的开发者角度分析 JGE 引擎,内容包括与使用者相关的核心模块、引擎总体逻辑、具体模块的实现等,最后给出了一个例子 HelloWorld。

JGE 游戏引擎体系结构分析

JGE 是一个支持硬件加速的 2D PSP 游戏开发包,它由 Dr.Watson 开发,完全 开源,本文介绍了它的主要特征,并分析它的体系结构。

PSP 开发指南

本文介绍了 PSP SDK 的安装过程,并以 hello world 为例详细介绍了利用 PSP SDK 开发 PSP 自制软件的方法。

PSP 简介

本文介绍了 PSP 掌上游戏机的大体情况,重点对其硬件做了细致分析。

嵌入式 GUI FTK

嵌入式 GUI FTK 设计与实现-主循环

本文介绍了嵌入式 GUI FTK 的主循环的设计思想和实现方法。

嵌入式 GUI FTK 设计与实现-分层视图

为了从整体上把握 FTK 的架构,我们先看看 FTK 的分层视图。

FTK 编程风格

本文介绍了 FTK 的代码风格。

嵌入式 GUI FTK 设计与实现-三项基本原则

本文介绍了 FTK 的三项基本设计原则。

嵌入式 GUI FTK 设计与实现-目录

本文列出了嵌入式 GUI FTK 的框架结构,非常明了。