Commit Graph

121 Commits

Author SHA1 Message Date
Dander7BD c39e2fe791 Merge remote-tracking branch 'origin/PhysicsStructs' into Verifying-Gravity-struct
Conflicts:
	Bin/Content/Shaders/LightPass.cso
	Code/GamePhysics/PhysicsStructs-Impl.h
2014-01-09 11:03:25 +01:00
Dander7BD 687ffa4f99 struct State::GetView() overload
Can now provide an offset vector as argument
2014-01-09 10:42:22 +01:00
Dennis Andersen 42de421904 Master - Modified igore 2014-01-08 13:07:55 +01:00
Dander7BD fba52398c3 Merge remote-tracking branch 'origin/Physics' into Sprint2 2013-12-20 12:18:30 +01:00
Dander7BD 4d3032dc81 postmerge compile error fix 2013-12-20 12:13:12 +01:00
Dander7BD ca90b3ae3b OnPossibleCollision updated 2013-12-20 12:08:33 +01:00
Robin Engman a440cffb0e Added function to get delta time
Now in local physics API
2013-12-20 12:08:32 +01:00
Robin Engman 66e93fbdae SimpleRigid functions mirrored in SphericalRigid
The functions added to SimpleRigidBody has been added to
SphericalRigidBody too.
2013-12-20 12:08:31 +01:00
Dander7BD ec0f0e0d14 SimpleRigidBody::Predict(..) added 2013-12-20 12:08:30 +01:00
Dander7BD d163b7d8cf Partial SimpleRigidBody update end 2013-12-20 12:08:30 +01:00
Dander7BD 604a17056c Partial SimpleRigid update 2013-12-20 12:08:28 +01:00
Dander7BD c4bbc09a97 CustomBodyState::ApplyForwarding(..) added 2013-12-20 12:08:28 +01:00
Dander7BD bbc489eac9 RigidBody improved and Gimbal lock proofed 2013-12-20 12:08:25 +01:00
Dander7BD ff52977dcf Bug fixes
including a hack
2013-12-20 12:08:24 +01:00
Dander7BD 461fecd1d2 Bug fixing
SimpleRigidBody::GetNormal returned wrong results.
Second bounce impulse in OnPossibleCollision, should be subtracted
instead of added.
2013-12-20 12:08:24 +01:00
Dander7BD 840f000ec9 Bug fix in API_Impl OnPossibleCollision(...) 2013-12-20 12:08:22 +01:00
Dander7BD 4ebb8cd9b8 Minor edit in CustomBodyState 2013-12-20 12:08:21 +01:00
Dander7BD 4e21e2b0c0 Renamed Formula::CollisionResponse::Impulse to..
.. Formula::CollisionResponse::Bounce
2013-12-20 12:08:20 +01:00
Dander7BD 24418603ad ICustomBody::GetNormal returns Float4::null if..
.. no normal can be decided.
2013-12-20 12:08:20 +01:00
Dander7BD 76c83add3d Added sanity check to SphericalRigidBody::GetNormalAt 2013-12-20 12:08:19 +01:00
Dander7BD 42418257cb CustomBodies now aware of it's scene
+ other minor changes
2013-12-20 12:08:18 +01:00
Robin Engman 59d5a3dc1e Created function for friction 2013-12-20 12:08:17 +01:00
Dander7BD 9cee69edd6 Extended friction content of the ICustomBody::State struct 2013-12-20 12:08:17 +01:00
Robin Engman 56dec6cf5d Added "alpha" friction
Alpha means that the friction is not tested and most likely needs
tweaking.
2013-12-20 12:08:16 +01:00
Dander7BD 09e55ddc30 SimpleRigidBody::GetNormalAt Done
implemented by using RayVsPlane tests
2013-12-20 12:07:46 +01:00
Dander7BD 5051a9e767 Major StateStruct and API update 2013-12-20 12:07:45 +01:00
Dander7BD dbb0c38432 Big patch
Loads of collision response related implementations/edits
2013-12-20 12:07:43 +01:00
Dander7BD c854b1af58 Stuff 2013-12-20 11:59:35 +01:00
Tobias Grundel 855860d454 Gravity struct
Unions are the devil's work, but now there's GravityWell, Directed and
DirectedField structs implemented in PhysicsStructs
2013-12-19 14:30:16 +01:00
Erik Persson e68001da0e testing updated
message to client about object creation, message to client about player
movement
2013-12-19 11:46:11 +01:00
Robin Engman c740bd5935 Added some data to PhysicsAPI
GetRigidLinearVelocity() and void* as reference to game object.
2013-12-12 10:02:35 +01:00
Dander7BD 5835a72acc Setstruct introduction done
Can be found as:
Physics::Struct::CustomBodyState
Physics::ICustomBody::State
Is all inline thus no expensive API calls, as intended.
Will be expanded to move API call methods from Physics::ICustomBody to
it.
2013-12-06 09:46:30 +01:00
Dander7BD 202ee23b25 Octtree::leafData Container should be kept updated now 2013-12-04 11:49:33 +01:00
Dander7BD 1d94ed0ddc Fixed MomentOfInertia methods 2013-12-04 11:30:56 +01:00
Robin Engman f2548c43ce Merge branch 'Physics' of https://github.com/dean11/Danbias into Physics 2013-12-04 09:52:03 +01:00
Robin Engman b03e9af027 Fixed octree and API
Rewrote AddObject function in octree and OnPossibleCollision in
PhysocsAPI_Impl
2013-12-04 09:51:48 +01:00
Dander7BD e4476f7757 Added function for ICustomBody
void ICustomBody::SetMomentum( const ::Oyster::Math::Float3 &worldG )
- Added and implemented
2013-12-03 15:11:24 +01:00
Dander7BD 026b427deb Implemented a temporary collision test update
Will only call the subscribed CollisioEventAction whenevera collision is
detected.
2013-11-29 10:00:07 +01:00
Robin Engman 1a06c7c7e6 Changed from pointer to reference
Did it in sample and visit functions
2013-11-29 10:00:06 +01:00
Robin Engman c31ea9730b Added overloads for visitor and sample functions
They now have an overload for accepting ICollideable
2013-11-29 10:00:05 +01:00
Dander7BD 5d5f684ad6 minor compilation error fix
Forgot that UniquePointer had a special operator for checking if it is
not NULL >.<
2013-11-29 10:00:04 +01:00
Dander7BD ec7185f463 Bunch of implementations 2013-11-29 10:00:03 +01:00
Robin Engman 4672984b51 Merge remote-tracking branch 'origin/Octree' into Physics 2013-11-28 14:19:11 +01:00
Robin Engman 632d412f9c Fixed sample and added visit. 2013-11-28 14:18:44 +01:00
Robin Engman 35f66da760 Merge branch 'Physics' of https://github.com/dean11/Danbias into Physics 2013-11-28 13:43:38 +01:00
Dander7BD f379ed49e5 inertiaTensor removed from API::SphericalBodyDescription
was redundant. struct already have everything that the factory needs to
generate one.
2013-11-28 12:18:06 +01:00
Dander7BD 2928e08252 SphericalRigidBody factory done
not tested though
2013-11-28 12:13:14 +01:00
Dander7BD 3a6cb98b08 SimpleRigidBody factory done
not tested though
2013-11-28 11:58:46 +01:00
Robin Engman 28dc57cf38 Added basic functionality for container 2013-11-28 11:18:07 +01:00
Robin Engman ecbb606544 Added basic functionality for container. 2013-11-28 11:14:24 +01:00
Dander7BD 07e3aa1697 Improved Collision Event Subscription
From now on, will each ICustomBody instance have it's own
collisionAction function.
2013-11-28 10:26:29 +01:00
Dander7BD 3a444aaae8 Moved Octree.h into the Implementation Filter 2013-11-28 10:24:32 +01:00
Dander7BD 62b1c68479 Created SphericalRigidBody
A rotateable rigidbody that represents something spherical.
2013-11-26 13:28:47 +01:00
Dander7BD 29362c8c60 Added more API & ICustomBody methods
API::Init
ICustomBody::SetSubscription
Gravity related calls
moved DLLMain.cpp
2013-11-26 13:28:46 +01:00
Robin Engman 2890c2a9ea Added beginning of Octree class. 2013-11-26 10:21:20 +01:00
Dander7BD 26e5fde8b0 Some PhysicsAPI implementations
Nothing related to the oct tree though. That will have be done next
2013-11-25 16:57:38 +01:00
Dander7BD a869771ffa Simple Rigid Body implementation
Second Iteration
[iteration 1]: stubs
[iteration 2]: implementations with shortcuts
[iteration final]: implementations with real solutions
2013-11-25 16:35:56 +01:00
Dander7BD bc988eff0d ICustomBody Documented 2013-11-25 13:46:05 +01:00
Dander7BD bf3dcd088b Moar dll fixes for Physics 2013-11-25 12:21:44 +01:00
Dander7BD cc67d227ab Dll fixes
API::Instance were not properly implemented
Added __stdcall
2013-11-25 12:03:41 +01:00
Dander7BD 46abe2c8c6 namespace Physics::Error removed
No need for it anymore.
2013-11-25 11:55:58 +01:00
Dander7BD 4072bf50fb Fixed DLL support for physics Engine
.. hopefully
2013-11-25 11:47:42 +01:00
Dander7BD d33d1f41bc Some documentation 2013-11-25 11:35:38 +01:00
Robin Engman c3e3f9e461 Changed API.
Replaced unsigned int references with ICustomBody pointers and replaced
documentation as needed.
2013-11-25 10:54:27 +01:00
Dander7BD 6ac4254b9d Documentations
PhysicsAPI mostly documented.
Namespace MomentOFInertia and ICustomBody still not documented
2013-11-25 08:57:47 +01:00
Robin Engman 3ef5a46779 Added functions to API.
Now has access to inertia functions through physics API.
2013-11-22 11:52:45 +01:00
Dander7BD 8a9ea82d7d Added a namespace to PhysicsAPI
+ namespace MomentOfInertia
2013-11-22 11:17:14 +01:00
Dander7BD 9749749748 IRigidBody done
Renamed to ICustomBody
* Added bunch of other stuff
2013-11-21 17:22:13 +01:00
Dander7BD dc9f4597e2 Added OrientationMatrix build methods + other stuff 2013-11-21 15:19:32 +01:00
Dander7BD b8d0a106b3 Physics branch disaster Patch
critical changes in Sprint1 branch caused major problems for the physics
patch. Files had to be backed up, Physics branch destroyed along with
it's log data. So that a new Physics branch could be made from the new
Sprint1. This patch is those copied files put back into the new physics
branch. .. logdata and 3hours lost (1h/person)
2013-11-20 11:09:27 +01:00
dean11 33e7afabcd Restructured folders to give a flexible solution for dependencies and added to ignore list 2013-11-18 15:41:09 +01:00