<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://c4engine.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Movement_Controller</id>
	<title>Movement Controller - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://c4engine.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Movement_Controller"/>
	<link rel="alternate" type="text/html" href="https://c4engine.com/wiki/index.php?title=Movement_Controller&amp;action=history"/>
	<updated>2026-05-08T03:46:03Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://c4engine.com/wiki/index.php?title=Movement_Controller&amp;diff=107&amp;oldid=prev</id>
		<title>Eric Lengyel: Created page with &quot;__NOTOC__ The '''Movement Controller''' is a type of controller that causes a node to move forward and backward between two positions. The Movement Controller is built into the core engine, and it is one of four ''kinematic'' controllers that cause an object to follow an exact motion. Rigid bodies controlled by the Physics Manager are able to interact with kinematic objects, but they cannot stop kinematic objects or alter their motions. A kinematic object pushes rigid bo...&quot;</title>
		<link rel="alternate" type="text/html" href="https://c4engine.com/wiki/index.php?title=Movement_Controller&amp;diff=107&amp;oldid=prev"/>
		<updated>2023-07-15T10:40:18Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;__NOTOC__ The &amp;#039;&amp;#039;&amp;#039;Movement Controller&amp;#039;&amp;#039;&amp;#039; is a type of controller that causes a node to move forward and backward between two positions. The Movement Controller is built into the core engine, and it is one of four &amp;#039;&amp;#039;kinematic&amp;#039;&amp;#039; controllers that cause an object to follow an exact motion. Rigid bodies controlled by the Physics Manager are able to interact with kinematic objects, but they cannot stop kinematic objects or alter their motions. A kinematic object pushes rigid bo...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;__NOTOC__&lt;br /&gt;
The '''Movement Controller''' is a type of controller that causes a node to move forward and backward between two positions. The Movement Controller is built into the core engine, and it is one of four ''kinematic'' controllers that cause an object to follow an exact motion. Rigid bodies controlled by the Physics Manager are able to interact with kinematic objects, but they cannot stop kinematic objects or alter their motions. A kinematic object pushes rigid bodies out of its way no matter what.&lt;br /&gt;
&lt;br /&gt;
== Settings ==&lt;br /&gt;
&lt;br /&gt;
The following settings are available for Movement Controllers.&lt;br /&gt;
&lt;br /&gt;
{| {{Table}}&lt;br /&gt;
{{Tablehead|Setting|Description}}&lt;br /&gt;
|-&lt;br /&gt;
{{HeadingSetting|'''Kinematic&amp;amp;nbsp;Controller&amp;amp;nbsp;Settings'''}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Wake&amp;amp;nbsp;intersecting&amp;amp;nbsp;rigid&amp;amp;nbsp;bodies'''|Specifies whether sleeping rigid bodies in the path of the kinematic object are detected and awakened. If this is disabled, then the kinematic object will pass straight through any sleeping rigid bodies that it comes in contact with. If this is enabled, then sleeping rigid bodies that intersect the bounding box of the kinematic object are automatically awakened so they can interact with the kinematic object. For best performance, this setting should be disabled if it's known that the kinematic object will not come in contact with sleeping rigid bodies.}}&lt;br /&gt;
|-&lt;br /&gt;
{{HeadingSetting|'''Movement&amp;amp;nbsp;Controller&amp;amp;nbsp;Settings'''}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Movement speed (m/s)'''|The speed at which the target node moves between two positions, measured in meters per second.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Acceleration time (s)'''|The length of time it takes for the target node to be accelerated to full speed when it starts moving.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Deceleration time (s)'''|The length of time it takes for the target node to be decelerated to a stop when it stops moving.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Start position connector key'''|The name of the connector attached to the target node that is connected to the start position for the movement.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Setting|'''Finish position connector key'''|The name of the connector attached to the target node that is connected to the finish position for the movement.}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Script Functions ==&lt;br /&gt;
&lt;br /&gt;
The Movement Controller defines the following functions that can be called from a [[Script Editor | script]] using the '''Call Controller Function''' method.&lt;br /&gt;
&lt;br /&gt;
{| {{Table}}&lt;br /&gt;
{{Tablehead|Function|Description}}&lt;br /&gt;
|-&lt;br /&gt;
{{Tablerow|'''Get Movement Speed'''|Returns the movement speed and completes immediately.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Tablerow|'''Set Movement Speed'''|Sets the movement speed and completes immediately.&lt;br /&gt;
&lt;br /&gt;
* The '''Movement speed (m/s)''' setting specifies the new movement speed in meters per second.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Tablerow|'''Move to Start Position'''|Begins moving the target node to the start position. This function completes when the target node reaches the start position.}}&lt;br /&gt;
|-&lt;br /&gt;
{{Tablerow|'''Move to Finish Position'''|Begins moving the target node to the finish position. This function completes when the target node reaches the finish position.}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [http://c4engine.com/docs/PhysicsMgr/MovementController.html &amp;lt;code&amp;gt;MovementController&amp;lt;/code&amp;gt;] class&lt;br /&gt;
* [[Oscillation Controller]]&lt;br /&gt;
* [[Rotation Controller]]&lt;br /&gt;
* [[Spin Controller]]&lt;br /&gt;
* [[Physics]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Physics]]&lt;br /&gt;
[[Category:Controllers]]&lt;/div&gt;</summary>
		<author><name>Eric Lengyel</name></author>
	</entry>
</feed>