New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Krita-Like Assistant Tool For Opentoonz [$700] #1349

Open
Orphanlast opened this Issue Jul 29, 2017 · 22 comments

Comments

Projects
None yet
@Orphanlast

Orphanlast commented Jul 29, 2017

It'd be nice to be able to draw your backgrounds IN Opentoonz. As it currently stands, the program seems to lack the necessary tools to effectively draw in perspective. So It'd be nice to have something like the Assistant Tool in Krita. Especially their Vanishing point and Fisheye perspective guides.

Examples of what I'm talking about would be here:
https://www.youtube.com/watch?v=uByCdWXCyhs

https://www.youtube.com/watch?v=Zc7xatDNc4A


There is a $700 open bounty on this issue. Add to the bounty at Bountysource.

@turtletooth

This comment has been minimized.

Show comment
Hide comment
@turtletooth
Collaborator

turtletooth commented Jul 30, 2017

The bounty for this has been created and is here:
https://www.bountysource.com/issues/47719781-krita-like-assistant-tool-for-opentoonz

@blurymind

This comment has been minimized.

Show comment
Hide comment
@blurymind

blurymind Jul 31, 2017

The perspective grid tool in krita is especially useful for drawing backgrounds:
https://docs.krita.org/Perspective_Grid_Tool

Here is a link to the documentation of the different assistants in krita:
https://docs.krita.org/Painting_With_Assistants

video demo:
https://www.youtube.com/watch?v=OhEv2pw3EuI

article
https://shivaramanaiyer.wordpress.com/2013/05/22/grid-assistant-awesome-perspective-assistant/

Krita also has a number of advanced grid modes:
assist_grid

And a number of assistants
500px-krita-tutorial3-iii-2
krita-tutorial1-iv 2

You can even do fish eye perspective, which without an assistant is very difficult:
tumblr_nptzzb4rg41sg77oio2_1280
tumblr_nptzzb4rg41sg77oio1_1280

blurymind commented Jul 31, 2017

The perspective grid tool in krita is especially useful for drawing backgrounds:
https://docs.krita.org/Perspective_Grid_Tool

Here is a link to the documentation of the different assistants in krita:
https://docs.krita.org/Painting_With_Assistants

video demo:
https://www.youtube.com/watch?v=OhEv2pw3EuI

article
https://shivaramanaiyer.wordpress.com/2013/05/22/grid-assistant-awesome-perspective-assistant/

Krita also has a number of advanced grid modes:
assist_grid

And a number of assistants
500px-krita-tutorial3-iii-2
krita-tutorial1-iv 2

You can even do fish eye perspective, which without an assistant is very difficult:
tumblr_nptzzb4rg41sg77oio2_1280
tumblr_nptzzb4rg41sg77oio1_1280

@Orphanlast

This comment has been minimized.

Show comment
Hide comment
@Orphanlast

Orphanlast Aug 1, 2017

@blurymind thank you for the elaboration and clarnfication. And thanks for the additional two donations. Soon, next week, I'll be making another donation

Orphanlast commented Aug 1, 2017

@blurymind thank you for the elaboration and clarnfication. And thanks for the additional two donations. Soon, next week, I'll be making another donation

@Orphanlast

This comment has been minimized.

Show comment
Hide comment
@Orphanlast

Orphanlast Aug 27, 2017

Thank you Richie.

Orphanlast commented Aug 27, 2017

Thank you Richie.

@jpturcotte

This comment has been minimized.

Show comment
Hide comment
@jpturcotte

jpturcotte Oct 22, 2017

Contributor

Sorry for the bump, but the bounty is now at $600 of its $700 goal. Let's push it all the way through!

Contributor

jpturcotte commented Oct 22, 2017

Sorry for the bump, but the bounty is now at $600 of its $700 goal. Let's push it all the way through!

@mason-bially

This comment has been minimized.

Show comment
Hide comment
@mason-bially

mason-bially Nov 3, 2017

I saw this on BountySource, is it open for anyone, or is it meant for developers already in the community? Specifically @blackwarthog who set the bounty.

mason-bially commented Nov 3, 2017

I saw this on BountySource, is it open for anyone, or is it meant for developers already in the community? Specifically @blackwarthog who set the bounty.

@Orphanlast

This comment has been minimized.

Show comment
Hide comment
@Orphanlast

Orphanlast Nov 3, 2017

I'm kind of fond of having Black warthog work on it, primarily because he's involved with the Morevna Project.

However, my next bounty will be on collapsible windows. You can submit as a bounty hunter on that when I make it.

Basically it's this. People complain about the interface. Too much on the screen. It's nice to have your tools but when your having to move your tools around to have access to your canvas, what you have is a distraction.

So my collapsible windows bounty will be the capacity to minimize windows (xsheet, level strip, styles, style editor, schematic... every window type) into an icon. When you need that window, you click on it, and then it maximizes and snaps to the exact location it was last in.

Would you be interested in working on that project?

After that's done, I'll have another bounty for Envelope Distortion with the plastic tool.

I have a steady supply of bounties I'll be creating. So, I'm not too familiar with bounty source or github, but if there's a way to subscribe to what I'm doing, I think it'd be a great way for you to find work.

But... yeah... this one IS taken, sadly.

Orphanlast commented Nov 3, 2017

I'm kind of fond of having Black warthog work on it, primarily because he's involved with the Morevna Project.

However, my next bounty will be on collapsible windows. You can submit as a bounty hunter on that when I make it.

Basically it's this. People complain about the interface. Too much on the screen. It's nice to have your tools but when your having to move your tools around to have access to your canvas, what you have is a distraction.

So my collapsible windows bounty will be the capacity to minimize windows (xsheet, level strip, styles, style editor, schematic... every window type) into an icon. When you need that window, you click on it, and then it maximizes and snaps to the exact location it was last in.

Would you be interested in working on that project?

After that's done, I'll have another bounty for Envelope Distortion with the plastic tool.

I have a steady supply of bounties I'll be creating. So, I'm not too familiar with bounty source or github, but if there's a way to subscribe to what I'm doing, I think it'd be a great way for you to find work.

But... yeah... this one IS taken, sadly.

@gab3d

This comment has been minimized.

Show comment
Hide comment
@gab3d

gab3d Nov 3, 2017

Contributor

@Orphanlast
Tabs in panels is another powerful feature that could help improve the use of spaces in the UI.
(much like in Premiere Pro or After Effects)

Contributor

gab3d commented Nov 3, 2017

@Orphanlast
Tabs in panels is another powerful feature that could help improve the use of spaces in the UI.
(much like in Premiere Pro or After Effects)

@jpturcotte

This comment has been minimized.

Show comment
Hide comment
@jpturcotte

jpturcotte Nov 3, 2017

Contributor

@mason-bially Thanks for your interest in OpenToonz! May I suggest working on this: https://www.bountysource.com/issues/37258870-tablet-incorrectly-detects-hovering-as-touching-on-macos? The issue is currently closed, but the problem remains, and @turtletooth will not claim the bounty. It sits at $150, but I am sure we can get it higher if you are interested!

Also, congratulations to @Orphanlast for getting this Assistant tool funded!

Contributor

jpturcotte commented Nov 3, 2017

@mason-bially Thanks for your interest in OpenToonz! May I suggest working on this: https://www.bountysource.com/issues/37258870-tablet-incorrectly-detects-hovering-as-touching-on-macos? The issue is currently closed, but the problem remains, and @turtletooth will not claim the bounty. It sits at $150, but I am sure we can get it higher if you are interested!

Also, congratulations to @Orphanlast for getting this Assistant tool funded!

@mason-bially

This comment has been minimized.

Show comment
Hide comment
@mason-bially

mason-bially Nov 3, 2017

That's all fair, I will keep an eye out, I'll be honest that I am just being mercenary.

@jpturcotte I would look into that, but I don't have a Mac to dev it on.

mason-bially commented Nov 3, 2017

That's all fair, I will keep an eye out, I'll be honest that I am just being mercenary.

@jpturcotte I would look into that, but I don't have a Mac to dev it on.

@jpturcotte

This comment has been minimized.

Show comment
Hide comment
@jpturcotte

jpturcotte Nov 3, 2017

Contributor

@mason-bially Ah, that is too bad! There are two other open bounties, though: https://www.bountysource.com/issues/48479745-test-tween-command-and-inbetween-pop-up & https://www.bountysource.com/issues/45602432-png-image-is-rendered-with-premultiplied-alpha. Also, I would be interested in supporting one for this too: https://www.bountysource.com/issues/49755304-unstable-panel-size-gif. Finally, you could pick and bid on one of the many outstanding issues here: https://github.com/opentoonz/opentoonz/projects/1. If anything catches your fancy, just raise your hand!

Contributor

jpturcotte commented Nov 3, 2017

@mason-bially Ah, that is too bad! There are two other open bounties, though: https://www.bountysource.com/issues/48479745-test-tween-command-and-inbetween-pop-up & https://www.bountysource.com/issues/45602432-png-image-is-rendered-with-premultiplied-alpha. Also, I would be interested in supporting one for this too: https://www.bountysource.com/issues/49755304-unstable-panel-size-gif. Finally, you could pick and bid on one of the many outstanding issues here: https://github.com/opentoonz/opentoonz/projects/1. If anything catches your fancy, just raise your hand!

@Orphanlast

This comment has been minimized.

Show comment
Hide comment
@Orphanlast

Orphanlast Nov 3, 2017

@jpturcotte (just realized I've been pronouncing your name as turcottle and not tur-cot... *facepalm)

Thanks, this stuff will be in an OT News video.

Orphanlast commented Nov 3, 2017

@jpturcotte (just realized I've been pronouncing your name as turcottle and not tur-cot... *facepalm)

Thanks, this stuff will be in an OT News video.

@jpturcotte

This comment has been minimized.

Show comment
Hide comment
@jpturcotte

jpturcotte Nov 3, 2017

Contributor

@Orphanlast Haha, normally I am hyper aware of that, and I did not even notice. It is indeed pronounced "tur-cot," as in turkey and cotton.
As always, thanks for your constant community outreach!

Contributor

jpturcotte commented Nov 3, 2017

@Orphanlast Haha, normally I am hyper aware of that, and I did not even notice. It is indeed pronounced "tur-cot," as in turkey and cotton.
As always, thanks for your constant community outreach!

@blackwarthog

This comment has been minimized.

Show comment
Hide comment
@blackwarthog

blackwarthog Nov 7, 2017

Collaborator

I've started work on this feature. Much thanks!

Collaborator

blackwarthog commented Nov 7, 2017

I've started work on this feature. Much thanks!

@scottpetrovic

This comment has been minimized.

Show comment
Hide comment
@scottpetrovic

scottpetrovic Nov 12, 2017

@blackwarthog I am not sure if you are going to look at the krita code at all, but feel free to drop by the Krita IRC channel if you have any questions. The screenshots shown in this ticket are a bit old and the UI has changed since.

The code is also kind of messy. With what has been told to me, It was originally written as just a ruler assistant by a high school student. It has expanded throughout the years, but the code hasn't been refactored much. I am also starting to work on a few more enhancements in Krita that people have requested. The biggest one is changing the color/opacity for the assistants. It is hard coded to a dark grey, so it gets in the way when you are trying to use it for a reference.

scottpetrovic commented Nov 12, 2017

@blackwarthog I am not sure if you are going to look at the krita code at all, but feel free to drop by the Krita IRC channel if you have any questions. The screenshots shown in this ticket are a bit old and the UI has changed since.

The code is also kind of messy. With what has been told to me, It was originally written as just a ruler assistant by a high school student. It has expanded throughout the years, but the code hasn't been refactored much. I am also starting to work on a few more enhancements in Krita that people have requested. The biggest one is changing the color/opacity for the assistants. It is hard coded to a dark grey, so it gets in the way when you are trying to use it for a reference.

@splatz

This comment has been minimized.

Show comment
Hide comment
@splatz

splatz Feb 7, 2018

A think I wanted to ask regarding this feature... Will it also support those special perspectives drawings you need for 360° paintings (like you can do in panopainter)? It would be kinda awesome, if Opentoonz could be the go to software for 2D VR Animation :D
Atm Most need this step to 3d software in the middle where everything is planned and you draw over it... But it would be kinda awesome if you could skip the 3d part... Also I think Opentoonz would get a lot of buzz then :3
https://m.youtube.com/watch?v=Sj8pPSDFOjc

splatz commented Feb 7, 2018

A think I wanted to ask regarding this feature... Will it also support those special perspectives drawings you need for 360° paintings (like you can do in panopainter)? It would be kinda awesome, if Opentoonz could be the go to software for 2D VR Animation :D
Atm Most need this step to 3d software in the middle where everything is planned and you draw over it... But it would be kinda awesome if you could skip the 3d part... Also I think Opentoonz would get a lot of buzz then :3
https://m.youtube.com/watch?v=Sj8pPSDFOjc

@shun-iwasawa shun-iwasawa changed the title from Krita-Like Assistant Tool For Opentoonz to Krita-Like Assistant Tool For Opentoonz [$700] Apr 13, 2018

@shun-iwasawa shun-iwasawa added the bounty label Apr 13, 2018

@turtletooth

This comment has been minimized.

Show comment
Hide comment
@turtletooth

turtletooth Apr 13, 2018

Collaborator

@morevnaproject Any news on this?

Collaborator

turtletooth commented Apr 13, 2018

@morevnaproject Any news on this?

@morevnaproject

This comment has been minimized.

Show comment
Hide comment
@morevnaproject

morevnaproject Apr 18, 2018

Contributor

@blackwarthog have finished reworking architecture for input devices, which was required for this feature to work. This was the hardest part. Now he is implementing the UI part (Assistant layer and Tool).

You can see the current code here - https://github.com/blackwarthog/opentoonz/commits/feature08_assiatants

Contributor

morevnaproject commented Apr 18, 2018

@blackwarthog have finished reworking architecture for input devices, which was required for this feature to work. This was the hardest part. Now he is implementing the UI part (Assistant layer and Tool).

You can see the current code here - https://github.com/blackwarthog/opentoonz/commits/feature08_assiatants

@artisteacher

This comment has been minimized.

Show comment
Hide comment
@artisteacher

artisteacher Apr 18, 2018

Contributor

@morevnaproject - does that mean the various tablet issues should be completely resolved?

Contributor

artisteacher commented Apr 18, 2018

@morevnaproject - does that mean the various tablet issues should be completely resolved?

@Orphanlast

This comment has been minimized.

Show comment
Hide comment
@Orphanlast

Orphanlast Apr 19, 2018

I don't think the goal has been on fishing tablet issues. It's been to integrate Krita's Assistant Tool into Opentoonz

Orphanlast commented Apr 19, 2018

I don't think the goal has been on fishing tablet issues. It's been to integrate Krita's Assistant Tool into Opentoonz

@blackwarthog

This comment has been minimized.

Show comment
Hide comment
@blackwarthog

blackwarthog May 31, 2018

Collaborator

@scottpetrovic i've decide to write assistants from scratch by one reason. I've thought about the user input and the magic that we want to do with it and i found the five things that we need to implement:

The main task

  • 1. to substitute a pointer to a calculated values

Allow to cancel a drawing to switch to more suitable assistant on the fly. I've found than any jittering of the cursor bring me to wrong assistant and i need to press Ctrl+Z and do try again. I think we need to gather some pointer motion to determine the best assistant. But while this "gathering" in process the user should to see the drawing. So we need something like "preview" of painting.

  • 2. track painting preview

Also we need painting preview when we do the interpolation of brush motion. Because to do the spline interpolation we need to know one more point, and interpolated line always lags behind for an one segment.

  • 3. allow several levels of painting preview

For the future we need a support of multi-cursor modifiers like mirror or kaleidoscope.

  • 4. allow to spawn multiple tracks in modifiers

Because internally we anyway need to support multi-cursor modifiers, it will be easy to extend this feature to multi-touch input.

  • 5. allow multiple tracks in input

To solve this task i've wrote a prototype at mono (may be use vala instead...):
https://github.com/blackwarthog/lab/tree/master/mono/Assistance

2018-05-31 23-51-20
After switching to C++ i've fixed several bugs, and seems them stayed unfixed in Mono prototype. Anyway I hope it will be helpful for others.

Also here you may found an implementations of algorithms to draw infinite grid of concentric ellipses, and boolean operations with angular ranges:
https://github.com/blackwarthog/lab/tree/master/mono/EllipseTruncate

2018-05-31 23-49-07

Collaborator

blackwarthog commented May 31, 2018

@scottpetrovic i've decide to write assistants from scratch by one reason. I've thought about the user input and the magic that we want to do with it and i found the five things that we need to implement:

The main task

  • 1. to substitute a pointer to a calculated values

Allow to cancel a drawing to switch to more suitable assistant on the fly. I've found than any jittering of the cursor bring me to wrong assistant and i need to press Ctrl+Z and do try again. I think we need to gather some pointer motion to determine the best assistant. But while this "gathering" in process the user should to see the drawing. So we need something like "preview" of painting.

  • 2. track painting preview

Also we need painting preview when we do the interpolation of brush motion. Because to do the spline interpolation we need to know one more point, and interpolated line always lags behind for an one segment.

  • 3. allow several levels of painting preview

For the future we need a support of multi-cursor modifiers like mirror or kaleidoscope.

  • 4. allow to spawn multiple tracks in modifiers

Because internally we anyway need to support multi-cursor modifiers, it will be easy to extend this feature to multi-touch input.

  • 5. allow multiple tracks in input

To solve this task i've wrote a prototype at mono (may be use vala instead...):
https://github.com/blackwarthog/lab/tree/master/mono/Assistance

2018-05-31 23-51-20
After switching to C++ i've fixed several bugs, and seems them stayed unfixed in Mono prototype. Anyway I hope it will be helpful for others.

Also here you may found an implementations of algorithms to draw infinite grid of concentric ellipses, and boolean operations with angular ranges:
https://github.com/blackwarthog/lab/tree/master/mono/EllipseTruncate

2018-05-31 23-49-07

@blackwarthog

This comment has been minimized.

Show comment
Hide comment
@blackwarthog

blackwarthog May 31, 2018

Collaborator

@splatz for now is implemented fisheye helpers.

360° cylindrical grid and assistant is possible to implement.

Collaborator

blackwarthog commented May 31, 2018

@splatz for now is implemented fisheye helpers.

360° cylindrical grid and assistant is possible to implement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment