Hello, I was just vertex painting a model when a thought came to me.
“This feels like painting those drawings for kids !” - “What if there was a game made in Blender in which kids could paint live models?”
I am not good in Python or even in complex modelling but i thought that we all could make this for kids all over the world to play.
How can I help? - I can make some music and soundfx and some simple models to be painted.
Functioning:
The plan is that the game would allow the player to select a model from the many models there will be (turtles, rabbits, scarecrows, cars, houses) after which it would enter into vertex painting mode which will allow the player to select a colour from a box full of colours and even the size of the pencil and would save the painted model and display it or even play an animation with that model( in a more advanced version).
The game menu must be very simple as it is meant for children - <Play>
->Displays the colection of models
->lets you choose a model and enters in Painting Mode
Painting Mode -> Lets you rotate the model and make some zoom
-> Has a button to save the model
-> Has a button to clear the model
-> Has a button to go to the menu
<Collection>
-> Displays saved models
->lets you choose to delete a saved model
<Quit>
-> quits the game
(but it can all be changed)
The programming part can be made by people good in Python and that feel motivated.
The graphics are in two parts -
Pictures for background and models to paint.
Anybody interested? Is this vertex painting game possible?
Yeah I also started this topic to know if it is possible and maybe then i could try to learn and do it myself if nobody else is really interested, i just picture how alot of kids and even in hospitals will play it to have fun
kkewley, thats pretty cool. Frame rate is so high because there are so many verts, and because you are running the script the whole time. I put everything inside the if l.isPositive() block and it ran faster, only slowing when you painted as it has to loop through 4000 verts to see what is close to the mouse. Another speed up could be using own.getDistanceTo(), that method can take a position aswel as an object.
This works well in this case but you have to take into account that a vertex’s position is local coords. Move the plane and try it. You can get global coords by adding the object postion to the vertex’s position then multipling that by the object orientation (you have to use mathutils for this, I couldn’t get it working though)
If you are painting a fairly low poly object I think the frame rate should be fairly smooth.
hmm… is it possible to change the loaded images while th game is running? cause then you could possibly also get the coordinates of the point on the color map you are clicking on and then change the color value… something like that
I remember seeing a demo that used the video texture plugin to let you paint textures in real time instead. This would give better results than vertex painting
I didn’t personally do this, but to build on Andrew-101’s idea, what if you divided up the mesh into seperate meshes? so that the section you clicked on only had around 200-400 verts to cycle through?
well ,i might join if i see that there are some programmers ,because i think painting on something like in MODO is really hard to be written ,so if there is some progress i can model alote.((NO QUITTERS ,that makes me made )).
PM me ,i dont check this forum too much these days .
kkewley’s example could easily be modded to apply materials (but only 3) using nodes. I think I could pull off your idea using this script. I don’t understand it as I don’t know anything about mesh related api, but I can mod it easily enough to work.
It’s a good enough idea that I might just have to do a simplified version. I’m going to study the script some more.
it works ,get out of the camera to the perspective view and it will be working ,but the dot refreshing is kinda slow ,i mean its dot dot dot ,not dotdotdotdot so it can for one like :P/.soz for my dumb english.
between ,i am now interested in joining because it will be something simple and great for children to play with .just PM when started.((i am really idle now,i can draw perfectly)).
Yeah so if anybody out there proficient enough in Python and feeling intrigued is welcomed to make the programming part.
This is more like a game for 4 - 10 year olds The idea is of an interactive 3d painting book