There's another point I wanted to make: anim8 is designed in a way that considers animations like mini-movies, which is good for simple retro-style games, but for more sophisticated games, you may want to pay attention to things like where the limbs of the main character are while walking, e.g. in order to smooth the transition from walking to stopped. This depends directly on the animation frame being played, and different animations at different stages need to be played depending on it. For example, while walking, if the left leg of the character is advanced, you need to play a stopping animation that moves it back and not the right leg. Flashback comes to mind as an example.
Another example: viewtopic.php?f=4&t=85324
[Library] anim8 - An animation library - v2.3.0 released
- yetneverdone
- Party member
- Posts: 448
- Joined: Sat Sep 24, 2016 11:20 am
- Contact:
Re: [Library] anim8 - An animation library - v2.3.0 released
I am interested in making a gui tool for artists to easily provide details for metadata to be used within the game.grump wrote: ↑Fri Feb 22, 2019 12:54 pm Animation formats that allow to bind events to certain timecodes are superior in my opinion. The artist should be able to control the timing of those events, not the programmer. You can of course add this on top of an existing animation system and make timing information part of the animation asset's metadata. That's good and flexible design.
What properties do you think should the metadata have?
My GameDev Website
Going Home:A Pixelated Horror Game
My Repositories!
Follow me lovingly!
Nga pala, pinoy ako.
Going Home:A Pixelated Horror Game
My Repositories!
Follow me lovingly!
Nga pala, pinoy ako.
Re: [Library] anim8 - An animation library - v2.3.0 released
We shouldn't hijack this thread - post a new one with a bit of description what you want to do.yetneverdone wrote: ↑Sat Feb 23, 2019 3:18 am What properties do you think should the metadata have?
- kikito
- Inner party member
- Posts: 3153
- Joined: Sat Oct 03, 2009 5:22 pm
- Location: Madrid, Spain
- Contact:
Re: [Library] anim8 - An animation library - v2.3.0 released
I was AKF for while there, apologies.
Very good points on this thread.
My understanding of how programmers and artists interact with regards to animation is limited. The scenario where there is an artist tweaking animations and a programmer doing the code didn't even cross my mind to be honest. The user I envision for my libraries tends to be a single programmer working by themselves. My gut feeling is that that describes 95% of my users.
If I were to cover the additional use case for artists and programmers, I guess I would be adding some kind of "tagging" feature to animations. I am not sure about how they would look. I am pretty sure I would not want to "marry" tags to frames. They would be separate systems. It could be done with an extra parameter:
Then the update method could return a list of tags that have passed since last frame:
Something along those lines. The artist would have to tweak both the animation frames and the tags when he did changes. Or their tools would update those.
Anyway that is just an idea of how it might work. I don't think the amount of programmers cooperating with artists using my library justifies this development. But I will review PRs on this direction if someone else sends them.
Very good points on this thread.
My understanding of how programmers and artists interact with regards to animation is limited. The scenario where there is an artist tweaking animations and a programmer doing the code didn't even cross my mind to be honest. The user I envision for my libraries tends to be a single programmer working by themselves. My gut feeling is that that describes 95% of my users.
If I were to cover the additional use case for artists and programmers, I guess I would be adding some kind of "tagging" feature to animations. I am not sure about how they would look. I am pretty sure I would not want to "marry" tags to frames. They would be separate systems. It could be done with an extra parameter:
Code: Select all
local animation = anim8.newAnimation(..., frame_duration, nil, { fire = frame_duration * 2 })
Code: Select all
local tags = animation:update(dt)
if tags.fire then
-- a bullet was fired
end
Anyway that is just an idea of how it might work. I don't think the amount of programmers cooperating with artists using my library justifies this development. But I will review PRs on this direction if someone else sends them.
When I write def I mean function.
- yetneverdone
- Party member
- Posts: 448
- Joined: Sat Sep 24, 2016 11:20 am
- Contact:
Re: [Library] anim8 - An animation library - v2.3.0 released
I agree, I also assume that most love users are single programmers. However, there's a lot of team making cool games with love for a while now as more and more users get interested into using love for making games, so it's fair to reach and provide an animation library for programmers and artists for such audience. Or maybe a separate animation library? This way, there will be no compromise to the initial design and philosophy of anim8 while still tending to teams.kikito wrote: ↑Thu Mar 07, 2019 2:11 am My understanding of how programmers and artists interact with regards to animation is limited. The scenario where there is an artist tweaking animations and a programmer doing the code didn't even cross my mind to be honest. The user I envision for my libraries tends to be a single programmer working by themselves. My gut feeling is that that describes 95% of my users.
Yeah, tagging is also useful and great, especially for me and my artist friend because Aseprite is our main tool.If I were to cover the additional use case for artists and programmers, I guess I would be adding some kind of "tagging" feature to animations. I am not sure about how they would look. I am pretty sure I would not want to "marry" tags to frames. They would be separate systems. It could be done with an extra parameter:
That usage is how I would really prefer it!Then the update method could return a list of tags that have passed since last frame:Code: Select all
local animation = anim8.newAnimation(..., frame_duration, nil, { fire = frame_duration * 2 })
Code: Select all
local tags = animation:update(dt) if tags.fire then -- a bullet was fired end
My GameDev Website
Going Home:A Pixelated Horror Game
My Repositories!
Follow me lovingly!
Nga pala, pinoy ako.
Going Home:A Pixelated Horror Game
My Repositories!
Follow me lovingly!
Nga pala, pinoy ako.
Who is online
Users browsing this forum: Google [Bot] and 1 guest