Jump to content

lucid

Administrators
  • Content Count

    1,053
  • Joined

  • Last visited

  • Days Won

    98

Reputation Activity

  1. Like
    lucid got a reaction from Danielki in scml documentation (deprecated - use reference implementations instead)   
    Deprecated : Use Reference Implementations pinned in this forum

    Hello again everyone,
    This is the preliminary edition of the scml documentation. It takes the form of an interactive document with a side by side of pseudo code and the scml format specification.
    This will be expanded over the coming weeks with detailed descriptions of the functions and dom elements being described, but as is, it should provide a good jumping off point for developers creating implementations, and also for anyone attempting to update or troubleshoot an implementation.
    I'll be out of town and away from my dev PC for the next few days, but when I return this document will be continually updated along with Spriter to be as useful and clear as possible. In the meantime however, I'll provide you with a few key points to get you started.
    â—¾the document is written in a c-like pseudo-code ignoring as many language specifics as possible. This means there is no concept of pointers or references. brackets[] at the end of a type name indicate an array
    â—¾float, int, string are intended as general types and can be replaced by double, short, cstring, etc as you see fit
    â—¾as all xml parsing will be language specific, this is not addressed in this document, however, the scml and code are side by side. Where the data structures should contain information directly from the file, those items are highlighted, and hovering them reveals the relationship to the scml file.
    The pseudo code is released to the public domain under the cc0 license. This means you are free to use it in any way you see fit. ("You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission")
    There is a checkbox to hide the scml side, so you can copy paste the code into your IDE or text editor, do a few find/replaces, and you have a basic scml implementation you are free to release it for anyone to use or keep for use in your proprietary engine for your game.
    This version only includes a Set Current Time, and Apply Character Map function, and provides a data structure to translate spriter data to be drawn at the position and orientation of your character on screen. In time this will be expanded to provide a full suite of features to make your playback engine as complete and powerful as possible.
    This document is the first part of a larger strategy to get Spriter universally supported on all platforms, languages and authoring tools, and we will get into those in greater detail over the coming weeks.
    view the documentation here:
    http://www.brashmonkey.com/ScmlDocs/ScmlReference.html
    and please leave any feedback in our forums
  2. Like
    lucid got a reaction from JohnnyType in Spriter R3 Bug Thread   
    Please post bug and crash reports for Spriter R3 here.
  3. Like
    lucid got a reaction from Asuqytrau in Spriter B1 Release   
    Hello again everyone.
    Time for another pre-beta release. For those of you who didn't see the update for the previous release, we're working on building back the features from the previous alpha, due to a massive refactoring.
    Remember, this is still beta, there are most likely still bugs and possibly crashes, so use this version with that understanding. Please report any bugs or crashes to our forums. There will be stickied thread in the Spriter sub-forum for each pre-release made especially to report bugs with the latest release, and until we're caught up, these will also feature daily (sometimes multi-daily, or semi-daily) releases to test on the Windows platform in between these wider releases. (Releasing daily builds on all 3 platforms would significantly impede progress, and the speed we can get to 1.0)
    Today's build is mostly bug fixes, and there's been a bit more refactoring under the hood to prevent some bugs in the framework from manifesting themselves, which has undoubtedly led to a few more bugs, but I believe we've squashed all the reported bugs from the last version, so please keep testing and reporting! Also, special thanks to everyone who's been testing and reporting bugs, particularly those testing the daily builds. Their testing has been invaluable in finding and fixing everything in a timely manner.
    Without further ado, here's the changelog:
    feature additions/performance improvements:

    [*:1mjlpkjs]Improved performance when dragging in timeline to change current time in animation
    [*:1mjlpkjs]Spriter now remembers last accessed folder, and uses it as the starting point for the file dialog when opening a project or starting a new one
    [*:1mjlpkjs]Spriter now keeps a recent projects list accessible from the file menu
    [*:1mjlpkjs]Added activation dialog for entering serial keys to activate pro version. There are no pro features available yet, and you don't have your serial numbers yet, but this will come in handy later this month.
    [*:1mjlpkjs]The object properties widget has returned
    [*:1mjlpkjs]Copy/paste for timeline keys has returned
    bug fixes:

    [*:1mjlpkjs]Fixed the bug where deleting a bone between frames would cause it's children to shift position
    [*:1mjlpkjs]Changed hierarchy view so dropping something onto a sprite will place the object into the same level of hierarchy as the sprite it was dropped on instead of ignoring the drop (aka, fixed what looked like a bug rejecting drops)
    [*:1mjlpkjs]Fixed a bug that didn't keep the pivot point settings for images in the root directory of a project
    [*:1mjlpkjs]Fixed a bug that left a 'ghost' object in the canvas if you dragged something through the canvas, and then tried to drop it in another window
    [*:1mjlpkjs]Fixed a bug where in a certain specific situation, Spriter was saving s pointed to the wrong 'key'
    [*:1mjlpkjs]Fixed a bug where default pivot points were not saving or loading
    [*:1mjlpkjs]Fixed a bug that prevented the file palette from defaulting to being on top of the persistent object widget
    [*:1mjlpkjs]Fixed a bug where starting a new project or loading a new one wouldn't clear the undo list, so undoing or clicking through history past the point when the new project was started would lead to unusual behavior and/or crashes
    [*:1mjlpkjs]Fixed a bug where sometimes changing a sprites position/dimensions/angle etc would sometimes also change the image the sprite used
    [*:1mjlpkjs]Fixed several bugs in certain very specific situations of bone reparenting
    Download Spriter B1:
    Windows
    Mac
    Linux

    On a side note...
    For those of you who wondered how 'pre-beta' was any different from 'alpha'. It's a word we basically came up with to describe our unique state of affairs leaving the release lagging slightly behind the alpha in terms of features. After the arduous intervening refactoring since the alpha, we are definitely approaching the stability and speed of 1.0, and soon it will only be beta in the sense of the remaining missing features, so pre-beta is short for beta-prerelease until we're all caught up with the alpha feature-set.
    Also, in case you missed the announcement elsewhere, pro serial keys will be sent out this month, and the first pro-features will begin appearing.
  4. Like
    lucid got a reaction from TristanFat in Please post feature suggestions here.   
    it's a definite possibility for the long term.
    good idea. It was already going to have the spinboxes, but that's a good idea. Also, the angle control will have a wheel you can rotate with your mouse.
    The current beta does have a 'protected selection' feature. You can drag, drop, and rotate a selected object even if it's behind others. only if you click a sprite on an area that doesn't overlap the currently selected object(s) will it change the selection.
    yes, that's in there
    yes, the next release will be native UI on Windows, Mac, and, Linux
    yes, all of that is planned for the long term, and the groundwork is already layed for those features.
    thanks for the kind words, and yes, we do want to work with the community to develop an ecosystem of some sort for both the animators and the developers.
    the todolist is huge, but things are going very well on fronts.
    working hard on the next version, and loving every minute of it.
  5. Like
    lucid got a reaction from Dryynrins in Spriter R3 Released!   
    Hi everyone,
     
    We're please to announce the release of Spriter build R3, which includes some great new time saving features and bug fixes.
     
    First a quick note to Linux users.  Spriter for Linux is available to test on Steam.  We're not going to officially announce it as supported for Steam until we get some more users to confirm it works for them.  Please reply here if you get a chance to try it and it works, or if it doesn't, please post as many details as you can, such as OS version, 64 or 32 bit, any relevant error messages, etc.  If you own Spriter Pro on Steam, just log into Steam under Linux, and it should be available.
     
    As for Spriter R3, we've got handy new shortcuts for moving through the timeline, and a new batch export (to png/gif) feature.
     
    Here is a quick video showing showcasing whats new to R3 (Full Change-log at the bottom of this post):

       
    We hope this new build will save you time and make using Spriter an even more convenient and enjoyable experience, and we also hope you find it to be worth the wait.
    Speaking of waiting, we apologize for the prolonged silence in regards to the Spriter reference implementation we're working on. While it is our top priority until it's finished, there has been a great deal of preliminary planning, and careful design decisions to work through before the actual coding was begun.
     
    Our original plan was to create a basic implementation which covers only Spriter's current feature set as quickly as possible, but then realized that a rushed version would definitely cause the need for some fairly drastic re-writes in order to accommodate several of the up-coming features we have planned for the coming many months.

    This made us realize its a better idea to take the time needed to do it right...to make sure its as future/feature proof as possible, and that it's built from the ground up in anticipation of the upcoming expanded feature-set. In fact, some of the new features will just work instantly on any Spriter implementation ported from the reference implementation as soon as the feature becomes available in Spriter.  We've also done quite a bit of planning to ensure that even some of the larger upcoming features will require minimal additions to existing code.
    In other news, aside from the preliminary work for the implementation itself, as well as small bug fixes and new features to Spriter itself, we've also been very busy with many other investments in Spriter's future, including but not limited to commencing with the design and creation of a new art pack, which will not only introduce new animation and art content to Spriter's library (hint, not for a side-scrolling game type), but will also introduce several new features to Spriter itself. These new features will not only give this art pack an unprecedented level of customizability, but will also offer even more flexibility and options to all Spriter users for the creation of their own original content. (more on this up-coming new art pack is a future update. It's roughly half finished, but still several months away.)
    Again, we apologize for the not so regular updates, and we will make sure the next update won't take so long, and progress reports will be more frequent and more complete.  We'll do everything we can to make the implementation (and eventual new features that it will accommodate) well worth the wait. And of course, once we're finished, our focus will be on helping developers port this fully featured implementation to as many authoring systems languages as possible.
    Thanks again everyone for your support and patience.
    Cheers, Edgar at BrashMonkey


    Download Spriter R3 here if you don't have the Steam version or automatic update notifications on.
     
     
    Spriter Release 3
    Released 2/26/2015
     
    Additions and Enhancements
    Added Shift key modifier to shortcuts for Previous Keyframe and Next Keyframe (1 and 2 keys). Shift+1 and Shift+2 will go to the previous and next frame where the currently selected objects are keyed Added Control key modifier to shortcuts for Previous Keyframe and Next Keyframe (1 and 2 keys). Ctrl+1 and Ctrl+2 increment and decrement time by the currently set Snapping Interval, or by one millisecond if snapping is turned off Cleaned up Export to PNG/Gif Dialog to hide controls that don't apply to the current export settings Added new Pro Feature 'Batch Export' to the Export to PNG/Gif Dialog. Allows you to choose several animations to export at once Added 'Trim To Entity' as an option for the Source Rectangle when performing a Batch Export. This will choose one bounding box size that will fit all of the selected animations for each entity Added 'Trim To All Entities' as an option for the Source Rectangle when performing a Batch Export. This will choose one bounding box size that will fit all selected animations for all entities Bug Fixes
    Removed tutorial video playback within Spriter (video links are still available) as a temporary fix for some users who were experiencing crashes due to the feature Fixed a bug where creating a bone required several undos to revert instead of one Fixed a bug where the images in the File Palette weren't updated after the Reload All Images was pressed Fixed a crash that would occur if you attempted to close Spriter while in the middle of renaming an entity
  6. Like
    lucid got a reaction from salemakeupbq in End of year update   
    Happy New Year!
        This was a big year as we released Spriter 1.0 and are now on Steam.  We also released two new Art Packs, a new promo video, and a new site and forums.  Now that the foundation is set, 2015 will be an exciting year for Spriter Pro owners.  We already have some amazing unannounced features in the works that we can't wait to share once they're ready to be unveiled.  
        
        I'm currently focused on creating a working, fully featured and well documented reference implementation.  Once finished, this should make creating full Spriter support for any particular authoring system trivial.  And we'll be focusing resources and efforts into helping developers port this to as many languages and authoring systems as possible.  Originally we were going to make this a barebones implementation with support for all Spriter Pro features, but we've decided to take a bit longer and include several implementation and playback features that most developers will want in their arsenal.
        
        Sorry for our slow response times on the forums and tech support during the holidays.  Don't worry, you haven't been forgotten, and we will respond and help you resolve your issues as soon as we can.  We also realize there are a few open bugs with Spriter R2, and we'll do our best to fix them as soon as this implementation is complete.

        On a final note, the Steam Sale ends on January 2nd, so there are only two days left to get Spriter Pro for 50% off.  Also on BrashMonkey.com Spriter Pro and all of our Art Packs and bundles are also 50% until January 2nd using the coupon code HAPPYHOLIDAYS.

        Thank you everyone for a great year, and we look forward to making 2015 an awesome year for Spriter users.
  7. Like
    lucid got a reaction from DarrenOl in scml documentation (deprecated - use reference implementations instead)   
    Deprecated : Use Reference Implementations pinned in this forum

    Hello again everyone,
    This is the preliminary edition of the scml documentation. It takes the form of an interactive document with a side by side of pseudo code and the scml format specification.
    This will be expanded over the coming weeks with detailed descriptions of the functions and dom elements being described, but as is, it should provide a good jumping off point for developers creating implementations, and also for anyone attempting to update or troubleshoot an implementation.
    I'll be out of town and away from my dev PC for the next few days, but when I return this document will be continually updated along with Spriter to be as useful and clear as possible. In the meantime however, I'll provide you with a few key points to get you started.
    â—¾the document is written in a c-like pseudo-code ignoring as many language specifics as possible. This means there is no concept of pointers or references. brackets[] at the end of a type name indicate an array
    â—¾float, int, string are intended as general types and can be replaced by double, short, cstring, etc as you see fit
    â—¾as all xml parsing will be language specific, this is not addressed in this document, however, the scml and code are side by side. Where the data structures should contain information directly from the file, those items are highlighted, and hovering them reveals the relationship to the scml file.
    The pseudo code is released to the public domain under the cc0 license. This means you are free to use it in any way you see fit. ("You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission")
    There is a checkbox to hide the scml side, so you can copy paste the code into your IDE or text editor, do a few find/replaces, and you have a basic scml implementation you are free to release it for anyone to use or keep for use in your proprietary engine for your game.
    This version only includes a Set Current Time, and Apply Character Map function, and provides a data structure to translate spriter data to be drawn at the position and orientation of your character on screen. In time this will be expanded to provide a full suite of features to make your playback engine as complete and powerful as possible.
    This document is the first part of a larger strategy to get Spriter universally supported on all platforms, languages and authoring tools, and we will get into those in greater detail over the coming weeks.
    view the documentation here:
    http://www.brashmonkey.com/ScmlDocs/ScmlReference.html
    and please leave any feedback in our forums
  8. Like
    lucid got a reaction from DarrenOl in Spriter A4 Release!   
    Sorry we're late!
    Well, added the bulk of remaining time-consuming features in this build, and also made great strides towards full stability. Without further ado:
    Spriter a4 Changelog!

    misc:

    [*:2y7na3k3] general refactoring for stability and performance
    [*:2y7na3k3]Added Undo/Redo system with corresponding Undo History widget
    [*:2y7na3k3] added cut to cut/copy/paste
    [*:2y7na3k3] persistent object names now changeable from the persistent object palette or bone hierarchy window, and will be saved with file for access at gametime
    timeline:

    [*:2y7na3k3] if a single keyframe is selected, the time can now be adjusted through spinbox
    [*:2y7na3k3]new look to larger timeline handle which will be universally pointy shaped across OS's
    [*:2y7na3k3]time labels for keyframes
    [*:2y7na3k3] mousewheel now zooms in timeline
    [*:2y7na3k3]added ruler to timeline
    [*:2y7na3k3]add current time indicator to timeline, click to adjust current time by spinbox
    [*:2y7na3k3]multiselected keys now drag, copy, and paste correctly
    [*:2y7na3k3] hold alt and drag the rightmost or leftmost selected key to scale the intervals between them
    [*:2y7na3k3]hold shift click to select a range of keys
    file i/o:

    [*:2y7na3k3]new, save, load, save as all enabled after a file is loaded. New incremental save will save your file to a new incremental filename
    [*:2y7na3k3] load, new, save, save incremental all enabled even with a currently active project now
    [*:2y7na3k3]save, new, and load, and close program all tied to undo system so it verifies if you want to save changes
    [*:2y7na3k3]added incremental save, using intelligent logic, so it will recognize incremented filenames (save increment will save a file 'hello.scml' to 'hello_000.scml', and the next time to 'hello_001.scml', etc). will also recognize and continuea an increment so if you load hello_001.scml, it will increment to hello_002.scml, instead of hello_001_000.scml
    animations:

    [*:2y7na3k3] added clone animation
    [*:2y7na3k3] spriter now forces animations to have unique names, and manages the incremental naming of animations using the same logic as incremental save
    canvas:

    [*:2y7na3k3] added canvas zoom and mouse position indicators and controls to the status bar
    decreased the minimum zoom amount from 50% to 5%
    [*:2y7na3k3] holding space when left clicking the background in the canvas now allows you to scroll in the view
    [*:2y7na3k3] arrow keys in canvas view nudge selected objects 1 pixel in whichever direction
    [*:2y7na3k3] added onion skinning. To control the range of the onion skinning, just right click and drag to the left or right of the time handle in the timeline
    [*:2y7na3k3] added new canvas toolbar for locking and hiding sprites and/or bones and setting the image source for the right click image strip
    [*:2y7na3k3] new alternate source for the image selector while holding rightclick over a sprite. either current object's other images from other frames, or the other images from original file folder

    transform controls:


    [*:2y7na3k3]works with new bone system to hide controls when an invalid transformation combination is selected, like several bones and sprites from different hierarchies
    [*:2y7na3k3] added clearer indicators of resize and angle
    [*:2y7na3k3] added hold shift to constrain proportions
    bones:

    [*:2y7na3k3] We'll be releasing a video showing how to use our bones system, which is made to be the most flexible, powerful, and easy to use 2d bone system. Our bones system has no requirements for where bones connect to eachother. There are on demand, context menu controlled ik and constraint features, but these are merely tools to help you animate more easily.
    [*:2y7na3k3] You are not tied at all to a rigid skeleton. Offset bones from eachother in any way at any time. And our dynamic skeletal restructuring allows you to do simple things like a character removing his hat, where the hat changes parentage from the head bone to the hand bone, to crazy characters who grow extra limbs, or take off their own arms, or pull out cartoony gadgets on a whim. Add, remove, reparent, deparent, or even remove the skeleton altogether at any keyframe, and Spriter will behave as if nothing's amiss.
    [*:2y7na3k3] What's more, Spriter will save skeletal alterations from multiple frames of reference in such a way that the implementation developer doesn't need to do anything for it to work. They don't have to understand it, as any basic bone implementation will automatically support it if it follows the basic scml file rules, and it will require no additional processing power from a straightforward bone system. It's a new and simple way of using bones, and we'll have some videos soon showing the awesome system in action and explaining how to use it as soon as possible
    fixes:

    [*:2y7na3k3] fixed a crash when initiating an Export to Png while current time was set between frames.
    [*:2y7na3k3] fixed status bar to update upon completion of Export to Png
    [*:2y7na3k3] fixed the bug in the object info drop down list where editing spinbox numbers with keyboard resulted in strange behavior
    [*:2y7na3k3]fixed a ton of bugs dealing with sprites shifting, jittering, or otherwise misbehaving when dragging and dropping, or changing pivotpoints in many situations
    [*:2y7na3k3] fixed a bug when pasting keys where persistent objects were not always correctly tweening after pasting a key
    [*:2y7na3k3] new timeline fixes once and for all the bug where the handle wasn't always perfectly aligned with the keyframes when resized to certain lengths
    [*:2y7na3k3] fixed copy paste of multiple objects so relative zorder is maintained in the paste
    [*:2y7na3k3] fixed copy paste of multiple keys so first key is pasted at the current time
    [*:2y7na3k3]fixed a bug in the properties pane where if an object was selected the angle spinbox would display 0 while adjusting the angle dial
    [*:2y7na3k3]fixed the behavior of clicking the background of the timeline view, so deselection or set current time behavior is determined by where you click
    [*:2y7na3k3] fixed a z-ordering bug where objects were getting reset to the origin after dragging in objects in frame list.
    [*:2y7na3k3] fixed a bug where the character would display incorrectly for an instant the first time you dragged the current time between two keys
    mac specific fixes:

    [*:2y7na3k3]fixed a mac only file corruption bug when cloning animations
    [*:2y7na3k3] changed from opengl rendering which fixes graphical bugs on certain macs where graphics would appear jumbled
    [*:2y7na3k3]fixed graphical ui bugs on mac where certain parts of docking widgets were transparent
    This should be the last large gap between releases. Thanks again for your patience everyone. Alot more coming down the pipe as well, we're just getting started.
    Windows
    Mac
    Linux
  9. Like
    lucid got a reaction from Arrgincey in Please post feature suggestions here.   
    it's a definite possibility for the long term.
    good idea. It was already going to have the spinboxes, but that's a good idea. Also, the angle control will have a wheel you can rotate with your mouse.
    The current beta does have a 'protected selection' feature. You can drag, drop, and rotate a selected object even if it's behind others. only if you click a sprite on an area that doesn't overlap the currently selected object(s) will it change the selection.
    yes, that's in there
    yes, the next release will be native UI on Windows, Mac, and, Linux
    yes, all of that is planned for the long term, and the groundwork is already layed for those features.
    thanks for the kind words, and yes, we do want to work with the community to develop an ecosystem of some sort for both the animators and the developers.
    the todolist is huge, but things are going very well on fronts.
    working hard on the next version, and loving every minute of it.
  10. Like
    lucid got a reaction from TristanFat in scml documentation update   
    Just wanted to link to this on the main forum for anyone who's been waiting on this:
    viewtopic.php?f=3&t=12569
  11. Like
    lucid got a reaction from DarrenOl in B4 Bug Thread   
    Please report bugs with version B4 here.
  12. Like
    lucid got a reaction from DarrenOl in Spriter Release Alpha 2 (8/17/12)   
    Glad it works on your other rigs mr ugly. I haven't gotten back around to this problem yet. My first step will be to create new builds for 32 bit and PPC macs, and while I'm at it see what other compatibility options can be tweaked. It's a bit time consuming, and there is just a long list of bugs and features to get to these next 2 builds, and that's one of them. Please bear with me a little longer. If those new builds don't work, we'll figure it out from there.
  13. Like
    lucid got a reaction from JohnnyType in Which platforms would you like Spriter support on?   
    We're determined to get this on EVERY major game engine, as well as APIs for easy integration into custom engines built from scratch if there is a demand for it. We will do some ourselves, and some will be outsourced, and free support will be given to anyone who wants to add Spriter animation to any engine. To this end, developer support will be given through this forum, and in the future we will release documentation so anyone can get started on their own. Now that free beta is complete, and we have moved to a super easy to parse XML based format, Spriter will be much more attractive to third party developers, so we expect to see the format expand rapidly.
    This list may not determine the exact order we pursue a given platform, but we're interested in knowing how much interest there is for the various platforms, and we can use this information to inform potential third party developers of the audience. Please take a moment to let us know which platform you're most looking forward to.
    You can choose up to three options, but please only select those which you think you will actually be using to load your characters. The Construct Classic plugin is feature complete, and the beta version of this plugin will be released shortly after the new beta version of Spriter itself)
    Edit:
    The following is a list of all platforms where loading and animation playback of the current beta format has been accomplished during this kickstarter. While these implementations will need to be updated before 1.0, it should inspire confidence that your chosen format will be supported:

    [*:znscphjp]Cocos2d(by @TacoGraveyard)
    [*:znscphjp]GameMaker(by icuurd12b42) http://gmc.yoyogames.com/index.php?showtopic=537492
    [*:znscphjp]Flashpunk(by @abeltoy) http://www.brashmonkey.com/spriter/PunkSpriter.swf
    [*:znscphjp]Flixel(by @abeltoy) http://www.brashmonkey.com/spriter/FlxSpriter.swf
    [*:znscphjp]Starling(by @abeltoy) http://www.brashmonkey.com/spriter/StarlingSpriter.html
    [*:znscphjp]AS3(by @abeltoy) http://www.brashmonkey.com/spriter/BitmapSpriter.swf
    [*:znscphjp]XNA(by Mark Schmelzenbach) http://www.brashmonkey.com/spriter/SpriterBetaXNA.zip
    [*:znscphjp]JBlocks(by Zeroluck)
    [*:znscphjp]Libgdx (by Christian Finckler) http://www.badlogicgames.com/forum/view ... =17&t=3863
    [*:znscphjp]Love2D(by @mariocaprino)
    [*:znscphjp]Torque2D(by @FractalOutlook)
    [*:znscphjp]SFML(by mr.wonko) https://github.com/mrwonko/SFMLSpriter/downloads
  14. Like
    lucid got a reaction from Asuqytrau in scml documentation (deprecated - use reference implementations instead)   
    Deprecated : Use Reference Implementations pinned in this forum

    Hello again everyone,
    This is the preliminary edition of the scml documentation. It takes the form of an interactive document with a side by side of pseudo code and the scml format specification.
    This will be expanded over the coming weeks with detailed descriptions of the functions and dom elements being described, but as is, it should provide a good jumping off point for developers creating implementations, and also for anyone attempting to update or troubleshoot an implementation.
    I'll be out of town and away from my dev PC for the next few days, but when I return this document will be continually updated along with Spriter to be as useful and clear as possible. In the meantime however, I'll provide you with a few key points to get you started.
    â—¾the document is written in a c-like pseudo-code ignoring as many language specifics as possible. This means there is no concept of pointers or references. brackets[] at the end of a type name indicate an array
    â—¾float, int, string are intended as general types and can be replaced by double, short, cstring, etc as you see fit
    â—¾as all xml parsing will be language specific, this is not addressed in this document, however, the scml and code are side by side. Where the data structures should contain information directly from the file, those items are highlighted, and hovering them reveals the relationship to the scml file.
    The pseudo code is released to the public domain under the cc0 license. This means you are free to use it in any way you see fit. ("You can copy, modify, distribute and perform the work, even for commercial purposes, all without asking permission")
    There is a checkbox to hide the scml side, so you can copy paste the code into your IDE or text editor, do a few find/replaces, and you have a basic scml implementation you are free to release it for anyone to use or keep for use in your proprietary engine for your game.
    This version only includes a Set Current Time, and Apply Character Map function, and provides a data structure to translate spriter data to be drawn at the position and orientation of your character on screen. In time this will be expanded to provide a full suite of features to make your playback engine as complete and powerful as possible.
    This document is the first part of a larger strategy to get Spriter universally supported on all platforms, languages and authoring tools, and we will get into those in greater detail over the coming weeks.
    view the documentation here:
    http://www.brashmonkey.com/ScmlDocs/ScmlReference.html
    and please leave any feedback in our forums
  15. Like
    lucid got a reaction from Arrgincey in scml documentation update   
    Just wanted to link to this on the main forum for anyone who's been waiting on this:
    viewtopic.php?f=3&t=12569
  16. Like
    lucid got a reaction from AlisaMesy in Spriter r2 bug thread   
    Post bugs for Spriter r2 here.
  17. Like
    lucid got a reaction from JohnnyType in Please post feature suggestions here.   
    it's a definite possibility for the long term.
    good idea. It was already going to have the spinboxes, but that's a good idea. Also, the angle control will have a wheel you can rotate with your mouse.
    The current beta does have a 'protected selection' feature. You can drag, drop, and rotate a selected object even if it's behind others. only if you click a sprite on an area that doesn't overlap the currently selected object(s) will it change the selection.
    yes, that's in there
    yes, the next release will be native UI on Windows, Mac, and, Linux
    yes, all of that is planned for the long term, and the groundwork is already layed for those features.
    thanks for the kind words, and yes, we do want to work with the community to develop an ecosystem of some sort for both the animators and the developers.
    the todolist is huge, but things are going very well on fronts.
    working hard on the next version, and loving every minute of it.
  18. Like
    lucid got a reaction from Dryynrins in Which platforms would you like Spriter support on?   
    We're determined to get this on EVERY major game engine, as well as APIs for easy integration into custom engines built from scratch if there is a demand for it. We will do some ourselves, and some will be outsourced, and free support will be given to anyone who wants to add Spriter animation to any engine. To this end, developer support will be given through this forum, and in the future we will release documentation so anyone can get started on their own. Now that free beta is complete, and we have moved to a super easy to parse XML based format, Spriter will be much more attractive to third party developers, so we expect to see the format expand rapidly.
    This list may not determine the exact order we pursue a given platform, but we're interested in knowing how much interest there is for the various platforms, and we can use this information to inform potential third party developers of the audience. Please take a moment to let us know which platform you're most looking forward to.
    You can choose up to three options, but please only select those which you think you will actually be using to load your characters. The Construct Classic plugin is feature complete, and the beta version of this plugin will be released shortly after the new beta version of Spriter itself)
    Edit:
    The following is a list of all platforms where loading and animation playback of the current beta format has been accomplished during this kickstarter. While these implementations will need to be updated before 1.0, it should inspire confidence that your chosen format will be supported:

    [*:znscphjp]Cocos2d(by @TacoGraveyard)
    [*:znscphjp]GameMaker(by icuurd12b42) http://gmc.yoyogames.com/index.php?showtopic=537492
    [*:znscphjp]Flashpunk(by @abeltoy) http://www.brashmonkey.com/spriter/PunkSpriter.swf
    [*:znscphjp]Flixel(by @abeltoy) http://www.brashmonkey.com/spriter/FlxSpriter.swf
    [*:znscphjp]Starling(by @abeltoy) http://www.brashmonkey.com/spriter/StarlingSpriter.html
    [*:znscphjp]AS3(by @abeltoy) http://www.brashmonkey.com/spriter/BitmapSpriter.swf
    [*:znscphjp]XNA(by Mark Schmelzenbach) http://www.brashmonkey.com/spriter/SpriterBetaXNA.zip
    [*:znscphjp]JBlocks(by Zeroluck)
    [*:znscphjp]Libgdx (by Christian Finckler) http://www.badlogicgames.com/forum/view ... =17&t=3863
    [*:znscphjp]Love2D(by @mariocaprino)
    [*:znscphjp]Torque2D(by @FractalOutlook)
    [*:znscphjp]SFML(by mr.wonko) https://github.com/mrwonko/SFMLSpriter/downloads
  19. Like
    lucid got a reaction from Asuqytrau in Spriter R3 Released!   
    Hi everyone,
     
    We're please to announce the release of Spriter build R3, which includes some great new time saving features and bug fixes.
     
    First a quick note to Linux users.  Spriter for Linux is available to test on Steam.  We're not going to officially announce it as supported for Steam until we get some more users to confirm it works for them.  Please reply here if you get a chance to try it and it works, or if it doesn't, please post as many details as you can, such as OS version, 64 or 32 bit, any relevant error messages, etc.  If you own Spriter Pro on Steam, just log into Steam under Linux, and it should be available.
     
    As for Spriter R3, we've got handy new shortcuts for moving through the timeline, and a new batch export (to png/gif) feature.
     
    Here is a quick video showing showcasing whats new to R3 (Full Change-log at the bottom of this post):

       
    We hope this new build will save you time and make using Spriter an even more convenient and enjoyable experience, and we also hope you find it to be worth the wait.
    Speaking of waiting, we apologize for the prolonged silence in regards to the Spriter reference implementation we're working on. While it is our top priority until it's finished, there has been a great deal of preliminary planning, and careful design decisions to work through before the actual coding was begun.
     
    Our original plan was to create a basic implementation which covers only Spriter's current feature set as quickly as possible, but then realized that a rushed version would definitely cause the need for some fairly drastic re-writes in order to accommodate several of the up-coming features we have planned for the coming many months.

    This made us realize its a better idea to take the time needed to do it right...to make sure its as future/feature proof as possible, and that it's built from the ground up in anticipation of the upcoming expanded feature-set. In fact, some of the new features will just work instantly on any Spriter implementation ported from the reference implementation as soon as the feature becomes available in Spriter.  We've also done quite a bit of planning to ensure that even some of the larger upcoming features will require minimal additions to existing code.
    In other news, aside from the preliminary work for the implementation itself, as well as small bug fixes and new features to Spriter itself, we've also been very busy with many other investments in Spriter's future, including but not limited to commencing with the design and creation of a new art pack, which will not only introduce new animation and art content to Spriter's library (hint, not for a side-scrolling game type), but will also introduce several new features to Spriter itself. These new features will not only give this art pack an unprecedented level of customizability, but will also offer even more flexibility and options to all Spriter users for the creation of their own original content. (more on this up-coming new art pack is a future update. It's roughly half finished, but still several months away.)
    Again, we apologize for the not so regular updates, and we will make sure the next update won't take so long, and progress reports will be more frequent and more complete.  We'll do everything we can to make the implementation (and eventual new features that it will accommodate) well worth the wait. And of course, once we're finished, our focus will be on helping developers port this fully featured implementation to as many authoring systems languages as possible.
    Thanks again everyone for your support and patience.
    Cheers, Edgar at BrashMonkey


    Download Spriter R3 here if you don't have the Steam version or automatic update notifications on.
     
     
    Spriter Release 3
    Released 2/26/2015
     
    Additions and Enhancements
    Added Shift key modifier to shortcuts for Previous Keyframe and Next Keyframe (1 and 2 keys). Shift+1 and Shift+2 will go to the previous and next frame where the currently selected objects are keyed Added Control key modifier to shortcuts for Previous Keyframe and Next Keyframe (1 and 2 keys). Ctrl+1 and Ctrl+2 increment and decrement time by the currently set Snapping Interval, or by one millisecond if snapping is turned off Cleaned up Export to PNG/Gif Dialog to hide controls that don't apply to the current export settings Added new Pro Feature 'Batch Export' to the Export to PNG/Gif Dialog. Allows you to choose several animations to export at once Added 'Trim To Entity' as an option for the Source Rectangle when performing a Batch Export. This will choose one bounding box size that will fit all of the selected animations for each entity Added 'Trim To All Entities' as an option for the Source Rectangle when performing a Batch Export. This will choose one bounding box size that will fit all selected animations for all entities Bug Fixes
    Removed tutorial video playback within Spriter (video links are still available) as a temporary fix for some users who were experiencing crashes due to the feature Fixed a bug where creating a bone required several undos to revert instead of one Fixed a bug where the images in the File Palette weren't updated after the Reload All Images was pressed Fixed a crash that would occur if you attempted to close Spriter while in the middle of renaming an entity
  20. Like
    lucid got a reaction from TristanFat in Spriter r2 released! Steam Sale 50% until December 2nd   
    Hello everyone!
        Welcome to the first post 1.0 release of Spriter.  Aside from a couple of bug fixes, this release includes a new video help option that lets you watch our YouTube tutorials in a floating window (with links to open the playlists in your default browser).  Video Help will show up immediately upon startup to give guidance for beginners, and the window has an option to disable this behavior.  Spriter will now warn you if you try to save outside the project directory that it won't be able to find it's images, and will also provide an explanation and the expected file structure when you load a file with missing images.
    An important note for Mac users.  There is an optimization in this version that may correct the performance issues some users have been experiencing on the Mac.  Please let me know if this fixes the issue for you, as it seemed to make a significant difference on our machines.
    We will continue to fix bugs and provide minor feature updates, but my primary focus at the moment is completing the developer documentation.
    Lastly, if you're reading this and you don't already own Spriter Pro, or you have a friend who doesn't, Steam is having their Autumn Sale now, and Spriter is 50% off until December 2nd.  Spread the word!
    Thanks everyone, and enjoy the new build!

    download Spriter r2 here
    Change-Log 11/28/2014Additions and Enhancements
    Performance optimizations - possible fix for Mac slowdown issues Added Video Help on startup (with the option to never show again), and in the Help menu Added a link the Grey Guy example file in the Help menu Added a warning when attempting to save outside of the project directory(with the option to never show again) Added a warning/explanation that pops up when a project has missing images, and displays the expected file tree(with the option to never show again) Added a Help menu option to reset all 'show this message again' checkboxes Saving a resized project no longer allows you to save to your current project folder or any of it's subfolders to avoid confusion and overwriting or mixing up both projects' images Saving a resized project now confirms individual image overwrites as it creates resized copies of images Original image size data is now preserved in Missing Image placeholders Original image size data is now preserved when saving a project with missing images Bug Fixes
    Fixed a crash that could occur with certain projects with missing folders and images Fixed a bug that would give autosaves the *.scon extension when working on a project last saved as *.scon, even though all autosave data is saved as scml Fixed a bug that would cause child bones created on very wide parent bones to have 0 width
  21. Like
    lucid got a reaction from JohnnyType in Spriter r2 released! Steam Sale 50% until December 2nd   
    Hello everyone!
        Welcome to the first post 1.0 release of Spriter.  Aside from a couple of bug fixes, this release includes a new video help option that lets you watch our YouTube tutorials in a floating window (with links to open the playlists in your default browser).  Video Help will show up immediately upon startup to give guidance for beginners, and the window has an option to disable this behavior.  Spriter will now warn you if you try to save outside the project directory that it won't be able to find it's images, and will also provide an explanation and the expected file structure when you load a file with missing images.
    An important note for Mac users.  There is an optimization in this version that may correct the performance issues some users have been experiencing on the Mac.  Please let me know if this fixes the issue for you, as it seemed to make a significant difference on our machines.
    We will continue to fix bugs and provide minor feature updates, but my primary focus at the moment is completing the developer documentation.
    Lastly, if you're reading this and you don't already own Spriter Pro, or you have a friend who doesn't, Steam is having their Autumn Sale now, and Spriter is 50% off until December 2nd.  Spread the word!
    Thanks everyone, and enjoy the new build!

    download Spriter r2 here
    Change-Log 11/28/2014Additions and Enhancements
    Performance optimizations - possible fix for Mac slowdown issues Added Video Help on startup (with the option to never show again), and in the Help menu Added a link the Grey Guy example file in the Help menu Added a warning when attempting to save outside of the project directory(with the option to never show again) Added a warning/explanation that pops up when a project has missing images, and displays the expected file tree(with the option to never show again) Added a Help menu option to reset all 'show this message again' checkboxes Saving a resized project no longer allows you to save to your current project folder or any of it's subfolders to avoid confusion and overwriting or mixing up both projects' images Saving a resized project now confirms individual image overwrites as it creates resized copies of images Original image size data is now preserved in Missing Image placeholders Original image size data is now preserved when saving a project with missing images Bug Fixes
    Fixed a crash that could occur with certain projects with missing folders and images Fixed a bug that would give autosaves the *.scon extension when working on a project last saved as *.scon, even though all autosave data is saved as scml Fixed a bug that would cause child bones created on very wide parent bones to have 0 width
  22. Like
    lucid got a reaction from sportrmhcnh in Spriter R3 Bug Thread   
    Please post bug and crash reports for Spriter R3 here.
  23. Like
    lucid got a reaction from Asuqytrau in Spriter r2 bug thread   
    Post bugs for Spriter r2 here.
  24. Like
    lucid got a reaction from DarrenOl in Spriter R3 Bug Thread   
    Please post bug and crash reports for Spriter R3 here.
  25. Like
    lucid got a reaction from AlisaMesy in Spriter R3 Bug Thread   
    Please post bug and crash reports for Spriter R3 here.
×
×
  • Create New...