Author Topic: Zedd Physics Library  (Read 25988 times)

0 Members and 1 Guest are viewing this topic.

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #75 on: October 13, 2010, 03:58:24 am »
Precisely and since Zedd works completely in component vectors it makes life very easy :)

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Zedd Physics Library
« Reply #76 on: October 13, 2010, 04:04:41 am »
The problem with that particular method is that the (1/2)v^2 term could lead to some decimal numbers, which Axe isn't particularly good at handling.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #77 on: October 13, 2010, 04:10:20 am »
Yeah, but note that you can generalize even further into simply CV^2 and half your constant. 

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Zedd Physics Library
« Reply #78 on: October 13, 2010, 04:15:32 am »
Ah, that would give you nice whole numbers if you round the constant before you use it. It unfortunately gives you an unsigned upper limit of 256 for your velocity, though.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #79 on: October 13, 2010, 02:02:31 pm »
Well you should probably be dividing your velocity by a constant inside of the square so that it doesn't reach ungodly numbers, so the equation is evolving into something along the lines of V/C^2 where C is now our constant, although it is starting to mean something different XD The greater C, the more slippery our water is.

And More Eye Candy!  Yayy i implemented Masses fully, and now the inelastic collisions are physically accurate!  Basic sliding friction has also been implemented, although it is not at 100% yet.  In this screenshot there are 16 randomly generated shapes of the same density but different sizes, meaning they each have a unique mass.  And then there is a very large block with a large mass so you can see how the equations affect the performance :P

Note that while Mass is represented by a number from 1-255, anything over 32 starts to cause bad errors.  the big block in this screenshot is 16Mass, the rest are from 1-4.


Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Zedd Physics Library
« Reply #80 on: October 13, 2010, 02:07:42 pm »
Zedd was already pretty cool, but this is getting amazing. That looks very realistic for monochrome. A bit of sprite work in 4-lvl could make a great sandbox. How is mass calculated though? Could one attach sprites to mass data stored in a list?
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #81 on: October 13, 2010, 02:14:37 pm »
When the object is generated, the height and width are randomly chosen from 2-4.  The Mass is the product of these numbers divided by 4.  H*W/4 = M.  To give each pixel of the object about a 1/4 mass.

Sprites have not been implemented yet, but each object will have a sprite number from 0-255.  255 will represent a filled rectangle with no sprite attached to it, and all of the other numbers will take an offset from sprite data given to Zedd in the form of a pointer.

And yes, i am already planning to make a simple sandbox program with this :) Where you can create and erase objects, apply forces to them, set global forces, and pause and resume the simulation.  Coupled with Object selection and property editing i think it owuld be a great way to experiment with Zedd :D I might even start it right now and it will evolve automatically as Zedd improves.

ASHBAD_ALVIN

  • Guest
Re: Zedd Physics Library
« Reply #82 on: October 13, 2010, 02:15:56 pm »
making a game with this would be sweet :D

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Zedd Physics Library
« Reply #83 on: October 13, 2010, 02:18:56 pm »
Already working on it ;D

Don't expect it anytime this year though :P
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #84 on: October 13, 2010, 02:25:22 pm »
I hope many games to use Zedd in the future :) Thats why im planning a complete interface for accessing and modification of both objects and the Zedd world.

ASHBAD_ALVIN

  • Guest
Re: Zedd Physics Library
« Reply #85 on: October 13, 2010, 02:27:01 pm »
I'd make something with that -- maybe a sidescrolling open world where you can blow things up :D

Offline matthias1992

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 408
  • Rating: +33/-5
    • View Profile
Re: Zedd Physics Library
« Reply #86 on: October 13, 2010, 02:31:39 pm »
Very cool builderboy! Now I don't intend to sound demanding saying this but I would like to see angular momentum (spin) in this, that, I think, would finish it off...
I am well aware it is difficult, maye not even possible, to implent...It's just something that would finish it all off. First problem is with the sprites/objects themselfs, if there is spin then the sprite must rotate...
MASM xxxxxxxxxx aborted | SADce ====:::::: 40% -Halted until further notice| XAOS =====::::: 50% -Units done| SKYBOX2D engine ========== 100% -Pre-alpha done. Need to  document it and extend |

~Those who dream by day are cognizant of much more than those who dream by night only. -Sir Edgar Allen Poe-

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #87 on: October 13, 2010, 02:35:49 pm »
That would require a feature i have not yet implemented into Zedd, an Open World.  Right now the entire world is stored with x256 precision.  That means that at some point, the numbers loop back to the beginning.  Well 2^16 = 65536 / 256 = 256 pixels wide of a simulation screen.  Unfortunately that doesn't give us much scroll space, but i am planning to implement an *open world* where if an Object goes outside of the 256 pixel region, it reverts to x1 accuracy and rudimentary (read: non accurate) physics.  When it comes back into the world, it is converted back into x256 accuracy. This might be tricky to implement, but the 256 region is big enough where i could even possibly freeze objects in place when they go outside and not have any physics at all.

EDIT: And in no circumstances will i be implementing Rotation unfortunately.  Not only does that make the collision many times more difficult, but the collision physics themselves would take exuberant amounts of time.  The entire reason for Zedd's speed is *Because* there is no rotation.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Zedd Physics Library
« Reply #88 on: October 13, 2010, 03:33:55 pm »
Wow nice Builderboy. Could you make a screenshot with even more different sprite sizes like a 8x8, 8x16, 1x1 and 24x24 one?
Now active at https://discord.gg/cuZcfcF (CodeWalrus server)

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Zedd Physics Library
« Reply #89 on: October 13, 2010, 05:24:22 pm »
Im actually working on a sandbox demo to give everyone 100% control of Zedd and the new features :)