123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- import {
- Bone,
- Euler,
- Matrix4,
- Object3D,
- Quaternion,
- SkinnedMesh,
- Vector3
- } from '../../../src/Three';
- export interface MMDPhysicsParameter {
- unitStep?: number;
- maxStepNum?: number;
- gravity?: Vector3;
- }
- export class MMDPhysics {
- constructor( mesh: SkinnedMesh, rigidBodyParams: object[], constraintParams?: object[], params?: MMDPhysicsParameter );
- manager: ResourceManager;
- mesh: SkinnedMesh;
- unitStep: number;
- maxStepNum: number;
- gravity: Vector3;
- world: null;
- bodies: RigidBody[];
- constraints: Constraint[];
- update( delta: number ): this;
- reset(): this;
- warmup( cycles: number ): this;
- setGravity( gravity: Vector3 ): this;
- createHelper(): MMDPhysicsHelper;
- }
- export class ResourceManager {
- constructor();
- threeVector3s: Vector3[];
- threeMatrix4s: Matrix4[];
- threeQuaternions: Quaternion[];
- threeEulers: Euler[];
- transforms: object[];
- quaternions: object[];
- vector3s: object[];
- allocThreeVector3(): void;
- freeThreeVector3( v: Vector3 ): void;
- allocThreeMatrix4(): void;
- freeThreeMatrix4( m: Matrix4 ): void;
- allocThreeQuaternion(): void;
- freeThreeQuaternion( q: Quaternion ): void;
- allocThreeEuler(): void;
- freeThreeEuler( e: Euler ): void;
- allocTransform(): void;
- freeTransform( t: object ): void;
- allocQuaternion(): void;
- freeQuaternion( q: object ): void;
- allocVector3(): void;
- freeVector3( v: object ): void;
- setIdentity(): void;
- getBasis( t: object ): object;
- getBasisAsMatrix3( t: object ): object;
- getOrigin( t: object ): object;
- setOrigin( t: object, v: object ): void;
- copyOrigin( t1: object, t2: object ): void;
- setBasis( t: object, q: object ): void;
- setBasisFromMatrix3( t: object, m: object ): void;
- setOriginFromArray3( t: object, a: number[] ): void;
- setOriginFromThreeVector3( t: object, v: Vector3 ): void;
- setBasisFromArray3( t: object, a: number[] ): void;
- setBasisFromThreeQuaternion( t: object, a: Quaternion ): void;
- multiplyTransforms( t1: object, t2: object ): object;
- inverseTransform( t: object ): object;
- multiplyMatrices3( m1: object, m2: object ): object;
- addVector3( v1: object, v2: object ): object;
- dotVectors3( v1: object, v2: object ): number;
- rowOfMatrix3( m: object, i: number ): object;
- columnOfMatrix3( m: object, i: number ): object;
- negativeVector3( v: object ): object;
- multiplyMatrix3ByVector3( m: object, v: object ): object;
- transposeMatrix3( m: object ): object;
- quaternionToMatrix3( q: object ): object;
- matrix3ToQuaternion( m: object ): object;
- }
- export class RigidBody {
- constructor( mesh: SkinnedMesh, world: object, params: object, manager: ResourceManager );
- mesh: SkinnedMesh;
- world: object;
- params: object;
- manager: ResourceManager;
- body: object;
- bone: Bone;
- boneOffsetForm: object;
- boneOffsetFormInverse: object;
- reset(): this;
- updateFromBone(): this;
- updateBone(): this;
- }
- export class Constraint {
- constructor( mesh: SkinnedMesh, world: object, bodyA: RigidBody, bodyB: RigidBody, params: object, manager: ResourceManager );
- }
- export class MMDPhysicsHelper extends Object3D {
- constructor();
- }
|