William Moberg
a93ccecfeb
Debug test code.
2016-02-09 19:23:12 +01:00
William Moberg
7140b740b5
Models/Collideables/etc. won't need a AABB component anymore, if it has a Model component. In addition, they should take rotation into account, i.e it doesn't have to be axis-aligned.
2016-02-09 19:20:04 +01:00
William Moberg
93c6f3c0a3
AABBs are auto attached when adding Trigger/Collideable/etc, also added AttachComponent method to ComponentWrapper.
2016-02-08 14:34:37 +01:00
William Moberg
11cf85cc73
Renamed CollidableOctreeSystem to FillOctreeSystem.
2016-02-08 14:17:19 +01:00
William Moberg
6610bb974d
Only apply air friction if the ground is never hit during the frame.
2016-02-08 13:32:45 +01:00
William Moberg
e3a44d37d2
Merge branch 'master' into BoxModelCollision
...
# Conflicts:
# src/Game/Systems/PlayerMovementSystem.cpp
2016-02-05 14:59:14 +01:00
William Moberg
428dca003d
Tiny bug fix.
2016-02-05 14:40:50 +01:00
William Moberg
4fe9e4f1c3
Debug cleanup and some bug fixes.
2016-02-05 14:38:08 +01:00
William Moberg
d61e605093
Can walk up "stair-steps". Cleanup WIP.
...
Better performance in RectanglevsTriangle check.
Added IsOnGround flag and VerticalStepHeight in Physics.
Lotsa commented code saved for historical reasons, remove later.
2016-02-05 10:56:34 +01:00
William Moberg
214dad2afc
Removed commented code.
2016-02-02 17:25:59 +01:00
William Moberg
affcc5305b
Collision affects velocity correctly, no wierd ice cream sliding along walls.
2016-02-02 17:19:59 +01:00
verysecrethero
42b52a6766
Several changes/fixes based on the latest broken refactoring.
...
Fixed Simon's mistake in CapturePointLogic. William fixed so TriggerSystem works again with CapturePoints.
2016-02-02 11:37:22 +01:00
William Moberg
30b1dab764
More efficient collision resolution case + comments.
2016-02-01 18:06:28 +01:00
William Moberg
5a45f778e6
Fixed so players don't teleport to (NaN, NaN, NaN) on spawning.
2016-02-01 17:01:58 +01:00
William Moberg
3cfbbbbf54
CollisionSystem now utilizes Octree for collision detection.
2016-02-01 16:13:48 +01:00
William Moberg
d7b02e79c8
Merge branch 'master' into BoxModelCollision
...
# Conflicts:
# include/Engine/Collision/CollisionSystem.h
# src/Engine/Collision/CollisionSystem.cpp
2016-02-01 13:48:05 +01:00
William Moberg
76274c326e
Fixed going through flat large triangles. Velocity affected by collision.
2016-02-01 13:34:39 +01:00
Jace
788407b709
Made CollisionSystem aware of entities
2016-01-27 15:42:50 +01:00
Jace
5fcd26cd3e
Made TriggerSystem make use of Octree
2016-01-27 13:35:16 +01:00
William Moberg
90f05442aa
Merge branch 'master' into BoxModelCollision
...
# Conflicts:
# include/Engine/Core/Octree.h
# resources/Schema/Entities/CollisionTestLevel.xml
# src/Engine/Collision/CollisionSystem.cpp
# src/Engine/Core/Octree.cpp
2016-01-27 10:52:27 +01:00
William Moberg
6ea490e215
Tried a horrible recursive method, extreme framedrop.
2016-01-27 10:34:26 +01:00
William Moberg
3389b965eb
Test on game level v1.
2016-01-25 10:55:05 +01:00
William Moberg
f1343e2f82
Collision may be working, kind of.
2016-01-24 21:08:42 +01:00
William Moberg
910b3d10e4
WIP (false collisions), collision method expanded, not working.
2016-01-24 15:32:10 +01:00
Jace
373bb33cf0
Player jumping taking air acceleration into account
2016-01-24 15:20:34 +01:00
William Moberg
e6224a4e96
WIP (not working), attempt at separating axis theorem stuff.
2016-01-23 18:31:27 +01:00
William Moberg
6eeb3ea524
WIP, Bug fix + nitpicks + optimizations.
2016-01-23 17:50:35 +01:00
William Moberg
71404c8828
Special case for collision vs ground (upward facing) triangles.
2016-01-23 14:01:54 +01:00
William Moberg
3974c649ab
WIP on ModelBoxCollision. Octree works in Release mode.
2016-01-23 10:45:50 +01:00
William Moberg
1670fb4e48
Moved triangle vs ray code to method.
2016-01-22 14:45:50 +01:00
William Moberg
3955e1d60c
Can resolve collision when AABB corners cut through triangle.
...
At least two more cases left to resolve.
2016-01-22 13:46:09 +01:00
William Moberg
52765cc85b
TriangleVsBox detection seems to work in all cases, but cannot resolve all cases yet.
...
Also added default ctor for Ray and removed compilation errors in CollisionSystem.
2016-01-22 11:22:56 +01:00
William Moberg
9f6fa40448
Merge branch 'master' into BoxModelCollision
...
# Conflicts:
# src/Engine/Collision/CollisionSystem.cpp
2016-01-21 17:16:55 +01:00
William Moberg
de7c8e9234
WIP, collision detects too much, no resolving for most cases.
2016-01-21 17:10:36 +01:00
Jace
a6548a72b3
Merge remote-tracking branch 'origin/master' into EditorUsefulness
...
# Conflicts:
# include/Engine/Collision/CollidableOctreeSystem.h
# include/Engine/Collision/CollisionSystem.h
# include/Engine/Collision/TriggerSystem.h
# include/Engine/Rendering/RenderSystem.h
# include/Game/Systems/PlayerSystem.h
# resources/Schema/Components/Physics.xsd
# resources/Schema/Types/Entity.xsd
# src/Engine/Rendering/RenderSystem.cpp
# src/Engine/Rendering/Renderer.cpp
# src/Game/Game.cpp
# src/Game/Systems/HealthSystem.cpp
# src/Game/Systems/PlayerSystem.cpp
# src/Tests/OctTreeTestGameClass.cpp
2016-01-21 16:16:35 +01:00
William Moberg
4d5b835352
WIP triangles vs. AABB.
2016-01-20 16:43:09 +01:00
William Moberg
d1b6fb1259
Tiny logic alteration so we don't get false warnings in debug.
2016-01-19 16:59:02 +01:00
William Moberg
713ebbe18c
Can add any objects that inherit from AABB into the Octree.
2016-01-19 14:50:46 +01:00
Jace
51979d7f0c
Changed System to take World through constructor and store it instead, cause it makes more sense.
2016-01-18 23:59:33 +01:00
William Moberg
0669d91767
CollisionSystem loops over Collidable components.
2016-01-18 13:29:10 +01:00
William Moberg
942064c450
Removed class PlayerSystem and associated files.
2016-01-18 13:07:04 +01:00
Jace
b2213dbe9a
Merge remote-tracking branch 'origin/master' into PlayerMovement
...
# Conflicts:
# include/Engine/Collision/Collision.h
# include/Engine/Collision/CollisionSystem.h
# include/Engine/Collision/TriggerSystem.h
# resources/Schema/Components.xsd
# resources/Schema/Entities/CollisionTestLevel.xml
# resources/Schema/Types/Entity.xsd
# src/Engine/Collision/Collision.cpp
# src/Game/Game.cpp
2016-01-15 20:28:43 +01:00
William Moberg
f5ea4d513c
ResourceManager::Load never returns null, throws exceptions instead.
2016-01-15 15:25:01 +01:00
William Moberg
4cf6dcfc14
Merge branch 'master' into AsyncResourceLoad
...
# Conflicts:
# include/Engine/Rendering/RawModel.h
# src/Engine/Rendering/RenderQueueFactory.cpp
2016-01-15 10:10:57 +01:00
Jace
5e721325a4
Merge fixes
2016-01-14 18:20:51 +01:00
Jace
6ad1839def
Initial work on PlayerMovementSystem
2016-01-14 17:03:48 +01:00
William Moberg
71047b08ec
Async load works, using exceptions for special resources.
2016-01-14 16:27:45 +01:00
Jace
d34470256b
EntityWrapper to uniquely identify entities and make using them a little easier
2016-01-14 15:43:19 +01:00
Jace
71d936f8d1
Start of a movement system with collisions against AABBs
2016-01-14 14:54:12 +01:00
William Moberg
9f185a1e35
Wrecked the last commit. Async loading works now.
2016-01-13 18:51:45 +01:00