For a little while now I've been working on a project and it has come to the point where I feel I can actually show it off. I've seen attempts to make something like this before, but that didn't stop me.
This demo shows beatmap rendering onto HTML5 canvas using Canvas API. I tried to recreate the game as close as possible, with all the fancy animations. It runs surprisingly well, but there is still room for optimization. You may notice a lower framerate (~30fps) on some browsers, but that is entirely the browser's fault as some of them fail to update the current song time frequently enough. This should be fixed when I switch to Web Audio API for the music. For the moment, use Chrome for the best experience.
This project is written in Dart and compiled to JavaScript. I'll probably post the source code some time later, as there are still a lot of things to add and improve, some code to refactor.
I've tested this on Chrome, Firefox and Chrome for Android and all of them seemed to work fine.
Ultimately, I want to make a replay player, but there are still things to be done before I can even begin to work with replays.
For now, here are some maps you can take a look at:
Foreground Eclipse - Noble [Insane]
Reol - Asymmetry [P A N's Extra]
Reol - Asymmetry [Normal]
Reol - Asymmetry [Meyrink's Easy]
utsuP - MiKUSABBATH [Tarrasky's Extra]
utsuP - MiKUSABBATH [Tarrasky's Normal]
utsuP - MiKUSABBATH [Distortion]
IOSYS - Third Eye Ya! [Normal] (some "exotic" and broken sliders)
ONE OK ROCK - Clock Strikes [Insane]
ONE OK ROCK - Clock Strikes [Moway's Extra]
iojjj - Akui to Ai no Sukima no Puzzle [Normal]
iojjj - Akui to Ai no Sukima no Puzzle [Diplomatic Immunity]
The skin assets used are from Phase 1.6 by Hazrd.
Any kind feedback is absolutely appreciated.
This demo shows beatmap rendering onto HTML5 canvas using Canvas API. I tried to recreate the game as close as possible, with all the fancy animations. It runs surprisingly well, but there is still room for optimization. You may notice a lower framerate (~30fps) on some browsers, but that is entirely the browser's fault as some of them fail to update the current song time frequently enough. This should be fixed when I switch to Web Audio API for the music. For the moment, use Chrome for the best experience.
This project is written in Dart and compiled to JavaScript. I'll probably post the source code some time later, as there are still a lot of things to add and improve, some code to refactor.
I've tested this on Chrome, Firefox and Chrome for Android and all of them seemed to work fine.
Ultimately, I want to make a replay player, but there are still things to be done before I can even begin to work with replays.
For now, here are some maps you can take a look at:
Foreground Eclipse - Noble [Insane]
Reol - Asymmetry [P A N's Extra]
Reol - Asymmetry [Normal]
Reol - Asymmetry [Meyrink's Easy]
utsuP - MiKUSABBATH [Tarrasky's Extra]
utsuP - MiKUSABBATH [Tarrasky's Normal]
utsuP - MiKUSABBATH [Distortion]
IOSYS - Third Eye Ya! [Normal] (some "exotic" and broken sliders)
ONE OK ROCK - Clock Strikes [Insane]
ONE OK ROCK - Clock Strikes [Moway's Extra]
iojjj - Akui to Ai no Sukima no Puzzle [Normal]
iojjj - Akui to Ai no Sukima no Puzzle [Diplomatic Immunity]
The skin assets used are from Phase 1.6 by Hazrd.
Any kind feedback is absolutely appreciated.