There are no variable velocity components, so the constants are built into the physics engine. It saves on the limited safe RAM available. I don't really even need two full bytes for X and Y. I might use a couple of extra bits to hold buffer display info and simply mask the extra bits off.
Qwerty.55 wrote:
There are no variable velocity components, so the constants are built into the physics engine. It saves on the limited safe RAM available. I don't really even need two full bytes for X and Y. I might use a couple of extra bits to hold buffer display info and simply mask the extra bits off.
You don't need to remember the velocity of each particle? Shock How can that be? I also love the mouse cursor that you're rocking there. Cool
Because each particle acts as a basic cellular automaton, so it falls at constant velocity until the pixel below it is darkened.
Qwerty.55 wrote:
Because each particle acts as a basic cellular automaton, so it falls at constant velocity until the pixel below it is darkened.
Ah, so they don't really exert force on each other, per se? So if I shoot a particle sideways, it can only fall?
Essentially. It's a very basic physics engine, but that's all a 15 MHZ processor can take when it's handling many hundreds of objects.
Qwerty.55 wrote:
Essentially. It's a very basic physics engine, but that's all a 15 MHZ processor can take when it's handling many hundreds of objects.
Indeed, and it's quite impressive for what it is. It's to your credit that I didn't work out the lack of velocity until you explained it.
That's cool. Can't really wait until it comes out so I can play with it. Very Happy And there are going to be different particles right? Razz
Builderboy at Omnimaga made a demo very much like this, where everything moves down one pixel (if nothing is below it). Else, it will check left and right to see if it's covered one on side. If it is, go the other way, else move randomly. I believe the same physics apply with this program Smile Though I would expect 3 bytes, type, x, and y.

Edit: Gah! I thought I would be the first on this page, but Cemetech sent me to the last unread, which happened to be on the page before this one. And I was too lazy to check if it had another page or not :/ Imagine this post is the top of this page Razz
Yes, the demo pictured "above" is heavily based on Builderboy's physics demo, although I'm essentially rebuilding it from the ground up to accommodate the specific needs of Powder. His program only allows for one type of of fluid on one buffer, while mine has to account for fluids, solids, multiple buffers, interactions between different materials,...

So basically, it's like his engine on steroids Razz
Qwerty.55 wrote:
Yes, the demo pictured "above" is heavily based on Builderboy's physics demo, although I'm essentially rebuilding it from the ground up to accommodate the specific needs of Powder. His program only allows for one type of of fluid on one buffer, while mine has to account for fluids, solids, multiple buffers, interactions between different materials,...

So basically, it's like his engine on steroids Razz
Very impressive. Smile And just to review, this is in pure ASM, not Axe, right?
Qwerty.55 wrote:
The project is currently Hybrid Axe/ASM, although that screenie is pure Axe. But I'm not using Doors CS7 libraries because I want it to be compatible with all shells and the current project is actually Greyscale.

It's in Axe.
souvik1997 wrote:
Qwerty.55 wrote:
The project is currently Hybrid Axe/ASM, although that screenie is pure Axe. But I'm not using Doors CS7 libraries because I want it to be compatible with all shells and the current project is actually Greyscale.

It's in Axe.
Ah. a. I'm sure it could be even faster and more powerful in pure ASM, but it's pretty nice as-is. Smile
I'll be going through an optimizing the Assembly later, but it's nice to be able to get something working without having the pain of greyscale in Assembly Wink
  
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 2 of 2
» 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