Drawing/painting application resources?
BlitzMax Forums/BlitzMax Programming/Drawing/painting application resources?
| ||
Hi guys! I´ve started thinking about creating some kind of drawing/painting application in Blitzmax, mostly for the fun of it. I´m a professional game developer (2d/3d artist) and is quite familiar with programming concepts for games. However, I know next to nothing about basic principles for creating image manipulation programs such as photoshop/gimp/krita/painter etc, and I wonder if you could point me to any decent resource on this? |
| ||
Pro Motion or https://code.google.com/p/grafx2/ It is Free! |
| ||
He's not really looking for painting programs. More about *how* to make them! :-p |
| ||
Ah, perhaps I wasn´t quite clear in the post above. I´m not looking for any particular peice of software, but resources explaining how to create such a program from scratch. Basic programming principles. How to manage and manipulate arrays (i guess) containing all the canvas pixel values using brush shapes. I don´t know, but perhaps this stuff isn´t usually narrowed down to one particular concept such as AI, physics or audio related programming. |
| ||
Here's my contribution: - http://losingfight.com/blog/2007/09/05/how-to-implement-smudge-and-stamp-tools/ - http://wiki.mypaint.info/index.php?title=Documentation/ForDevelopers (Development documentation of MyPaint, explains about the technology involved.) |
| ||
Im not sure on your level of programming experience however the basics would boil down to knowing how to handle mouse and keyboard input, how to separate rgba values into their component channels and how to read and write to arbitrary xy positions in a 2d array. If you can do that then the rest can be explored as you go. |
| ||
There's tons of useful/relevant stuff in the Code Archives' Graphics section. |
| ||
This is super easy. The only semi-difficult thing is paths, and the GUI which can be handled pretty easily with buttonbars. Have a layers menu with various blend modes per layer that basically expose the blend mode part of the Max API. The layers are just images that you're drawing onto and then drawing with varying levels of transparency. Read up on Photoshop filters, there are all sorts of things you can do with that. Are you interested in selling this product? It's way easier and more brute force than you think. Maybe you will get something out of this, I did: http://www.computerhistory.org/atchm/macpaint-and-quickdraw-source-code/ |
| ||
"This is super easy". If you say so :P Anyway, thanks for the replies. I´ll be digging deeper into this for sure. |
| ||
So which parts are you unsure about? (Although knowing what it is we don't know is always a tricky concept - let alone knowing what someone else doesn't know). ;-) |