Friday, September 3rd 2010, 10:31pm UTC+1

You are not logged in.

  • Login
  • Register

Posts: 647

Thanks: 29

Activitypoints: 3860

1

Saturday, February 21st 2009, 6:01pm

Chipmunk S60 - Project Description

Port Open Source Physics Engine to Symbian OS / OpenC




Physics-based games are easy to understand, yet hard to master and very appealing to the general public. Recent examples are “World of Goo” or “Crayon Physics”.
The aim of this project was to port an open source 2D physics engine to Symbian OS by using the OpenC / OpenC++ / RGA standard libraries available on this platform. An example for a game engine would be Chipmunk ( http://wiki.slembcke.net/main/published/Chipmunk ). The ultimate goal would be to create a physics-based game on the phone, where the user can interact with the environment by drawing new objects.

Platform: Symbian OS S60 5th Edition, OpenC / OpenC++
Team Size: 1
Programmer: David '---___db___---' Berger
Time: 40 hours
Project Source: http://forum.fantasyhaze.com/index.php?p…DBData&dataID=5
Status: finished (for this project)

Chipmunk Engine on Symbian 5th edition phone 5800



Description of ChipmunkS60:

The Chipmunk port used the Symbian S60 5th edition application "MobilePaint" as basic application for the game engine. After porting the C code from the original Chipmunk PC version it was used to integrate it into the MobilePaint application. Finally the complemental part was adding a small engine to use the draw mechanism for creating objects.

Finally the last status of the project is that you can draw rectangles and circles which get a own physical state. Furthermore you can draw lines which can be used as static collision objects. By changing the drawing color you can increase the gravity, by using the stroke tool you can decrease the gravity. A button for cleaning the screen is also available. Everything is done by using the touch interface.

Restrictions of the Physic Engine:

Note: Due to the fact that most (well all by default so far) S60 phones don't have hardware floating point support (Hardware - FPU), so any floating point maths is emulated in software and thus very slow - not good for a physics engine in fact but it runs anyway.


Gameplay (steering):

When starting the application you will have a white space where you can draw all things.
On the side you have a tool panel which can be clicked and moved whereever you want. You choose your tool and start painting. During painting the physics will not be enabled. After you have finished your stroke will be moved by physics.

You can choose following tools:
  • Clear Screen
  • Freehand
    -not implemented- this is not working atm. It just creates a dot at the end of the line. It should let you paint full closed polygons.
  • Pencil
    With the pencil tool you can create lines. This lines are static objects and will not move, but all objects will collide with this lines.
  • Circle
    You can create circles with this tool. After painting it gets a physic state.
  • Rectangle
    You can create rectangles with this tool. After painting a rectangel it will get a physic state.
  • Color
    By changing the color you can increase the gravity and you change the overall color of all objects.
  • Stroke
    By changing the stroke you can decrease the gravity until you create a negative gravity.
  • Return
    -not implemented- this is not working atm. It should remove the last item you painted.


Ports of the chipmunk engine on other Systems:

There are already some chipmunk engine ports available for other mobile devices like the iPhone/iPod touch and PSP (Playstation Portable). This is possible because the the ARM processor used by the iPhone/iPod touch has an extension called VFP for doing fast floating point operations. The PSP system include a VFPU floating point vector unit with calculation capability of up to 2.6 Gigaflops. So both devices have a better hardware accelaration which can be used to speed up the physic engine.

The ultimative engine is still the pc version wich have nearly endless resources.


Chipmunk Engine on iPhone



Chipmunk Engine on PSP



Chipmunk Engine on PC



Chipmunk Engine on PC - Fluid simulations



Many Engines have been created up to now and they get stronger as also the resources get bigger and better. Best practise example is the CryEngine 2 (Used for games like Crysis/Crysis Warhead) which has already a very nice 3D physic engine.

Cryengine 2 - Highlevel Game Engine






Used Programs and Engines:

Chipmunk Engine for PC:

Website: Chipmunk Developerpage
Download: Chipmunk-4.1.0.rar

Chipmunk Engine for PSP:

Website: Chipmunk PSP Port Developerpage
Download: chipmunk_physics_demo_psp-mk2k.zip

Mobile Paint Example for Symbian S60 5th:

Website: Forum Nokia
Download: S60_5th_Edition_Mobile_Paint_Example_v1_0_en.zip


Related Linkss:
- Chipmunk S60 on Symbian Resources
- Download on Symbian Resources

1 registered user and 17 guests thanked already.

Users that thanked:

Liam (22.02.2009)

Liam

Destroy's everything Modder

Posts: 114

Activitypoints: 590

2

Sunday, February 22nd 2009, 1:19am

yeeeeeeeeeees finally


(ich hab gehofft das sowas ähnlich wie crayon physiscs rauskommt :D )

Also jetzt doch 5th edition :thumbsup:

Posts: 647

Thanks: 29

Activitypoints: 3860

3

Sunday, February 22nd 2009, 9:50am

Yes finally ^^

I really would have made it like crayon physics, but the time was simply too short and I'm not shure i haven't had to improve the physics engine a little bit (reduce the floatingpoint operations)

Maybe some day someone wants to go on with the porject or I will spend my own time on it to create a small game ;)

Liam

Destroy's everything Modder

Posts: 114

Activitypoints: 590

4

Sunday, February 22nd 2009, 9:57am

hopefully,its an awesome concept. :love:


So that was the Symbian pig? ^^

Posts: 647

Thanks: 29

Activitypoints: 3860

5

Sunday, February 22nd 2009, 10:07am

BTW. Thanks for the comments :)

Well it was part of the Symbian pig ;) but there is another part which was more trickier, more infos about that one will follow soon.

Posts: 647

Thanks: 29

Activitypoints: 3860

6

Tuesday, March 3rd 2009, 3:18pm

Today I updated the Application with a small fix, that the automatic screenrotation is not enabled anymore. Furthermore it is not possible to activate the landscape mode. So you have to use the portrait mode.

anom

Unregistered

7

Tuesday, March 10th 2009, 4:43pm

hmm... I couldn't download the code. All I got was a .rar with 0 bytes.

Posts: 647

Thanks: 29

Activitypoints: 3860

8

Wednesday, March 11th 2009, 7:37am

Sorry, there has been a small Problem in the Database yesterday, it sould be fixed now :) If it still contains nothing please let me know! Furthermore you can now download the file also on Symbian Resources. The link is posted above in "Related Links".

anom

Unregistered

9

Thursday, March 12th 2009, 1:39pm

Great, It works now. Thanks a lot!!

miles

Unregistered

10

Saturday, July 25th 2009, 4:41pm

i8910HD

Pretty cool for a phone...

Interestingly, the Samsung i8910 has got FP capabilities thanks to its NEON coprocessor - any way of utilising it? ;)

Rate this thread