Projects/Flash Gamedev: Difference between revisions

From OLPC
Jump to navigation Jump to search
 
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
'''Welcome to the Flash as a Gaming/Edu-Gaming Platform for the XO-1 project'''
'''Welcome to the Flash as a Gaming/Edu-Gaming Platform for the XO-1 project'''<br \>
''(Project of [[OLPC Philippines]])''

== Project Members ==
* [[user:Object404|Carlos Nazareno]]
* [[user:Creek23|Mj Mendoza IV]]


== XO-1 as a Target Platform for Flash Gamedev ==
== XO-1 as a Target Platform for Flash Gamedev ==
Line 16: Line 13:


Due to limited CPU specs, XO-1 units also resemble thin clients. As such, browser-based games may be ideal for development. Flash would offer excellent rich interactivity on browsers in this case.
Due to limited CPU specs, XO-1 units also resemble thin clients. As such, browser-based games may be ideal for development. Flash would offer excellent rich interactivity on browsers in this case.

TO DO:
* Fork project page into Gnash 0.8.3 dev (which will ship on build 8.20 of the XO OS) and Adobe Flash 10 dev (Adobe Flash 10 should be coming out soon).

NOTES:
* Apps targeted at Gnash 0.8.3 (based on Flash 7/8) should be forward compatible with the newest Adobe Flash plugins (9 & 10)
* Developers that target Gnash would have the widest audience and install base, Gnash being the default pre-installed Flash player on the XO.
* Developers that target Adobe Flash 9/10 with AS3 will have the advantage of faster app performance courtesy of the Actionscipt Virtual Machine 2.


== The XO-1 Game Buttons ==
== The XO-1 Game Buttons ==


The XO-1 game buttons can easily be bound for Flash games because they're simply rebindings of typical keyboard cursor keys and the corner keys of the numeric pad. This makes the XO-1 very suitable as a gaming platform in e-book reader configuration.
The XO-1 game buttons can easily be bound for Flash games because they're simply rebindings of typical keyboard cursor keys and the corner keys of the numeric pad. This makes the XO-1 very suitable as a gaming platform in e-book reader configuration.

From the OLPC Games list:
"The O, X, square, and check buttons are mapped to the page up, page down, home, and end keys on the numeric keypad, respectively."


== Gnash ==
== Gnash ==

Gnash is one of the open source alternatives to Adobe's Flash player and is the Flash player that is installed on the XO by default. See main page on [[Gnash]]

To do:
* Gnash XO development guidelines to be placed here.

Some notes:

* Build 656 which came out with the 1st G1G1 program ships with Gnash 0.8.1
* Update.1 Build 711 which is the latest stable OS build comes with Gnash 0.8.2
* Builds 765+ which are the bases for 8.2 (the next stable OS build) come with Gnash 0.8.3 preinstalled


* The default installed Gnash has no sound with SWFs (Flash uses MP3s for sound and the default shipped Gnash doesn't come compiled with MP3 libraries because of licensing restrictions)
* The default installed Gnash has no sound with SWFs (Flash uses MP3s for sound and the default shipped Gnash doesn't come compiled with MP3 libraries because of licensing restrictions)
* The version of Gnash on Update.1 711 renders some AVM1 Actionscript 1.0/2.0 (Flash 8 & below) content wrong - will evaluate the version of Gnash that ships with 8.20. Testing 8.20 livecd ISO on a virtual machine showed that scripting is more accurate.
* The version of Gnash on Update.1 711 renders some AVM1 Actionscript 1.0/2.0 (Flash 8 & below) content wrong - will evaluate the version of Gnash that ships with 8.20. Testing 8.20 livecd ISO on a virtual machine showed that scripting is more accurate.
* Gnash does not emulate the AVM2 (Actionscript Virtual Machine 2) found in Flash 9 and above.
* Gnash does not emulate the AVM2 (Actionscript Virtual Machine 2) found in Flash 9 and above.
* Currently doing further testing for compatibility of Flash Lite content. Flash Lite content uses AS 2.0 and is patterned after Flash 8 and below.
This makes it a little less ideal target platform for OSS Flash dev -- the only *decent* production-level tools for FOSS flash dev requires using Actionscript 3 and only outputs Flash 9 AVM2 content (Flashdevelop + Flex SDK + JDK).

* Doing further testing for compatibility of Flash Lite content. Flash Lite content uses AS 2.0 and is patterned after Flash 8 and below.
== Open Source Flash Development Tools ==

For Linux, check out:
http://osflash.org/linux

For Windows-based development, the popular Flashdevelop AS Editor + Free Adobe Flex SDK 3 + Sun's JDK 6 can be used to output AS3 AVM2 SWF files.

== Optimizing Apps for the XO-1 ==

* This page at OSFlash.org provides good tips for optimizing AS3: http://osflash.org/as3_speed_optimizations

- to be added: Flash content optimization tips


== Official Adobe Flash Browser Plugin ==
== Official Adobe Flash Browser Plugin ==
Line 35: Line 66:


Direct link to the latest versions:
Direct link to the latest versions:
* [http://fpdownload.macromedia.com/get/flashplayer/current/flash-plugin-10.0.15.3-release.i386.rpm Flash 10] (''production release'')
* [http://fpdownload.macromedia.com/get/flashplayer/current/flash-plugin-9.0.124.0-release.i386.rpm Flash 9] (''stable'')
* [http://fpdownload.macromedia.com/get/flashplayer/current/flash-plugin-9.0.124.0-release.i386.rpm Flash 9] (''stable'')
* [http://download.macromedia.com/pub/labs/flashplayer10/flashplayer10_install_linux_091508.i386.rpm Flash 10.0 r12] (''beta'')


== Adobe Flash on Opera ==
== Adobe Flash on Opera ==
Line 47: Line 78:
* via [http://get.opera.com/pub/opera/linux/952/final/en/i386/static/opera-9.52-2091.gcc4-static-qt3.i386.rpm HTTP]
* via [http://get.opera.com/pub/opera/linux/952/final/en/i386/static/opera-9.52-2091.gcc4-static-qt3.i386.rpm HTTP]
* via [ftp://ftp.opera.com/pub/opera/linux/952/final/en/i386/static/opera-9.52-2091.gcc4-static-qt3.i386.rpm FTP]
* via [ftp://ftp.opera.com/pub/opera/linux/952/final/en/i386/static/opera-9.52-2091.gcc4-static-qt3.i386.rpm FTP]

OLPC Skin for Opera:
* http://my.opera.com/community/customize/skins/info/?id=6116


Beause of a conflict with the Rainbow security and Sugarization, Opera 9.52 has to be run from the terminal. Open up the terminal then type 'opera'
Beause of a conflict with the Rainbow security and Sugarization, Opera 9.52 has to be run from the terminal. Open up the terminal then type 'opera'
Line 71: Line 99:
rpm -vi <rpm file>
rpm -vi <rpm file>
exit
exit

== Project Members ==
* [[user:Object404|Carlos Nazareno]]
* [[user:Creek23|Mj Mendoza IV]]
* [[user:Melchman|Melch Valimento]]


== Relevant links ==
== Relevant links ==

Latest revision as of 01:24, 15 January 2009

Welcome to the Flash as a Gaming/Edu-Gaming Platform for the XO-1 project
(Project of OLPC Philippines)

XO-1 as a Target Platform for Flash Gamedev

  • With regards to performance as a Flash dev platform, it is pretty similar to a desktop with an AMD K6-2 450MHz CPU, 256MB RAM + Win98.
  • Again with performance, the XO-1 is more similar to a Flash Lite-enabled device than modern laptops
  • Because of the limited CPU & memory, application development methods will be very similar to producing content for Flash Lite which runs on devices with limited CPU & Memory.

As long as developers optimize their apps, the XO-1 is a good environment for Flash as a dev environment because of Flash's small CPU & memory footprint.

During testing, Flash Lite 2.0 content (which is based on Flash 7) ran decently on the XO -- performance was very similar to 330MHz Nokia S60 phones with the Adobe Flash Lite 2.0 player.

Due to limited CPU specs, XO-1 units also resemble thin clients. As such, browser-based games may be ideal for development. Flash would offer excellent rich interactivity on browsers in this case.

TO DO:

  • Fork project page into Gnash 0.8.3 dev (which will ship on build 8.20 of the XO OS) and Adobe Flash 10 dev (Adobe Flash 10 should be coming out soon).

NOTES:

  • Apps targeted at Gnash 0.8.3 (based on Flash 7/8) should be forward compatible with the newest Adobe Flash plugins (9 & 10)
  • Developers that target Gnash would have the widest audience and install base, Gnash being the default pre-installed Flash player on the XO.
  • Developers that target Adobe Flash 9/10 with AS3 will have the advantage of faster app performance courtesy of the Actionscipt Virtual Machine 2.

The XO-1 Game Buttons

The XO-1 game buttons can easily be bound for Flash games because they're simply rebindings of typical keyboard cursor keys and the corner keys of the numeric pad. This makes the XO-1 very suitable as a gaming platform in e-book reader configuration.

From the OLPC Games list: "The O, X, square, and check buttons are mapped to the page up, page down, home, and end keys on the numeric keypad, respectively."

Gnash

Gnash is one of the open source alternatives to Adobe's Flash player and is the Flash player that is installed on the XO by default. See main page on Gnash

To do:

  • Gnash XO development guidelines to be placed here.

Some notes:

  • Build 656 which came out with the 1st G1G1 program ships with Gnash 0.8.1
  • Update.1 Build 711 which is the latest stable OS build comes with Gnash 0.8.2
  • Builds 765+ which are the bases for 8.2 (the next stable OS build) come with Gnash 0.8.3 preinstalled
  • The default installed Gnash has no sound with SWFs (Flash uses MP3s for sound and the default shipped Gnash doesn't come compiled with MP3 libraries because of licensing restrictions)
  • The version of Gnash on Update.1 711 renders some AVM1 Actionscript 1.0/2.0 (Flash 8 & below) content wrong - will evaluate the version of Gnash that ships with 8.20. Testing 8.20 livecd ISO on a virtual machine showed that scripting is more accurate.
  • Gnash does not emulate the AVM2 (Actionscript Virtual Machine 2) found in Flash 9 and above.
  • Currently doing further testing for compatibility of Flash Lite content. Flash Lite content uses AS 2.0 and is patterned after Flash 8 and below.

Open Source Flash Development Tools

For Linux, check out: http://osflash.org/linux

For Windows-based development, the popular Flashdevelop AS Editor + Free Adobe Flex SDK 3 + Sun's JDK 6 can be used to output AS3 AVM2 SWF files.

Optimizing Apps for the XO-1

- to be added: Flash content optimization tips

Official Adobe Flash Browser Plugin

  • Users may want to install the Adobe Flash browser plugin instead of Gnash which is packaged by default.
  • This allows SWFs authored in AS 3.0 to Flash 9/10 content to run.
  • Since AS 3.0/AVM2 offers significantly better performance than AS 1.0 & 2.0 AMV1 content, Flash 9/10 AS 3.0 AVM2 output may be a better target for developers wanting to provide more compelling content.

Direct link to the latest versions:

Adobe Flash on Opera

When we installed Opera 9.52 (desktop version runs w/o a hitch on the XO aside from needing to launch it from the terminal), it ran even better -- Flash performance in Opera is much better than in the XO's default Browser.

Opera therefore, is an ideal environment to do Flash content on for the XO-1. (or perhaps Firefox 3? Still need to test out FF3).

Direct links to the latest stable version of Opera (9.52)

Beause of a conflict with the Rainbow security and Sugarization, Opera 9.52 has to be run from the terminal. Open up the terminal then type 'opera'

What's needed:

  • A new Sugarized Activity icon that does not conflict with the XO's Rainbow security
  • An Activity icon to launch the browser with specific local html as the default content as a method for launching flash apps.

Adobe AIR

  • testing needed

General Installation

Installing by .rpm file

Open your terminal activity on the Activity panel below your Sugar desktop or press Ctrl+0

Type the following commands:

su
wget <url of rpm file to be downloaded>
rpm -vi <rpm file>
exit

Project Members

Relevant links

Adobe Flash player plugin on OLPC XO-1:

Gnash on the OLPC XO-1:

Slashdot Discussion - GDC: The OLPC Project And Games

Gamasutra - SJ Klein asks for serious OLPC gaming content