<a rel="nofollow"><img src="http://www.logomaker.com/logo-images/ef441a3196b57d73.gif"/></a>
DartRocket is a HTML5 Game Engine, which is written in Dart and uses the StageXL rendering engine.
The main goal of this framework is to provide an easy to use solution for HTML5 game making with the Dart language.
##How to start?
Please check out the wiki.
For fast start you can use the basic template.
You can find additional examples in the documentation and in the examples directory in dartrocket's github repo.
DartRocket's Documentation on dartdocs.org.
If you have any question or problem. Just make a topic and ask.
The Framework has a blog, which will provide information about how the development is going.
These example's build will be updated, when there is a new version of DartRocket.
SpaceInvader shows a basic space invader game.
StateMachine shows how the statemanager work.
MovementSystem shows how the sprite can move.
You can move with w,a,s,d and you can rotate with q,e and you can accelerate with j,k.
World-Camera shows how the camera works.
You can move the ship with w,a,s,d, you can unfollow the ship with Space and you can move camera with cursors.
Gravity shows the gravity system in the game. You can move the rectangle with w,a,s,d.
This file contains highlights of what changes on each version of the DartRocket
- Fix return bug in Shape constructor
- Moving centerPivot() into parent class
- More docs for Movement System
- Remove multiSprite
- Added gravity example in DartRocket's repo
- Added Mask and Shape classes
- Added StateEvent(constant)
- Sound can be stopped
- New class for gravity
- Added centerPivot() for button
- GameObjectFactory can create basic shapes
- Major library refactor(library structure + unit tests)
- Upgrade to StageXL 0.10.3
- Improving DirectionSystem
- Unified code structure
- new DirectionSystem class
- Added relative diagonal directions into constants/direction.dart
- new MovementSystem class
- new MovementControll mixin, which define how to use the MovementSystem class
- using MovementControll in Sprite and Camera class
- new physics directory, which contains the moving parts
- Exported Shape class, which means you can use basic canvas operations
- Using vector based directions for controlling the sprite
- Acceleration added to the Sprite class
- Moving system example
- Getting started guide in the wiki
- onKeyDown and Up handler for keyboard
- CollideWorldBounds added to sprite, so you can't go outside of the bounds
- KillOutOfBounds added which can kill the sprite if it's go outside of the bounds
- min and max scale value for fullscreen mode
- Button has 3 isDown method to handle click or touch events
- Project template in repo
- Fix: using world instead of stage everywhere
- Camera can follow a sprite and you can unfollow it
- Camera example added
- Breaking: Removed name paramter from State constructor
- Added nextState parameter to killState and endState methods
- Removed Stream extend from State and made listen into a private method
- Updated the documentation
- Physics class added with collison method
- Breaking change: load,create,update methods for a state
- GameObjectFactory can make every game object except Background.color
- Added autoHiDpi, isMobile, devicePixelRatio getter for game object
- Unit test added for StateManager
- New container classes: World and Camera for a new World-Camera system
- Using game.world instead of game.stage everywhere
- GameObjectFactory has tween method for making tweens
- Exported Tweem class so you can use it
- New classes: Keyboard, Touch for input event handling
- New movment system for the Sprite class
- New example to show the new movement system
- EventListeners on stage automatically destroyed after state change
- Button class is simplified, easier to set coordinates
- Fix typo :KillState
- TextureAtlas contructor for Button and Sprite
- Fix typo: isMovable
- Updated README
- Named contructor for Sprite,Button,Background: bitmapdata,image,textureatlas
- Background has repeat and scale mode
- Background works with all kind of vx and vy value
- GameObjectFactory added
- Background.color constructor for static color backgrounds
- New Button class
- Fullscreen mode, which keeps the aspect ratio(game.dart)
- Space Invader has fullscreen,buttons and mobile friendlier
- New Sound class
- Breaking: Background is now can be animated
- Breaking: Text class reworked
- I simplified the usage of Text and Background
- A lot of new stuff in space invader example
- Breaking: There is onyl one Sprite class and removed other sprite classes
- New Group class for storing Sprites
- SpaceInvader example is refactored due to he canges
- TransitionFunction can be acces through game object
- Added InteractiveBitmap helper class
- Documentation updated
- Fixed documentation
- Breaking: terminateState renamed to killState
- Added Documetation site
- Added documentation
- Added explanations where needed
- Breaking change: rename pauseStream to endState
- Breaking change: rename closeStream to terminateState
- Deleted Prints
- Ufo in space invader example now move sideways
- Added transition_function from stagexl
- Added Space Invader example
- Breaking change in State: only has load() and create()
- ResourceManagment.load() happens after load() method
- Added better state example
- Added new GameObjetcs(Sprite,AnimatedSprite)
Use this package as a library
1. Depend on it
Add this to your package's pubspec.yaml file:
2. Install it
You can install packages from the command line:
$ pub get
Alternatively, your editor might support
Check the docs for your editor to learn more.
3. Import it
Now in your Dart code, you can use:
The package version is not analyzed, because it does not support Dart 2.
Until this is resolved, the package will receive a health and maintenance score of 0.
Analysis issues and suggestions
Support Dart 2 in
Maintenance issues and suggestions
dartdoc successfully runs on your package's source files. (-10 points)
Dependencies were not resolved.