Artistic Coding in Blender by David Mignot
HTML-код
- Опубликовано: 28 сен 2024
- David Mignot creates art in Blender by using mostly lines of code. In this video he gives us a basic breakdown of his special workflow in Blender.
You can find David Mignot online here:
Twitter: / idflood
Instagram: / idflood
Website: www.idflood.com/
Blender Daily Website: blenderdaily.xyz/
Nice. I'm pretty sure "grid of primitives" is the bpy equivalent of "Hello World". :-)
What is bpy?
@@brunoarnabar7450 Blender Python. Python is the scripting language you see David using here :)
Loving this, no filler, no pausing.. only as long as it needed to be to demonstrate the techniques.
Much appreciated, guys. 👍
That was aweomse. Thanks David, a sneak preview behind the curtain to how some of the magic is made! Amazing work! 10/10.
after introductions, with 16 seconds of instructions i now know how to make any procedural collection of cubes. that is awesome. and this technique of watching the log for commands is much easier than learning the whole docs. A++++ 100
I was expecting more, but it's enough to make me want to get into some coding in blender.
Hello Kurt, this video is meant as an introduction to Davids work and artistic coding in Blender. It is not meant to be an in depth tutorial. David has now posted another tutorial and resources in the pinned comment, they might be useful to you. All the best with your coding in Blender!
@@karijoart . pp
if you want lo learn about blender python coding, then you might want to consider reading from this book.
www.amazon.com/Learning-Blender-Python-Beginners-Understanding-ebook/dp/B07SL5VDCJ
and if you need some guide in hiw to apply it, you can also use this book.
www.amazon.com/dp/B08SJQXXGV
good luck.
Thank you David Mignot & Blender Daily!
Unveilling the mysteries of bpy one line at a time. Starts to show what's possible with a couple of lines of Python and Blender. Thanks David!
So that’s python?
Saved £50+ by not spending it on a udemy course, I'll see how far I can get with this. Thank you for sharing.
that's cool, thank you!
How far did you get? :)
… but it’s not generative, I am investigating Python code that will provide configurations that can then be animated.
Created the code that animated these videos ruclips.net/video/GJzb4eRNzgk/видео.html
Oh! RUclips does not post replies that contain an external link. Is that in the T&Cs?
Thanks for the share. scripting definitely opens up a world of possibilities. Would be interesting to compare / contrast scripting with geometry nodes.
currently geometry nodes are far less powerfull than few lines of code and far less readable, but probably few updates down the lane and they might achieve what is possible in houdini or similar sphagetti based scripts.
This is a fantastic fondue with baguette video! Thank you so much!!!
Here you can see again that blender is amazing
Nice Video
Wow!! One of the best instructional Blender videos I've ever seen and I'VE SEEN A LOT!!
Great art 👍
BROTHER, YOU ARE THE BEST!!! You oooh really helped me!! THANK YOU VERY MUCH!
All of that in only under 100 lines of code? Cool. I might have to get into this later.
Just FYI, they removed bpy.context.scene.update() and now I think you would use bpy.context.view_layer.update()
Very concise and clear. Thank you
awesome we need more of this
Still helping after 2 years
Thank u 🙏🏻 for this wonderful video
if you want lo learn about blender python coding, then you might want to consider reading from this book.
www.amazon.com/Learning-Blender-Python-Beginners-Understanding-ebook/dp/B07SL5VDCJ
and if you need some guide in hiw to apply it, you can also use this book.
www.amazon.com/dp/B08SJQXXGV
good luck.
INSPIRED
That was great. Thank you.
i loved it wonderful job
nice to hear from you:)
This is very similar to what Geometry Nodes allows us to do.
Wow. I didn’t know Blender could do this.
Thank you for this! Super cool video! A+++
script modelling in blender, nice! anything involving arrays comes out better just typing it in I think.
very interesting, thanks
Great video, thank you! Could we please get the source code for the last script he showed on the screen?
very nice! thanks
5:40 how the materials remained after deleating cubes?
my blender version 3.3 it is not working materials get deleated
sick
Can we do coding by formulaes which covers negligible things that looks like 100 percent virtual reality in blender
cool
Awesome content! Any idea how I could add my own custom mesh/objects, and not just the primitive objects to be generated in a grid with python?
As a total newbie to artistic coding and the one who haven’t even installed Blender yet: it’s not possible to do it without the Blender software installed, right? No Python modules like this?
A hope for Engineer Artist.❤
#aqua
#marblle
#nano
#gas
#nos
#dep
#bio
#hai
#fox
#mt
#tm
#dc
#uv
#text
#font
#lipo
#puri
#tugu
#kota
#elf
#org
#ctr
#sim
#alt
#nim
#btn
#tng
#atm
#livin
#url
#mc
#udara
#polusi
#minyak
#fisika
#pajak
#kimia
#jaksa
#puspa
#serbuk
#molekul
#oxigen
#kumparan
This is so surprising and fun
what language is this? is it python? can we use C# for python?
In all human history, from Cleopatre to Napoleon, Nobody ever open blender without deleting the default cube first.
i am new and having trouble creating and assigning materials directly via the code:
bpy.ops.material.new() is the only command I seem to find.
I don't find bpy.ops.material.append() as shown in the video.
Am I missing something? :/
How can I randomly assign more than 2 materials to my grid objects? Got a palette of 6 matching colors which shall be randomly assigned to the cubes. 🤔
make material number = random range 6
Trés bien... French dude! 💎✨👌
Thank you very much for your tutorial. But I've a question and I hope it is not too dumb... Why when I try to sum instead of multiplying it moves the whole block of cubes in one direction. What I mean is that I expect that 10 * 2.2 is the same as saying 10 + 12.
I hope this make sense... and again this is really cool
Hi Alejandro. It's not easy to answer without seeing the code but I will try my best. We multiply by 2.2 to increase the spacing because with 1 cubes are stacked since the width is 2 by default. I guess your position is defined like this "x + 12, y + 12". So eventually this offset the whole thing by 12:
with x = 0, result 12
with x 10, result 22
Instead if you multiply by 2.2
with x = 0, result 0
with x = 10, result 22
So if you increase your 12 it will continue to offset the whole grid but the cubes will still be stacked. I hope it will help you figure it out, if you have any question feel free to add more comment : )
In the "for loop", the x increments its value from 0 up to but not including 10. So, 0 to 9. He multiplied by 2.2 each time and got
0 * 2.2 = 0
1 * 2.2 = 2.2
2 * 2.2 = 4.4
3 * 2.2 = 6.6
4 * 2.2 = 8.8
5 * 2.2 = 11
6 * 2.2 = 13.2
7 * 2.2 = 15.4
8 * 2.2 = 17.6
9 * 2.2 = 19.8
so the 10 is never used because python is "0-indexed". for x in range(N) cycles x from 0 to N-1
Not sure but you may have just added 12 to each x? That would give you 12 through 21, which would just move all your blocks over by 12, but still touching each other.
Hope that helps
I wonder, how to copy and paste the code for object from info section to the actual console section? ctrl+c ctrl+v doesn't work fpr me. Anyone else with this issue?
figured it out! ctrl + F1 + C / ctrl + F1 + V for Macs!
Hi guys what is this type of art style called? Much thanks!
🔥🔥🔥🔥
Can I download an old version of Blender and use Python on it?
yes, you can
What program language is in using to generate this art
python
Miraculous!!
French genius
Can we use p5.js or JavaScript in blender?
Nope. P5js is just a library based off of javascript. And blender's text editor only works with python. But if you know javascript, then you'll find python pretty easy, i guess. But the hard part is remembering the functions that blender uses.
your projects are at Behance
미쳤다.....
Some people are really freaking clever..
Sae
not even close to what the thumbnail is ....
Thanks.Blender, my Python new stage
import bpy
import random
import time
from mathutils import Vector
materials = [
bpy.data.materials[1],
bpy.data.materials[1],
bpy.data.materials[0],
bpy.data.materials[1],
bpy.data.materials[0],
bpy.data.materials[1]
]
sizes = [
1,
2,
4,
]
bpy.ops.mesh.primitive_cube_add(size=1.0, location=(0,0,0))
ob = bpy.context.object
ob.rotation_mode = 'XYZ'
obs = []
sce = bpy.context.scene
start = time.time()
def index_exists(ls,i):
return (0
Super cool, thanks for showcasing!
what's the function of import bpy and import random command at the beginning of script? is that separated files?
In python when the interpreter is run not every libraries/package are imported, you have to manually import what is needed. The "bpy" package is made available by blender to get access to blender data and functions. The random module is a default python package but needs to be loaded too, it gives access to pseudo-random number generators:
- docs.blender.org/api/blender_python_api_2_59_0/info_overview.html
- docs.python.org/3/library/random.html
Awesome !
thanks that's helpful
beautiful
what the hell!!!!❤❤🤩🤩😮😮
This video is soooooo much helpful for me...
🎉🎉🎉
❤❤❤
Thanks a lot...😊
What made modeling difficult for me is the too much to learn....and then there's sculpting. I'm a "lazy-hard" type person; I'll do things the hard way if doing things the easy way has a barrier to entry. I'll just sculpt (and then retopo) anything with geometry more complex than a table fan for example. This is good since I kinda know python already. I can basically make my own generators with this!
Wow.
nice but, how make the final ?
This looks way better than coding it in processing.
Sorry for being too null
can i batch render those? something like: run script + render (loop this x times)....
so i can generate x different pieces
yes you can
This was where I lost 4:26
This was a real fun and easy to follow walkthrough!
LMAO when I heard his terrible mic quality
oh wow! 2 years of using Blender and I never used the coding feature🥲