introducing new advanced physics equations to the public, help me spread?

Started by
29 comments, last by jpetrie 14 years, 2 months ago
Quote:Original post by GunuseTheFurdragon
I get too many "thats what she said"...everywhere all the time...still dont know why they come out of me so much. D:
Anywho im actually disappointed that u couldnt understand this, if u could, please tell me what to improve or modify to make it more clear?

My suggestion would be to improve spelling, grammar, and diction. Nobody is going to take you seriously if you talk like a twelve year old. Use paragraphs to break things up, and for God's sake use something other than ASCII for your equations.
Mike Popoloski | Journal | SlimDX
Advertisement
mmmmmyeah....forgot to proofread with another person. I finished this after being up for 30 hours and i was too happy on finishing it and forgot the proofread...
Your 100% right and im actually starting to proofread it on my end right now, I will re-paste once finished.
Hey chief, you might want to start by SPELL CHECKING your text file. After you've done that, go punch the equations into a word processor or LaTeX. That way they're equations and not an unintelligible string of characters.

I mean honestly, you want to be taken seriously while typing this shit?
Quote:for those of u new to physics u can find displacement due to velocity with d=vt as a simple approach, or if u want to include force that is already present in ur engine do the following steps in ur code

Come back when you're done playing games and have written this up like an adult.
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.
Your text is not understandable because it's not well written, not because we are not smart enough. Start by describing very carefully what problem it is that you are solving. Then explain how to go about solving it. If you think there is value in doing the whole thing in a single formula that is hard to understand instead of doing it in several understandable steps, please explain why: I am going to have a hard time agreeing with you.

Once the text looks like something coherent, I'll be happy to go through it.
Oi vey. I wont go into detail but i dont have access to anything more than notepad. This is pretty depressing now, a good year of work to help others and this happens when i first show it. I'll probably wipe this if it gets any worse. I'm proofreading and doing what i can, im trying to help and im kinda tool-less right now so please everyone be a bit more patient.
----edit----
Thanks alvaro that was actually positive, im doing just that and if i wipe this before u get to see it i may try to send it to you since you seem to be interested.
Quote:Original post by GunuseTheFurdragon
Yeah so ive been working with a calculus doctrine teacher and the physics teacher at school for months on this. My goal was to make a single physics equation that had momentum and velocity that only needed initial velocity and mass. This would easily be added onto a force based engine and could be used as a single equation physics simulator.

Well we did it and ive been verifying it for several months now. Its fraking huge so its a copy paste equation for sure. I have written a txt on the math approach, purpose, and implimentation for it and by accident it impliments kinetic energy as well. Its around 130 lines long so its very thorough even for people new to physics and game development.

I really want to spread this in the game dev community since it would make things easier and better for many people.

Just as an example of how powerful this one equation is, u can simulate a dynamic psuedo wind tunnel with ONE equation.

Im open to suggestions on how to spread this txt file, i havent hosted it anywhere yet cus i figured u guys would know best for that. =]
----edit----
1st suggestion was to paste here...so here goes nuthin.
(not using [ source] due to my enters not carrying over in it, testing without now)
vf2=-(-m2*(m1*vi1+m2*vi2)/m1+sqrt(-m2*(m1*vi1+m2*vi2)^2/m1+vi2^2*m2^3/m1+vi1^2*m2^2+m2^2*vi2^2+m1*m2*vi1^2))/(m2^2/m1+m2)


vf1=((-m2*(m1*vi1+m2*vi2)/m1+sqrt(-m2*(m1*vi1+m2*vi2)^2/m1+vi2^2*m2^3/m1+vi1^2*m2^2+m2^2*vi2^2+m1*m2*vi1^2))/(m2/m1+1)+m1*vi1+m2*vi2)/m1


variables: m1 = mass of object 1
m2 = mass of object 2
vi1 = initial velocity of object 1
vi2 = initial velocity of object 2
vf1 = final velocity of object 1
vf2 = final velocity of object 2


(If u just want to know how to use it/what its for skip approach if u dont want to know the math behind these fraking huge monsters of an equation.)
approach:

momentum - p=mv
kinetic energy - K=1/2mv^2

The two equations for vf impliment both momentum and kinetic energy, making them even more fine tuned for simulating physics.

Since mv universaly can be seen as momentum, the kinetic energy equation has momentum in it as a factor.

For an elastic object collision the kinetic energy is maintained. Ki1+Ki2=Kf1+Kf2

My physics simulator will only support elastic collisions due to the fact that enelastic objects have a completely seperate area of physics that i can not yet come to even learn. ex: a ball of clay hitting the table and spreading out is an enelastic collision.

Thus using the 1/2m1*vi1^2+1/2m2*vi2^2=1/2m1*vf1^2+1/2m2*vf2^2 kinetic energy equation for elastic collisions one can use the m1*vi1+m2*vi2=m1*vf1+m2*vf2 momentum equation since its near identical in context.

Solving for vf1 and vf2 in the momentum equation produces vf1=(m1*vi1+m2*vi2-m2*vf2)/m1 and
vf2=(m1*vi1+m2*vi2-m1*vf1)/m2

Upon seperately plugging each equation into the kinetic energy equation, u have two modified kinetic energy equations with only one unknown variable left. Which are either vf1 or vf2.

Do not even attempt to then simplify those two equations solving for vf1 and vf2. I did with a calculus teacher and after 3 weeks our final equations were wrong. I wound up getting microsoft math and it did it for me, it even had the option to copy paste the visual equation as line format. It is a REALLY powerful program with extraordinarly high level AI that can do absolutely anything math related.

As to why the two equations came out differently, it is due to a very minor displacement of where the unknown variable lies within the process of simplifying. I have absolutely no idea what tho, but it happened to us on paper as well...even though it didnt work.

On a second to last note: Do not even try to use these on a graphing calculator. They will work just fine, but plugging this equation in with values is a nightmare. It filled 2/3 of my screen and i had a typo i couldnt find. Frustrating as heck.

On a last note: Do not question the accuracy and validity of the momentum and kinetic energy implimentations. I spent 7 hours over an AP calculus text book and reviewed the true form and meaning of both equations. My conclusion came out as a better understanding of momentum and kinetic energy, and makes these implimentations truely concrete to my knowledge. And no i will note type up an explanation of this portion. My mind is numb just thinking about it any more. It would take up to 500 lines of text to explain it and i am not up for that.


purpose:

To formulate an equation that impliments momentum for change in velocity upon object collision that uses variable data that ANY engine with physics on ANY scale would have or easily get. Even though two equations were the result of our work, they both have the same purpose. Kinetic energy wasnt even an intention actually, it just came to be that that was the only way to do it and it came with an upside. I am currently working with a friend in Flash as3 and/or Flex to test these equations in a live user influenced environment, as an example of their power and benefit in use.


implimentation:

The best approach to using these equations would be to have any objects come with their mass already stored in them or upon creation. Have any object/instance/class/whatever thats using one or both of these equations initialise with a velocity variable. In every new tick of the app/game that velocity variable will be the initial velocity due to the fact that it was the final velocity of the previous tick and the engine has moved forward in time. At the end of each tick or somewhere in the middle, have a collision detection setup of ur own design and in reaction to a collision use the vf1 equation with object 1 being self. In this case u only need the vf1 equation due to the fact that both objects will detect the collision and find their own final velocity. Do NOT forget to store this vf1 output in the previously mentioned variable velocity. If u may now find the vf2 equation to be pointless ur dead wrong. I formulated it as well in order to allow nifty AI tricks. If an object knows its own change in velocity, as well as the change in velocity of what hit it, it can react accordingly. ex: imagine having an object chase after whatever hit it if its "running away" else if its "taking a stand" examine the object and determine if its safe or not, then u have the object react however u want to the situation. This is better due to the fact that u can instantly determine if the other object will be close or near in the same tick. Rather than using a timer based AI that checks after an x amount of time. The timer approach wouldnt be as fluid as a velocity approach. Also, this is NOT A VECTOR EQUATION. It takes only ints, doubles, vars, whatever...and outputs only that of such. Its a basic math equation so u have to have an Xvel and Yvel, meaning run the equation twice, once for each. For those of u who want the vector velocity(magnitude) its found using sqrt(Xvel^2+Yvel^2) and the direction in angle format on a 0-180-(-180) scale (dont use 0-360 because raytracing AI will not work 90% of the time on a 0-360 scale when using delta on the angles, the 0-180-(-180) works fine -90 is 270 -10 is 350 etc.) is found using tan(Xvel/Yvel) works for radians too...and a 0-pi-(-pi) scale is better fyi. Another handy use of knowing this velocity is the fact that u know ur tick time. Since v=d/t u can find out how far the object will move before it does so using d=vt. Remember to use a pixel to meter ratio factor for any and all physics related distance/displacement equations, as well as a meter to pixel ratio factor to know the XY distance/displacement. Same math applies here for vector data. Possibly the coolest application of vf2 would be to simulate psuedo air turbulance. ex: the floor tests for Y distance between self and all objects. Any objects that are under...ooh say 150 delta it applies an upward velocity to the object, with the mass on the floor side to be the object's delta with floor in Y divided by oooh say 3? This would result in slower falling objects to slow down faster and higher up than quickly falling objects that would dive deep then bounce up and down till it settles like a fruit in water. This would be a basic vertical air chamber simulation, but just imagine magnets pushing apart or having a game made out of it...id like that. All without any static sinusoidal tricks and natural physics reactions making it life like and realistic. The possibilities are endless. I could go on and on, but just give me any ideas u come up with and would like to share. gunuse.the.furdragon@gmail.com

Almost forgot..for those of u new to physics u can find displacement due to velocity with d=vt as a simple approach, or if u want to include force that is already present in ur engine do the following steps in ur code:
1) find vf1 or vf2. U can use either one in the following steps.
2) d=vf*t+0.5*a*t^2 I know its vi in physics but to impliment momentum and forces, the velocity resultant of momentum is ur vi for forces. Its like a layered tier system.
3) d is the displacement in that one tick for x or y, whichever u did.
4) u find time t thru ur tick, using a sound way of delta and system time in ms or less.
5) a is found thru the equation F=ma. ur acceleration a is Force/mass F/m
6) The same vector math still applies of course.

If i have missed anything or if i need to add something email me at gunuse.the.furdragon@gmail.com

PS: u may also email me requesting images of the two equations produced by microsoft math

haha wow it fits...im impressed XP


Ok.


Wait, wipe what? :D
Quote:Original post by GunuseTheFurdragon
Oi vey. I wont go into detail but i dont have access to anything more than notepad. This is pretty depressing now, a good year of work to help others and this happens when i first show it. I'll probably wipe this if it gets any worse. I'm proofreading and doing what i can, im trying to help and im kinda tool-less right now so please everyone be a bit more patient.
----edit----
Thanks alvaro that was actually positive, im doing just that and if i wipe this before u get to see it i may try to send it to you since you seem to be interested.


Your posts themselves aren't even well written. Take the time to capitalize your i's, use apostrophes for contractions, and type out "you" instead of "u".
Mike Popoloski | Journal | SlimDX
Welcome to the world of technical communication. If you want to be taken seriously, you have to be concise, well spoken, and professional. You're currently 0 for 3.
SlimDX | Ventspace Blog | Twitter | Diverse teams make better games. I am currently hiring capable C++ engine developers in Baltimore, MD.
I know I know. I have some bad habits when typing I agree. I fully agree u guys that what is currently showing is crap. Im ill, Im tired, Im multi-tasking, and I only have notepad. I am correcting everything u are pointing out.
----edit----
FFS you not u up there...god dangit.
Oh shit, you don't even try to use "you" instead of "u".
Notepad? Who cares? I always write the stuff here directly, and I use paint to do the drawings.
If you use firefox x.x version (Don't know which), you will get automatic spell check.
But I simply don't feel like going through your first post because of the style (and probably because I smell the "ultimate formula" stuff)

This topic is closed to new replies.

Advertisement