dalboris / vpaint

Experimental vector graphics and 2D animation editor
http://www.vpaint.org
Apache License 2.0
737 stars 54 forks source link

Motion, Sound and stuff #48

Open thebarz opened 8 years ago

thebarz commented 8 years ago

I don't know how to tell you this. Your tool, in specific the Pen width tool, is JUST PERFECT. If Synfig, Pencil 2D and Tupi have it, they may be better animation softwares. It's what I have notice that those apps lack of, pen pressure support.

I would tell you that add a sound layer, but if you check the source of pencil2d, it seems more close to be a replace of Adobe Flash as Traditional/ Digital Animation program.

What I see pencil2d lacks of is a Color wheel. Tupi have a color mixer, but Color Wheels are more up to art and animation.

It would be good add a motion shapes thigs, to move have a large background, and just pan in animation to not redraw it again and again, for example a character on it's walk cycle and a moving background to make feel the sensation of that character alive, or you know I hope you could understand it.

Maybe you want to do your version, that is quite good, but also you could join forces with the other guys that already have an Animation app, and are multiplatform, or you can check the source of them, and improve your software. I think is not cheating, or you can check a commercial animation software to add features. In anyway we as users will refer to those softwares that are already on the market looking to fullfill that needs or things we have the behavior to use.

I miss a lot Adobe flash and TV paint is just amazing, but I can't afford a license for any of each, and Flash it is not for linux, and may not it the future, since market according to them is not profitable. I hope some day Linux could be the real 3rd Solution for Software Developers.

Krita animation is working on module that is on the way, but is not an animation software, is more for painting.

And anyway thanks for reading.

scribblemaniac commented 8 years ago

When I got this in my notifications, it only showed the first sentence of your message. I thought for sure it would be some negative rant or another person pointing out the lack of an eraser tool. I'm glad to discover that I was wrong :smile: For making my evening (and perhaps my day), I feel obligated to respond to this (even if this isn't technically an issue).

You have raised many interesting points, and @dalboris will probably have something to say for most of them when he replies here, but I just wanted to speak on the subject here I will claim to be most familiar with. I totally agree with you that collaboration with other projects can be beneficial. In fact some of what you have suggested is already being done as this project is looking to other apps for ideas, designs, etc. @blurymind in particular has been providing lots of references and comparisons to other animation software. In my mind this kind of approach is critical to creating an application that is functional and intuitive for existing animators, and it is very helpful in providing a guideline for development.

However, there are some caveats to doing this, and also in going a step further to look at the source. I'd like to stress I am not opposed to either of these things. One of the most evident issues of using code from other projects is that their license has to be compatible with VPaint's license (MIT). It's fine libraries do not have a compatible license because they are external, but I know for a fact that @dalboris will refuse to pull any code with an incompatible license. This includes GPL and almost all other licenses since MIT is so non-restrictive. For example we wouldn't be able to use any code from pencil2d since it appears to be under GPLv2. Even if the license is compatible, the code might not be. I'm not talking about langauge differences, because most of the time porting is fairly straightforward. It's the fact that VPaint operates slightly differently than lots of other animation software in the way it stores and handles animations (correct me if I'm wrong on this please). All these things would make it more difficult to use code from other projects, but they certainly don't make it impossible. I would honestly be a surprised if there isn't code from some other project in VPaint a year from now.

As for merely drawing inspiration from another application (pun indented), none of the above issues apply. However I would caution that relying too much on what other projects have done can do more harm than good as it can hide new options that should be explored. It may also result in the imposition of limitations that will make future expansion of VPaint difficult. VPaint is still in it's early stages, and while we should look to other programs for inspiration, the impact of these features/designs on the future of the project must be taken into account to create software that strikes the right balance between the ol' faithful things, and the game-changers.

dalboris commented 8 years ago

Thank you a lot @thebarz for you feedback and additional ideas / feature requests! I really appreciate the time you spent to write it. Thx also a lot @scribblemaniac for joining in :) I'll try to give my opinion on the different points raised.

Sound: Indeed, support for sound is obviously something that should be added to VPaint, it is a mandatory feature to all animation software. I will add it to the roadmap, but of course, as every feature, development takes times and it might not be implemented before 1 or 2 years :)

Color Wheel: I agree. Quite frankly, I really don't like the current color picker, but it was directly provided by Qt (a library used in VPaint), so it was the fastest way to implement a color picker. Some day, I'll probably improve it, but I feel this is low-priority so it might not happen soon.

Panning of walk cycles / backgrounds: Yes, such kind of functionality will come when there are layers and a better timeline. That would allow translation/rotation/scale of layers to be animated.

Collaboration with other projects: In theory, I am totally in favor of collaboration, reason why VPaint is Open Source. However, in practice, as @scribblemaniac mentioned, it is not as easy as it sounds. Because most applications use a slightly different way to store an animation in memory, and because the overall architecture of applications are slightly different, sharing code is in fact quite hard. It may be possible to share specific snippets of code solving a particular mathematical problem, but this is not what takes the most time to develop.

And I confirm what @scribblemaniac said: in fact, in the case of VPaint, using code from existing projects is even made harder than average because: 1) The way an "animation" is represented is actually significantly different in VPaint than other applications, and 2) I want to keep VPaint "industry-friendly". This means that I want to allow private companies (e.g., animation studios) to modify VPaint without having to worry about license infringement if they don't share back the code. Most existing open-source animation apps don't allow this, so I cannot use their code (unless they re-license it under a less restrictive license).

As for sharing ideas, yes, this is something I am all for. I am looking at what is being done elsewhere, both in the open-source world and commercial world, and take inspiration from it. I want VPaint to have its own unique feel and set of functionalities, and be as "innovative" as possible, but it is also important to have a set of well-known and useful features that users are familiar with (and that have been proven effective over the years).

algorev commented 7 years ago

It would be very cool to have a viable alternative to flash. I can't do anything with the buggy, slow, and impractical Synfig Studio. I really hope this project succeds, too bad i can't help in anything except submitting ideas. 😞