Merge branch '3.8' into 3.9-beta

This commit is contained in:
badlogic 2019-09-18 15:36:17 +02:00
commit 0ca78b6756
12 changed files with 34 additions and 35 deletions

View File

@ -32,16 +32,14 @@
#include <spine/SpineObject.h>
#include <string>
namespace spine {
class SP_API RTTI : public SpineObject {
public:
explicit RTTI(const std::string &className);
explicit RTTI(const char *className);
RTTI(const std::string &className, const RTTI &baseRTTI);
RTTI(const char *className, const RTTI &baseRTTI);
const std::string &getClassName() const;
const char *getClassName() const;
bool isExactly(const RTTI &rtti) const;
@ -53,7 +51,7 @@ private:
RTTI &operator=(const RTTI &obj);
const std::string _className;
const char* _className;
const RTTI *_pBaseRTTI;
};
}

View File

@ -34,7 +34,6 @@
#include <spine/Vector.h>
#include <spine/Color.h>
#include <string>
#include <spine/HasRendererObject.h>
#define NUM_UVS 8

View File

@ -36,8 +36,6 @@
#include <spine/SpineString.h>
#include <spine/Color.h>
#include <limits> // std::numeric_limits
namespace spine {
class SkeletonData;

View File

@ -34,8 +34,6 @@
#include <spine/SpineObject.h>
#include <spine/Color.h>
#include <string>
namespace spine {
class SlotData;

View File

@ -33,8 +33,6 @@
#include <spine/Extension.h>
#include <spine/SpineObject.h>
#include <spine/SpineString.h>
#include <stdlib.h>
#include <memory>
#include <assert.h>
namespace spine {
@ -131,7 +129,9 @@ public:
if (inIndex != _size) {
for (size_t i = inIndex; i < _size; ++i) {
std::swap(_buffer[i], _buffer[i + 1]);
T tmp(_buffer[i]);
_buffer[i] = _buffer[i + 1];
_buffer[i + 1] = tmp;
}
}

View File

@ -49,7 +49,6 @@
#include <spine/ConstraintData.h>
#include <spine/ContainerUtil.h>
#include <spine/CurveTimeline.h>
#include <spine/Debug.h>
#include <spine/DeformTimeline.h>
#include <spine/DrawOrderTimeline.h>
#include <spine/Event.h>

View File

@ -44,6 +44,8 @@
#include <spine/DrawOrderTimeline.h>
#include <spine/EventTimeline.h>
#include <float.h>
using namespace spine;
void dummyOnAnimationEventFunc(AnimationState *state, spine::EventType type, TrackEntry *entry, Event *event = NULL) {
@ -914,7 +916,7 @@ TrackEntry *AnimationState::newTrackEntry(size_t trackIndex, Animation *animatio
entry._trackTime = 0;
entry._trackLast = -1;
entry._nextTrackLast = -1; // nextTrackLast == -1 signifies a TrackEntry that wasn't applied yet.
entry._trackEnd = std::numeric_limits<float>::max(); // loop ? float.MaxValue : animation.Duration;
entry._trackEnd = FLT_MAX; // loop ? float.MaxValue : animation.Duration;
entry._timeScale = 1;
entry._alpha = 1;

View File

@ -43,6 +43,8 @@
#include <spine/EventData.h>
#include <spine/ContainerUtil.h>
#include <float.h>
using namespace spine;
RTTI_IMPL(EventTimeline, Timeline)
@ -67,7 +69,7 @@ void EventTimeline::apply(Skeleton &skeleton, float lastTime, float time, Vector
if (lastTime > time) {
// Fire events after last time for looped animations.
apply(skeleton, lastTime, std::numeric_limits<float>::max(), pEvents, alpha, blend, direction);
apply(skeleton, lastTime, FLT_MAX, pEvents, alpha, blend, direction);
lastTime = -1.0f;
} else if (lastTime >= _frames[frameCount - 1]) {
// Last time is after last frame.

View File

@ -32,7 +32,6 @@
#include <spine/MathUtil.h>
#include <math.h>
#include <random>
#include <stdlib.h>
// Required for division by 0 in _isNaN on MSVC

View File

@ -36,24 +36,24 @@
using namespace spine;
RTTI::RTTI(const std::string &className) : _className(className), _pBaseRTTI(NULL) {
RTTI::RTTI(const char *className) : _className(className), _pBaseRTTI(NULL) {
}
RTTI::RTTI(const std::string &className, const RTTI &baseRTTI) : _className(className), _pBaseRTTI(&baseRTTI) {
RTTI::RTTI(const char *className, const RTTI &baseRTTI) : _className(className), _pBaseRTTI(&baseRTTI) {
}
const std::string &RTTI::getClassName() const {
const char *RTTI::getClassName() const {
return _className;
}
bool RTTI::isExactly(const RTTI &rtti) const {
return (this->_className == rtti._className);
return !strcmp(this->_className, rtti._className);
}
bool RTTI::instanceOf(const RTTI &rtti) const {
const RTTI *pCompare = this;
while (pCompare) {
if (pCompare->_className == rtti._className) return true;
if (!strcmp(pCompare->_className, rtti._className)) return true;
pCompare = pCompare->_pBaseRTTI;
}
return false;

View File

@ -53,6 +53,8 @@
#include <spine/ContainerUtil.h>
#include <float.h>
using namespace spine;
Skeleton::Skeleton(SkeletonData *skeletonData) :
@ -417,10 +419,10 @@ void Skeleton::update(float delta) {
}
void Skeleton::getBounds(float &outX, float &outY, float &outWidth, float &outHeight, Vector<float> &outVertexBuffer) {
float minX = std::numeric_limits<float>::max();
float minY = std::numeric_limits<float>::max();
float maxX = std::numeric_limits<float>::min();
float maxY = std::numeric_limits<float>::min();
float minX = FLT_MAX;
float minY = FLT_MAX;
float maxX = FLT_MIN;
float maxY = FLT_MIN;
for (size_t i = 0; i < _drawOrder.size(); ++i) {
Slot *slot = _drawOrder[i];

View File

@ -39,6 +39,8 @@
#include <spine/Slot.h>
#include <float.h>
using namespace spine;
SkeletonBounds::SkeletonBounds() : _minX(0), _minY(0), _maxX(0), _maxY(0) {
@ -87,10 +89,10 @@ void SkeletonBounds::update(Skeleton &skeleton, bool updateAabb) {
if (updateAabb)
aabbCompute();
else {
_minX = std::numeric_limits<float>::min();
_minY = std::numeric_limits<float>::min();
_maxX = std::numeric_limits<float>::max();
_maxY = std::numeric_limits<float>::max();
_minX = FLT_MIN;
_minY = FLT_MIN;
_maxX = FLT_MAX;
_maxY = FLT_MAX;
}
}
@ -197,10 +199,10 @@ float SkeletonBounds::getHeight() {
}
void SkeletonBounds::aabbCompute() {
float minX = std::numeric_limits<float>::min();
float minY = std::numeric_limits<float>::min();
float maxX = std::numeric_limits<float>::max();
float maxY = std::numeric_limits<float>::max();
float minX = FLT_MIN;
float minY = FLT_MIN;
float maxX = FLT_MAX;
float maxY = FLT_MAX;
for (size_t i = 0, n = _polygons.size(); i < n; ++i) {
Polygon *polygon = _polygons[i];