<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/9313" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2013-08-23T09:29:18+00:00</updated>

	<author><name><![CDATA[Real-Time Physics Simulation Forum]]></name></author>
	<id>https://pybullet.org/Bullet/phpBB3/app.php/feed/topic/9313</id>

		<entry>
		<author><name><![CDATA[Gabor Puhr]]></name></author>
		<updated>2013-08-23T09:29:18+00:00</updated>

		<published>2013-08-23T09:29:18+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31600#p31600</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31600#p31600"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31600#p31600"><![CDATA[
Hi,<br><br>I tried and it seems it works well now.<br><br>Thanks<br>Gabor<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=10212">Gabor Puhr</a> — Fri Aug 23, 2013 9:29 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Erwin Coumans]]></name></author>
		<updated>2013-08-21T23:08:54+00:00</updated>

		<published>2013-08-21T23:08:54+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31594#p31594</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31594#p31594"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31594#p31594"><![CDATA[
It should be fixed by now, I introduced this bug a while ago.<br><br>Can you try latest SVN trunk?<br><a href="http://code.google.com/p/bullet/source/detail?r=2645" class="postlink">http://code.google.com/p/bullet/source/detail?r=2645</a><br><br>Thanks for the report!<br>Erwin<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=2">Erwin Coumans</a> — Wed Aug 21, 2013 11:08 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Gabor Puhr]]></name></author>
		<updated>2013-08-21T15:27:00+00:00</updated>

		<published>2013-08-21T15:27:00+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31585#p31585</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31585#p31585"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31585#p31585"><![CDATA[
Hi,<br><br>Something like this?:<br><br>btRigidBody* rbs[6];<br>for(int i=0;i&lt;6;++i) <br>{<br>btCollisionShape* shape = new btBoxShape(btVector3(btScalar(0.1),btScalar(0.1),btScalar(0.1)));<br>btTransform transform;<br>transform.setIdentity();<br>transform.setOrigin(btVector3(-1-i*0.2,3,0));<br>rbs<em class="text-italics"> = localCreateRigidBody(i ? 1 : 0,transform,shape);<br>}<br><br>for(int i=0;i&lt;5;++i) <br>{<br>btTransform localA,localB;<br>localA.setIdentity(); localB.setIdentity();<br>localA.setOrigin(btVector3(btScalar(-0.1), btScalar(0), btScalar(0.)));<br>localB.setOrigin(btVector3(btScalar(0.1), btScalar(0), btScalar(0.)));<br>btHingeConstraint* con = new btHingeConstraint(*rbs<em class="text-italics">,*rbs[i+1], localA, localB);<br><br>const float d = 1.2;<br>if(i==0) con-&gt;enableAngularMotor(true,4.8f /d,100000000);<br>if(i==1) con-&gt;enableAngularMotor(true,0.1f /d,100000000);<br>if(i==2) con-&gt;enableAngularMotor(true,3.0f /d,100000000);<br>if(i==3) con-&gt;enableAngularMotor(true,1.9f /d,100000000);<br>if(i==4) con-&gt;enableAngularMotor(true,0.05f/d,100000000);<br><br>m_dynamicsWorld-&gt;addConstraint(con, true);<br>}<br><br>With this I couldn't see any differences between the two versions.<br><br>Is this the case that you described?<br><br>Best Regards<br>Gabor</em></em><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=10212">Gabor Puhr</a> — Wed Aug 21, 2013 3:27 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Basroil]]></name></author>
		<updated>2013-08-18T07:24:30+00:00</updated>

		<published>2013-08-18T07:24:30+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31567#p31567</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31567#p31567"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31567#p31567"><![CDATA[
<blockquote class="uncited"><div>Hi,<br>Would you be so kind to describe me a simple case when it fails so I can test that?</div></blockquote>Make six bodies and connect them by six hinge joints. Enable motors on those hinges but make the motor weaker than what it needs to be to keep the hinge up (i.e. if it needs 2 units to stay still, put only 1.5, then 1.0, etc until it falls). The system just fails to include gravity into calculations (just like the current system messes with joint strength and can cause joints to fall out of place)<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=9711">Basroil</a> — Sun Aug 18, 2013 7:24 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Gabor Puhr]]></name></author>
		<updated>2013-08-09T09:19:20+00:00</updated>

		<published>2013-08-09T09:19:20+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31521#p31521</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31521#p31521"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31521#p31521"><![CDATA[
Hi,<br><br>Though you are right that I made several (successful) changes in the solver to make it more stable, I tested this particular change also with the original solver.<br>I couldn't see any problem with the factory Ragdoll demo regarding the gravity. <br>In the other hand when I changed the picking constraint to simple force pull the new version became much better, as with the old you can tear down the hand of the demo ragdoll independently how much iteration you set for the solver.<br><br>With my extended solver I can handle a ragdoll with 84 joints without problem and this change solve the same problem there that arise when I pull it with force.<br>Also my ragdoll became calm much faster when lying on to floor.<br><br>Would you be so kind to describe me a simple case when it fails so I can test that?<br><br>Thanks<br>Gabor<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=10212">Gabor Puhr</a> — Fri Aug 09, 2013 9:19 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Basroil]]></name></author>
		<updated>2013-08-08T04:13:56+00:00</updated>

		<published>2013-08-08T04:13:56+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31514#p31514</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31514#p31514"/>
		<title type="html"><![CDATA[Re: Why use m_linearVelocity in solveGroupCacheFriendlySetup]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31514#p31514"><![CDATA[
Well, for one, gravity no longer has the proper effect on joint chains  <img class="smilies" src="https://pybullet.org/Bullet/phpBB3/images/smilies/icon_confused.gif" width="15" height="15" alt=":?" title="Confused"> <br><br>I can't seem to get it to work properly with anything but the simplest of setups, perhaps you've made changes to the joint solvers?<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=9711">Basroil</a> — Thu Aug 08, 2013 4:13 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[Gabor Puhr]]></name></author>
		<updated>2013-07-31T10:58:03+00:00</updated>

		<published>2013-07-31T10:58:03+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31466#p31466</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31466#p31466"/>
		<title type="html"><![CDATA[Why use m_linearVelocity in solveGroupCacheFriendlySetup?]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=31466#p31466"><![CDATA[
Hi,<br><br>Based on Erin Catto: Iterative Dynamics with Temporal Coherence, in btSequentialImpulseConstraintSolver::solveGroupCacheFriendlySetup<br>this:<br><br>solverBody.m_linearVelocity += body-&gt;getTotalForce()*body-&gt;getInvMass()*infoGlobal.m_timeStep;<br>solverBody.m_angularVelocity += (body-&gt;getTotalTorque()-gyroForce)*body-&gt;getInvInertiaTensorWorld()*infoGlobal.m_timeStep;<br><br>should be this:<br><br>solverBody.m_deltaLinearVelocity += body-&gt;getTotalForce()*body-&gt;getInvMass()*infoGlobal.m_timeStep;<br>solverBody.m_deltaAngularVelocity += (body-&gt;getTotalTorque()-gyroForce)*body-&gt;getInvInertiaTensorWorld()*infoGlobal.m_timeStep;<br><br>I made a quick test and the latter was much better. (both the visual and the aggregated error at the end of the frame)<br>Is it a typo or you could find a few cases where the original was more stable?<br><br>Thanks<br>Gabor<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=10212">Gabor Puhr</a> — Wed Jul 31, 2013 10:58 am</p><hr />
]]></content>
	</entry>
	</feed>
