For about a week now, I've been working on a clone of the game JezzBall for HP Prime in Python. The game will feature several modifications compared to the classic version. Currently, it's in a very early pre-alpha stage, and there's still a lot to do (and a lot may still change), but at this point I can say that the ball physics have already been refined.

Collisions are now working both with walls and between balls, taking into account their speed their speed and angle of impact. Area splitting and filling also work.

Collision detection with the splitter hasn’t been implemented yet — for now, balls simply pass through it until it closes off an area.

Although Python on HP Prime is quite fast, handling real-time ball physics with a larger number of objects turned out to be a significant performance challenge. For a moment, I thought creating this port without resorting to low-level programming would be impossible. However, thanks to several key optimizations, I managed to achieve smooth animation with 40 balls on screen, complete with full physics support, running at 28 fps on G1 (and significantly more balls on G2).

Below is an animation showcasing the current state of the implementation. (Note: the animation in this recording may appear choppy compared to how it runs on the actual device.)

I've made some small improvements.
There's now collision detection with the splitter, a brick texture as the background, and an initial implementation of painted area calculation and visualization. Horizontal and vertical cursor sprites have been added, and some general performance optimizations were also implemented.

It's almost ready Smile



I just need to add a score counter and tweak the filled-area indicator a bit, because right now it looks a little clunky.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement