@JoseConseco: WOW, this looks so cool! can you describe how you archieved this effect?
Very simple:
In loop:
- calculate random point Vector
- snap it to surface with BVH ‘find nearest surface point’ (I thought i will give nearest vertex position, but it is actually giving surface point so work almost like shrink wrap modifier).
Then output those Vector list from loop, to spline.
Blend file.
Anyway one problem with above is that points are to even/noisy. There should be way to generate points with different octaves (frequencies), but I’m no sure how to achieve that yet. In image below, on left is what I have, on right is nicer looking curve (it is more natural - like branch, lightning, because it is not so uniform).
Verry Nice Jose , thanks for making this excellent example :eyebrowlift2:
Thx!
Could you share this?? I wish I could play with it, to see how thing are working inside Path tracer.
@JoseConseco:
Hmmm okay
here is my raytracer:
Timeline Renderer v8.blend (1.47 MB)
To start the rendering you have to press play. I won’t explain how it works in detail now but feel free to reverse engineer it yourself.
(If the file doesn’t work in AN 1.5 you can ask of course)
Awesome thank! It works great.
One more ivy example. I it not so bad way of doing hairs… But still l haven’t found a way to split spline sampling into different octaves/freq. I think I google for wrong keywords, because I cannot find anything.
Attachments
I guess this maybe very basic stuff for you. But this is what I´ve found on non uniform random distributions
Benny G - looks awesome.
pecador - thanks. I found what I was looking for:
http://libnoise.sourceforge.net/glossary/index.html#coherentnoise
https://www.khanacademy.org/computing/computer-programming/programming-natural-simulations/programming-noise/a/perlin-noise
Basically it seems, that what I was searching for is ‘coherent noise’. And example of coherent noise is perlin noise. But from what I see, there is no build-in python method for generating perlin noise
Edit. I found it:
https://www.blender.org/api/blender_python_api_2_74_release/mathutils.noise.html
@JoseConseco and @Benny G: would you like to make short turntable animations of these very impressive examples (for a showreel or whatever)
if you don’t want to render all that on your own you can also give me a file which I can render
Hello everyone… and Jackes… thank a lot for that addon! But does someone here know why my version appear as in the attached image? thank a lot in advance… (I’m in a MACBookPro with retina and El Capitan running)
Attachments
By PC is not the fastest, but if I disable sss, it should render ok. What output resolution, codec do you want? How long it should take?
well 1920x1080 would be best but it’s ok when you render 1280x720
I think 5s should be enough. also you don’t have to rotate around the whole head.
you can either send me a mp4 with H.264 with a high bitrate or a link to the .png files.
I will go with 720p res, cos it is slow
Anyway new perlin noise is giving way better results that I imagined:
Hairs now tends to clump in natural way, and I have ability to adjust noise frequency.
I works with decent speed on 3000 strands. Good stuff for making hair for speed sculpting
Attachments
Amazing result Jose Conseco:)
this is just the panel in the 3d views. and it’s ok as it is.
this is only needed if you wanna have some values at hand in the 3d view
The animation nodes deal is in the nodes panel/view
Attachments
I wonder if anyone can help, I have been playing around with animation nodes and having great fun but I have hit a problem. I have been following some tutorials and have managed to created various copies of items etc but I want to assign each copy a different colour but cannot work out how to do it. Can anyone help? Attached is a screenshot of the current state.
Basically I have managed to create various letters by duplication but I want to randomise each copy’s colour and content so that they are all different when animating.
I cannot find any examples or documentation to help so any ideas would be gratefully received.
Thx
Attachments
Hi,
New to animation nodes. My first script involved making a “subsurf modifier” node so that I could smooth out my dynamically generated shapes.
import bpy
from … base_types.node import AnimationNode
class SubSurfaceNode(bpy.types.Node, AnimationNode):
bl_idname = “an_SubSurfaceModifierNode”
bl_label = “SubSurface Modifier Node”
def create(self):
self.inputs.new("an_ObjectSocket", "Object", "object")
self.inputs.new("an_IntegerSocket","SubDivs", "level").value=3
self.outputs.new("an_ObjectSocket", "Object", "object")
def execute(self, object, level):
if object is None: return object
subd = 'subd'
for mods in object.modifiers:
if mods.type == "SUBSURF":
if object.modifiers[subd].levels == level:
return object
else:
object.modifiers[subd].levels = level
if object.type != "MESH" or object.mode != "OBJECT":
self.errorMessage = "Object is not in object mode or is no mesh object"
return object
object.modifiers.new(subd, type='SUBSURF')
object.modifiers[subd].levels = level
self.errorMessage = ""
return object
Attachments
There are 2 major tricks to note:
- object instancer has options:
*full copy = also copy obj constraints/modif etc
*deep copy = separate mesh / content for each instance (like shiftD vs adltD copy object …) - using the same material, and vary color by object:
- cycles does not allow that but with Vertex Color (for mesh) in [Color menu]
- also may use object index pass, but that is just 1 value
so I guess you need to have deep copy and then change the data/content
also may use the vertex color to vary as much as you like
cheers for that o.g. i will have a go