I need ideas for a new project.

my last project hit a dead-end, and now I can’t think of anything I would like to do. I really enjoy coding, so I’m looking for a code heavy project. any ideas?

Make a advanced chatbot for the game engine.You could also try to make a program in the bge that can be creative and have emotions.

like for a game? I think that’s something I could do, but it would be like creating a fuel line for a car without the car. if you mean for the game engine itself, then I don’t understand what you are getting at.

you think BIG! are talking about a true AI? I’m not up to that kind of world changing, age defining kind of project.

What kind of things are you interested in doing? Hard to give solid advice otherwise

You could help Upbge team impliment voxels in the bge.You could help them with other projects as well.Here is link https://blenderartists.org/forum/showthread.php?387752-A-new-fork-of-the-engine

Add Bullet 3 to blender game engine. We all want GPU physics! :slight_smile:

Okay, I have a few :slight_smile:

  1. Cycles support for missing Voronoi metrics, maybe cell noise and voronoise while you’re at it. There is also a new noise generator, but I can’t remember its name. A native scratches texture generator (length and curve setting) would also be welcome as these are typically way too expensive using normal means.

  2. Gradient (0-1) output in the brick fac output. Cycles brick texture is useless without bump capability.

  3. Mapping transform node. Box/cylinder/spherical are currently only available for image texture nodes. Complete 2D remapping would be box, cylinder, disk, spherical, pyramid, and cone, some of which could possibly be generalized. Maybe even mesh projection, although I’m not sure what Blender is even capable of now.

  4. Texture generators (noise, voronoi etc) to have two new switches; 4D input and repeatable (no seam when crossing from coordinate 1 back to 0). 4D input is a hack I’ve used (where supported) to make seamless noise myself. Typically the 4th input would be time, but user input is crucial. The idea is to see evolving on and in a cut 3D object without seeing an actual movement, if that makes sense.

  5. Add lots of missing math functions. I would typically prefer to use fLerp over color mixer (default min/max range should be 0-1 with slider type sensitivity, with possibility to override). Some in my library I often use are (and I hope names should be explanatory enough): fClamp (should be a pure math function) , fHyperbolic (never used, lol), fInsideOutside, fIsBetween, fLerp, fLinear, fModContinous, fNormalizeDimension, fRoot (should be a pure math function), fSplitter, fStepFunctions, fValueNormalizer (very useful for visualizing Musgrave), fWave, vCoordinateRescaler, vDistance, vLerp, vLinear, vMagnitude, vModulo, vRound, vScalarMultiply, vCartesianToPolar, vPolarToCartesian, fAtan2 (I could never make one with math nodes, had to use radial gradient), Rotation nodes for all 3 axes. With all these in place I could try to be more creative with the tools rather then spend time researching the maths behind things to obtain the things I wanted to do. Many of the examples above have multiple outputs

  6. Expose all settings of the mapping node to socket inputs.

  7. Rewamp the way Cycles does node exposure - this one should be code heavy enough, yeah? :D. What I mean here is greater flexibility in what and how I expose to material or group. Tooltips, dynamic text strings, controllable sensitivities for value inputs, files, directories (although possibly not even useful atm). Maybe a multifile selector with dynamic output sockets. The idea is to have a better material/group front GUI.

  8. Value input node to have a preset for sensitivity; 1 (current), 1/10, and 1/100. Everything I do I try to stay in normal 0-1 range, making this node the most annoying node in the universe. So I always end up replacing it with a slider prior to exposing it in the gui, but using values inside groups is still hopeless (which is why I prefer fLerp over color mixer with values plugged in). Or simply add a slider node to complement the value node would be good enough.

9 ) Make UV based tangents smooth over the seam if shading over seam is already smooth.

Well, I had to get out some frustrations anyway, so why not do it here? :smiley: Should keep you busy for a while if you think it is code heavy enough.

These are sometimes pretty small tasks, but maybe you can find some inspiration.

Thanks for all the ideas! I should have mentioned that I only know python scripting, but I am also interested in learning C++. adding functionality to blender requires C++ right?

You need to know both c and c++ i think.You should build blender first.Instructions are on this page.

But before, clean up your room!

I’m glad you linked that. I might have wasted hours moving in the wrong direction.

This looks pretty great and easy to implement:

It’s a fix for a common skinning issue. It’s so simple I don’t know how no one thought of it before!

I decided I’m going to learn C++ and start with a folder orginizer. I think that will be simple enough for my first C++ program. thanks for all the ideas! It will be good to have this thread saved for when I’m ready to move on to heavier stuff.

If going back to python, why not some kind of truss builder (circular, rectangular, user profile maybe?) addon? Flat, triangle, square. Section lenghts, corners of various angles, tee-sections, diameter circular (maybe angular sections?), and maybe some of the basic equipment (floor mounts and so on). It’s basically a curve construct while editing it, with possibility to “make real” with some options:

  • Hollow, solid, walled.
  • Auto seam create (along longitudinal).
  • Auto unwrap. Cylinders in same orientation and caps at their face on at either end of cylinder.
  • Random viewport color for each element (i.e. all cylinders in a straight section or corner would have the same color).
  • Auto paint of weld zones. Okay, getting out of hand, so will leave it at that for now :smiley:

Some PDF catalog here.

Check this out