Hello everyone. I apologize for the extremely late reply. It's been an unexpectedly busy month as the delay for a variety of reasons, but things are relatively back to normal now.
I will try to reply to everyone. Please let me know if I miss anyone. Also, if you sent me a project to take a look at or illustrate a bug, if you don't mind resending it, it will help me to get back to you about your issue more quickly.
Cipriux wrote:@lucid Any news about that blended animation fix for non looping animations?
I will be looking into this this weekend. Please resend your file if you can.
EDIT: Nevermind. I had already responded to you back when you posted by PM.
I've had the Spriter Pro license for a while, but only just started learning how to use it and it is a great tool.
Any chance you guys will add a "Snap to grid" for bones and images in the near future (along with a customizable grid)? I could really use this feature in my workflow as I rely on precise setups etc.
Please let me know if this is something you guys are considering
Thank you in advance!
Do you mean in the program itself? It's not impossible, but probably not for Spriter Pro. I'm mainly focusing on bug fixes for Spriter Pro, and I'm putting the bulk of my time into Spriter 2. Still very early on, and no ETA, but it will be a free upgrade for Spriter Pro owners.
Team EternaL wrote:@lucid Has this been reported yet, or is there a fix for it?: When using the new 'draw self' method--which I love, because of its performance-increasing power in avoiding thousands of images in C2--the origin points for the images are very off, I believe all reset to their original upper-left positions. Such as either not properly saved in the scon despite using the correct sprite sheet options in Spriter, or not properly read by the scml plugin side in C2. Is there a fix for this now, or a way I can manually work around the issue myself now?
Sorry it took me so long to get back to you. If you can send (or resend) the zipped project folder (scml file and all images), I will look into this over the next few days, and I should hopefully have a fix.
i tried using the Spine "beta" plugin, and noticed they only use one C2 game object, instead of multiple sprites.
this might be crucial to performance, but i dont really know.
just wanted to through this out there.
also it looks like spine plugin supports bending sprites: https://cdn.rawgit.com/flyover/spine-c2-plugin
this was made in C2 and Spine, it only uses 1 simple png. i was kinda mind blown, but i think the same can be achieved in spriter.
Spine plugin missing tons of features that exists in Spriter.
We have a performance mode in the plugin that only uses the scml object, and loading a single image into it: viewtopic.php?f=146&t=75748&p=1040600&hilit=direct+draw#p1040600
The Spriter 2 plugin will support bending sprites, and much more, but as mentioned above Spriter 2 is still a ways off.
stricky wrote:@lucid, a few questions. Apologies if these have been covered before:
1. First time starting a layout, spriter objects intitialise fine and I can set character maps using the "on initialised" trigger, but when restarting layouts or moving to another layout the trigger doesn't fire. So not sure how to set character maps when moving to another layout.
2. Does the new directdraw mode significantly reduce CPU usage? My CPU usage is very high. Each enemy has 40+ animations of 10 frames each and there are upto 10 enemies on screen at once. Enemy variations are managed via character maps so there is only one SCML object.
3. If the individual sprites are no longer separate objects in directdraw mode how would I go about setting frame specific hit boxes? I would like to avoid having to set hit boxes outside of spriter (i.e. in C2) for specific animation frames.
I believe @Sethmaster answered all of your questions, including a workaround for the on initialised thing, but I will look into on initialised to make it so you can just use that one event to get it to work.
tunepunk wrote:Does spriter characters have any ragdoll mode?
Can you edit bones within a game? Could you for example create a rock climbing game where you move the limbs of a spriter character individually in game?
You can't make like a physics based ragdoll, but you can do IK to bones in real time, or override any other parameter. The scml plugin has an Action under 'Override Animation' called 'Override Bones With IK', this does simple 2 bone IK. Override Object Animation let's you override any parameter like x,y,scale, etc. There are made to use every tick, rather than set it and forget it.
I have a long Spriter object which starts outside of the C2 layout and stretches down.
The problem is that if I place the Spriter object outside of the C2 layout, it doesn't appear.
If I place it inside the layout, it appears no problem, but doesn't solve my issue.
Is there any way to work around this?
Thank you for your help!
PS. I managed to get this working, by changing the "Animation Export Box Size" - I don't however understand why this makes a difference, as I'm not exporting a sequential animation.
If anybody could shed some light on this, that would be awesome
At the bottom of the original post you can find additional information on using the direct draw mode: https://brashmonkey.com/forum/index.php ... -2/&page=1
I'll paste the relevant information here:
To use bounding boxes precalculated in Spriter for correct clipping and effects, in Spriter, simply click on the box icon on the animation widget. Use settings roughly like what you see below:
framerate: In order to calculate a bounding box that takes tweening into account, Spriter will go through the animation at a set framerate. 60 is recommended.
padding: Extra pixels added to each side of the bounding box to ensure that frames in between the above calculated don't go slightly outside. 0 is probably fine for most cases, but 1 or 2 pixels isn't going to affect your performance and makes doubly sure.
The best workflow would probably be to run the calculation once on all animations the first time you use it, and each time you add an animation. After that, only bother recalculating the bounding box if new animation changes massively affect the bounding box, or if you notice any clipping at runtime. And of course, run it once before shipping or demoing your game.
stricky wrote:@lucid, I'm a little confused about the Hybrid method you describe. If I understood the steps correctly it will result in two separate (and differently named) SCML objects in C2? One using the spritesheet for direct draw and one containing the individual objects for collision purposes. If yes, I assume we then need to associate the two separate SCML objects to our player objects in C2 to get everything working as you describe?
From page 157, appreciate it if someone who has successfully got the hybrid method working help clarify the instructions @lucid provided:
"First, save your project normally, and then save a spritesheeted project. Import your non-spritesheeted project the old way."
Does this mean import the non-spritesheeted SCML into C2 by dragging and dropping the file?
"Follow the old to new style project conversion steps, but this time only delete everything except collision boxes, and other sprites you want to test for collisions."
So convert the SCML/Spriter project to spritesheet format and then delete everything but the collision boxes? Not following this. If we delete everything except the collision sprites, when do we import the spritesheeted version into C2?
Let me know if I've answered your question correctly, but you should:
Import the old way by dragging and dropping into C2.
Then double click the scml object and follow the steps as if importing it the new way. Then inside C2, you can delete all of the sprites it created (except the collision box sprites if you need those), and it should still run everything you didn't delete as well as direct draw.