[HN Gopher] Spine - 2D skeletal animation for games, with physic...
       ___________________________________________________________________
        
       Spine - 2D skeletal animation for games, with physical secondary
       motions
        
       Author : diggan
       Score  : 119 points
       Date   : 2024-08-16 17:40 UTC (4 days ago)
        
 (HTM) web link (en.esotericsoftware.com)
 (TXT) w3m dump (en.esotericsoftware.com)
        
       | telchior wrote:
       | Spine is really lovely. It was great back in 2019 when I used it
       | to release a game. They released the 4.0 version a year later
       | with a lot of updates and while I have no plans to make another
       | 2D side-scrolling type of game... this one piece of software is
       | what makes it tempting.
       | 
       | The thing I REALLY appreciate is the lifetime license. Checking
       | my emails, I bought the professional version in 2015 for $289.
       | Now it's almost a decade later, still getting awesome updates,
       | and I can still get the latest version. Totally unlike the
       | current trend... I'm looking at you, $20 / month for Speedtree.
        
         | marcinzm wrote:
         | I mean, Spline seems to do the same thing if your company makes
         | enough money:
         | 
         | >Spine Enterprise is required for businesses with $500,000 USD
         | or more annual revenue. The license allows Spine Enterprise to
         | be used by the specified number of users for a period of one
         | year. All updates are provided during this time. After one
         | year, Spine Enterprise must be licensed again to continue using
         | Spine Enterprise.
        
           | telchior wrote:
           | I didn't know that! Pretty sure the enterprise license didn't
           | exist when I bought it.
           | 
           | I like these honour system enterprise licenses better than
           | never-ending subscriptions, but they are becoming too common
           | in the game industry.
        
             | johnnyanmac wrote:
             | common anywhere. Even if you paid only $3 a month 10 years
             | ago, that subscription would still be more expensive to a
             | lifetime professional as of now ($360) than your upfront
             | price of $289. maybe a bit cheaper when you adjust
             | inflation, but another year would close that gap.
             | 
             | So you get the allure from the business side, since they
             | are also continually spending time and probably labor
             | updating the tech.
        
         | animal531 wrote:
         | I feel(/felt) the same way about ZBrush. I bought my copy
         | probably a decade ago and have received free upgrades since
         | them.
         | 
         | Now of course they've been bought by Maxon and the price is now
         | about 33 bucks a monnth.
        
       | ugh123 wrote:
       | Spine is cool, but I find it ridiculous for more and more tool
       | software for games to force Enterprise licenses, rev share, etc
       | onto developers.
       | 
       | >Businesses with more than $500,000 USD annual revenue require a
       | Spine Enterprise license
        
         | yellowapple wrote:
         | If you're making $500k/year in revenue, Spine's license cost is
         | probably the least of your worries.
         | 
         | I tend to be averse to proprietary dependencies more from a
         | maintainability/longevity aspect than a cost aspect. If
         | Esoteric Software goes out of business, who develops future
         | versions of Spine? Are they kind enough to open-source it
         | before turning the lights off? Does it get sold to some other
         | company that runs it into the ground? Does development just
         | cease? Are there licensing servers that the tools and SDKs and
         | such have to ping to be functional, and if so, what happens
         | when those servers shut down?
        
           | a1o wrote:
           | To be honest I am surprised there isn't an open source
           | alternative for this type of animation in 2D - I only know of
           | blender and lottie as somewhat closer to it but nothing that
           | is quite like Spine.
        
             | npinsker wrote:
             | Blender (via https://github.com/ndee85/coa_tools) and
             | Godot's Skeleton2D node are both open-source. I'd assume
             | Spine's advanced features far outpace them, but I also
             | suspect the need for such features is rare.
        
             | johnnyanmac wrote:
             | 2D skeletal animation is an order of magnitude easier than
             | 3d, but still a huge task in and of itself, with unique
             | issues working with sprites compared to meshes. So it still
             | requires very skilled understanding of art and physics, but
             | there's a lot less demand as the AA/AAA industry is 99% 3d
             | in the west.
             | 
             | It's not open source, but the best competitor to Spine is
             | probably Live2D, which is used by a lot of Eastern studios
             | (and basically dominant in the mobile space). You'd
             | probably find some open source implementations over in
             | Japan.
        
             | Johanx64 wrote:
             | Spine is extremely polished, thought out and well written
             | piece of software. Expecting that somebody will do this
             | kind of highest quality work for free is ludicrous.
        
               | badsectoracula wrote:
               | You could say the same about Blender, Krita and a bunch
               | of other open source programs.
        
               | badlogic wrote:
               | We actually come from a strong FOSS background (Kryo,
               | libGDX, and more).
               | 
               | For Spine, FOSS didn't make sense to us, as you either
               | end up with open-core, which over time will shift
               | incentives to work on the proprietary parts, or a
               | donation based funding model, which is stressful and
               | unpredictable.
        
           | ugh123 wrote:
           | It just seems like a "money grab" for them to claim a chunk
           | of success for my game/product each year when I probably
           | don't need any more support for the tool than when I was <
           | $500k/year in revenue.
        
             | johnnyanmac wrote:
             | If you could make 500k/year (and lets say it reduces to a
             | drastic 200k after taxes/platform cuts), I don't see why
             | paying 1.25% (+0.2% per extra seat) is a hard ask for a
             | core tech.
        
           | nox101 wrote:
           | This is all true but tons of the industry functions on FMOD,
           | Havok, RadTools, and many other proprietary dependencies.
        
         | taneq wrote:
         | The enterprise license here seems pretty reasonable.
         | $2.5k/yr+$370/yr per extra seat with no revenue share, and no
         | cutoff for your existing products at the end of the year.
        
         | mmooss wrote:
         | > Spine is cool, but I find it ridiculous for more and more
         | tool software for games to force Enterprise licenses, rev
         | share, etc onto developers.
         | 
         | Price your software they way you want Spine to price theirs,
         | and you'll fall under the 500K threshold and be all set.
        
         | wredue wrote:
         | I love the developers are seeing that they deserve to be paid
         | for their work and that corporations do not deserve to make
         | money hand over fist for free.
         | 
         | More developers, especially "open source" ones, need to be
         | charging corporations for their work.
        
         | badlogic wrote:
         | The Enterprise license doesn't claim any revenue share. It's a
         | subscription model that triggers above a revenue threshold. It
         | cross-finances the non-enterprise, pay once lifetime licenses
         | for individuals, which get updates forever.
        
         | thegolyo wrote:
         | Spine is used extensively in the gambling industry for 2d slot
         | machines, so it makes sense to have a licensing model to
         | accomodate these users, while still offering a tier for indie
         | devs.
        
         | torginus wrote:
         | Isn't this trivial to get around? What if you worked with
         | individual art contractors (which is not that uncommon in of
         | itself), then the revenue requirement wouldn't manifest on your
         | side, but theirs.
        
           | badlogic wrote:
           | It's fine if they don't use the Spine Runtimes to playback
           | animations, i.e. via sprite sheets. Most will want to use the
           | Spine Runtimes though, which requires them to have a Spine
           | license.
        
       | a1o wrote:
       | It would be great if it was possible to develop a plugin for an
       | engine to load spine in a game and let the decision of the
       | license to the game developer (and not the engine developer).
       | Right now you either are blessed that the spine devs decided to
       | care for your engine or you aren't. It would be nice if a FOSS
       | engine dev could develop a Spine plugin and then a game dev that
       | was thinking about that engine could either opt to use it or not.
        
         | taormina wrote:
         | This is basically what the community is already doing. This is
         | the package I've been using in Flame and its license
         | (https://pub.dev/packages/flame_spine).
         | 
         | "License
         | 
         | The code and all associated assets of the flame_spine package
         | is distributed under the MIT License (see the LICENSE file).
         | HOWEVER, as flame_spine includes Spine Runtime libraries, your
         | use of flame_spine in your games or other products is also
         | subject to the terms and conditions of the Spine Runtime
         | License Agreement (see the LICENSE file).
         | 
         | In particular, in order to use flame_spine you are required to
         | obtain a valid Spine Editor License."
        
           | a1o wrote:
           | In the legalese text it's written in way that the person that
           | is making the plugin must also hold a license which is too
           | much, not going to pay to do work.
        
             | johnnyanmac wrote:
             | >the person that is making the plugin must also hold a
             | license which is too much, not going to pay to do work.
             | 
             | I suppose the idea is that you're paying to work on
             | something that will make you money. And then if you have a
             | FOSS mentality you can share that for others using your
             | engine.
             | 
             | But I'm sure there's wiggle room if you contact. if you're
             | an up and coming engine and are interested I'm sure Spine
             | only has to gain by having its tech ready to go with it.
        
             | n4te wrote:
             | Anyone can distribute the Spine Runtimes without a Spine
             | license, but they have to attach the Spine Runtimes
             | license, which means the need for a Spine license is pushed
             | down the line to their users. In this way someone without a
             | Spine license can use the Spine Runtimes in game
             | toolkits/etc without having a license themselves.
             | https://esotericsoftware.com/spine-runtimes-license
        
             | rafram wrote:
             | Presumably, if you're writing a Spine runtime, it's because
             | you'd like to integrate it into one of your own projects in
             | an environment that they don't officially support. I'm not
             | sure why you'd take on that "work" if you didn't already
             | have a license.
        
         | badlogic wrote:
         | The license explicitely allows that. Basically all third party
         | integrations do exactly that.
        
           | a1o wrote:
           | That's not what you wrote here
           | 
           | https://github.com/EsotericSoftware/spine-
           | runtimes/issues/20...
        
             | badlogic wrote:
             | No, that's exactly what I meant. The author says they want
             | to write a plugin which uses spine-cpp to render Spine
             | skeletons.
             | 
             | A user of that plugin needs a Spine Editor license. The
             | author of the plugin does not. Users of the engine not
             | using the plugin do not need a license either. That's how
             | integrations with e.g. GameMaker, Defold, etc. have worked
             | for years.
        
       | taormina wrote:
       | Spine is fantastic. I'm using it for my latest game, Danger
       | World. All of the animations my artists are working on are done
       | in Spine and I'm able to use a bridge package that someone wrote
       | to integrate what I need into Flame's engine.
        
       | nox101 wrote:
       | Is Rive at all comparable?
       | 
       | https://rive.app/editor
       | 
       | The open sourced their renderer recently
       | 
       | https://rive.app/blog/rive-renderer-now-open-source-and-avai...
        
         | taormina wrote:
         | It's a comparable tool, yes, and common in the industry, but I
         | have not personally used it yet.
        
           | n4te wrote:
           | The Bay Area start up money bought nice marketing that makes
           | it look popular, but it's not really.
        
         | pier25 wrote:
         | Rive does skeletal animation and a lot more.
        
         | diggan wrote:
         | Slightly different target use cases. You'd use Rive for your
         | UI, but not necessarily your player character and other things
         | that you want animated "with" the gameplay. For that, you'd use
         | Spine.
        
           | animal531 wrote:
           | Yeah, although there are Rive examples using it as a game
           | it's really targeted to vector-art your UI and allows you to
           | create animations inside their software, which you then just
           | play in whichever engine (such as Unity etc).
        
       | rkagerer wrote:
       | Cursory question - what's with the 'screenshots' that look like
       | they're photos of the screen taken with a smartphone?
        
       | lancesells wrote:
       | At one point in my life I did a lot of work animating comic book
       | art for various projects. I wish this existed back then. It would
       | have made the work so much better.
        
         | Joel_Mckay wrote:
         | A lesser known 2D project feature in Blender :
         | 
         | https://www.youtube.com/watch?v=5epzCprCdGc
         | 
         | The program is tolerable if you take a course to learn the
         | silly shortcut key interface, and spend about $300 on after
         | market plugins. =3
        
       | yalok wrote:
       | I have had suspicions for a while that the whole product is built
       | & sold by just 1 person... if this is true, that's just amazing.
        
         | n4te wrote:
         | Close! It was 1 dev and 1 artist for a long time. Eventually
         | the runtime and support load became too high and it's slowly
         | grown to 9 people. Running lean was satisfying but exhausting.
        
       | CountHackulus wrote:
       | Spine is fantastic for artists, and it's integrations with
       | various engines is really good. My biggest complaint about it is
       | that it's very CPU heavy. A spine runtime that has less features
       | but uses GPU skinning would be excellent, especially if it runs
       | on the web. Ages ago I had to write a JS shim to the C runtime
       | compiled to WASM and it worked well, but I still wish it used a
       | lot more GPU and less CPU.
        
         | retinaros wrote:
         | so if you re making a 2d three.js or webgl game you dont
         | recommend it?
        
           | badlogic wrote:
           | It's being used by a lot of companies with WebGL tech stacks
           | mostly deployed on low-powered slot machines. Quite a few web
           | games in the Asian market also use it. However, three.js
           | likely won't add anything for a 2D game. You'd be better
           | served with Phaser or PixiJS (which is the industry standard
           | in slot games it seems).
        
         | badlogic wrote:
         | The skinning could be done GPU side but with caveats: the
         | number of bones that can influence a vertex would be limited
         | and matrix palettes might have to be split up, inducing
         | multiple draw calls. There actually was a GPU skinner at some
         | point iirc, and the load for common example skeletons was
         | pretty much the same sadly.
        
       | coolerinc wrote:
       | If you need to check your spine skeleton on android device -
       | there's a free app Spine Viewer
       | https://play.google.com/store/apps/details?id=com.spineviewe...
        
       ___________________________________________________________________
       (page generated 2024-08-20 23:02 UTC)