<?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/405" />

	<title>Real-Time Physics Simulation Forum</title>
	
	<link href="https://pybullet.org/Bullet/phpBB3/index.php" />
	<updated>2006-08-10T05:29:26+00:00</updated>

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

		<entry>
		<author><name><![CDATA[kevglass]]></name></author>
		<updated>2006-08-10T05:29:26+00:00</updated>

		<published>2006-08-10T05:29:26+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1482#p1482</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1482#p1482"/>
		<title type="html"><![CDATA[Amazing Curves Racing: Networked Object Stacking]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1482#p1482"><![CDATA[
Could you explain what method you use to synchonise the clients. Given a 300ms lag how do you account for the fact the two clients don't know all the influences in the physics system at any given moment?<br><br>Kev<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=704">kevglass</a> — Thu Aug 10, 2006 5:29 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[John Schultz]]></name></author>
		<updated>2006-08-10T05:18:52+00:00</updated>

		<published>2006-08-10T05:18:52+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1481#p1481</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1481#p1481"/>
		<title type="html"><![CDATA[300ms no lag video]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1481#p1481"><![CDATA[
High-quality h.264 video showing networked physics; 300ms ping, high speed driving and physical interaction, lag free:<br><a href="http://files.filefront.com/ACR_300msmov/;5378546;;/fileinfo.html" class="postlink">http://files.filefront.com/ACR_300msmov ... einfo.html</a><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=199">John Schultz</a> — Thu Aug 10, 2006 5:18 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[John Schultz]]></name></author>
		<updated>2006-07-15T21:57:37+00:00</updated>

		<published>2006-07-15T21:57:37+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1321#p1321</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1321#p1321"/>
		<title type="html"><![CDATA[Amazing Curves Racing: Networked Object Stacking]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1321#p1321"><![CDATA[
<blockquote class="uncited"><div>Very nice demo John!<br><br>Can you explain the rigid body physics (verlet particles?) and collision resolving methods to get stacking working in further detail? I've tinkered with verlet particle rigid bodies a while back, but I could never get stable stacking without lots of iterations.<br><br>thanks<br>Steve.</div></blockquote>Thanks Steve! <br><br>I think the key factors were:<br>1. Correcting kinetic energy.<br>2. Hybrid approach to VRB and RB collision+integration.<br><br>More info here: <a href="http://www.brightland.com/Physics/index.htm" class="postlink">http://www.brightland.com/Physics/index.htm</a><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=199">John Schultz</a> — Sat Jul 15, 2006 9:57 pm</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[sbroumley]]></name></author>
		<updated>2006-07-14T01:22:35+00:00</updated>

		<published>2006-07-14T01:22:35+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1318#p1318</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1318#p1318"/>
		<title type="html"><![CDATA[Amazing Curves Racing: Networked Object Stacking]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1318#p1318"><![CDATA[
Very nice demo John!<br><br>Can you explain the rigid body physics (verlet particles?) and collision resolving methods to get stacking working in further detail? I've tinkered with verlet particle rigid bodies a while back, but I could never get stable stacking without lots of iterations.<br><br>thanks<br>Steve.<p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=207">sbroumley</a> — Fri Jul 14, 2006 1:22 am</p><hr />
]]></content>
	</entry>
		<entry>
		<author><name><![CDATA[John Schultz]]></name></author>
		<updated>2006-07-06T06:01:13+00:00</updated>

		<published>2006-07-06T06:01:13+00:00</published>
		<id>https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1284#p1284</id>
		<link href="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1284#p1284"/>
		<title type="html"><![CDATA[Amazing Curves Racing: Networked Object Stacking]]></title>

		
		<content type="html" xml:base="https://pybullet.org/Bullet/phpBB3/viewtopic.php?p=1284#p1284"><![CDATA[
<strong class="text-strong">Amazing Curves Racing: Networked Object Stacking</strong><br><img src="http://www.brightland.com/ac/AC_Networked_Physics.jpg" class="postimage" alt="Image"><br><br>Also included are single pendulums, a triple pendulum (3 RB's linked in a chain), a triggered, canned-animation 'smasher', and a two-constraint jump/seesaw. Everything is networked, and should behave <em class="text-italics">seamlessly</em>: <strong class="text-strong">no apparent lag up to 300ms</strong>.<br><br><strong class="text-strong">About the Physics</strong><br><br><strong class="text-strong">Integrator:</strong> Symplectic (Newton-St?rmer-Verlet (NSV)), 100Hz, fixed, high-angular velocity stable (RK4-like component update), with precession. Rigid simulation matches particles attached with constraints (both systems with same mass and inertial properties): validated motion behavior.<br><strong class="text-strong">Cloth (flag):</strong> Modified Verlet+spring with clamping.<br><strong class="text-strong">Collisions:</strong> Hier-grid (Ericson), loose quadtree (Ulrich), sphere (cull), convex hull (rigid body, custom/simple nearest feature, projection-displacement, impulses for contacts and friction). The collision system is single pass, with no iterations required. Kinetic energy is tracked and corrected as necessary. The projection displacement system partially deforms a tetrahedral basis system to allow objects to be moved and rotated, making the rigid bodies partially deformable, allowing stable stacking and settling without iterations. Slight interpenetration is present, but not really noticeable in a game application. Iteration <em class="text-italics">can</em> be use to reduce or eliminate the slight overlap. This method was discovered after experimenting with Jacobsen-style Verlet tetrahedral rigid bodies.<br><strong class="text-strong">Curved surface collisions:</strong> could not find a fast/stable non-iterative solution- uses an iterative method, and is somewhat expensive. Caching and culling used to improve performance. "Non-parametric" surface special-case collisions are almost free for height sampling (AOT ray sampling).<br><strong class="text-strong">Aerodynamics:</strong> Custom/simple CFD model, explained here: <br><a href="http://www.brightland.com/Physics/index.htm" class="postlink">http://www.brightland.com/Physics/index.htm</a><br><strong class="text-strong">Tire model:</strong> Flexible tire simulation is quite challenging- tried slip models, but ended up using a custom 'tracked displacement' spring-impulse model.<br><strong class="text-strong">Engine simulation:</strong> Rotating mass, aero piston drag, clutch, driving a geartrain (transmission+rear end) with optimized differential.<br><strong class="text-strong">Constraints:</strong> Impulse with deformation-displacement correctors.<br><strong class="text-strong">Canned-animation interaction</strong>: Linear and angular velocity are computed from current and previous positions, allowing dynamic objects to interact with canned animation objects.<br><br><strong class="text-strong">Graphics / Gameplay</strong><br><br><strong class="text-strong">Graphics:</strong> Curve tessellation turned down to allow higher performance on legacy hardware (can still turn up so that no polygon edges are visible). Some OpenGL issues were found with GDebugger (caused problems with some ATI and Intel drivers); now fixed (should also run faster).<br><strong class="text-strong">Sound:</strong> Better mix, 5.1-7.1 surround improvements (3D).<br><strong class="text-strong">Gameplay:</strong> Driving the car with the keyboard should be very easy now- physics-based helpers for stability and tip-over prevention should allow you to hit cars/walls and not tip over, as well as get completely sideways, drift large distances, than easily recover. Since the physics-based helpers (Driving Aids) don?t affect grip, players with Driving Aids enabled should not have an inherent advantage over skilled players with Driving Aids turned off. The Driving Aids also help beginners using a joystick or wheel.<br><br>A network game server is running 24/7: I have never seen networked object stacking, etc., as well as the ability to physically push around/carry boxes/objects with a network client: has this been done before? Check out the networked physics and let me know if it works as advertised. After downloading and installing the game, press <strong class="text-strong">JOIN</strong> and the <strong class="text-strong">Brightland</strong> server should be visible. Press <strong class="text-strong">F2</strong> to show your ping. A recent test with a client in Germany showed a ping of 160ms- no lag was visible (the server is located in San Diego, CA).<br><br>Download the latest version here: <strong class="text-strong"><a href="http://www.brightland.com/ac/" class="postlink">http://www.brightland.com/ac/</a></strong><p>Statistics: Posted by <a href="https://pybullet.org/Bullet/phpBB3/memberlist.php?mode=viewprofile&amp;u=199">John Schultz</a> — Thu Jul 06, 2006 6:01 am</p><hr />
]]></content>
	</entry>
	</feed>
