[AGAL个人笔记]第一篇:AGAL基础(译)

原文:Stage3D / AGAL from scratch. Part I – The Basics

eg.如果你E文不错的话  还是看E文比较带劲。

关于AGAL(adobe 图形汇编语言

我第一次使用AGAL是在几周前与一个同事一起,AGAL让我们终于认识到了Stage3D的强大.

可能你想看到的是关于Away3D的教程,但是在我学Away3D的第一课的时候我感到非常失望, 因为我并没有成功编译出那个例子的立方体,其中的原因就在于我欠缺3D建模能力.

直到后来出现了Starling和ND2D这两个框架,通过这两个框架所表现出来的GPU渲染能力,我们才认识到原来Stage3D在硬件加速上堪称完美。

虽然Stage3D非常难,但是如果你真的想理解他们是怎么工作的  那你还是必须要面对它,你可以通过下面两种方式去学会使用它,第一是系统的从底层开始去学习Stage3D,第二是学会使用衍生的开源框架 (例如Starling ND2D),无论哪一种方式 如果你想深入(而不是只懂皮毛)的话 都必须先去学会使用adobe提供给我们的底层Stage3D API。

与大多的教程类似,我们先从一个简单的“Hello World”(hello三角形呵呵)例子开始,但在开始之前 还是要说明下环境的配置和一些名词解释.

在接下来的3或者4篇教程中,我会详细介绍Stage3D的基础和尝试通过编程实现在GPU中渲染出一个由三种颜色构成的三角形(期待~)。

Flash播放器的版本:Flash player 11

首先 我们需要一款能编译FP11下运行的程序的编译器,我使用的是FDT,你可以选择FD或者是FB,事实上可以选择的编译器有:

Flash CS5

Flash Builder

Flash Develop

FDT

在开始之前确保的你机器能使用GPU加速 确保你的IDE环境能编译程序 安装和下载自百或者G.CN  环境配置自百 (大概意思)

Stage3D:它是啥?它不是啥?(我没译错哈)

我相信大多的Flash 开发者看到Stage3D都会觉得失望,adobe承诺会在它提供的平台上带来真正的3D技术,而现在大家能看到的就是只有AGAL这个低级的类似汇编语言的东西,完全没有一些高级语言的特性或者使用起来那么方便,这也许就是Stage3D的入门门槛吧。

Stage3D事实上它只做一件事情,而确实它也做得非常好,那就是它仅仅帮助你上传一些点阵数据或者是纹理到显卡或者是GPU上,并且使你能在你的程序使用你所上传的东西。这就是Stage3D能为我们做的全部。

Stage3D它并不是一个3D引擎(目前比较出名的3D引擎有 Away3D 4.x, Alternativa 3D, Minko, Epic Game’s Unreal Engine or the Unity 3D Engine.大家比较熟悉的可能就是Unity3D了和Away3D 了),

好了 经过前面的介绍 你都了解了么?想学习一些比较实际的东西么,那好吧  我们继续~

一些基本的Stage3D词汇

GPU : GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”。GPU是相对于CPU的一个概念,由于在现代的计算机中(特别是家用系统,游戏的发烧友)图形的处理变得越来越重要,需要一个专门的图形的核心处理器。
V-Ram : 随机存取存储器
Buffer : 缓存 在A存储器分配的空间
Vertex : 顶点
Fragment : 片段  说白了就是颜色索引
Shader : 着色器  不明白的去翻翻图形编程
Program : The combination of a Vertex Shader and a Fragment Shader.

在下一篇,我们尝试仅仅使用Stage3D编写我们的第一个三角形,并且在编写过程中理解Stage3D程序的组成结构

(译完)

我的理解:

这第一篇讲的内容比较基础,在看这之前我都基本了解了 其中有一点我是看过这篇教程后才知道的,那就是关于Stage3D是什么 能做什么的这一段.

2 评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注