{"id":182,"date":"2007-02-04T15:00:56","date_gmt":"2007-02-04T19:00:56","guid":{"rendered":"http:\/\/www.rakkar.org\/blog\/?p=182"},"modified":"2007-02-04T15:00:56","modified_gmt":"2007-02-04T19:00:56","slug":"changing-to-physx","status":"publish","type":"post","link":"https:\/\/rakkar.org\/blog\/index.php\/2007\/02\/04\/changing-to-physx\/","title":{"rendered":"Changing to PhysX"},"content":{"rendered":"<p>\t\t\t\tIn the end, after another few hours, I got Newton sort of working.  Sometimes thrust would stop working for no reason, until I died and respawned, usually.  Sometimes it would stay not working.  And I wanted to fix the location of the fighter&#8217;s shield to the fighter&#8217;s body, and that never worked.  Also, doing the same simulation on the client and the server was less accurate than with my own code.<\/p>\n<p>It took me 2 days to get Newton sort-of-working.   It took me 15 minutes to rewrite my old code back in, as all I wanted was a rotating ship in space with thrust.<\/p>\n<p>My biggest problem with Newton is that if something doesn&#8217;t work, you&#8217;re basically fucked.  The forum is unhelpful, the manual is incomplete, the tutorials don&#8217;t help much, and there&#8217;s no feedback from Newton as to why.   So even if I were to attempt to fix the problem of &#8220;Why does my thrust suddenly stop working, but rotation still works?&#8221;  I have absolutely no idea where to even look, with no source code to rely upon.  These kind of things take hours, where just writing my own system velocity = thrust \/ mass * time takes about 10 seconds and consistently works.<\/p>\n<p>It also lacks in easy-to-use features.  For example, people have asked for efficient trigger bounds in the forum over a year ago, and it&#8217;s not there.  I tried using my own system with AABB collision boxes and Newton was so slow I gave up on that and wrote my own system, again in not much time, which worked perfectly and was O(1).  I have no way to update a single entity given a past time and state, which I need for networking.  I don&#8217;t have access to the physics octtree which I also needed for network culling.  There&#8217;s no easy way to do explosions or springs, and it goes on and on.  I could spend another day guessing and probably get everything working, until I run into the next problem, and then lose another day, and so on.<\/p>\n<p>So PhysX is free for PC games now and I got a developer account with them.  I&#8217;m going to read over what they have and see if I can make the switch in a day or less.  The nice thing about them is<br \/>\n1. A lot more people use that than use Newton, so I can get better support<br \/>\n2. There is a plugin for 3D modelling programs<br \/>\n3. It&#8217;s from a professional company so I have a feeling the quality and speed will be much better.\t\t<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the end, after another few hours, I got Newton sort of working. Sometimes thrust would stop working for no reason, until I died and respawned, usually. Sometimes it would stay not working. And I wanted to fix the location of the fighter&#8217;s shield to the fighter&#8217;s body, and that never worked. Also, doing the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[2],"tags":[],"_links":{"self":[{"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/posts\/182"}],"collection":[{"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=182"}],"version-history":[{"count":0,"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/posts\/182\/revisions"}],"wp:attachment":[{"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=182"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=182"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rakkar.org\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=182"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}