Spriter/C2 update 11/2 bug fix for performance mode

Discussion and feedback on Construct 2

Post » Mon Dec 22, 2014 6:48 am

@lucid
I have an animation that uses a single image/sprite. When I import into C2 there are 3 images(all the same, but renamed 1,2,3) i find this rather odd.
This in itself would not be a huge deal, however no matter what I try, it won't animate.

I thought I must be doing something wrong, and have been struggling with this for a while. However, I decided to try importing a more complex animation. 14 images. And the more complex animation works perfectly. I have saved everything the same, followed the same steps repeatedly. I am out of ideas. Perhaps there is a bug where a single image can't be animated?


Edit:
So it seems I solved the issue. However I still think it may be a bug, or am in need of an explanation.
I turns out within spriter, my image was a new object in each animation. So there were 3 objects of the same image. looks like each object was then imported as a separate image. using 3x the memory/size than even needed. I still don't know why no animations could work though.

My solution was having only 1 object across all animations.
B
23
S
7
Posts: 211
Reputation: 2,105

Post » Tue Dec 23, 2014 10:53 pm

slooie wrote:Can you Point me in the Direction of A tutorial on how to Swap Body parts ? am i just supposed to change the associated sprite? @lucid
Sorry for the late response. We don't have a tutorial for that just yet, but if you look in the help menu of Spriter, the section on Character Maps is what you're looking for. Once you have them set up in Spriter you can add them with the character map actions.

@Tylermon normally if the object is supposed to be the same object, you should use the same object for it across animations. This will also ensure animation blending works. If you have an animation that doesn't import, please send it lucid@brashmonkey.com if possible, and I can look into it after the holiday.


@everyone, Just a quick heads up. We'll be spending the next couple of days with family. We'll be back on December 27th. Also, don't forget you can get all of our products on the Scirra store for 50% for the next 6 days!

Happy Holidays!
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Wed Dec 24, 2014 8:19 am

lucid wrote:
slooie wrote:Can you Point me in the Direction of A tutorial on how to Swap Body parts ? am i just supposed to change the associated sprite? @lucid
Sorry for the late response. We don't have a tutorial for that just yet, but if you look in the help menu of Spriter, the section on Character Maps is what you're looking for. Once you have them set up in Spriter you can add them with the character map actions.

@Tylermon normally if the object is supposed to be the same object, you should use the same object for it across animations. This will also ensure animation blending works. If you have an animation that doesn't import, please send it lucid@brashmonkey.com if possible, and I can look into it after the holiday.


@everyone, Just a quick heads up. We'll be spending the next couple of days with family. We'll be back on December 27th. Also, don't forget you can get all of our products on the Scirra store for 50% for the next 6 days!

Happy Holidays!


I had 3 separate animations. And spriter made 3 separate objects (one for each animation). This was for one entity.
It then exported/went into construct as 3 images(should only be one). This is what I think is a bug. Because it is the same image for each object. It should have multiple instances of the same image, not require my project to have 3 of the same image.
(got around the issue by not using those other object instances)

I also don't know how to permanently delete an object. Even though the objects are not being used, it shows up in spriter still. I have tried going to the objects panel and deleting from there. No effect.

I will try to duplicate the issue and send you the files.
B
23
S
7
Posts: 211
Reputation: 2,105

Post » Fri Dec 26, 2014 1:45 pm

@Brashmonkey
@lucid
@tumira

The following issue still seems to exist. At least I could not make "Action Point Exist on Frame" work, even though I can get X and Y of a specific action point, I cannot check if it exists.

Are you aware of that issue? Is it going to be fixed?
Maybe I am doing something wrong?

tumira wrote:
The condition "Action Point Exist on Frame"checking seems not working, I even the put the checking in "Every Tick" for testing, but it still wont detect the point.

Let say my character is playing animation "shooting" and in that animation I want C2 to create bullet object when it found that the animation got "shoot" point which I created in Spriter. I already rename the point to "shoot" in spriter but it wont detect it in C2.
B
5
G
2
Posts: 5
Reputation: 1,042

Post » Sun Dec 28, 2014 8:22 pm

lucid wrote:plugin changelog 10/24/14
  • Fixed a bug where z-order changes wouldn't update sprites for paused animations until after the object was moved or animation was resumed.
  • Plugin-side support for Sub-Entities (not yet useable*).
*Sub-Entity support is now in the plugin, but is not yet supported by Construct 2's Spriter importer. Over the next week, I'll put together an explanation of the manual import process. Manually importing a file is usually a bit tedious, but it will work for people eager to give the new feature a try. In the meantime, I will be brainstorming to see if there's a way to minimize any changes/additions needed for C2's importer, and then sending any necessary information to Ashley. I'll keep you updated as everything progresses.


@lucid So is it possible to use Sub-Entities in C2 now via the plugin? When using Sub-Entities in a Spriter project and adding the scml and scon to C2, all the Sprites show up in C2. Furthermore, I can change the entity in C2 and make an animation of that new entity play back.
However, when playing animations, the Sub-Entities are missing. So if the active entity is "A" which has "B" as a Sub-Entity, the animation from "B" is not shown when playing the animation of "A".

How can I fix that? Is that still the spriter import issue you mentioned?
Please let me know if you need further information (like file names or my C2 object tree, a capx or something else).

Thanks and cheers
Nils
B
5
G
2
Posts: 5
Reputation: 1,042

Post » Tue Dec 30, 2014 2:54 pm

nblumoe wrote:I could not make "Action Point Exist on Frame" work, even though I can get X and Y of a specific action point, I cannot check if it exists.


12/30/2014
  • Fixed a bug where Action Point Exists condition wouldn't return true even if the action point existed


The sub-entities don't work in the C2 plugin yet as the importer still needs to be updated to do this. I haven't forwarded the information to Ashley yet, as I'd like to make sure I choose the best way to implement sub-entities before he takes the time to change the importer. I'm currently working on the reference implementation for Spriter (the implementation that all future implementations will be based on), and I'm going to use this design to update the c2 plugin. This should make the plugin faster and more ram efficient and will also have the sub-entities implemented. I apologize for the delay, but it's it's in the interest of making sure everything is as powerful and useful as possible.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Tue Dec 30, 2014 8:37 pm

lucid wrote:The sub-entities don't work in the C2 plugin yet as the importer still needs to be updated to do this. I haven't forwarded the information to Ashley yet, as I'd like to make sure I choose the best way to implement sub-entities before he takes the time to change the importer. I'm currently working on the reference implementation for Spriter (the implementation that all future implementations will be based on), and I'm going to use this design to update the c2 plugin. This should make the plugin faster and more ram efficient and will also have the sub-entities implemented. I apologize for the delay, but it's it's in the interest of making sure everything is as powerful and useful as possible.


Thanks for the update. Any ideas on the time frame for this? No worries, it's considered an non-binding estimate! ;)

Until that's done, I would go with a workaround to create "sub animations" in C2 on action points from Spriter, would that be the best solution atm? Of course sub-entities will be much nicer than this, so I am looking forward to get them.
B
5
G
2
Posts: 5
Reputation: 1,042

Post » Fri Jan 16, 2015 10:18 am

Hey,

So I'm having a problem with resuming animations after they have been paused.

Basically on startup I pause animation playback for each spriter object instance. Each spriter object instance follows the position of a sprite/physics object with a matching value stored in an instance variable. When the sprite/physics object collides with the floor I resume playback. However, this does not happen. I've also tried to play the animation again but it also doesn't play.

If I remove the pause and just tell it to play an animation on the collision it works fine. Which tells me I have set up my actions correctly. However, this means the initial animation plays and then the next animation plays on the collision. Whereas I want the initial animation to play on the collision and then when that animation is completed it plays the next. So I'm not getting the desired affect.

I've also tried to use play current animation to 0 instead of pause. Then on collision I've tried to set the animation from the start or from current position, but this seems to play the animation backwards and doesn't fire an animation complete event.

I'm using plugin release 12/30/2014

Any ideas?

EDIT: After some jiggery pokery if I pause and on collision I resume and play the 'walk' animation. My events detect if the walk animation is being played and so the robot goes into a patrol state. So the robot starts sliding around on floor, which means it is playing walk, but visually the robot is not. Which suggests it has switched animation, but is not resuming playback.
ImageImageImageImageImage
B
19
S
5
G
1
Posts: 614
Reputation: 2,542

Post » Fri Jan 16, 2015 9:18 pm

Awesome program! Have a question:

I have two animations for a character/entity, and I'd like them to blend opacity-wise when the animation changes. So basically, the first animation is fading out while the second animation fades in, or vice versa. Is there a simple way to do that with Spriter and C2?
B
13
S
1
Posts: 20
Reputation: 606

Post » Fri Jan 16, 2015 9:31 pm

@nblumoe sorry for the late response. I must have dismissed the initial forum notification without realizing it shortly after your response. No ETA just yet, though good progress is being made on the reference implementation, which will be the basis for not only the sub-entity part of this plugin, but also a much more efficient plugin in general. The easiest workaround I can think of would be to actually have two separate entities and use events to constantly set say the torso entity object onto the legs at every tick.

@theWyrm if possible, please send me the capx to lucid@brashmonkey if possible, because it sounds like you're doing everything right. It will help me to find if it's a simple mistake in events, or an actual plugin bug

@mhazaru thank you. No simple way I can think of. You could either have two separate c2 objects for the fading in and fading out and use events to do it, or you can create a Spriter animation that executes the fade, though the last is less than ideal since it might be difficult to do this and it would require clones of all the objects. When entities are further along in Spriter, and implemented in C2, there should be easier ways to do this in Spriter as well.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: 99Instances2Go, TheRealDannyyy and 9 guests