aboutsummaryrefslogtreecommitdiff
path: root/Box2D/Dynamics/b2TimeStep.h
diff options
context:
space:
mode:
authorSamu Laaksonen <laaksonen.sj@gmail.com>2012-10-18 23:58:18 +0300
committerSamu Laaksonen <laaksonen.sj@gmail.com>2012-10-18 23:58:18 +0300
commita0f7ab0f77fa81b77d03de751e4a5f4e07c49d25 (patch)
tree92c033e000f6796f3e679ee8ba58bf83844b84c5 /Box2D/Dynamics/b2TimeStep.h
parent2049e08432907f645f5a3786ea4f50a6456b77c4 (diff)
downloadprism-a0f7ab0f77fa81b77d03de751e4a5f4e07c49d25.tar.gz
prism-a0f7ab0f77fa81b77d03de751e4a5f4e07c49d25.zip
Box2d precommit
Added - box2d source codes to be added in project when there is no longer cba - some base ideas to display classes Improved - level loading : layer with property "solid" is now loaded tile by tile, this allows adding static rigid bodies to these items for collision detection
Diffstat (limited to 'Box2D/Dynamics/b2TimeStep.h')
-rw-r--r--Box2D/Dynamics/b2TimeStep.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/Box2D/Dynamics/b2TimeStep.h b/Box2D/Dynamics/b2TimeStep.h
new file mode 100644
index 0000000..a372762
--- /dev/null
+++ b/Box2D/Dynamics/b2TimeStep.h
@@ -0,0 +1,70 @@
+/*
+* Copyright (c) 2006-2011 Erin Catto http://www.box2d.org
+*
+* This software is provided 'as-is', without any express or implied
+* warranty. In no event will the authors be held liable for any damages
+* arising from the use of this software.
+* Permission is granted to anyone to use this software for any purpose,
+* including commercial applications, and to alter it and redistribute it
+* freely, subject to the following restrictions:
+* 1. The origin of this software must not be misrepresented; you must not
+* claim that you wrote the original software. If you use this software
+* in a product, an acknowledgment in the product documentation would be
+* appreciated but is not required.
+* 2. Altered source versions must be plainly marked as such, and must not be
+* misrepresented as being the original software.
+* 3. This notice may not be removed or altered from any source distribution.
+*/
+
+#ifndef B2_TIME_STEP_H
+#define B2_TIME_STEP_H
+
+#include <Box2D/Common/b2Math.h>
+
+/// Profiling data. Times are in milliseconds.
+struct b2Profile
+{
+ float32 step;
+ float32 collide;
+ float32 solve;
+ float32 solveInit;
+ float32 solveVelocity;
+ float32 solvePosition;
+ float32 broadphase;
+ float32 solveTOI;
+};
+
+/// This is an internal structure.
+struct b2TimeStep
+{
+ float32 dt; // time step
+ float32 inv_dt; // inverse time step (0 if dt == 0).
+ float32 dtRatio; // dt * inv_dt0
+ int32 velocityIterations;
+ int32 positionIterations;
+ bool warmStarting;
+};
+
+/// This is an internal structure.
+struct b2Position
+{
+ b2Vec2 c;
+ float32 a;
+};
+
+/// This is an internal structure.
+struct b2Velocity
+{
+ b2Vec2 v;
+ float32 w;
+};
+
+/// Solver Data
+struct b2SolverData
+{
+ b2TimeStep step;
+ b2Position* positions;
+ b2Velocity* velocities;
+};
+
+#endif