mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2025-12-20 17:26:01 +08:00
[c][cpp] Using -Werror, both C and C++ runtime compiles without warnings now. Fixes #1391.
This commit is contained in:
parent
80971172ef
commit
f5632c4ef1
@ -6,8 +6,8 @@ if(MSVC)
|
||||
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
||||
set (CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||
else()
|
||||
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -pedantic -Wnonportable-include-path -Wshadow -std=c89")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wnon-virtual-dtor -pedantic -Wnonportable-include-path -Wshadow -std=c++03 -fno-exceptions -fno-rtti")
|
||||
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wunused-value -Wno-c++11-long-long -Wno-variadic-macros -Werror -Wextra -pedantic -Wnonportable-include-path -Wshadow -std=c89")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wunused-value -Wno-c++11-long-long -Wno-variadic-macros -Werror -Wextra -Wnon-virtual-dtor -pedantic -Wnonportable-include-path -Wshadow -std=c++03 -fno-exceptions -fno-rtti")
|
||||
endif()
|
||||
|
||||
set(CMAKE_INSTALL_PREFIX "./")
|
||||
|
||||
@ -101,6 +101,7 @@ void spIkConstraint_apply2 (spBone* parent, spBone* child, float targetX, float
|
||||
spBone* pp = parent->parent;
|
||||
float tx, ty, dd, dx, dy, l1, l2, a1, a2, r, td, sd, p;
|
||||
float id, x, y;
|
||||
float aa, bb, ll, ta, c0, c1, c2;
|
||||
if (alpha == 0) {
|
||||
spBone_updateWorldTransform(child);
|
||||
return;
|
||||
@ -171,7 +172,7 @@ void spIkConstraint_apply2 (spBone* parent, spBone* child, float targetX, float
|
||||
}
|
||||
}
|
||||
if (u) {
|
||||
float cosine, a, b;
|
||||
float cosine;
|
||||
l2 *= psx;
|
||||
cosine = (dd - l1 * l1 - l2 * l2) / (2 * l1 * l2);
|
||||
if (cosine < -1) cosine = -1;
|
||||
@ -184,10 +185,10 @@ void spIkConstraint_apply2 (spBone* parent, spBone* child, float targetX, float
|
||||
b = l2 * SIN(a2);
|
||||
a1 = ATAN2(ty * a - tx * b, tx * a + ty * b);
|
||||
} else {
|
||||
float a = psx * l2, b = psy * l2;
|
||||
float aa = a * a, bb = b * b, ll = l1 * l1, ta = ATAN2(ty, tx);
|
||||
float c0 = bb * ll + aa * dd - aa * bb, c1 = -2 * bb * l1, c2 = bb - aa;
|
||||
float d = c1 * c1 - 4 * c2 * c0;
|
||||
a = psx * l2; b = psy * l2;
|
||||
aa = a * a, bb = b * b, ll = l1 * l1, ta = ATAN2(ty, tx);
|
||||
c0 = bb * ll + aa * dd - aa * bb, c1 = -2 * bb * l1, c2 = bb - aa;
|
||||
d = c1 * c1 - 4 * c2 * c0;
|
||||
if (d >= 0) {
|
||||
float q = SQRT(d), r0, r1;
|
||||
if (c1 < 0) q = -q;
|
||||
|
||||
@ -71,7 +71,6 @@ spSkeletonBinary* spSkeletonBinary_create (spAtlas* atlas) {
|
||||
}
|
||||
|
||||
void spSkeletonBinary_dispose (spSkeletonBinary* self) {
|
||||
int i;
|
||||
_spSkeletonBinary* internal = SUB_CAST(_spSkeletonBinary, self);
|
||||
if (internal->ownsLoader) spAttachmentLoader_dispose(self->attachmentLoader);
|
||||
FREE(internal->linkedMeshes);
|
||||
|
||||
@ -127,10 +127,11 @@ void spSkeletonBounds_update (spSkeletonBounds* self, spSkeleton* skeleton, int/
|
||||
for (i = 0; i < skeleton->slotsCount; ++i) {
|
||||
spPolygon* polygon;
|
||||
spBoundingBoxAttachment* boundingBox;
|
||||
spAttachment* attachment;
|
||||
|
||||
spSlot* slot = skeleton->slots[i];
|
||||
if (!slot->bone->active) continue;
|
||||
spAttachment* attachment = slot->attachment;
|
||||
attachment = slot->attachment;
|
||||
if (!attachment || attachment->type != SP_ATTACHMENT_BOUNDING_BOX) continue;
|
||||
boundingBox = (spBoundingBoxAttachment*)attachment;
|
||||
self->boundingBoxes[self->count] = boundingBox;
|
||||
|
||||
@ -153,11 +153,11 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
Json* ik = Json_getItem(root, "ik");
|
||||
Json* transform = Json_getItem(root, "transform");
|
||||
Json* paths = Json_getItem(root, "paths");
|
||||
Json* deform = Json_getItem(root, "deform");
|
||||
Json* drawOrder = Json_getItem(root, "drawOrder");
|
||||
Json* deformJson = Json_getItem(root, "deform");
|
||||
Json* drawOrderJson = Json_getItem(root, "drawOrder");
|
||||
Json* events = Json_getItem(root, "events");
|
||||
Json *boneMap, *slotMap, *constraintMap;
|
||||
if (!drawOrder) drawOrder = Json_getItem(root, "draworder");
|
||||
if (!drawOrderJson) drawOrderJson = Json_getItem(root, "draworder");
|
||||
|
||||
for (boneMap = bones ? bones->child : 0; boneMap; boneMap = boneMap->next)
|
||||
timelinesCount += boneMap->size;
|
||||
@ -167,10 +167,10 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
timelinesCount += transform ? transform->size : 0;
|
||||
for (constraintMap = paths ? paths->child : 0; constraintMap; constraintMap = constraintMap->next)
|
||||
timelinesCount += constraintMap->size;
|
||||
for (constraintMap = deform ? deform->child : 0; constraintMap; constraintMap = constraintMap->next)
|
||||
for (constraintMap = deformJson ? deformJson->child : 0; constraintMap; constraintMap = constraintMap->next)
|
||||
for (slotMap = constraintMap->child; slotMap; slotMap = slotMap->next)
|
||||
timelinesCount += slotMap->size;
|
||||
if (drawOrder) ++timelinesCount;
|
||||
if (drawOrderJson) ++timelinesCount;
|
||||
if (events) ++timelinesCount;
|
||||
|
||||
animation = spAnimation_create(root->name, timelinesCount);
|
||||
@ -381,7 +381,7 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
}
|
||||
|
||||
/* Deform timelines. */
|
||||
for (constraintMap = deform ? deform->child : 0; constraintMap; constraintMap = constraintMap->next) {
|
||||
for (constraintMap = deformJson ? deformJson->child : 0; constraintMap; constraintMap = constraintMap->next) {
|
||||
spSkin* skin = spSkeletonData_findSkin(skeletonData, constraintMap->name);
|
||||
for (slotMap = constraintMap->child; slotMap; slotMap = slotMap->next) {
|
||||
int slotIndex = spSkeletonData_findSlotIndex(skeletonData, slotMap->name);
|
||||
@ -406,8 +406,8 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
timeline->attachment = SUPER(attachment);
|
||||
|
||||
for (valueMap = timelineMap->child, frameIndex = 0; valueMap; valueMap = valueMap->next, ++frameIndex) {
|
||||
Json* vertices = Json_getItem(valueMap, "vertices");
|
||||
float* deform;
|
||||
Json* vertices = Json_getItem(valueMap, "vertices");
|
||||
if (!vertices) {
|
||||
if (weighted) {
|
||||
deform = tempDeform;
|
||||
@ -428,9 +428,9 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
}
|
||||
memset(deform + v, 0, sizeof(float) * (deformLength - v));
|
||||
if (!weighted) {
|
||||
float* vertices = attachment->vertices;
|
||||
float* verticesValues = attachment->vertices;
|
||||
for (v = 0; v < deformLength; ++v)
|
||||
deform[v] += vertices[v];
|
||||
deform[v] += verticesValues[v];
|
||||
}
|
||||
}
|
||||
spDeformTimeline_setFrame(timeline, frameIndex, Json_getFloat(valueMap, "time", 0), deform);
|
||||
@ -445,9 +445,9 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
}
|
||||
|
||||
/* Draw order timeline. */
|
||||
if (drawOrder) {
|
||||
spDrawOrderTimeline* timeline = spDrawOrderTimeline_create(drawOrder->size, skeletonData->slotsCount);
|
||||
for (valueMap = drawOrder->child, frameIndex = 0; valueMap; valueMap = valueMap->next, ++frameIndex) {
|
||||
if (drawOrderJson) {
|
||||
spDrawOrderTimeline* timeline = spDrawOrderTimeline_create(drawOrderJson->size, skeletonData->slotsCount);
|
||||
for (valueMap = drawOrderJson->child, frameIndex = 0; valueMap; valueMap = valueMap->next, ++frameIndex) {
|
||||
int ii;
|
||||
int* drawOrder = 0;
|
||||
Json* offsets = Json_getItem(valueMap, "offsets");
|
||||
@ -486,7 +486,7 @@ static spAnimation* _spSkeletonJson_readAnimation (spSkeletonJson* self, Json* r
|
||||
FREE(drawOrder);
|
||||
}
|
||||
animation->timelines[animation->timelinesCount++] = SUPER_CAST(spTimeline, timeline);
|
||||
animation->duration = MAX(animation->duration, timeline->frames[drawOrder->size - 1]);
|
||||
animation->duration = MAX(animation->duration, timeline->frames[drawOrderJson->size - 1]);
|
||||
}
|
||||
|
||||
/* Event timeline. */
|
||||
@ -586,7 +586,7 @@ spSkeletonData* spSkeletonJson_readSkeletonDataFile (spSkeletonJson* self, const
|
||||
spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const char* json) {
|
||||
int i, ii;
|
||||
spSkeletonData* skeletonData;
|
||||
Json *root, *skeleton, *bones, *boneMap, *ik, *transform, *path, *slots, *skins, *animations, *events;
|
||||
Json *root, *skeleton, *bones, *boneMap, *ik, *transform, *pathJson, *slots, *skins, *animations, *events;
|
||||
_spSkeletonJson* internal = SUB_CAST(_spSkeletonJson, self);
|
||||
|
||||
FREE(self->error);
|
||||
@ -811,12 +811,12 @@ spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const cha
|
||||
}
|
||||
|
||||
/* Path constraints */
|
||||
path = Json_getItem(root, "path");
|
||||
if (path) {
|
||||
pathJson = Json_getItem(root, "path");
|
||||
if (pathJson) {
|
||||
Json *constraintMap;
|
||||
skeletonData->pathConstraintsCount = path->size;
|
||||
skeletonData->pathConstraints = MALLOC(spPathConstraintData*, path->size);
|
||||
for (constraintMap = path->child, i = 0; constraintMap; constraintMap = constraintMap->next, ++i) {
|
||||
skeletonData->pathConstraintsCount = pathJson->size;
|
||||
skeletonData->pathConstraints = MALLOC(spPathConstraintData*, pathJson->size);
|
||||
for (constraintMap = pathJson->child, i = 0; constraintMap; constraintMap = constraintMap->next, ++i) {
|
||||
const char* name;
|
||||
const char* item;
|
||||
|
||||
@ -1070,19 +1070,19 @@ spSkeletonData* spSkeletonJson_readSkeletonData (spSkeletonJson* self, const cha
|
||||
break;
|
||||
}
|
||||
case SP_ATTACHMENT_PATH: {
|
||||
spPathAttachment* path = SUB_CAST(spPathAttachment, attachment);
|
||||
spPathAttachment* pathAttachment = SUB_CAST(spPathAttachment, attachment);
|
||||
int vertexCount = 0;
|
||||
path->closed = Json_getInt(attachmentMap, "closed", 0);
|
||||
path->constantSpeed = Json_getInt(attachmentMap, "constantSpeed", 1);
|
||||
pathAttachment->closed = Json_getInt(attachmentMap, "closed", 0);
|
||||
pathAttachment->constantSpeed = Json_getInt(attachmentMap, "constantSpeed", 1);
|
||||
vertexCount = Json_getInt(attachmentMap, "vertexCount", 0);
|
||||
_readVertices(self, attachmentMap, SUPER(path), vertexCount << 1);
|
||||
_readVertices(self, attachmentMap, SUPER(pathAttachment), vertexCount << 1);
|
||||
|
||||
path->lengthsLength = vertexCount / 3;
|
||||
path->lengths = MALLOC(float, path->lengthsLength);
|
||||
pathAttachment->lengthsLength = vertexCount / 3;
|
||||
pathAttachment->lengths = MALLOC(float, pathAttachment->lengthsLength);
|
||||
|
||||
curves = Json_getItem(attachmentMap, "lengths");
|
||||
for (curves = curves->child, ii = 0; curves; curves = curves->next, ++ii) {
|
||||
path->lengths[ii] = curves->valueFloat * self->scale;
|
||||
pathAttachment->lengths[ii] = curves->valueFloat * self->scale;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@ -151,8 +151,9 @@ spShortArray* spTriangulator_triangulate(spTriangulator* self, spFloatArray* ver
|
||||
spShortArray_ensureCapacity(triangles, MAX(0, vertexCount - 2) << 2);
|
||||
|
||||
while (vertexCount > 3) {
|
||||
int previous = vertexCount - 1, i = 0, next = 1;
|
||||
int previous = vertexCount - 1, next = 1;
|
||||
int previousIndex, nextIndex;
|
||||
i = 0;
|
||||
while (1) {
|
||||
if (!isConcave[i]) {
|
||||
int p1 = indices[previous] << 1, p2 = indices[i] << 1, p3 = indices[next] << 1;
|
||||
|
||||
@ -92,6 +92,7 @@ void _spSwirlVertexEffect_transform(spVertexEffect* self, float* positionX, floa
|
||||
}
|
||||
|
||||
void _spSwirlVertexEffect_end(spVertexEffect* self) {
|
||||
UNUSED(self);
|
||||
}
|
||||
|
||||
spSwirlVertexEffect* spSwirlVertexEffect_create(float radius) {
|
||||
|
||||
@ -55,7 +55,6 @@ public:
|
||||
|
||||
void reportLeaks() {
|
||||
for (std::map<void*, Allocation>::iterator it = _allocated.begin(); it != _allocated.end(); it++) {
|
||||
void* addr = it->second.address;
|
||||
printf("\"%s:%i (%zu bytes at %p)\n", it->second.fileName, it->second.line, it->second.size, it->second.address);
|
||||
}
|
||||
printf("allocations: %zu, reallocations: %zu, frees: %zu\n", _allocations, _reallocations, _frees);
|
||||
|
||||
@ -128,7 +128,7 @@ void IkConstraint::apply(Bone &parent, Bone &child, float targetX, float targetY
|
||||
dx = (x * d - y * b) * id - px;
|
||||
dy = (y * a - x * c) * id - py;
|
||||
l1 = MathUtil::sqrt(dx * dx + dy * dy);
|
||||
l2 = child._data.getLength() * csx, a1, a2;
|
||||
l2 = child._data.getLength() * csx;
|
||||
if (l1 < 0.0001) {
|
||||
apply(parent, targetX, targetY, false, stretch, false, alpha);
|
||||
child.updateWorldTransform(cx, cy, 0, child._ascaleX, child._ascaleY, child._ashearX, child._ashearY);
|
||||
@ -150,7 +150,7 @@ void IkConstraint::apply(Bone &parent, Bone &child, float targetX, float targetY
|
||||
}
|
||||
}
|
||||
if (u) {
|
||||
float cosine, a, b;
|
||||
float cosine;
|
||||
l2 *= psx;
|
||||
cosine = (dd - l1 * l1 - l2 * l2) / (2 * l1 * l2);
|
||||
if (cosine < -1) cosine = -1;
|
||||
@ -163,10 +163,10 @@ void IkConstraint::apply(Bone &parent, Bone &child, float targetX, float targetY
|
||||
b = l2 * MathUtil::sin(a2);
|
||||
a1 = MathUtil::atan2(ty * a - tx * b, tx * a + ty * b);
|
||||
} else {
|
||||
float a = psx * l2, b = psy * l2;
|
||||
a = psx * l2, b = psy * l2;
|
||||
float aa = a * a, bb = b * b, ll = l1 * l1, ta = MathUtil::atan2(ty, tx);
|
||||
float c0 = bb * ll + aa * dd - aa * bb, c1 = -2 * bb * l1, c2 = bb - aa;
|
||||
float d = c1 * c1 - 4 * c2 * c0;
|
||||
d = c1 * c1 - 4 * c2 * c0;
|
||||
if (d >= 0) {
|
||||
float q = MathUtil::sqrt(d), r0, r1;
|
||||
if (c1 < 0) q = -q;
|
||||
|
||||
@ -687,8 +687,7 @@ SkeletonData *SkeletonJson::readSkeletonData(const char *json) {
|
||||
int vertexCount = 0;
|
||||
const char *end = Json::getString(attachmentMap, "end", 0);
|
||||
if (end) {
|
||||
SlotData *slot = skeletonData->findSlot(end);
|
||||
clip->_endSlot = slot;
|
||||
clip->_endSlot = skeletonData->findSlot(end);
|
||||
}
|
||||
vertexCount = Json::getInt(attachmentMap, "vertexCount", 0) << 1;
|
||||
readVertices(attachmentMap, clip, vertexCount);
|
||||
|
||||
@ -158,10 +158,10 @@ void Skin::attachAll(Skeleton &skeleton, Skin &oldSkin) {
|
||||
}
|
||||
|
||||
void Skin::addSkin(Skin* other) {
|
||||
for (int i = 0; i < other->getBones().size(); i++)
|
||||
for (size_t i = 0; i < other->getBones().size(); i++)
|
||||
if (!_bones.contains(other->getBones()[i])) _bones.add(other->getBones()[i]);
|
||||
|
||||
for (int i = 0; i < other->getConstraints().size(); i++)
|
||||
for (size_t i = 0; i < other->getConstraints().size(); i++)
|
||||
if (!_constraints.contains(other->getConstraints()[i])) _constraints.add(other->getConstraints()[i]);
|
||||
|
||||
AttachmentMap::Entries entries = other->getAttachments();
|
||||
@ -172,10 +172,10 @@ void Skin::addSkin(Skin* other) {
|
||||
}
|
||||
|
||||
void Skin::copySkin(Skin* other) {
|
||||
for (int i = 0; i < other->getBones().size(); i++)
|
||||
for (size_t i = 0; i < other->getBones().size(); i++)
|
||||
if (!_bones.contains(other->getBones()[i])) _bones.add(other->getBones()[i]);
|
||||
|
||||
for (int i = 0; i < other->getConstraints().size(); i++)
|
||||
for (size_t i = 0; i < other->getConstraints().size(); i++)
|
||||
if (!_constraints.contains(other->getConstraints()[i])) _constraints.add(other->getConstraints()[i]);
|
||||
|
||||
AttachmentMap::Entries entries = other->getAttachments();
|
||||
|
||||
@ -40,6 +40,7 @@ using namespace spine;
|
||||
#include <stdlib.h>
|
||||
|
||||
void callback (AnimationState* state, EventType type, TrackEntry* entry, Event* event) {
|
||||
UNUSED(state);
|
||||
const char* animationName = (entry && entry->animation) ? entry->animation->name : 0;
|
||||
|
||||
switch (type) {
|
||||
@ -107,6 +108,7 @@ void testcase (void func(SkeletonData* skeletonData, Atlas* atlas),
|
||||
}
|
||||
|
||||
void spineboy (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonBounds* bounds = SkeletonBounds_create();
|
||||
|
||||
// Configure mixing.
|
||||
@ -164,6 +166,7 @@ void spineboy (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void goblins (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -199,6 +202,7 @@ void goblins (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void raptor (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -242,6 +246,7 @@ void raptor (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void tank (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -272,6 +277,7 @@ void tank (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void vine (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -303,6 +309,7 @@ void vine (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void stretchyman (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -334,6 +341,7 @@ void stretchyman (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -349,7 +357,7 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
window.setFramerateLimit(60);
|
||||
sf::Event event;
|
||||
sf::Clock deltaClock;
|
||||
float swirlTime = 0;
|
||||
|
||||
while (window.isOpen()) {
|
||||
while (window.pollEvent(event))
|
||||
if (event.type == sf::Event::Closed) window.close();
|
||||
@ -366,6 +374,7 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void owl (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -423,6 +432,7 @@ void owl (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
* Used for debugging purposes during runtime development
|
||||
*/
|
||||
void test (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
spSkeleton* skeleton = Skeleton_create(skeletonData);
|
||||
spAnimationStateData* animData = spAnimationStateData_create(skeletonData);
|
||||
spAnimationState* animState = spAnimationState_create(animData);
|
||||
@ -447,6 +457,7 @@ void test (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void testSkinsApi(SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -488,6 +499,7 @@ void testSkinsApi(SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void testMixAndMatch(SkeletonData* skeletonData, Atlas* atlas) {
|
||||
UNUSED(atlas);
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
|
||||
@ -256,11 +256,11 @@ void SkeletonDrawable::draw (RenderTarget& target, RenderStates states) const {
|
||||
if (vertexEffect != 0) {
|
||||
spFloatArray_clear(tempUvs);
|
||||
spColorArray_clear(tempColors);
|
||||
for (int i = 0; i < verticesCount; i++) {
|
||||
for (int j = 0; j < verticesCount; j++) {
|
||||
spColor vertexColor = light;
|
||||
spColor dark;
|
||||
dark.r = dark.g = dark.b = dark.a = 0;
|
||||
int index = i << 1;
|
||||
int index = j << 1;
|
||||
float x = vertices[index];
|
||||
float y = vertices[index + 1];
|
||||
float u = uvs[index];
|
||||
@ -273,8 +273,8 @@ void SkeletonDrawable::draw (RenderTarget& target, RenderStates states) const {
|
||||
spColorArray_add(tempColors, vertexColor);
|
||||
}
|
||||
|
||||
for (int i = 0; i < indicesCount; ++i) {
|
||||
int index = indices[i] << 1;
|
||||
for (int j = 0; j < indicesCount; ++j) {
|
||||
int index = indices[j] << 1;
|
||||
vertex.position.x = vertices[index];
|
||||
vertex.position.y = vertices[index + 1];
|
||||
vertex.texCoords.x = uvs[index] * size.x;
|
||||
@ -287,8 +287,8 @@ void SkeletonDrawable::draw (RenderTarget& target, RenderStates states) const {
|
||||
vertexArray->append(vertex);
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < indicesCount; ++i) {
|
||||
int index = indices[i] << 1;
|
||||
for (int j = 0; j < indicesCount; ++j) {
|
||||
int index = indices[j] << 1;
|
||||
vertex.position.x = vertices[index];
|
||||
vertex.position.y = vertices[index + 1];
|
||||
vertex.texCoords.x = uvs[index] * size.x;
|
||||
|
||||
@ -42,6 +42,7 @@ unique_ptr<T> make_unique(Args&&... args) {
|
||||
}
|
||||
|
||||
void callback (AnimationState* state, EventType type, TrackEntry* entry, Event* event) {
|
||||
SP_UNUSED(state);
|
||||
const String& animationName = (entry && entry->getAnimation()) ? entry->getAnimation()->getName() : String("");
|
||||
|
||||
switch (type) {
|
||||
@ -104,6 +105,8 @@ void testcase (void func(SkeletonData* skeletonData, Atlas* atlas),
|
||||
}
|
||||
|
||||
void spineboy (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonBounds bounds;
|
||||
|
||||
// Configure mixing.
|
||||
@ -158,6 +161,8 @@ void spineboy (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void goblins (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -197,6 +202,8 @@ void goblins (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void raptor (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -240,6 +247,8 @@ void raptor (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void tank (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -269,6 +278,8 @@ void tank (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void vine (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -299,6 +310,8 @@ void vine (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void stretchyman (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -330,6 +343,8 @@ void stretchyman (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void stretchymanStrechyIk (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable* drawable = new SkeletonDrawable(skeletonData);
|
||||
drawable->timeScale = 1;
|
||||
drawable->setUsePremultipliedAlpha(true);
|
||||
@ -363,6 +378,8 @@ void stretchymanStrechyIk (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -377,7 +394,7 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
window.setFramerateLimit(60);
|
||||
sf::Event event;
|
||||
sf::Clock deltaClock;
|
||||
float swirlTime = 0;
|
||||
|
||||
while (window.isOpen()) {
|
||||
while (window.pollEvent(event)) {
|
||||
if (event.type == sf::Event::Closed) window.close();
|
||||
@ -395,6 +412,8 @@ void coin (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void owl (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -451,6 +470,8 @@ void owl (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
}
|
||||
|
||||
void mixAndMatch (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
SkeletonDrawable drawable(skeletonData);
|
||||
drawable.timeScale = 1;
|
||||
drawable.setUsePremultipliedAlpha(true);
|
||||
@ -499,6 +520,8 @@ void mixAndMatch (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
* Used for debugging purposes during runtime development
|
||||
*/
|
||||
void test (SkeletonData* skeletonData, Atlas* atlas) {
|
||||
SP_UNUSED(atlas);
|
||||
|
||||
Skeleton skeleton(skeletonData);
|
||||
AnimationStateData animationStateData(skeletonData);
|
||||
AnimationState animationState(&animationStateData);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user