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

Discussion and feedback on Construct 2

Post » Sat Jul 23, 2016 12:09 pm

@lucid . I got another object which has a different size. I don't know the exact size but I know that it has a portrait size with the width of 96 pixels. So the problem again is the same with my previous post but now it becomes invisible when 75% of it's size is not seen on screen.

Maybe it is getting some problem finding out if the scml object is still on-screen. I can provide you the scml & scon file if needed via email. Thanks again.
The Things you can create is only limited by your imagination. If you don't have the skills then use your motivation as a natural force to exceed all expectations. Chadori RebornXD
B
30
S
12
G
77
Posts: 964
Reputation: 51,350

Post » Sat Jul 23, 2016 10:03 pm

Sorry for the delay in replying everyone. I've been quite busy on several fronts, but I wanted to check in and at least give a status report.

HelmetPIg wrote:@lucid Sent on July 9th, 2:22 PM Pacific Time from W*****@gmail.com, will send again now

Sethmaster wrote:Sent you an e-mail lucid.

Thank you. I will be getting back to you as soon as I get a chance to look into it. Thanks for your patience.

mudmask wrote:@Sethmaster and @lucid, regarding the seams issue - this might solve it, and might not, but I was having an issue with sprites lagging and jumping around, and so I made the spriter object set it's x and y to int(object.x) and int(object.y) (where object in this case would be your placeholder sprite) as opposed just object.x and object.y. I guess the issue was that it was trying to align sprites based on coordinates that weren't necessarily whole numbers, so it would round up or down. seems to work well for me, hopefully that helps for you guys. I haven't exported to nwjs, and I'm only guessing on what I think you're referring to with that issue, so maybe this is completely irrelevant.
Thanks for the info.


DiVeR wrote:Hi there @lucid , thank you for the hard work and support provided for the C2 community! I was wondering if the procedure for importing AND updating scml objects in C2 had changed since the performance update? I read what you said recently about being able to just reimport the files if not too many changes occurred within spriter in the meantime (new images, sounds etc) but do we still have to rename the scml file association to scon and then rename to scml in C2 before each update? I may have missed the info somewhere but are there other new things to know like that or is it strictly the same as before the performance update? All my searches point me to the official tut made years ago.

Also I use a lot of container sprites as you recommend in one of your videos in order to apply behaviors and I wished there was a way to not to suppress the container object when it gets updated by drag n dropping the scml file into the c2 project. Right now I have to unbind all my containers manually before any file update, which gets time consuming, maybe a feature to think of later on or again, something I missed? This was actually the reason why I was looking at alternate ways to update the files without breaking the containers every time.

Thank you again for your hard work and support, spriter is an amazing tool!
Aside from the way you import in performance mode, the procedure hasn't changed. The most up to date instructions are here (also linked in my signature). You shouldn't have to rename any files. In performance mode you just need to save the scon (using the performance mode import method), and in the classic mode, you need both the scon and the scml to import. There's an option now in File|Other File Actions...|Custom Save Options... to automatically also save an scml file every time you save a scon to save you a little trouble if you plan to be using the classic import method. You shouldn't have to unbind the containers. Was it causing an issue if you didn't do that?

chadorireborn wrote:@lucid . I got another object which has a different size. I don't know the exact size but I know that it has a portrait size with the width of 96 pixels. So the problem again is the same with my previous post but now it becomes invisible when 75% of it's size is not seen on screen.

Maybe it is getting some problem finding out if the scml object is still on-screen. I can provide you the scml & scon file if needed via email. Thanks again.

I'm aware of this issue, and the solution requires an update to Spriter, which I won't be able to get to just yet, but there is a workaround. Manually drag the rectangle representing to the scml object in the layout to a size large enough to accommodate the character in all animations. Since you're doing this with no visual feedback and no control of the pivot point, you will probably have to drag it larger than whatever box size seems intuitively appropriate. At start of layout and when any scml objects are spawned immediately set their scale to 1. The problem is that it's using that small default box size to decide whether or not to draw the entire character. The plugin only used the box size to set the initial scale in previous versions, so if you set it larger in the layout, it won't get resized back, and it 'fixes' the issue.


Btw, if anyone missed the announcement in open topic, we're having an animation contest! Take a look:


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

Post » Sun Jul 24, 2016 2:31 pm

@lucid - Good thing you already knew about this so that I don't have to make a .capx file reproducing it, it makes it easier for my part. This bug doesn't really affect me at the moment so I'll just wait for the next Spriter Pro Version Release as long as it doesn't take 5 months, by that time I'll have to release my game. Thanks again.
The Things you can create is only limited by your imagination. If you don't have the skills then use your motivation as a natural force to exceed all expectations. Chadori RebornXD
B
30
S
12
G
77
Posts: 964
Reputation: 51,350

Post » Mon Jul 25, 2016 5:32 pm

@lucid thanks for the response :) eagerly awaiting any help you can provide!
B
5
Posts: 20
Reputation: 265

Post » Thu Jul 28, 2016 11:15 pm

Hi everyone.
@chadorireborn, it won't take nearly that long.


Everyone else that was waiting for an email reply I believe I replied to everyone. I had quite a backlog between here and the Spriter forums, though, so please let me know if I missed anyone here or via email.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Sat Jul 30, 2016 3:29 pm

@Lucid Thanks so much for the response! For some reason my e-mails back to you are still bouncing. I'll try again later today.
B
5
Posts: 20
Reputation: 265

Post » Tue Aug 02, 2016 1:01 am

@helmetpig (and anyone else who has attempted to send us email the past 3 days or so), there were some issues when we migrated to a new server, and our email has been down. If you sent anything to us the couple of days, please resend, as we would not have received it.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Tue Aug 02, 2016 6:13 am

I'm having an issue where if I try to position an object to a Spriter bone (either a C2 or other spriter Object) there's a huge lag. I'm basically using it to create a turret that's controlled by the right stick while movement is on the left.

I was originally just overriding the bones but I ran into issues when I tried to blend the animations.

Just using Set position to the ObjectX and ObjectY coordinates but it ends up being a few frames behind where it should be.
B
29
S
5
G
2
Posts: 2
Reputation: 3,569

Post » Tue Aug 02, 2016 1:15 pm

Hi @Falterdan, because of the way the plugin system works, and the plugin using actual c2 objects, there was always a tradeoff of either the entire character being one tick behind, or things set to a Spriter object's position. I'll explain why below, if you're interested, but as far as an actual solution, there's an action under the 'Attach C2 Object' category called 'Set C2 Object to Spriter object'. The parameters should be pretty self explanatory, but let me know if you have any issues. It is just a 'set position' action, as opposed to a pin, so you should use this action every tick you want to set the C2 Object to that position. I didn't realize this issue happens with Spriter objects as well. Are you saying you're using the 'Override Object Animation' action to objectX("someObject") and it's lagging behind as well? I guess it would for the same reasons as below, so I'll add that action for Spriter objects as well.

Also, what were the issues you ran into override the bones while blending? Was it just random glitchy movement, or was it something more specific, like it completely ignoring the override?

The reason there has to be a tradeoff is that if the scml object updates all it's sprite's positions before the tick, then all the sprites will be one tick behind. Since the scml object could be moved by events or behaviors, the individual sprites are already positioned to the old position before the tick. If however, you were to set an object's position to one of the Spriter object's positions, it would appear like they were in sync.

If the scml object updates after the tick (which it does), it will appear in sync with objects if you set the scml object to some C2 object's position. All the individual sprites will be where they should. However, if you set a C2 object's position to the scml object's position it will be the data from the last tick, since it won't have moved yet.
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Wed Aug 03, 2016 12:33 am

'Attach to C2 Object' works a lot better. Thanks!

With the original bone override - The animation blend was ignoring the object override so I was getting an animation glitch of it blending back to it's bone position in the animation. Then once the blend was complete it would go back to using the override I was specifying in code.
B
29
S
5
G
2
Posts: 2
Reputation: 3,569

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 11 guests