babylon.collider.d.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. /// <reference path="../babylon.d.ts" />
  2. declare module BABYLON {
  3. interface CollisionResponse {
  4. position: Vector3;
  5. velocity: Vector3;
  6. }
  7. class Collider {
  8. radius: Vector3;
  9. retry: number;
  10. constructor();
  11. _initialize(source: Vector3, dir: Vector3, e: number): void;
  12. _canDoCollision(sphereCenter: Vector3, sphereRadius: number, vecMin: Vector3, vecMax: Vector3): bool;
  13. _testTriangle(subMesh: SubMesh, p1: Vector3, p2: Vector3, p3: Vector3): void;
  14. _collide(subMesh: SubMesh, pts: VertexBuffer, indices: IndexBuffer, indexStart: number, indexEnd: number, decal: number);
  15. _getResponse(pos: Vector3, vel: Vector3): CollisionResponse;
  16. }
  17. class CollisionPlane {
  18. normal: Vector3;
  19. origin: Vector3;
  20. equation: number[];
  21. constructor(origin: Vector3, normal: Vector3);
  22. isFrontFactingTo(direction: Vector3, epsilon: number): bool;
  23. signedDistanceTo(point: Vector3): number;
  24. static CreateFromPoints(p1: Vector3, p2: Vector3, p3: Vector3): CollisionPlane;
  25. }
  26. }