Inspiration

The idea was to make solving the puzzle feel like you're doing some kind of magic. Sliding all those pieces to make a specific combination... It already sounds like sorcery.

Would be awesome to be able to solve puzzle in different ways so each combination would do something unique, as if you casting a specific spell.

Challenges we ran into

Optimization was definitely the hardest challenge here. Drawing a picture for every puzzle-piece with dynamic crop that you can't just cache is not an easy task. And all those visual effects didn't make it easier to render.

Making sure that Flutter redraws only what have changed and calls the build() function only where it necessary we achieved decent performance, though we still think it could run smoother.

Other reasons for bad performance we found:

  • Using canvas.saveLayer() too often
  • Using pictures with very high resolution
  • Using Opacity widget too often

Accomplishments that we're proud of

The biggest accomplishment is transition animation between levels. A lot of effort was put into it.

What we learned

Animations in flutter. Before this project we've never used animations here. The most complicated thing we've used is animation widgets like AnimatedOpacity or AnimatedContainer. And now we're not even afraid of AnimationController anymore.

What's next for Slide Puzzle Quest

Sounds! Without them the game feels a little unfinished.

Would be great to put this slide puzzle mechanic in a quest game. Well like we did here but in a Real quest game.

Built With

  • fluter
Share this project:

Updates

Submission history