diff --git a/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Browse.VC.db b/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Browse.VC.db deleted file mode 100644 index 0f9f08e96..000000000 Binary files a/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Browse.VC.db and /dev/null differ diff --git a/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Solution.VC.db b/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Solution.VC.db deleted file mode 100644 index b00670bc6..000000000 Binary files a/spine-cocos2dx/example/proj.win32/.vs/spine-cocos2d-x/v16/Solution.VC.db and /dev/null differ diff --git a/spine-cocos2dx/example/proj.win32/Release.win32/librecast.lib b/spine-cocos2dx/example/proj.win32/Release.win32/librecast.lib deleted file mode 100644 index 9b2efdfe3..000000000 Binary files a/spine-cocos2dx/example/proj.win32/Release.win32/librecast.lib and /dev/null differ diff --git a/spine-cocos2dx/src/spine/SkeletonRenderer.h b/spine-cocos2dx/src/spine/SkeletonRenderer.h index 7f5413f98..99c8b1eb6 100644 --- a/spine-cocos2dx/src/spine/SkeletonRenderer.h +++ b/spine-cocos2dx/src/spine/SkeletonRenderer.h @@ -1,31 +1,30 @@ /****************************************************************************** - * Spine Runtimes Software License v2.5 + * Spine Runtimes License Agreement + * Last updated May 1, 2019. Replaces all prior versions. * - * Copyright (c) 2013-2016, Esoteric Software - * All rights reserved. + * Copyright (c) 2013-2019, Esoteric Software LLC * - * You are granted a perpetual, non-exclusive, non-sublicensable, and - * non-transferable license to use, install, execute, and perform the Spine - * Runtimes software and derivative works solely for personal or internal - * use. Without the written permission of Esoteric Software (see Section 2 of - * the Spine Software License Agreement), you may not (a) modify, translate, - * adapt, or develop new applications using the Spine Runtimes or otherwise - * create derivative works or improvements of the Spine Runtimes or (b) remove, - * delete, alter, or obscure any trademarks or any copyright, trademark, patent, - * or other intellectual property or proprietary rights notices on or in the - * Software, including any copy thereof. Redistributions in binary or source - * form must include this license and terms. + * Integration of the Spine Runtimes into software or otherwise creating + * derivative works of the Spine Runtimes is permitted under the terms and + * conditions of Section 2 of the Spine Editor License Agreement: + * http://esotericsoftware.com/spine-editor-license * - * THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE "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 ESOTERIC SOFTWARE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS INTERRUPTION, OR LOSS OF - * USE, DATA, OR PROFITS) 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. + * Otherwise, it is permitted to integrate the Spine Runtimes into software + * or otherwise create derivative works of the Spine Runtimes (collectively, + * "Products"), provided that each user of the Products must obtain their own + * Spine Editor license and redistribution of the Products in any form must + * include this license and copyright notice. + * + * THIS SOFTWARE IS PROVIDED BY ESOTERIC SOFTWARE LLC "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 ESOTERIC SOFTWARE LLC BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, BUSINESS + * INTERRUPTION, OR LOSS OF USE, DATA, OR PROFITS) 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. *****************************************************************************/ #ifndef SPINE_SKELETONRENDERER_H_ @@ -36,130 +35,130 @@ namespace spine { -class AttachmentVertices; + class AttachmentVertices; -/* Draws a skeleton. */ -class SkeletonRenderer: public cocos2d::Node, public cocos2d::BlendProtocol { -public: - CREATE_FUNC(SkeletonRenderer); - static SkeletonRenderer* createWithSkeleton(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false); - static SkeletonRenderer* createWithData (SkeletonData* skeletonData, bool ownsSkeletonData = false); - static SkeletonRenderer* createWithFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); - static SkeletonRenderer* createWithFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); + /* Draws a skeleton. */ + class SkeletonRenderer: public cocos2d::Node, public cocos2d::BlendProtocol { + public: + CREATE_FUNC(SkeletonRenderer); + static SkeletonRenderer* createWithSkeleton(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false); + static SkeletonRenderer* createWithData (SkeletonData* skeletonData, bool ownsSkeletonData = false); + static SkeletonRenderer* createWithFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); + static SkeletonRenderer* createWithFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); - void update (float deltaTime) override; - void draw (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags) override; - //virtual bool isAutoCulled () const override; - cocos2d::Rect getBoundingBox () const override; - void onEnter () override; - void onExit () override; + void update (float deltaTime) override; + void draw (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags) override; + //virtual bool isAutoCulled () const override; + cocos2d::Rect getBoundingBox () const override; + void onEnter () override; + void onExit () override; - Skeleton* getSkeleton() const; + Skeleton* getSkeleton() const; - void setTimeScale(float scale); - float getTimeScale() const; + void setTimeScale(float scale); + float getTimeScale() const; - /* */ - void setDebugSlotsEnabled(bool enabled); - bool getDebugSlotsEnabled() const; + /* */ + void setDebugSlotsEnabled(bool enabled); + bool getDebugSlotsEnabled() const; - void setDebugBonesEnabled(bool enabled); - bool getDebugBonesEnabled() const; + void setDebugBonesEnabled(bool enabled); + bool getDebugBonesEnabled() const; - void setDebugMeshesEnabled(bool enabled); - bool getDebugMeshesEnabled() const; + void setDebugMeshesEnabled(bool enabled); + bool getDebugMeshesEnabled() const; - void setDebugBoundingRectEnabled(bool enabled); - bool getDebugBoundingRectEnabled() const; + void setDebugBoundingRectEnabled(bool enabled); + bool getDebugBoundingRectEnabled() const; - // --- Convenience methods for common Skeleton_* functions. - void updateWorldTransform (); + // --- Convenience methods for common Skeleton_* functions. + void updateWorldTransform (); - void setToSetupPose (); - void setBonesToSetupPose (); - void setSlotsToSetupPose (); + void setToSetupPose (); + void setBonesToSetupPose (); + void setSlotsToSetupPose (); - /* Returns 0 if the bone was not found. */ - Bone* findBone (const std::string& boneName) const; - /* Returns 0 if the slot was not found. */ - Slot* findSlot (const std::string& slotName) const; + /* Returns 0 if the bone was not found. */ + Bone* findBone (const std::string& boneName) const; + /* Returns 0 if the slot was not found. */ + Slot* findSlot (const std::string& slotName) const; - /* Sets the skin used to look up attachments not found in the SkeletonData defaultSkin. Attachments from the new skin are - * attached if the corresponding attachment from the old skin was attached. Returns false if the skin was not found. - * @param skin May be empty string ("") for no skin.*/ - void setSkin (const std::string& skinName); - /** @param skin May be 0 for no skin.*/ - void setSkin (const char* skinName); + /* Sets the skin used to look up attachments not found in the SkeletonData defaultSkin. Attachments from the new skin are + * attached if the corresponding attachment from the old skin was attached. Returns false if the skin was not found. + * @param skin May be empty string ("") for no skin.*/ + void setSkin (const std::string& skinName); + /** @param skin May be 0 for no skin.*/ + void setSkin (const char* skinName); - /* Returns 0 if the slot or attachment was not found. */ - Attachment* getAttachment (const std::string& slotName, const std::string& attachmentName) const; - /* Returns false if the slot or attachment was not found. - * @param attachmentName May be empty string ("") for no attachment. */ - bool setAttachment (const std::string& slotName, const std::string& attachmentName); - /* @param attachmentName May be 0 for no attachment. */ - bool setAttachment (const std::string& slotName, const char* attachmentName); + /* Returns 0 if the slot or attachment was not found. */ + Attachment* getAttachment (const std::string& slotName, const std::string& attachmentName) const; + /* Returns false if the slot or attachment was not found. + * @param attachmentName May be empty string ("") for no attachment. */ + bool setAttachment (const std::string& slotName, const std::string& attachmentName); + /* @param attachmentName May be 0 for no attachment. */ + bool setAttachment (const std::string& slotName, const char* attachmentName); - /* Enables/disables two color tinting for this instance. May break batching */ - void setTwoColorTint(bool enabled); - /* Whether two color tinting is enabled */ - bool isTwoColorTint(); + /* Enables/disables two color tinting for this instance. May break batching */ + void setTwoColorTint(bool enabled); + /* Whether two color tinting is enabled */ + bool isTwoColorTint(); - /* Sets the vertex effect to be used, set to 0 to disable vertex effects */ - void setVertexEffect(VertexEffect* effect); + /* Sets the vertex effect to be used, set to 0 to disable vertex effects */ + void setVertexEffect(VertexEffect* effect); - /* Sets the range of slots that should be rendered. Use -1, -1 to clear the range */ - void setSlotsRange(int startSlotIndex, int endSlotIndex); + /* Sets the range of slots that should be rendered. Use -1, -1 to clear the range */ + void setSlotsRange(int startSlotIndex, int endSlotIndex); - // --- BlendProtocol - void setBlendFunc (const cocos2d::BlendFunc& blendFunc)override; - const cocos2d::BlendFunc& getBlendFunc () const override; - void setOpacityModifyRGB (bool value) override; - bool isOpacityModifyRGB () const override; + // --- BlendProtocol + void setBlendFunc (const cocos2d::BlendFunc& blendFunc)override; + const cocos2d::BlendFunc& getBlendFunc () const override; + void setOpacityModifyRGB (bool value) override; + bool isOpacityModifyRGB () const override; -CC_CONSTRUCTOR_ACCESS: - SkeletonRenderer (); - SkeletonRenderer(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false, bool ownsAtlas = false); - SkeletonRenderer (SkeletonData* skeletonData, bool ownsSkeletonData = false); - SkeletonRenderer (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); - SkeletonRenderer (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); + CC_CONSTRUCTOR_ACCESS: + SkeletonRenderer (); + SkeletonRenderer(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false, bool ownsAtlas = false); + SkeletonRenderer (SkeletonData* skeletonData, bool ownsSkeletonData = false); + SkeletonRenderer (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); + SkeletonRenderer (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); - virtual ~SkeletonRenderer (); + virtual ~SkeletonRenderer (); - void initWithSkeleton(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false, bool ownsAtlas = false); - void initWithData (SkeletonData* skeletonData, bool ownsSkeletonData = false); - void initWithJsonFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); - void initWithJsonFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); - void initWithBinaryFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); - void initWithBinaryFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); + void initWithSkeleton(Skeleton* skeleton, bool ownsSkeleton = false, bool ownsSkeletonData = false, bool ownsAtlas = false); + void initWithData (SkeletonData* skeletonData, bool ownsSkeletonData = false); + void initWithJsonFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); + void initWithJsonFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); + void initWithBinaryFile (const std::string& skeletonDataFile, Atlas* atlas, float scale = 1); + void initWithBinaryFile (const std::string& skeletonDataFile, const std::string& atlasFile, float scale = 1); - virtual void initialize (); + virtual void initialize (); -protected: - void setSkeletonData (SkeletonData* skeletonData, bool ownsSkeletonData); - void setupGLProgramState(bool twoColorTintEnabled); - virtual void drawDebug (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags); + protected: + void setSkeletonData (SkeletonData* skeletonData, bool ownsSkeletonData); + void setupGLProgramState(bool twoColorTintEnabled); + virtual void drawDebug (cocos2d::Renderer* renderer, const cocos2d::Mat4& transform, uint32_t transformFlags); - bool _ownsSkeletonData; - bool _ownsSkeleton; - bool _ownsAtlas = false; - Atlas* _atlas; - AttachmentLoader* _attachmentLoader; - cocos2d::CustomCommand _debugCommand; - cocos2d::BlendFunc _blendFunc; - bool _premultipliedAlpha; - Skeleton* _skeleton; - float _timeScale; - bool _debugSlots; - bool _debugBones; - bool _debugMeshes; - bool _debugBoundingRect; - SkeletonClipping* _clipper; - VertexEffect* _effect; - cocos2d::Rect _boundingRect; + bool _ownsSkeletonData; + bool _ownsSkeleton; + bool _ownsAtlas = false; + Atlas* _atlas; + AttachmentLoader* _attachmentLoader; + cocos2d::CustomCommand _debugCommand; + cocos2d::BlendFunc _blendFunc; + bool _premultipliedAlpha; + Skeleton* _skeleton; + float _timeScale; + bool _debugSlots; + bool _debugBones; + bool _debugMeshes; + bool _debugBoundingRect; + SkeletonClipping* _clipper; + VertexEffect* _effect; + cocos2d::Rect _boundingRect; - int _startSlotIndex; - int _endSlotIndex; -}; + int _startSlotIndex; + int _endSlotIndex; + }; }