使用FlasCC将OpenGL游戏移植到Flash平台
需积分: 9 107 浏览量
更新于2024-07-22
收藏 125KB DOC 举报
"这篇论文探讨了如何利用Adobe的Flash C++ Compiler (FlasCC)技术将流行的开源OpenGL游戏Neverball移植到Flash运行时,同时尽可能减少对原代码库或构建系统的修改。FlasCC是一种创新的编译器技术,能够将C/C++代码编译成SWF文件格式,在Flash Player中运行。随着Flash Player 11引入Stage3D API,它提供了对GPU加速3D图形的支持,并具有可编程着色器,旨在在现代移动设备和桌面电脑上高效运行。为了使OpenGL游戏能够在Flash平台上运行,Adobe启动了一个名为GLS3D(OpenGL for Stage3D)的开源项目,该项目实现了Stage3D API上的一部分OpenGL API,从而实现OpenGL游戏的移植。"
在这篇论文中,作者深入探讨了以下几个关键知识点:
1. **Flash C++ Compiler (FlasCC)**: FlasCC是Adobe推出的一项技术,它允许开发者用C/C++编写代码并将其编译为SWF文件,这些文件可以在Flash Player环境中运行。这极大地扩展了Flash的开发能力,因为它打破了原本只能使用ActionScript进行开发的局限。
2. **OpenGL游戏移植**: 论文以开源游戏Neverball为例,展示了如何将基于OpenGL的游戏移植到Flash平台。通过FlasCC,开发者可以保持大部分源代码不变,减少了对游戏原有结构的破坏,降低了移植成本。
3. **Stage3D API**: Flash Player 11引入的Stage3D API为开发者提供了GPU加速的3D图形处理能力。这个API的设计目标是在移动设备和桌面系统上都能获得高性能,其特点与OpenGLES API有显著相似性,旨在直接利用现代硬件特性,无需昂贵的转换或模拟。
4. **OpenGLES与OpenGL的关系**: OpenGLES是OpenGL的一个精简版,去除了现代可编程GPU不再提供快速路径的一些遗留特性。它旨在提供轻量级、高效的3D图形支持。
5. **GLS3D项目**: Adobe启动的GLS3D项目是为了在Stage3D API的基础上实现OpenGL的子集,使得OpenGL游戏能够无缝地移植到Flash平台上。这个项目为那些原本基于OpenGL开发的游戏提供了在Flash环境中运行的可能性。
论文通过实例详细阐述了如何利用FlasCC和GLS3D将OpenGL游戏集成到Flash环境中的过程,对于希望将3D游戏移植到Flash平台的开发者来说,是一份非常有价值的参考资料。此外,这也展示了Adobe在推动跨平台开发工具方面所做的努力,以及在Flash技术上的持续创新。
193 浏览量
111 浏览量
142 浏览量
102 浏览量
2009-04-08 上传
118 浏览量
qq_17135839
- 粉丝: 0
- 资源: 1
最新资源
- 叉车变矩器故障诊断及处理.rar
- BULLDOG-开源
- 草图设备:一些草图格式的设备
- libdaisy-rust:菊花板的硬件抽象层实现
- clangular:lan角
- 行业文档-设计装置-一种拒油抗静电纸质包装材料.zip
- ICLR-Workshop-Challenge-1-CGIAR-Computer-Vision-for-Crop-Disease:Zindi竞赛的入门代码-ICLR Workshop Challenge#1
- aklabeth:Akalabeth aka'Ultima 0'的翻拍-开源
- snglpg:Занимаясь“在浏览器中设计”
- OpenCore-0.6.2-09-09.zip
- 摩尔斯电码,实现将字符转为摩尔斯电码的主体功能,能将摩尔斯电码通过串口上位机进行显示
- matlab布朗运动代码-Zombie:用于团队项目的MATLAB僵尸启示仿真(2016)
- 纯css3圆形发光按钮动画特效
- mvntest
- 版本:效用调查,专家和UX使用者,请指责一个集体经济团体,请参阅一份通俗的经济通函,一份从业者的各种困难和疑难解答,请参见网站实际内容
- OpenCore-0.6.1-09-08正式版.zip