Objecty - boned spriter, texture packer, animation

Community Forums/Showcase/Objecty - boned spriter, texture packer, animation

skn3(Posted 2012) [#1]
Ok I will keep future objecty updates here instead of separate threads.

So since my last post I have been hard at work getting lots of ui elements working. I have a little video of the starts of the boned actor editor working:

So far the workings for key framing, tracks, bones and more is there I just need to do the visual/interactive parts now!

Last edited 2012

Htbaa(Posted 2012) [#2]
That's looking very nice, especially since it's all just MaxGUI (with your custom widgets). It does raise the question, is Objecty going to fulfill the same purpose as Spriter does?

skn3(Posted 2012) [#3]
Thanks :D

I hope objecty can be just as useful as spriter. I would say that objecty will eventually go further and then let you use the actors within another editor. Could be the level editor, some kind of story editor.. Undecided. For now the idea is to offer actor animation with lots of flexibility!

matibee(Posted 2012) [#4]


Great work Jon!

skn3(Posted 2012) [#5]
Here's an update! I have been hard at work improving performance in areas and also getting the key framing, tweening and transforms working. Transforms are super smooth, it was quite challanging to code but I'm happy with the results. I learnt a lot about 2d transforms so that should come in useful in the future!

The editor lets you use one of your created packed textures and then place copies of the atlas items onto the scene. Each placed copy is a bone and will get its own key frame track in the timeline. When you make changes to the bones you placed, key frames are automatically created at the current position on the timeline.

It's really easy to use and I'm focusing on making it simple but powerful. Currently I have everything set to linear tween, but I am looking at a good approach for simplifying how key frames tween. I don't want to do this with a graph as I think it adds complexity. I may do this
with a graph In the future but I think for game related purposes it would be more suitable to just have some basic tween types such as instant, linear, ease-in and ease-out.

Just like everything else in objecty, all animations, bones and key frames are nodes and are exposed to the lua exporter. This means custom exporters could be written to translate this data into any format. I'd imagine it would even be possibly to convert it into a flash animation if you were so inclined. I do plan on writing an exporter to use the spriter plugin as it is already on a ton of different development environments!

So that is where I am now, I will continue to plug away at te boned editor and will be releasing a kickstarter campaign when the uk version launches!

matibee(Posted 2012) [#6]
Looking good!

Derron(Posted 2012) [#7]
For the tween...

I like the option used in blender. They track x and y separately.
So if you are able to select different tweenstyles (presets or curves) you could make it "splitable" ([+] Tween/Curves [Style] -> - X [Styles] and - Y [Styles]).
What is the advantage of this? You can easily animate a diagonal "bounce" but also a curvy "swish" style animation.
The possibility to separate X and Y on the timeframe also provides the option to move them in curves in general (instead of straight lines).
(so you set more keyframes for eg. Y-coord so it moves in a non linear way while x is only constrained by one keyframe set).


skn3(Posted 2012) [#8]

something like that :) ? (see bottom left). Just finished adding that in today.

Last edited 2012

Derron(Posted 2012) [#9]
A bit like that (one step in the right direction :D).

But I meant an option to keyframe individual parts of the objectdata.
Doing that you enable to have differing speeds when changing values.

Imagine to have a button to "expand" "skn3-small1" and get the attributes listed there too (x,y,angle...).
Each of them can have its own keyframes - or if none set, uses the global one (from "skn3-small1"). So while the scale can "bounce" (ease in then ease out) for 10 frames, the movement may be linear for 6 frames changing into ease-out for 6 frames. At the moment this seems not possible without disturbing the animation in frame 6 and 11/12. (hope i explained the problem/advantage of that in an understandable way)

bye Ron

skn3(Posted 2012) [#10]
Yes that makes sense, well currently I have it setup so the tween type is key frame able... So when you scrub the timeline you see the graph icons change depending on the most recent key frames.

I will definitely look to expand this feature/make it better but I think it should do what you were suggesting now. :)

skn3(Posted 2012) [#11]
On second thought, no each attribute cant yet be key framed on the timeline. It would be fairly easy to do but I think it might go against the principle of being straightforward. I definitely won't rule it out, infact I'll add it as something to investigate in my todo list :)

Derron(Posted 2012) [#12]
in general it is straightforward to hide further going details/options and only provide eg. a "[+]"-symbol for advanced usage:
- global object keyframing -> individual data keyframing
- parent actor keyframing -> child object keyframing (keyframe if the child gets displaced by fixed/animated displacement coords or if the parental hierarchy is disabled for some frames).

There are enough things you can do with keyframes - but if nobody thinks of them being useful (but me :D) it should be a "may be feature" of the future.


PS: what you MUST make keyframe-able is visibility (0-1 or 0%-100%)... so you can change displayed sprite (hide sprite 1 for frame 10-12 and display sprite 2 for frame 10-12 at the same time). This will decouple some more logic from having it hardcoded in the binary.

skn3(Posted 2012) [#13]
Hey Ron,

I like the idea of the detail hiding away! I'll note that down on my todo list for when I come to work on it :). Will definitely be having tween able visibility! You can also key frame which texture atlas item will be used on a "sprite" (bone) so you won't have to mess around with two seperate bones!

Last edited 2012

Derron(Posted 2012) [#14]
Just remember to make everything keyframe-able (should be just a matter of your file format and its data structure).
Eg. you can enable "manual" data fields (text fields, string-descriptors ...).
Keyframing them enables things like "referencing objects" your objecty does not know (but the engine of the app does - like names of events ...).

Sure it adds more complexity but this can be hidden within context sensitive right-click-menus for powerusers.


skn3(Posted 2012) [#15]
Currently I just tag attributes with "animatable" and "tweenable" to specify if they are key framed. I will definitely look at doing this for custom data!

skn3(Posted 2012) [#16]
lots and lots of stuff done on objecty, I am drawing close to the UK kickstarter launch so I am pushing for a campaign to be live. Anyone interested in objecty please help with campaign once its running, I will be sure to post about it on these forums.

So I got a nice bit of code done in the last 3 days, a tilemap layout editor.

The editor lets you build your tilemap visually. You can slice images, and then arrange them freely on the canvas. Tiles can be placed into groups so that it is easy to keep your level assets organised.

Once you have imported all of your tiles you can create prefabs by selecting tiles and hitting the add prefab button.

The next step of development is to add a "magic tile" feature and then implement this all into the world editor. Magic tiles are a way of quickly painting landscape using a set of tiles. The painting procedure will sense its surrounding tiles and assign the appropriate tile pieces to generate proper looking landscape.

All fun stuff and much more to come!

Htbaa(Posted 2012) [#17]
That tile rearrangement and making those prefabs is very cool! Very cool tool.

Why0Why(Posted 2012) [#18]
Definitely looks cool. Keep us posted. I have backed multiple projects on Kickstarter so let us know.

skn3(Posted 2012) [#19]
Thanks, will definitely keep people here posted about the project. It wouldn't be possible without maxgui afterall :)

Last edited 2012

Last edited 2012

dmaz(Posted 2012) [#20]
As always.. Awesome!, can't wait! but
fonts :)

Last edited 2012

skn3(Posted 2012) [#21]
:D well I submitted by kickstarter campaign this afternoon after one marathon work session in the last 3 weeks. Pushing 300 hours!

dmaz you will be happy to hear that "bitmap font editor" gets a mention on the kickstarter as some of the ideas for the future :)

Htbaa(Posted 2012) [#22]
Very curious how it'll do on Kickstarter. Good luck!

skn3(Posted 2012) [#23]
Hey there blitzers,

Just to let everyone know I have launched the kickstarter campaign tonight.

I will do a more official post tomorrow morning but just thought Id post this here for people to have a look.