@SluX: I wish I had!

I have a lot of questions about optimization...

Hiya,
Your project sounds almost exactly like an existing mature java 2D games library which is targeted toward begginers and java programs with no game development experience.
http://www.goldenstudios.or.id/You might want to see if this project satisfies your wants.
Well I know it, but I think there are some steps of the creation of a game that could be easier than those of GTGE. It's a my personal opinion! For example the creation of an Animated Sprite in my library is more logical than GTGE (if you think the contrary just tell me!

):
AriesSprite is a class that contains a group of AriesAnimation but each AriesAnimation contains an another group of sub-type of animations, AriesAnim. Why? Well think about an isometric game like Ultima or Syndacate, you know that the main character can turn right, left, up and down (and half-positions: left/up, right/down, etc...), ok? When you create an AriesAnimation you define an animation for all these positions and each single position has an AriesAnim. The creation of the sprite is more articulate, but when you will understand its logic you will have no problems. I show you an example (I'm gonna use some AriesClasses):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| ... AriesAnim walkright = new AriesAnim(AriesTools.loadImage("c:\images\walkright01.png"), AriesTools.loadImage("c:\images\walkright02.png")); walkright.setSpeed(200); walkright.setRepeat(true);
AriesAnim walkleft = new AriesAnim(AriesTools.loadImage("c:\images\walkleft01.png"), AriesTools.loadImage("c:\images\walkleft02.png")); walkright.setSpeed(200); walkright.setRepeat(true);
AriesAnim stand = new AriesAnim(AriesTools.loadImage("c:\images\stand"));
AriesAnimation walking = new AriesAnimation(4); walking.addAnim(AriesDirections.EAST, walkright); walking.addAnim(AriesDirections.WEST, walkleft);
AriesAnimation standing = new AriesAnimation(4); standing.addAnim(stand);
AriesSprite mario = new AriesSprite(); mario.addAnimation("walking", walking); mario.addAnimation("standing", standing); ... game.store.addObject("mario", mario); ...
public void events() { if (keyboard.isPressed(keyboard.KEY_RIGHT)) { game.store.getSprite("mario").setDirection(AriesDirections.EAST); game.store.getSprite("mario").setAnimation("walking").startAnimation(); }
if (keyboard.isPressed(keyboard.KEY_LEFT)) { game.store.getSprite("mario").setDirection(AriesDirections.WEST); game.store.getSprite("mario").setAnimation("walking").startAnimation(); }
if (keyboard.notTouched) { game.store.getSprite("mario").setAnimation("standing").startAnimation(); } }
|
So what do you think? If the final user must worry only for the events and not to draw the graphics or other is better or not?

In Aries library the final user do not have to learn the logic of the creation of game, his own only one worry is his creative mind! ^___^
(I hope to have written right... I'm not an english user...

)