diff options
Diffstat (limited to 'src/mesh/assimp-master/port/dAssimp/assimp/animation.d')
-rw-r--r-- | src/mesh/assimp-master/port/dAssimp/assimp/animation.d | 240 |
1 files changed, 0 insertions, 240 deletions
diff --git a/src/mesh/assimp-master/port/dAssimp/assimp/animation.d b/src/mesh/assimp-master/port/dAssimp/assimp/animation.d deleted file mode 100644 index 9a36940..0000000 --- a/src/mesh/assimp-master/port/dAssimp/assimp/animation.d +++ /dev/null @@ -1,240 +0,0 @@ -/* ---------------------------------------------------------------------------- -Open Asset Import Library (ASSIMP) ---------------------------------------------------------------------------- - -Copyright (c) 2006-2020, ASSIMP Development Team - -All rights reserved. - -Redistribution and use of this software in source and binary forms, -with or without modification, are permitted provided that the following -conditions are met: - - * Redistributions of source code must retain the above - copyright notice, this list of conditions and the - following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the - following disclaimer in the documentation and/or other - materials provided with the distribution. - - * Neither the name of the ASSIMP team, nor the names of its - contributors may be used to endorse or promote products - derived from this software without specific prior - written permission of the ASSIMP Development Team. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---------------------------------------------------------------------------- -*/ - -/** - * The data structures which are used to store the imported animation data. - */ -module assimp.animation; - -import assimp.math; -import assimp.types; - -extern ( C ) { - /** - * A time-value pair specifying a certain 3D vector for the given time. - */ - struct aiVectorKey { - /** - * The time of this key. - */ - double mTime; - - /** - * The value of this key. - */ - aiVector3D mValue; - } - - /** - * A time-value pair specifying a rotation for the given time. For joint - * animations, the rotation is usually expressed using a quaternion. - */ - struct aiQuatKey { - /** - * The time of this key. - */ - double mTime; - - /** - * The value of this key. - */ - aiQuaternion mValue; - } - - /** - * Defines how an animation channel behaves outside the defined time - * range. This corresponds to <code>aiNodeAnim.mPreState</code> and - * <code>aiNodeAnim.mPostState</code>. - */ - enum aiAnimBehaviour : uint { - /** - * The value from the default node transformation is used. - */ - DEFAULT = 0x0, - - /** - * The nearest key value is used without interpolation. - */ - CONSTANT = 0x1, - - /** - * The value of the nearest two keys is linearly extrapolated for the - * current time value. - */ - LINEAR = 0x2, - - /** - * The animation is repeated. - * - * If the animation key go from n to m and the current time is t, use the - * value at (t-n) % (|m-n|). - */ - REPEAT = 0x3 - } - - /** - * Describes the animation of a single node. - * - * The name specifies the bone/node which is affected by this animation - * channel. The keyframes are given in three separate series of values, one - * each for position, rotation and scaling. The transformation matrix - * computed from these values replaces the node's original transformation - * matrix at a specific time. This means all keys are absolute and not - * relative to the bone default pose. - * - * The order in which the transformations are applied is – - * as usual – scaling, rotation, translation. - * - * Note: All keys are returned in their correct, chronological order. - * Duplicate keys don't pass the validation step. Most likely there will - * be no negative time values, but they are not forbidden (so - * implementations need to cope with them!). - */ - struct aiNodeAnim { - /** - * The name of the node affected by this animation. The node must exist - * and it must be unique. - */ - aiString mNodeName; - - /** - * The number of position keys. - */ - uint mNumPositionKeys; - - /** - * The position keys of this animation channel. Positions are specified - * as 3D vectors. The array is <code>mNumPositionKeys</code> in size. - * - * If there are position keys, there will also be at least one scaling - * and one rotation key. - */ - aiVectorKey* mPositionKeys; - - /** - * The number of rotation keys. - */ - uint mNumRotationKeys; - - /** - * The rotation keys of this animation channel. Rotations are given as - * quaternions. The array is <code>mNumRotationKeys</code> in size. - * - * If there are rotation keys, there will also be at least one scaling - * and one position key. - */ - aiQuatKey* mRotationKeys; - - - /** - * The number of scaling keys. - */ - uint mNumScalingKeys; - - /** - * The scaling keys of this animation channel. Scalings are specified as - * 3D vectors. The array is <code>mNumScalingKeys</code> in size. - * - * If there are scaling keys, there will also be at least one position - * and one rotation key. - */ - aiVectorKey* mScalingKeys; - - - /** - * Defines how the animation behaves before the first key is encountered. - * - * The default value is <code>aiAnimBehaviour.DEFAULT</code> (the original - * transformation matrix of the affected node is used). - */ - aiAnimBehaviour mPreState; - - /** - * Defines how the animation behaves after the last key was processed. - * - * The default value is <code>aiAnimBehaviour.DEFAULT</code> (the original - * transformation matrix of the affected node is used). - */ - aiAnimBehaviour mPostState; - } - - /** - * An animation consists of keyframe data for a number of nodes. - * - * For each node affected by the animation, a separate series of data is - * given. - */ - struct aiAnimation { - /** - * The name of the animation. - * - * If the modeling package this data was - * exported from does support only a single animation channel, this - * name is usually empty (length is zero). - */ - aiString mName; - - /** - * Duration of the animation in ticks. - */ - double mDuration; - - /** - * Ticks per second. 0 if not specified in the imported file. - */ - double mTicksPerSecond; - - /** - * The number of bone animation channels. - * - * Each channel affects a single node. - */ - uint mNumChannels; - - /** - * The node animation channels. The array is <code>mNumChannels</code> - * in size. - * - * Each channel affects a single node. - */ - aiNodeAnim** mChannels; - } -}
\ No newline at end of file |