Neither of those are loading for me.
Or maybe justā¦
Anyone else watching travelers?
Team of travelers sent back in time, form a team in Ayr and build the directors network?
Lol. Server racks flashing green LEDs in the background and everything.
I canāt get enough of that show!!
Here is my .gif file.
https://giphy.com/gifs/maidsafe-safe-network-5b7Mq4TCHs1GgfoHBO
Iām really proud of how I got the Maidsafe Logo to jump and twirl. But it seems like I should maybe add something because it all looks a little plain. The problem is, I am not sure what to add.
what software did you use to make it?
Blender. I also wrote a python script, which I gave to dugcampbell, that automatically generates the Maidsafe Logo in Blender. You type in the node size, the connection length, and the connection thickness, run the script, and out pops a customized Maidsafe Logo with exactly those dimensions.
Sweet! I canāt even do any programming in python⦠so Iām left manually modelling all my models
These are the 2 that are getting top rendering priority right now, Iāll remove these crappy versions when I have the crisp and clean ones all rendered out at higher resolution.
Woah, those are awesome
Thanks doin my best!
I will put my script up here. Then you will be able to use it!
OK Iām pasting in the script, but the special characters in the python code are being changed into formatting! How do I override that! It is very irritating! You will need to fix this before you run it!
Edit: A forum guardian angel fixed up all of this code. Now it can be run exactly as posted.
Also, there are tuturials that show you how to run python script if you donāt know how to do it. Let me know if you need help.
import bpy
# This parameter is the radius of the spherical nodes
node_radius = 1
# This parameter is the length of the connection
connection_length = 3
# This parameter is the radius of the connection cylinder
connection_radius = 0.5
cos_30 = 0.86602540378
sin_30 = 0.5
# put the spherical nodes in first
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(0,0,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30,connection_length*sin_30,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*2,0,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),connection_length*sin_30,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-2),0,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(0,connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*2,connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-2),connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30,connection_length*sin_30 + connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),connection_length*sin_30 + connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(0,connection_length*2,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30,connection_length*sin_30*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),connection_length*sin_30*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(0,connection_length*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*2,connection_length*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-2),connection_length*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30,(connection_length*sin_30 + connection_length)*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),(connection_length*sin_30 + connection_length)*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_uv_sphere_add(size=node_radius)
bpy.ops.transform.translate(value=(0,connection_length*(-2),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/2,connection_length*sin_30/2,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(1.5),connection_length*sin_30/2,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(1.5),connection_length*sin_30*(1.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(1.5),connection_length*sin_30*(2.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/2,connection_length*sin_30*(1.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(0,connection_length*sin_30*(3),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(0,connection_length*sin_30*(-1),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(0,connection_length*sin_30*(-3),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/2,connection_length*sin_30/2 - connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(1.5),connection_length*sin_30/2 - connection_length,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/2,connection_length*sin_30/2 - connection_length*2,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/(-2),connection_length*sin_30/2 - connection_length*(1.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30/(-2),connection_length*sin_30/2,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=-0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1.5),connection_length*sin_30*(1.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),connection_length*sin_30*(2),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1),0,0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=0.523599,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(-1.5),connection_length*sin_30*(-1.5),0))
bpy.ops.object.shade_smooth()
bpy.ops.mesh.primitive_cylinder_add(radius=connection_radius, depth=connection_length)
bpy.ops.transform.rotate(value=1.5708,axis = (0,1,0))
bpy.ops.transform.rotate(value=1.5708,axis = (0,0,1))
bpy.ops.transform.translate(value=(connection_length*cos_30*(-2),connection_length*sin_30,0))
bpy.ops.object.shade_smooth()
Normally code formatting is preserved by placing triple backticks ``` before and after the code block and adding the language name after the first triple backtips.
Like this:
```python You code here ```
wow⦠awsome, bro!>> Both are great but I like the first one !
How did you do that effect? Is there a tutorial for that? I want to be able to do that too.
If you want I can just send you the .blend file and you can play with it yourself. But to sum it up the SAFE logo object is invisible and is hollow, I put a fluid inflow in the center ball and thatās really all blender does the rest, of coarse it took hours of tweaking and retweaking to make sure the water filled out the entire object by the end of the animation (which isnt the case for those first 2 I posted, I just finished the final now still not happy with it though I will post it and move on to my next ideas )
I think the Matrix chat community is the best for sending files to each other, here it is limited to 4mb and we canāt send anything but pictures. If you get on the official SAFE network channel on matrix you can PM me there, Iām one of the mods in that room.
Here is a base āMaidsafeā logo, going to be using it in an upcoming animation.