Blender needs to develop a Blender specific AI that can develop blender!
I asked an OpenAI to improve Blenders 3d printing plugin!
I asked the Question; Can you make any improvements to blender's 3D printing plugin?
Answer; As an AI language model, I cannot provide any subjective opinions on the 3D printing plugin in Blender, but I can suggest some possible improvements that could be made to the existing 3D printing tools:
Better support for multi-material prints: Currently, the 3D printing tools in Blender assume that the model will be printed with a single material. It would be useful to have tools that help users design models with multiple materials in mind, such as automatic separation of the model into parts that can be printed with different materials.
Improved mesh analysis and repair tools: Blender's current mesh analysis and repair tools are limited in their scope and often require the user to manually fix issues. A more robust and automated set of tools would be useful for ensuring that models are printable and optimized for 3D printing.
Integration with 3D printing services: Many 3D printing services offer online tools for checking and preparing models for printing, but there is currently no easy way to integrate Blender with these services. Integrating Blender with popular 3D printing services would be useful for users who want to easily upload their models and get them printed without having to manually prepare the files.
Advanced support for supports: While Blender's current support generation tools are useful, they could be improved by adding more advanced features such as automatic support generation based on the angle of overhangs, custom support structures, and options for controlling support density.
More user-friendly interface: The current 3D printing tools in Blender are somewhat difficult to use for beginners, and could be made more user-friendly with better documentation, tutorials, and tooltips that explain the various settings and options. Additionally, a more streamlined interface that provides easy access to common 3D printing settings would be helpful.
=================
These comments are mostly valid! I totally agree with the tool tip suggestion.
I also asked for help coding blender and it pointed me in the right direction. it knows bpy API and helps write code when asked specific questions.
=================
Question; how would i generate a phyllotaxis spiral using python in blender?
Answer; To generate a Phyllotaxis spiral in Blender using Python, you can follow these general steps:
Create an empty mesh object in Blender to serve as the center of the spiral. Generate a sequence of points that follow the Phyllotaxis algorithm using Python. The Phyllotaxis algorithm is a mathematical formula that describes the arrangement of leaves, seeds, and petals on a plant stem or flower head. Create a new mesh object in Blender and add vertices to form a spiral shape, based on the sequence of points generated in step 2. Use Blender's mesh editing tools to refine the spiral shape, such as by adding a bevel or extruding the mesh. Optionally, apply materials and textures to the spiral to enhance its appearance. Here is an example Python script that generates a Phyllotaxis spiral in Blender:
import bpy
import math
# Parameters for the Phyllotaxis spiral
angle = 137.5
scale = 0.2
n = 1000
# Create an empty mesh object to serve as the center of the spiral
bpy.ops.object.empty_add(type='PLAIN_AXES')
# Generate a sequence of points using the Phyllotaxis algorithm
points = [(scale * i * math.cos(i * angle), scale * i * math.sin(i * angle), 0) for i in range(n)]
# Create a new mesh object and add vertices to form a spiral shape
mesh = bpy.data.meshes.new(name="Phyllotaxis Spiral")
obj = bpy.data.objects.new(name="Phyllotaxis Spiral", object_data=mesh)
bpy.context.collection.objects.link(obj)
for i in range(n):
mesh.vertices.add(1)
mesh.vertices[i].co = (points[i][0], points[i][1], points[i][2])
# Use Blender's mesh editing tools to refine the spiral shape
bpy.ops.object.select_all(action='DESELECT')
obj.select_set(True)
bpy.context.view_layer.objects.active = obj
bpy.ops.object.mode_set(mode='EDIT')
bpy.ops.mesh.select_all(action='SELECT')
bpy.ops.mesh.bevel(offset=0.1)
bpy.ops.object.mode_set(mode='OBJECT')
This script generates a Phyllotaxis spiral with 1000 vertices, using an angle of 137.5 degrees and a scale factor of 0.2. You can adjust these parameters to create different shapes and styles of spirals. Note that this is just one way to generate a Phyllotaxis spiral in Blender using Python, and there are many other approaches and techniques you can use depending on your specific needs and goals.
==================
The Code WORKS! The technology works. blender needs AI! the initial use could be helping people develop scripts with blender, that would end in blender being able to write itself! (i'm taking ethics out of this for this post)
4 Comments
It would probably be very difficult to add such a big thing to blender, it would probably take years of development, and it would make the program take up quite a bit more space. And, if everyone had AI with blender, then no one would actually learn much about blender, they would just get the AI to do it all for them. And even if it is only starting out as a tool for scripting, it would very likely extend to all functions in future years. Also, if everyone relied on it for scripting, then when it made mistakes, it might not be very easy to correct them. Sometimes AI writes code properly, but there are also times when it does a very bad job of it, which would take a lot of correction, which would be difficult if everyone was forgetting how to use the Python API by always using the AI.
You overestimate what that language¹ model is capable of and underestmage how hard and costly² creating such AI is.
Anyway, Tom have something with AI in mind with BlenderLAB, checkout BCon22 keynote
1 - its language model that predicts next word, while its often gives surprising/scary results, there is no intelligence behind that (yet?)
2 - Blender have yearly just around 2 milions/yr $ and in comparsion OpenAI (creators of ChatGPT) raised $10 billion fund and they are working on it for 7 years already.
for example you could ask;
write a script to open up the location of my current .blend file taking into account the operating system?
=======
[possible info window output]
Sure, here's a Python script for Blender that will open the file explorer (or Finder on macOS) to the directory of the current .blend file:
(```)
python Copy code import bpy import os import subprocess
Get the current .blend file path
blend_file_path = bpy.data.filepath
Get the directory containing the .blend file
directory = os.path.dirname(blend_file_path)
Open the directory in the file explorer (or Finder on macOS)
if bpy.app.build_platform == "Windows": subprocess.Popen(f'explorer "{directory}"') elif bpy.app.build_platform == "Linux": subprocess.Popen(['xdg-open', directory]) elif bpy.app.build_platform == "Darwin": subprocess.Popen(['open', directory]) else: print(f"Unsupported platform: {bpy.app.build_platform}")
(```)
Google (now "Alphabet") bought DeepMind (a business) for ~$525 million in 2014, and this headline from 2020 explains everything: DeepMind A.I. unit lost $649 million last year and had a $1.5 billion debt waived by Alphabet. If Blender had the resources to annually invest hundreds of millions of (local currency unit) in a project, I'd vote for porting Blender to quantum computers, and then do the A.I. there.
Also, as noted "A.I." is overrated. It is artificial, but not intelligent. A.I. is the goal, not any current product. The current products are clever assemblages of algorithms. I am not doubting their utility, just their intelligence.