写点什么

专访 Nihao Flash3D 负责人——谈可视化 Stage3D 学习工具

  • 2011-10-26
  • 本文字数:2608 字

    阅读完需:约 9 分钟

以往的 Flash3D 引擎都不支持 GPU 硬件解码,解码工作只能由 CPU 来完成,导致性能极其低下,只能渲染简单的 3D 模型。Adobe 一项新技术 Stage3D 的面世标志着这一问题终于被解决,GPU 承担起解码的重任,仅需占用很少的 CPU 就能得到很复杂的 3D 模型。但是 Stage3D 是底层 API,需要开发者有较高的编程技巧,开发门槛较高,为了帮助国内 Flash 开发者学习,Adobe Evangelist 与 9RIA 团队共同开发了一款 Stage3D 可视化学习工具——Nihao Flash3D。以下为 InfoQ 中文站对该工具的两位主导者 @7yue @杜增强 DzQ 的主要访谈内容:

InfoQ:请谈下 Nihao Flash3D 开发的初衷及开发背景是什么?

7yue:2011 年初,Adobe 在其 labs 网站上放出了一个叫做 Flash Player Incubator 的测试项目,其目的是将很多新功能的测试引入其中,供开发者评测。第一期引入的新功能叫做 Stage3D,是下一代 Flash Player 11 使用 GPU 对 3D 进行硬件加速的底层 API,使 Flash Player 11 可以与支持 DirectX 和 OpenGL 驱动的独立显卡进行直接协作,对 Flash 中的 3D 内容进行硬件加速。这对于很多使用 Flash 技术进行游戏开发的开发者而言,是一个革命性的新功能。

由于 Stage3D API 是底层 API,需要开发者有较高的编程技巧,并且对于特定的 Shader 语言和宏汇编有一定的了解,如果想要被广大开发者尤其是初学者所掌握,还是具备比较高的知识门槛。因此,2011 年 5 月,我与我们国内的 Flash 开发者冠军社区 9RIA 的几名 Flash 开发专家决定推出一款供开发者可视化学习 Stage3D 的工具,经过 1 个月的架构规划和几个月的开发,Nihao Flash3D 这个工具即将随着 Flash Player 11 和 AIR 3 的正式发布而推出第一个正式版本。

以下是 Nihao Flash3D 的界面:

InfoQ:Nihao Flash3D 的主要功能及特点是什么?

7yue: Nihao Flash3D 这个工具使用 Flex 框架,AIR 运行时打包成为可以在 Window 和 MAC 平台上运行的一款工具,它的界面灵感来自 Adobe 的另一款开发者工具 TourDe Flex。在这款工具中,开发者可以浏览到不断更新的演示范例,而这些演示范例分别来源于 Adobe 官方的 Stage3D 基本演示,支持 Stage3D API 的流行的第三方 3D 最新版本的框架,如 Flare3D、 Alternativa3D、Yogurt3D、Away3D 等,还包括了利用 Stage3D 进行 2D 图形渲染加速的框架 ND2D 和 Starling 等等,目前内置的 Demo 数量有将近 50 个,而且 95% 以上的 Demo 都附带源代码供学习者参考。

Nihao Flash3D 是一款特点鲜明的可视化学习工具,目标是使用 Stage3D 的 Flash 开发者,旨在通过持续的更新,将全球范围内最流行的框架和相关演示代码不断的聚合在 Nihao Flash3D 这款工具中,方便开发者尤其是刚刚接触 Stage3D 的开发者进行快速的可视化学习。在这个工具中,除了可以看到最新的 Stage3D API 的用法,还能直接看到 Stage3D 构造的各种范例,并且能将范例的源代码打包下载。

这个工具还提供了 3 个重要的功能,搜索排序,评分和分享。随着 Demo 数量的不断增多,开发者可以使用关键字搜索特定 Demo,也可以按照应用以往所有 Demo 被浏览的次数和评分等条件进行排序浏览。评分是提供给开发者对特定范例进行评价,提供了工具后台进行范例的更新一个有力的数据支撑,高评分的 Demo 留下,低评分的 Demo 慢慢被淘汰。分享是允许开发者通过新浪微博将喜欢的 Demo 转发到新浪微博上,让更多感兴趣的开发者看到这样的范例,进而下载 Nihao Flash3D 这个工具。

InfoQ:现在是否有可下载的版本供开发者使用?

7yue:在 Nihao Flash3D 最后正式发布前,开发者可以通过加入新浪微博 Flash3D 这个开发者群来获取到这个应用的下载地址。 http://q.weibo.com/312314

InfoQ:您对这个工具的后续规划是什么?

7yue:2011 年最后一个季度的规划是,通过 9RIA 社区公开发布 Nihao Flash3D 的第一个版本。后续更多的规划包括:在 2011 年底,将范例数量提升到 70 个左右。2012 年,规划英文版本和移动设备上针对 OpenGL ES 的版本。

InfoQ:现在微群上也有关于该工具的讨论,能否分享下开发者的使用感受?

7yue:目前此款工具处在正式发布前的最后阶段,共有 47 个范例供开发者使用,其中有几个有代表性的 Demo 是由中国的开发者提供,被工具进行了收录。这款工具在测试期间,Flash3D 的开发者微群的注册人数增长到了 900 多个成员,微群内工具下载次数超过 1100 次,Demo 浏览次数累计达 4000 多次。

InfoQ:您开发这个工具所用技术是如何选择的,技术选型的依据是什么?

杜增强:我们使用的是 Adobe AIR+Flex 技术来开发这个应用的,主要考虑的是借助 AIR 可以很轻松的实现跨平台,同时使用 Flex 框架提供的一整套完善的组件和机制可以快速的开发企业类应用程序,这样可以降低我们的开发成本,提供开发效率。

infoQ:您是怎么看待 Stage3D 的?

杜增强:大家不要被 Stage3D 这个名字所误导,不要以为只有写 3D 有关的程序才会用到。其实不是这样的,就如同 7yue 上面提到的,Stage3D 实现的是使用 GPU 对程序硬件加速的底层支持,同样可以用在传统的 2D 应用中。在 Nihao Flash3D 中有相关的例子,大家可以去学习参考一下。

infoQ:您可以给广大的 Flash 开发者推荐几个学习的途径吗?

杜增强:好的,首先,第一个就是 Adobe 官方的开发人员中心(Adobe Developer Connection),上面都是 Adobe 的相关技术人员发布的最新的技术特性讲解和示例。第二个就是借助广大的社区资源,比如 9RIA 天地会等,第三个就是参加各种社区活动,比如 RIA 天地行等。还有当然就是可以在微博上去关注 7yue 等 flash 牛人。

关于受访者

7yue,Adobe 平台技术推广经理 。99 年开始接触 Flash,2004 年加入 Macromedia 公司任职解决方案工程师,2006 至 2008 年,在 Adobe 公司担任过解决方案工程师和大客户技术经理,目前是 Adobe 平台技术传教士。作者博客: 7yue 的博客,作者微博: @7yue

杜增强,Adobe RIA 社区认证专家,9RIA 天地会专家讲师, 多年来一直从事 Flash 的开发工作,曾供职于 123Show 公司从事富媒体解决方案工具开发, 为 HP 某移动平台项目做过 Flex 顾问。作者博客: DzQ 杜增强.com ,作者微博: @杜增强 DzQ

相关主题

Adobe Stage3D 专区页面: http://www.adobe.com/devnet/flashplayer/stage3d.html

如何启用 AIR3 的 Stage3D: http://vdisk.weibo.com/s/HrQp

关于 Nihao Flash3D

Nihao Flash3D v1.0 稳定版本已正式发布。对 Stage3D 感兴趣的朋友可以用来作为一款学习帮助的小工具了。点击微盘下载

2011-10-26 01:264366
用户头像

发布了 156 篇内容, 共 51.6 次阅读, 收获喜欢 7 次。

关注

评论

发布
暂无评论
发现更多内容

深度!用“极速统一”,开启金融行业数据分析新范式

StarRocks

TiDB Operator配置TiDB集群故障自动转移

TiDB 社区干货传送门

集群管理 管理与运维 故障排查/诊断 安装 & 部署 扩/缩容

教你用JavaScript实现背景图像滑动

小院里的霍大侠

JavaScript 编程入门 实战案例 图像滑动

Coinbase或在不久使用Zebec发放工资,并对Web3支付赛道发展寄予厚望

西柚子

What's new in Dubbo 3.1.4 and 3.2.0-beta.3

Apache Dubbo

Java 开源 微服务 dubbo RPC

TiCDC 源码解读(2)-- TiKV CDC 模块介绍

TiDB 社区干货传送门

不止于大,如何打造优秀的折叠屏应用体验

HarmonyOS开发者

HarmonyOS

践行开源理念,统信软件开放服务器操作系统UOS V20使用授权

统信软件

操作系统 服务器 国产化 免费

低代码开发平台YonBuilder移动开发,开发阅读APP教程

YonBuilder低代码开发平台

App 低代码 移动开发 阅读 开发.

消除视觉Transformer与卷积神经网络在小数据集上的差距

华为云开发者联盟

人工智能 华为云 12 月 PK 榜

Java开发如何通过IoT边缘ModuleSDK进行进程应用的开发

华为云开发者联盟

开发 数据处理 华为云 12 月 PK 榜

教你用JavaScript实现随机点名器

小院里的霍大侠

JavaScript 初学者 入门实战

DM 实践手册

TiDB 社区干货传送门

迁移 管理与运维

阿里云联合“产学研媒”发起BizDevOps共促计划,助力企业提升组织效能

阿里技术

研发效能 数字化转型

解读Java内存模型中Happens-Before的8个原则

华为云开发者联盟

Java 开发 华为云 12 月 PK 榜

我和 TiDB 的故事 | TiDB 仓库 commit TOP 1,PR 数超过 1000 的阿毛哥

TiDB 社区干货传送门

人物访谈

一文解读机密容器的崛起和发展

云布道师

龙蜥

YonBuilder移动开发平台AVM框架 封装滑动单元格组件

YonBuilder低代码开发平台

开发者 后端 移动开发 avm.js AVM

开源工具系列1:Cloud Custodian

HummerCloud

云计算 云安全

Nginx学习笔记(一)HTTP核心配置指令

Starry

ShineScrum捷行2022年最受欢迎的五篇文章回放

ShineScrum

PO 用户故事 项目经理 PRD 团队工作效率

Go 中这么多创建 error 的方式,你真的了解它们各自的应用场景吗

Go学堂

golang 开源 程序员 个人成长 12月月更

Coinbase或在不久使用Zebec发放工资,并对Web3支付赛道发展寄予厚望

鳄鱼视界

MySQL的数据类型和存储引擎介绍

C++后台开发

MySQL 数据库 中间件 后端开发 存储引擎

数据报告 | 非洲电商市场分析报告

前嗅大数据

数据报告 电商报告

户外LED显示屏技术

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

作为程序员,12款常用的软件!

千锋IT教育

V8的垃圾回收和内存限制

千锋IT教育

问答知识库快速构建技术解析及行业实践

中关村科金

人工智能 大数据 AI 知识图谱 技术实践

Coinbase或在不久使用Zebec发放工资,并对Web3支付发展寄予厚望

股市老人

专访Nihao Flash3D负责人——谈可视化Stage3D学习工具_语言 & 开发_贾国清_InfoQ精选文章