What is the correct context for applying a new particle setting or override it? I have an object (a feather) with a particle system on it (little objects that turn into spaces later - boolean/difference - to make it look a little ruffled). I have duplicated the object a number of times (to create a wing). Each instance gives me the same particle system output. To randomize the particles on each duplicated object, I give it a new particle setting and change the seed value.

To be able to do this a large number of times (and many other things as well), I am creating  code to automate the tasks.

Problem: the particle settings line bpy.ops.particle.new() gives me "#RuntimeError: Operator bpy.ops.particle.new.poll() failed, context is incorrect"

I am new to coding and learning fast. Dove in the documentation and read the Q&A's on this site, but hit a dead end. I am out of my depth here. Help is appreciated.

I know there is a "Button context" called "bpy.context.particle_settings", but I don't know what to do with that.

What context do I need to apply new particle settings to work (and how)? or how can I override the context?

In the snipped below one edge of the feather, containing the particle system, is selected and made active, before attempting to add new settings

bpy.ops.object.select_all(action='DESELECT')
object = bpy.data.objects[edge_name]
object.select = True
bpy.context.scene.objects.active = bpy.data.objects[edge_name]
bpy.ops.particle.new() #RuntimeError: Operator bpy.ops.particle.new.poll() failed, context is incorrect
bpy.context.object.particle_systems["ParticleSystem"].seed = seed_value

The bpy.ops.particle.new() is not the operator name you are after.

bpy.context.scene.objects.active = bpy.data.objects[edge_name]
bpy.ops.object.particle_system_add()
bpy.context.object.particle_systems.active.seed = seed_value

It is usually preferred to not use operators in scripts. For creating particle systems the method may appear a bit odd as adding a modifier seems to be the only non-operator way to do it. You might notice that this way doesn't need to alter the active or selected objects.

object = bpy.data.objects[edge_name]

if len(object.particle_systems) == 0:
    object.modifiers.new(name='particles',type='PARTICLE_SYSTEM')
    object.particle_systems.active.seed = seed_value

Once you have the particle system on the object you can either change each setting to suit or you can set it to use an existing particle setup.

object.particle_systems[0].settings = bpy.data.particles['MyGreatParticles']

While a new particle setting will be created each time you add a particle modifier and you will get more of them as you repeat this, by using an existing particle setup they will have zero user count and will not be saved to disk.

Came accross an answer to the question by lyzard.3d on blenderartists.org that works as well (source)

cube = bpy.data.objects['Cube'] #get object
par_set = bpy.data.particles['ParticleSettings'] #get particle setting you want to assign
cube.particle_systems['ParticleSystem'].settings = par_set #assign particle settings to object's particle system

It does require to create all particle setting names before running the script, otherwise it comes up empty handed.


yellow dotted line grab tool I'm a beginner.  Everything was going along fine. I was using click, hold, grab to pull and push on vertices without striking the G key.  For some reason now it's not working and when I hit the G key a small dotted yellow line appears and extends and contracts with my mouse movement.  What did I do?

In Blender you can begin to grab either using the right mouse button or the G key.

After that you can move the wanted vertices, but if during this movement you hit G again, the movement is limited to the edges connected to the displaced vertex.

In complement, that can be used with more than one vertex, here are some behaviors :

I figured out what I did.  I accidentally hit the magnet icon in the header.  whoops

and.....I probably hit the g key twice too.  Having the best time. :-P


How to emulate tracking to objects like the 'Nokia snake game'? Not sure if this question has already been asked, have looked around.

I'm hoping to track objects to a specific position, in a chain or a link behind the  main object(enemy) when they have been sensed or "picked-up" by the enemy.

Something like this:

I've tried using constraints:

(bge.logic.nuke) = (bge.logic.nuke). constraints.new (type= 'TRACK_TO')
(bge.logic.nuke).target = context.scene.objects.get("bullseye")

To attempt to track the object 'nuke' to the 'bullseye' once sensed by the 'bullseye'.

However, this doesn't seem to be an attribute in the bge module.I know I've done something wrong:

  AttributeError: 'list' object has no attribute 'constraints'
  Python script error - object 'Empty', controller 'Python':
  Traceback (most recent call last):

Does anyone have any idea of any solutions?

Much appreciated, thanks.

No worries all, I found a website which describes perfectly what I wanted to do. My bad, ignore this!! Sorry.

For anyone else whom is dense, with poor research methods (like myself), please see this site:
https://wiki.blender.org/index.php/Doc:2.4/Manual/Modeling/Objects/Tracking


Why Is Blender Missing Buttons? I am trying to add material to my tire and after I complete the steps to get the material and make it textured, I am told to hit the material button to see the material and texture as one. However, my blender doesn't have the buttons under the preview window on the right hand side as the instructed video I am watching has.

I added pictures so you can see what I am talking about.
Screen shot of Instructed Video.

My Blender

Well I think I might see your problem. If you are trying to view your textures through the 3D Viewport without the need to render the scene:
There is a button that should have a white ball with up and down arrows on it aka "Viewport Shading" is its name and it sits to the right of "Object Mode" button in which that button also has up and down arrows on it. Here is a pic:

The picture you see above is the editor or "3D View Editor". Now in this picture you will see that white ball im talking about next to the "Object Mode" button. Now click that ball in your blender "3D View Editor" and set it from Solid to Texture or if that does not work set from Texture or Solid to Material. If all else fails then try and get a recent version of blender.
Let me know if this does not help you in any way! :D

You've got to select the item first using right click or left click if you've changed user preferences. After that the button will reappear. Worked for me.


Why does this mirror, made using a glossy material, not fully reflect all the incomming light? As shown in the picture, I have this scene where I want to film this girl from her reflection in the mirror, and from the front I have lighted her face up for the shot, but when I render it with camera pointing to her mirror reflection, her face just appeared pale and unlighted. No matter how much I jack up the light strength (even to a ridiculously high value), it just stay this way.

I tried messing with light paths, limited and full global doesn't make any difference. higher or lower sample rate doesn't make difference. Tried several glossy mode, no difference either.

Anyone know why glossy behave like this? And, if I wanted this shot done properly, what can I do?

Make sure Render Settings > Clamp Indirect is set to a suitably high number, or 0 to disable clamping all together.

i had the same problem ,the problem is your glossy shader is set to a impossible number (0.000). you should try placing your glossy shader at (0.003). at 0.000 the calculations for the shader become error-ed.


How to make a gold ore texture? I am trying to make a gold ore material on my object but I cannot seem to make it look right with different nodes. Can anybody help me?!! I am just learning about nodes so I am fairly new to how they work and it needs to be explained in detail what to do.
This is what I have that is slightly close to what I am looking for...

You need more roughness, your model is too smooth. Try with the Principled shader which is a new node in Blender 2.79 +


Cannot replace a packed image in the uv image editor I was trying to replace an image in my UV image editor, but the image defaults to a different image. how do I fix this?

Your image is packed, replacing it is not possible (in newer blender this option is now grayed out in this case). You have to unpack it first, if you want to replace it.

Ok, so to fix that you need to unpack the image.
To unpack the image,  next to the image tab (the one when you click on it it has the greyed out replace image)
there's skin.png right? Next to that there's a 3, an F, a +, and this wierd thing i can't describe.
Click on that weird thing i can't describe (lol)  and click "Use file from current directory (create when necessary)
BOOM! You can now click on replace image


Pack PNG Sequence in Blend File Can anyone point me in a direction towards learning WHY you can't pack PNG sequences in a blend file? I know that you can't... But it seems like it would be an easy feature to add. Thanks!

From what I've read you can add pngs as texture information after they are rendered and then Select the Pack All option to save the png with the blend file.

But why do you want it to all travel together? Normally the objective of rendering is to get the images out of Blender so that you can use them on your website or something.


How to model wavy pattern on the surface? G'day to all B3D community!

I started working on the project to model fitness bracelet and have no any idea how to model wavy pattern on the surface! Maybe you, guys, know some ways of doing that?

I've attached an image of what I'm talking about!

Thanx a lot in advance!!!

Sketch curve, convert to mesh and then refine.

Sketch pattern main feature:

I would start from the sketching the main lines of the pattern using a bezier curve. First thing to place are the start and end point. Grab them around upon a reference image. Then adjust the handles orientation to match the reference curve's tangency (vertical) like the image below is showing:

.

Create main geometry

Now that we have the curve, set a bevel object (the black arrow in the picture is pointing mine) to place some faces to work with. At this point you can temporarily add modifiers to the object to get an idea of the final apparence of the pattern:

Convert to mesh and edit the object

As for the final model I plan to use the subdivision surface modifier, I kept the curve's resolution low before converting the curve to mesh. After this, run the symmetrize command to mirror and duplicate the mesh around the origin. Then clean up a bit the model by deleting unecessary faces:

You'll have to repeat the operation to take care of the border in order to achieve a fully tileable mesh. Fill the voids with the faces paying attention to not work outside the imaginary boundaries of the figure. You should come up with something similar to the image below:

Final retouches and modifiers

Now that the basic shape is ready you can tweak each vertex position manually, with proportional edit enabled, or even with the sculpting tools, or using the smooth vertex command... in order to achieve the right shape. You can also alter the topology with the knife tool, edge collapsing, deleting and creating faces... till you reach a satifying result.

Create a similar texture (in GIMP or other image processing software) then add an image texture node to the material and connect it to the displacement in the last node.
This will help you if you are using cycles. I don't know how to do it in the internal engine.


How to flatten a face to avoid distortion (make an ngon planar) I created a kind of procedural modeled ground (rocks desert like), with some decimate modifiers to have a really crazy topology.

The result is nice, except for some ngons faces that contains some weird normals, due to the elevation difference of several vertices:

How to avoid this? My first guess is to "flatten the face, but I can't figure out the way to do this operation.

I must specify that the face is not perpendicular to the Z axis, so a zero-Z-scaling (S Z 0) won't work here.

You can scale along the normal.

Set the Transform orientation to Normal in 3D view > Header:

Then press SZZ0.

A  simpler approach to the first answer would be, go to Object Properties -> Scale. And change the x y z value to 0 according to your needs.


Quickly Save multiple images I am going to upload a file to be rendered on RenderST. My .blend has a video file in it so I am not able to use "auto pack data" since it does not pack video files.

The problem is I have 100+ images associated with my .blend file. These are pulled from many different files from our work servers and I have no idea where the original files are all located. So I need to save out these images one by one from blender to put in their own folder to upload to RenderSt.

Is there a quicker way of doing this? maybe a python script?

EDIT:

Added pic to make it a little clearer

By the time you get the script completed and run it, you may have your files loaded.  Loading them to your computer in a folder with subfolders based on file sizes, then updloading them is usually best. Load from smallest image sizes to largest folder.


Why Does My Other Software Exported Heightmap Displace My Mesh So Much In Blender? I created this with world machine and imported it into blender via a .tif height map and applied it to a subdivided plane with displacement.
But the scale is wrong! It seems that every value I have is twice as powerful as I need.

As you can see in this image, my imported height map in orange is twice as "sharp" compared to my original model exported in .obj from my software. And the two mountains have the same dimensions!
How can I counter this issue in blender?
I think that my white value and black values need to be twice as soft to correct this? Is this right?

This looks to me like a color transform is being applied your displacement map prior to displacement. Don't save your height map as sRGB. I would also save the file itself as OpenEXR. Don't use PNG / JPG / other garbage formats.
Lastly, make sure the color space value of your displacement map texture is set to "Non-Color" before hooking it up.

unfortunatly i was forced to use the displacement method within the shader editor nodes... because i had to use a math node to correct black and white value with a math node set on power 0.5; the i adjust the scaling of the displacement

you can do the same in the texture editor, but right now on 2.8 its totally useless and broken


How to smooth transition between two parts of the object How to smooth transition between two parts of the object?

No idea what to do to make it look smooth after subdiv

I would try using the 'Intersect' or 'Union' modes for the Boolean modifier. Add it to either part of your model and select the other part in the "Object:" box.

Have you set your object as shade smooth? if yes, go to Objects > Shade flat


Duplicated objects copy animation I have been designing a defense tower. I have a sphere that rotates around 360deg as it's default animation. I added two cylinders to it, one being the base for the guns, and the other being the actual gun. I plan to add another animation to as well.

The problem is that the gun cylinder(s) "Cylinder.003" are linked somehow. I used ⇧ Shiftd to duplicate the cylinder and I have 2 of the exact same cylinder. When I try to make my animation, both cylinders move, but I only want one to move at a single time. If anyone can tell me how to "unlink" these "linked" objects, it would be much appreciated. I am stuck on this project until I can unlink it.

Any help would be greatly appreciated.

In object mode, select one of the cylinders and press U to bring up the Make Single User menu.  Choose the Object Animation option. Now they will each have their own Action datablock you can animate.

Select the second objects armature, place it in pose mode, open the graph editor and delete all animations for the second object.


How do I make remove the "tufts" and get this to be better rounded? I have a model I'm making, with a mirror modifier and a subdivision surfaces modifier in use, where an ear has "tufts". How do I remove these "tufts" and make the edges connecting the ear to the head uniformly rounded, rather than hap-hardly rounded?

Here's an image of the ear's topology:

Here's the ear in object mode.

I've tried moving around the points manually, but that only makes it worse. I've tried scaling it on the y axis, but that doesn't help, either, because all the points, underneath the subdivision surfaces modifier, are in a line nice curved line, anyway. I've also tried subdividing the mesh then decimating it, but collapse, unsubdivide and planar ruin the mesh and planar makes a "tuft" worse.

Thank you.

Avoid using polygons with more than 4 edges(except on hard flat non deforming surfaces)....that is where your issues are coming from...there are no edges for the subdivisions to adhere to.


subdivided/unsubdivided linked split screen Is there a way to split the viewport so I can view my unsubdivided model in edit mode and my subdivided model in object mode at the same time? I'd like to be able to edit my mesh and see it update on a subdivided version on a separate window. Thanks!

A trick to do that :

Temporary use a mirror (1) with another object as center, here an empty (2).

You can edit the original and see the mirrored mesh with subsurf.

When finished, remove or hide the mirror modifier.

Just remember that the shape is mirrored... so the left becomes the right, etc.

From that you can set two views in order to choose the rendering mode for each:

You can create a new 3d view window and under the Tools panel (N hotkey) / Display check Only Render. This will make that view only show the final mesh.


Smooth Shading artifacts on low poly model So when I'm extruding inwards, there comes this weird shadow.

But it's only when in smooth shading, if I put the object to flat shading it looks fine.

There isn't any modifications and I tried the offset edge slide, but it didn't work.

So, what is it and where does it come from, and is there a way around it with smooth shading on?

In smooth shading, the vertex normals are interpolated as shown in this profile view diagram :

More details in this video : https://youtu.be/PMgjVJogIbc

Most of the times, we want acute angles or right angles to stay sharp.

To do that, you can either :

enable Autosmooth and set the minimum angle for smoothing (above that angle the edges will stay sharp) :

Note that Autosmooth only works when Smooth shading is also enabled for the object.

or :

manually select the edges you want to keep sharp in Edit mode and click on Mesh > Edges > Mark Sharp. They will appear in blue (you still need to have Autosmooth enabled but this time you can keep the angle at 180° so only your selected edges are smoothed) :

here's how it looks :

or :

add edge loops and bevels at the right places to avoid smoothing artifacts. This usually produces more realistic results, since perfectly sharp angles don't exist in the real world even when the bevel is very tiny. Here I highlighted the results of the beveled edges in pink to show you :

and here's how it looks (the bevel is big here, you can make it smaller) :

compared to no bevel at all and smooth shading on all angles :

That shadow is caused by lack of geometry. Basically, there is not enough stuff for blender to work with.
Try adding edge loops at the areas close to the shadows.
As you make stuff, you'll learn more about smooth shading and how it works. For now, I suggest you look for tutorials that explain normals and smoothing so that you can better understand what's happening in your meshes.


Polygonal modeling vs. digital sculpting Can anyone please explain the difference between polygonal modeling and digital sculpting?

In my personal opinion sculpting is better than polygon modeling - it's because in this world there is no perfection, so when you sculpt the model looks alive and like having a soul in it.


Blender: Exporting a large 3D map into a 2D image I have designed a 3D Map in Blender. I wish to export a 2D image where I can place it inside an HTML5 canvas. The user would then be able to pan across the canvas to see the whole map.

My question is, how do I export the whole blender map into a 2D image? I can fit the whole map into the camera view port but it would be too small. I can even export the 3D map into small segments, but I am not sure how to do that either.

I am still new to blender and don't know all its features.

Thanks

Blender's ability to render large images is pretty robust: We do images 10Kx10K and larger all the time, so your viewport view is not a limiting factor.

Set up your camera to view the entire map, either overhead or however you wish to see the map inside your final 2D image. Set Blender's render dimensions to something large enough to accomplish your readability goals. This could easily be many thousands of pixels in either or both dimensions. Hit render.

You may want to experiment with camera settings to get the best image possible. Also, remember that if you are using an image texture within the 3D map (say, a 1024 x 1024 image as a ground texture), Blender cannot magically render it 20K x 20K without pixelization.  We use 4K skins and higher when we are working on big images... If procedural textures accomplish what you need, you'll have no problems.

Hope this helps... big images are a real strength of Blender, and shout if I can assist.

If you are willing to put up with learning a little bit of blender version 249b there exists an add-on called "really big render" that allows you to create a huge image. Granted it is exported in six separate photographic files but you can combine all into one by importing all 6 into Gimp or Photoshop, lining them up, and merging all layers into one, or flattening the image which is of high quality. Warning: I was only able to make it work once. This add-on crashed and never worked again. I don't know why. But i was able to create a high quality poster artwork using it. Just try the add-on on a different computer that has 249 installed on it. Do some research. You'll. Find the add-on somewhere.


adding effects like smoke Hi I'm looking for a way to add a poof of smoke to my video. I'm still new so I'm not sure how to do it on blender. I guess I would need to know how to overlay a video onto another to add the effect. If I had the video could I do that?

Not to take anything from @Kristof Meirlaen's answer, I take a more simplistic approach -

An easy way overall is to texture a 2D plane in the 3D window with the video of the pot, or preferably, make it the background image/video.  If it is made the background don't forget to increase it's opacity to 100% in that background image panel.

Back in the 3D window, texture another 2D plane with an "Alpha Layered" (See below) video for the poof-of-smoke.  You have to set the smoke plane to start at the desired Blender frame number so it doesn't start up until required.  This is done in the texture properties under the "Image tab" -->"Start".(bottom left of the tab)  Enter the required "BLENDER TIMELINE" frame number where the smoke video is to start.

You'll also need to tick the "Auto Refresh" box to make it play the video.

On the premise that you are using the background image option, view it from the camera so you'll see the pot.  Align the camera so the smoke is positioned exactly as desired.

Render it all with the Open GL renderer for speed, or Blender's internal renderer if you like watching the grass grow!  (Top left of 3D window under the "Render" drop down menu.

The anim here took me 45 mins, and admittedly a quick and dirty example.  It was started from scratch, pot, particles, smoke and bubbling liquid all created in Blender.  The smoke puff was as described above however, a "Cumulous cloud" made with Blender's cloud generator and saved as an alpha layered pic to be textured onto a 2D plane.  The plane was animated. (scaling, rotated etc)

Hope this gives you something to start from...

PS:  You mention that you're new so some info -
To align the camera whilst viewing through it, select the camera (right click on it), press N, ---> open the "View" tab and tick "Lock to camera view".

You can then use the mouse and buttons to move/rotate/zoom the camera to wherever you like as you would a first person view in a game.

Don't forget to untick that box again, or you could lose the smoke's alignment with the background image.

Further hint - if your machine does as mine does occasionally, starts rendering in solid mode, hit escape, and start the render again.  The 2nd attempt usually works properly.

If you don't have a "Smoke-poof" video, an "Alpha Layered" image might do.  Just animate the 2D plane that it's texturing, by increasing it's size (scaling) from nothing to maximum over a few frames and move the entire plane upwards. Once it's at a decent size,  make it rotate a little, or even shrink back to nothing if that suits. The smoke's shape can also be distorted and bent in various stages by doing that to the 2D plane.

Making a puff of smoke is a simple matter in Blender.  Start with the cube, scale it up a little and press T to bring up the Tools panel at left.  Open the "Create" tab and at the bottom, press "Cloud Generator".   This will open up a small menu.  Tick 'Particles', then select Cumulous from the list, press "Generate cloud" button.

A cube inside your original cube will appear with what looks like a clog of black cotton inside that.  Press F12 to render it as a good looking cloud!

The pic is taken from the 3D window's camera so it should be lined up fairly well.  If not adjust the view as mentioned above.

To give the cloud's outer edges "fluffiness" and make it's surrounding background invisible, we have to add transparency. We do this by rendering it with an alpha layer.

Goto the right hand properties panel (SH-SPACE), select the camera icon near the top. (2nd from left) and after setting it's output dimensions and folder etc,  goto the "Shading" tab and change the Alpha setting to "Transparent".

In the "Output" tab, select the format at left to PNG, compression to about 15$ and at the right, click on it's RGBA box. (The A is for alpha)

In the timeline set the frames to start at 1 and end at 1 also.  This will produce a .png alpha layered pic file in your nominated output folder.

From the 3D window press "N" to bring up the viewport's parameters.

Open the "Display" tab, tick "Only Render" and "World Background".
Press N again to close the panel

Go back up to the top left of the 3D window's Render Drop-down and click on "Render animation".  We have to use Blender's internal render in order to get a proper cloud pic.

At this point you can make a cup of tea/coffee while it renders the cloud.  It does a good job though.

This can be your smoke "poof" image which can be coloured, shaded, distorted, shaped and animated any way you like.

The pic shows how Cu clouds can look in their original form.  This pair was made to sail lazily across an alien sky.

This video describes what you are looking for: https://www.youtube.com/watch?v=Hro1BIWFEDQ

The video uses images, but you can apply the same process for videos.


Python: Check if file was saved I want to be able to check if the working .blend file has been saved when a user presses a button. If it has not been, Blender should give an error.

I just want the user to save before running my add-on.

If 'the file' you are referencing is a blender file and you want to know if it has been saved then there are two properties you can check.

If a blender file hasn't been saved at all you can check it's is_saved property as this will be False if it hasn't been saved:

if bpy.data.is_saved:
    #File has been saved. Do something.

(A previous version of this answer instead checked if the filepath property was blank instead - the above is a correction thanks to poor's comment).

For files that have been saved you can check the is_dirty property, which will be True when changes have been made since the last save:

if bpy.data.is_dirty:
    #Changes have been made since the last save. Do something.

To get a button to execute code have a look at Simple way to add button to UI.

For error messages look at Proper way to show users error info in the UI for addons.

This isn't really a blender question, but more a python question. But anyway, this would do the trick:

from os.path import isfile

if not isfile( PathOfSavedFile ): # Check if file exists
    raise IOError( "file <%s> not saved" % PathOfSavedFile )


How to export to dxf file without the geometry having a triangular mesh? I have a simple 3D model made in Blender that I need to export to AutoCAD in dxf format. In Blender I have dissolved faces to simplify the geometry of the mesh.
When I export my model to dxf I get new triangles on the faces. My client asks me to eliminate this triangulation and make the mesh as clear as possible so that it can be edited in AutoCAD.
Is there a way to export my model in Blender without creating those triangles? Is it possible to export my model in Blender to another format that can open AutoCAD avoiding that triangular mesh? Is the methodology I am applying correct or is there a better one?
Please note that I will need to create many 3D models like the one I show in the image and that my client requests that the final file be in dxf or dwg.

Unfortunately the DXF exporter always triangulates faces before exporting. I would suggest using .fbx as format instead, which can be imported by AutoCAD.

With version 2.79 the DXF export exports well "without triangulation".


How to export Blender model into Adobe After Effects? I have a model in Blender, which I have tried to export into Adobe After Effects as .obj and adobe after effects file (.jsx). None of these open in After effects. Does anyone know how to export it?

After Effects is not a 3D program, therefore it can not import 3D objects by itself. There are 3rd party programs that can help import an OBJ file. One of the best is Element 3D by Video Copilot ($200). After Effects also comes with Cinema 4D lite which has built in pipeline for working with 3D. You could always export from Blender into Cinema 4D and then use the built in pipeline to get it into After Effects.

Hope this helps.

You Better Export Your Animation as Image Sequences and use EXtractoR Plugin...
you can check this video too for further instructions
https://www.youtube.com/watch?v=thc0-1ze8po


How to deactivate User Persp (Local) view? I am accidentally going to User Persp (Local) view, and I don't know how to get back to a normal Perspective view..

When I'm in the User Persp (Local), I can see the objects on the viewport, but when I render it.. I got nothing in the render result

The point is, how to get back to normal perspective view?

To go back to Global perspective view, go to View -> "View Global/Local". The hotkey is Numpad /. You probably pressed this when you accidentally switched to local view. This also works for otho view as well, from global to local and back. (Just to add it in, here's a YouTube video explaining how it can be used to un-clutter your scene for easier editing.)


Creating Materials to Scale from image? Firstly, I'm using blender 2.8 and the cycles rendering engine.

I work for a company what sells PVC bathroom paneling and want to create a bathroom with these panels on the walls...

I have images of all of our wall panels to a scaled size (1m wide to 2.7m height)

I was wanting to create an image based texture on blender which would use these images as a scaled reference (So if the material is applied on a 2.4m standard wall it will not squash it down) likewise, if it is applied on a 5m wall, it will repeat 5 times and not stretch it.

I'm sure previously in Maya i've seen that you can actually define a material size.

How would this be achieved in blender?

This will be a base material which i will then add the diffuse and gloss textures to accordingly to show the reflectivity or the non reflectivity of these panels.

Kind Regards

Andy

Just connect mapping node and texture co-ordinate node to your image texture as shown in screenshot below and scale the texture to your desired size


Anyway to rig this wheel? trying to rig this robot, but I've got no idea how to do the wheel, any idea?

To answer your question more fully, I switched from comments to an answer.

The first thing I did was created and rigged a very rough estimate of your model:

I then added a square-ish wheel underneath it (visible in above picture). I parented this wheel to the armature via Object (Keep Transform), not any of the Armature Deform settings. This means that when you move the armature, the wheel will move with it (assuming the transformation is in object mode). While the wheel moves in conjunction with the rest of the model, you are free to rotate it on the appropriate axis. Here is what I achieved (glitch is in gif alone):

First of all, is the wheel mesh part of the same object as the character?
You need to separate it by selecting all the faces and press "P"

You can turn the wheel into a rigid body constraint of the type: motor

here is a youtube tutorial
https://www.youtube.com/watch?v=lU9PADYJLM0

or you can skip that step and simply keyframe the rotation on it
here is a youtube tutorial
https://www.youtube.com/watch?v=CFFhgutjZQk

And finally you need to use the graph editor to edit how your keyframes get interpolated
here is a youtube tutorial:
https://www.youtube.com/watch?v=R9gCHhJOjlQ


why boolean not working 100% I have a cube and added some modifier on to it. When i add boolean 95% it make difference to some area its not.

Mark in red are the area where its not working. May i know reason why its ignoring that part. I remove doubles and normals yet its not working. Any suggestion or help.

Blend file

Wrong normals & overlapping volumes

Your geometry is not 100% with the same characteristics: the carving object has some elements with inverted normals right where the problem occours:

And some elements that are everlapping each other (next to the inverted normals element):

Al boolean modifier works best with enclosed volumes, you should avoid both situation. You can for example recalculate normals and gap the overlapping elements till there is a gap between them.

Result:

Side notes: apart the cases when you would like to create a particular effect, the edge split modifier is used once at the very end. You have three. those are splitting the faces, and this may reduce the success of boolean operations. Also the displacement is being applied on a big poorly subdivided N-Gon: you should provide proper resolution&topology for a good displacement effect.

A tiny mathematical error I would guess.

Try moving your mesh a very very tiny little bit and see if it makes a difference.


Simplify mesh by merging and filling holes I have a rather complex planar mesh that I want to simplify (reduce number of faces) and fill the holes.

I have very little experience with Blender, but I have tried to use
- Mesh > Faces > Fill
- Modifier > Add Modifier > Decimate
- Mesh > Vertices > Merge
- Tools > Mesh Tools > Smooth Vertex
- Mesh > Clean up > Limited Dissolve

None of these helped, could someone point me in the right direction?

File can be downloaded here: http://www.horgvegen.no/barge_plane_org_0.1.blend

I have taken a look at your Blend file, and I first noticed that your mesh is quite messy. In these cases, using operations as you have mentioned (Merge, Fill, Decimate, Dissolve) will only worsen the problem.

Due to the messiness of the object in question, if possible, I would recommend rebuilding the mesh using clean, quad-based geometry.

First, in top view (Numkey 7), add a new plane over top your existing object (Shift + A > Mesh > Plane)

Next, move the plane along the X axis to the left edge of your mesh (G then X)

In edit mode (Tab), begin to move the vertices to the shape of the mesh. To select vertices, verify that you are in Vertex Select Mode (Ctrl + Tab > Vertex).

When you have shaped a section of the mesh, you can then extrude the edge of the plane to the right to add more detail. Use Ctrl + Tab > Edge to select whole edges then use E to extrude and repeat the previous vertex shuffling procedure.

Use Ctrl + R to add new loops to existing sections of  your mesh. With these methods you can add as much or as little detail to your new mesh as you like.

Here is a low-detail example I was able to match in under a minute:

Are you looking for this result

If yes then there are many overlapping faces. I have deleted some overlapping faces and edges and got the result. You have to do some cleanup. Hard to explain


Is it possible to prevent a Displacement modifier from affecting certain parts of a mesh? A Displacement modifier is doing a great job making a mesh look a realistic object, but there are certain spots, such as a dozen or so vertices at one corner of the mesh, where I don't want any displacement effect.  The displacment is making a mess of things in those spots.

I don't want to undo my brilliant sculpting work there and re-do it after applying the modifier, or to fix the mess afterward. In fact, I don't want to apply the modifier.  Never mind my particular reason, since other Blender modelers may have the same question and want to animate, adjust the Displacment settings later, copy the object but have different ripples in the objects (using global coords), or whatever.

What would be nice is a way to modulate the "strength" setting with a grayscale image or painting in a UV map, but I'm not seeing how to do that.  I'm one of: unlucky at Google today, stupid, or ignorant of some non-obvious feature in Blender.  Maybe there's a nodes editor way to build a processing pipeline for modifier parameters?

You can achieve this by applying your displace modifier to a vertex group.

Just ensure that the vertices you don't want it applied to are not a part of your vertex group.

Example:

As for modulating the strength value, the way to control individual values in blender is either through keyframes or drivers.

By right-clicking on the value you can 'Insert Keyframe' or 'Add Driver'

The blender wiki has a short tutorial that can get you started.


Change of the color of the hair in a render video I am working in blender and planning to create a character where the hair changes from black to white. I want to make an animated video which shows the change happens from the beginning of the hair, gradually to the end. I took the idea from the Disney animated movie, Tangled, when Rapunzel’s hair glows in a gradual way.Thanks for every help;))

You can get a MixRGB node, plug it into the color of your shader, slap a color ramp on the factor of the MixRGB and put a gradient texture on the factor of the color ramp. Slide the colors around in the color ramp and you get a nice transition. :D


Impossible to invoke a message inside of a timer app? it is impossible for me to invoke a message within a timer app, is it normal? or is it a bug?

for this message system:

import bpy

def ShowMessageBox(message = "", title = "Message Box", icon = 'INFO'): #Message function
    def draw(self, context):
        self.layout.label(text=message)
    bpy.context.window_manager.popup_menu(draw, title = title, icon = icon)

ShowMessageBox("Such crash", "Many Wow" ,"BLENDER")

if i put him inside any blender timer app loop

import bpy

def ShowMessageBox(message = "", title = "Message Box", icon = 'INFO'): #Message function
    def draw(self, context):
        self.layout.label(text=message)
    bpy.context.window_manager.popup_menu(draw, title = title, icon = icon)

def every_X_seconds_word():
    ShowMessageBox("Hello World", "Many Wow" ,"BLENDER")
    return 5.0
bpy.app.timers.register(every_X_seconds_word)

it make blender crash

import bpy

def every_X_seconds_word():
    def ShowMessageBox(message = "", title = "Message Box", icon = 'INFO'): #Message function
        def draw(self, context):
            self.layout.label(text=message)
        bpy.context.window_manager.popup_menu(draw, title = title, icon = icon)
    ShowMessageBox("Hello World", "Many Wow" ,"BLENDER")
    return 5.0
bpy.app.timers.register(every_X_seconds_word)

i also tried within the app, also crash.

inside of this timer app there's also some operator that cannot work due to context issue ? for example i cannot do a screenshot every X seconds.

how can i bypass this?

this is how you get menu working in a app loop

import bpy
from bpy.types import Menu

class VIEW3D_MT_ScriptLauncher(Menu):
    bl_label = "Save Your File?"
    bl_idname = "OBJECT_MT_fc_main_menulaunchscript" #other id if two pies

    def draw(self, context):
        layoutT = self.layout
        layoutT.label(text="30 minutes passed witouth any saves", icon='COLORSET_02_VEC')
        layoutT.label(text=" ")
        layoutT.separator()
        col = self.layout.column(align=False)
        col.label(text=" Quick save ")
        col.label(text=" Quick save as ")
        col.label(text=" Quick save as copy ")
        col.label(text=" Quick save as new version ")
        col.separator()
        col.label(text=" Don't ask anymore ")
        col.label(text=" No ")

    @staticmethod
    def every_n_sec(C_dict, times=10, interval=10):
        if times > 0:
            bpy.ops.wm.call_menu(C_dict,
                name='OBJECT_MT_fc_main_menulaunchscript')

            bpy.app.timers.register(
                lambda: __class__.every_n_sec(C_dict, times - 1),
                first_interval=interval)

def register():
    bpy.utils.register_class(VIEW3D_MT_ScriptLauncher)

def unregister():
    bpy.utils.unregister_class(VIEW3D_MT_ScriptLauncher)

if __name__ == "__main__":
    register()

    # pass context dict to the function so bpy.ops works in timer
    C_dict = bpy.context.copy()

    bpy.app.timers.register(
        lambda: VIEW3D_MT_ScriptLauncher.every_n_sec(C_dict))


I want to smooth only the outer faces of a circle I am currently working on a medal where I want a smooth the extreme outer part of it but without touching the rest especially the upper face.  However even when I add one subdivision modifier, I get the result I want but the upper face grove lines emitting from the central circle are ruined.  A you can see in the photos.

I  have marked the edges as sharp (Edit mode/mesh/shading/sharp) but without a result.

OK, for 3d Print this should work fine:

Add 2 edge loops along the sides.
Press CRTL num plus to extend your selection, so it covers the entire rim
W -> subdivide
Choose these options (lower left at your VP imediately after hitting subdivide)

You might need to tweak the rim, bc. it may become concave. Easiest would probably to delete the new edge loops around the "coin" again.

One way would be to separate into 2 different objects and apply the subdivision just to the outer object?


Game-ready hair mesh technique like Zbrush's imm brushes or better I wanted to figure out the best approach for game-ready hair that would likely be running in Unity as its game engine. I've found that Zbrush has imm brush/ hair strips and cards as a popular method.
1. How would this process be done in Blender or a technique to get results similar?
2. Would it take around the same time or would it be faster/easier just to invest in Zbrush?
3. If the substitute technique can't achieve effects as good as this hair strip method, what should I do instead with Blender?

With the game aspect in mind, I do want it to be able to be ran in a game engine of course, with performance generally in mind.

I want  to put this down for anyone who may read this answer for future reference. This was a breakthrough for me, and I hope it may be one for anyone who had similar problems to me.

If you

Don't want to pay money for the hair tool addon,
Don't want to pay money for Zbrush,
Don't want to use a particle-based hair system for Blender,
Don't want as limited control over hair strands in Zbrush,
Or if you just want to stay in Blender,

You may want to consider this following technique/addon. It's called Bevel Curve Tools, and it allows Blender users to use a hair-strip technique similar to Zbrush's imm brushes method while potentially being even better.

In addition to being free, this is supposedly better than Zbrush for controlling polycount for hair strips, easier to control tapering, generally less restricted than Zbrush's method. You can even duplicate a hair strand you may have made with its own beveling, which means you can easily manipulate it to add variation and change it to your liking. I'll be vague here since the video link below elaborates on it in much more detail if you're really interested.

For further details, please consider checking out this Youtube video on how to use these addon. And of course, free downloads to the addons themselves are both on the video's description and will be at the bottom of this post in case you are confident with learning the tool on your own.

Good luck.

Github Bevel Curve Tools Download

Github 2 Blender Sculpt Tools (This is for extra features for Bevel Curve Tools, download this if you think you need it.)

How to use Bevel Curve Tools (Youtube Video)

I did not try it but am thinking about buying the hair tool add-on. It looks like the results are very convincing.

https://bartoszstyperek.wordpress.com/2017/07/29/hair-tool-blender-addon/


How to render a model with pixel art/sprite textures and have it not be blurry? I've made a model that's PS1-eqse in the vain of games like Mega Man Legends, but whenever I try to render it in Blender, it looks absolutely atrocious.

I've disabled Anti-Aliasing, turned off MipMaps in Blender Preferences, which DID make the pixel textures clearer, but only in viewport.
But it still looks awful.

Anything else I can do to make the render show the pixel textures clearer?

Turning of mipmaps is just a performance setting for the viewport, you need to change the interpolation method for each image texture.

In the image node on the second pull down menu change to Closest

Yes, switch to cycles, and instead of diffuse with a lamp in your scene, use your image texture plugged into an emission shader with it's strength set to 0.5


Baked Texture is Darker and uglier than the render I'm new in blender and searching for the answer of my problem anywhere but I got nothing
heres my problem, when im bake the object, the result seem ugly, darker, and dissapointing. dosnt even close with my render, here the screenshot

and here when i put the image texture and see it in the material viewport (it should look same with the render view)

and here when I put the baked texture wall in unity

what did I do wrong guys?? ty for your respond
(sry english is not my first language).

I think you did it right, but rendering is not the same as the viewport material preview. If your baking and your textures are large enough (not to loose detail because of that) increase the sample rate. Baking will take a while then too (maybe a hour or longer). Try a sample rate first double current then try 400 or 1000

PS perhaps you should take a look what 2.8 eevee can do for your kind of work.


Why is it the body clipping through shinkwrapped shirt? I shrink wrapped my shirt, set the offset to 30, made a thickness from the solidify, weighted the armature move with the shirt, and yet some of the mesh or the normal's clip through the shirt when I rotate a bone. why?


BMesh: How to map vertex-based UV-coordinates to loops? I have a game model format which stores the UV coordinates for each vertex. To implement seams in the UV mapping, a vertex just appears twice, each having a different UV coordinate (it solves the lighting issues introduced with that by using custom normals stored for each vertex, but sadly I can't teach Blender custom normals correctly yet as I learned... another story).

Basically, my vertex data looks like this (made-up data):

Index   X       Y       Z       U       V
0       1.4235  0.2434  -0.322  0.0     0.5
1       2.3242  0.231   0.323   0.5     0.0
2       1.2242  0.531   -0.323  0.5     0.5
...

So I started writing an importer for this format, and thought it's easy enough to just set an uv property of a BMVert instance - just to find out that BMVert does not have a property for UV mapping at all.

From looking at the samples, it (logically) looks like I have to set the UV coordinates by iterating through loops rather than the vertices. But I'm a little stumped for an answer on how to find out the index of the vertex having the required UV coordinate when iterating through the loops.

The answer here UV Vertex using Python? was suggested, but it does not show how to retrieve the corresponding index of a vertex.

My current code to import the XYZ vertex positions (and normals) is as follows:

# Get the vertices and indices of the most detailled LoD model.
vertices = get_vertices(...)
indices = get_indices(...)
# Create a mesh and a bmesh to represent the polygon.
mesh = bpy.data.meshes.new(fshp.header.name_offset.name)
bm = bmesh.new()
bm.from_mesh(mesh)
# Go through the vertices and add them to the bmesh.
for vertex in vertices:
    bm_vert = bm.verts.new(vertex.p0)
    #bm_vert.normal = vertex.n0 # TODO: Blender does not really support custom normals yet, and they look weird.
bm.verts.ensure_lookup_table() # Required after adding / removing vertices and before accessing them by index.
# Connect the faces, they are organized as a triangle list.
for i in range(0, len(indices), 3):
    bm.faces.new(bm.verts[j] for j in indices[i:i + 3])
# TODO: Set the UV coordinates??
uv_layer = bm.loops.layers.uv.active
for face in bm.faces:
    for loop in face.loops:
        loop[uv_layer].uv = #..?
# Write the bmesh data back to the mesh.
bm.to_mesh(mesh)
bm.free()
mesh_obj = bpy.data.objects.new(mesh.name, mesh)
bpy.context.scene.objects.link(mesh_obj)

It took me some time to realize I could just ask the vert property of a BMLoop when iterating through them, and then ask the index property of the retrieved BMVert to find my index.

It required to call bm.verts.index_update() before, or all the retrieved indices would've been -1.

This is my working code:

vertices = model.get_vertices()
# Add the vertices to the model.
for vertex in vertices:
    bm_vert = bm.verts.new(vertex.p0)
    #bm_vert.normal = vertex.n0 # TODO: Blender does not really support custom normals yet, and they look weird.
bm.verts.ensure_lookup_table() # Required after adding / removing vertices and before accessing them by index.
bm.verts.index_update()  # Required to actually retrieve the indices later on (or they stay -1).
# Connect the faces, they are organized as a triangle list.
for i in range(0, len(indices), 3):
    bm.faces.new(bm.verts[j] for j in indices[i:i + 3])
# Set the UV coordinates by iterating through the face loops.
uv_layer = bm.loops.layers.uv.new()
for face in bm.faces:
    for loop in face.loops:
        # Get the index of the vertex the loop contains.
        loop[uv_layer].uv = vertices[loop.vert.index].u0

You do the mapping like this:

for face in bm.faces:
    for vert, loop in zip(face.verts, face.loops):
        loop[uv_layer].uv = get_uvs(vert.index, face.index,...)

The last line depends on your file format and how are the UVs stored. You should be able to retrieve the appropriate UV coords from vert.index and face.index info.


Exporting to DirectX for Vehicle Simulator with correct axis for each object, Blender equivalent of Xform reset? So, my problem is when I export to DirectX format (.x), it shows strange in Vehicle Simulator (a vehicular simulator), and my model does not behave as it should. the propeller of my ship, which should rotate in a clockwise way, and the rudder which should probably rotate on the Z axis (up-down). So, my problem is that in Vehicle Simulator, the axis is wrong. As when I try to apply the elements instead of the properties of the ship and it's behaviour, it's all messed up. A friend told me he used the Reset Xform function in 3ds Max to correct the axis, is there a similar feature in Blender?

I seem to have solved this myself, somehow by tweaking the pivot points of the objects in the scene of Blender.


How to batch rename embedded (linked) textures in a scene? is there a way to batch rename all textures that are used by the all objects in a given scene? Background of this question is as follows:

I'm creating a set of models that all will be textured (diff, roughness, normal), and all textures will be of 4k size.
After creation, i want to have a copy of the 4K textures in 2k size. Therefore, i export all textures by using "File" --> "External data" --> "Unpack all into files". Then, i use irfan view to batch resize and rename all textures, giving them the suffix "_2k". But when i re-link the files, the file connection in the shader nodes is lost. They need to be re-linked manually. Doing this manually is ok for a small amount of textures, but this time i will have about 100 textures.

So, how can i achieve to rename all textures without loosing the connection to the shader nodes? Some advice will be very helpful.

Thank you in advance!

This question was answered at blenderartists. See the solution with a phyton script here:

https://blenderartists.org/forum/showthread.php?441069-How-to-batch-rename-embedded-(linked)-textures-in-a-scene

Thanks to the users Photox and MartinZ for help!


Export .obj file with png texture I'm playing around with Google's new Augmented Reality SDK.
Their example project contains an .obj file but its' textures are not in a .mtl file, put a .png file; no .mlt file at all (example for an Android robot model below).

From a little research I take this is not the 'standard' procedure of exporting a model / it's texture in the .obj format from Blender (or similar programs).

Is there a way to still achieve this (textures in .png instead of .mtl) with Blender?

The .mtl file is only a material definition file which contains references to textures.

if you want to export obj with .mtl and textures you need to make sure you follow these steps:

In your OBJ export menu:

Make sure material export is ticked

Set the path mode on COPY

You will see that in your target folder you now have

An obj file which contains your mesh information
An mtl file which contains material definition
All tetxure files referenced in the .mtl

Another easy way, but off topic way, to get a png out of an mtl, is to make a Roblox account, download Roblox studio.

Make a new baseplate game, insert a meshpart and then go to View -> Properties and then enable properties tab, then look at the properties tab of the meshpart and then you should see a folder button on the side of the mesh section, and then click it, insert your mesh, and under the mesh id, you should see a texture.

Copy the id, only the numbers, then type in exactly this and replace (insert id here) with your id: roblox.com/library/(insert id here)/name and then it should redirect you to a link with the image.

If it has an image of a piece of paper and an hourglass, you need to wait for it to be an approved image.


Encoder Timebase is not set - audio duplication error, FPS problem I understand this question has been asked but I cannot find a solution to my particular problem.

When I try to animate my video project I get the error 'The Encoder Timebase is not set' - through this forum I found out that when I imported my video Blender changed it from 60fps down to 59.96fps.

Before animating I changed the fps back to 60 which allowed the animation process to begin. When my video had rendered I found that the audio tracks seem to have multiplied and overlayed each other. I also found that my Movie sequencer had lots of extra audio in it. In addition to this I found my outputted video had severely dropped in quality from the original 1080p.

Please see here for examples of what I am referring to -

Thank you so much for any help, total beginner here having a meltdown!

Paul

As suggested elsewhere I managed to export the audio as a .wav and then remove the audio track, set to 60fps and then overlay exported .wav file. I’m just animating at a higher quality than last time so I will know if this worked soon :)


What is the python script to export the selected meshes in .obj? I want to export my selected meshes in .obj in a relative path from the .blend file in python.

export obj to relative file path script:

import bpy
import os

blend_file_path = bpy.data.filepath
directory = os.path.dirname(blend_file_path)
target_file = os.path.join(directory, 'myfile.obj')

bpy.ops.export_scene.obj(filepath=target_file)

further export obj options:

bpy.ops.export_scene.obj(filepath="", check_existing=True, axis_forward='-Z', axis_up='Y', filter_glob="*.obj;*.mtl", use_selection=False, use_animation=False, use_mesh_modifiers=True, use_edges=True, use_smooth_groups=False, use_smooth_groups_bitflags=False, use_normals=True, use_uvs=True, use_materials=True, use_triangles=False, use_nurbs=False, use_vertex_groups=False, use_blen_objects=True, group_by_object=False, group_by_material=False, keep_vertex_order=False, global_scale=1, path_mode='AUTO')

See if that helps you :

How to write a simple Wavefront-OBJ exporter in Python?

Or you can simply use the export button in blender :

And make sure "Selectio Only" is checked


How can I achieve a "hand-drawn" look? So I watched "Suits" Episode of the Netflix Series "Love, Death & Robots".

I really liked the overall style. Sometimes you see it's low fps so I guess it's almost completely hand-drawn. Anyway, I took these screenshots:

I started Blender, created a feather mesh and used the hair-particle system to achieve this:

This is a hand-drawn texture on a default material (blender internal, viewport) with emission 0.5 (left) / shadeless (right).
But I am not yet pleased with the look. Do you have any tips to achieve this fluffy look?

You need to create 2 or 3 variation meshes to correctly display what you want. You can use 1 emitter but different particle settings (many particle systems inside 1 emitter). Since you´re using hair, the scruffy look is given by the parameters in Kink, Twist and Roughness (use custom roughness curve). Hope this helps. Yes, it will look fantastic, but please create 2 or 3 variations to be used with the 2 or 3 particle systems for the body emitter (one of the systems irremediably will be long feather looking hairs scruffed).

Hope this helps.
BFCT_Schiller

here is a youtube link that should hopefully answer your question:

https://www.youtube.com/watch?v=IOMjQbVvnXU


Mesh deform Large file size Recently, I used mesh deform modifier with armature to animate a character, but after clicking on the "bind" button, I saw that not all the mesh was deformed by the cage, so I clicked "unbind."
I've repeated this action about 7 times and finally I got the results that I want. BUT the problem is after saving my project, my blend file became very very large: about 800Mb.

Why does it happen? How to reduce my blend file size?

Unbinding the Modifier should reduce your file size to the previous 60Mb,
but the deformation data from your binding will be deleted.
Same with the Surface Deform Modifier.
I recommend to keep the modifier unbinded and bind it only before final render (if your workflow allows that).

Apply the Mesh Modifier and the size will be good.


How can I get rid of these artifacts in blender internal render? [Why do these weird artifacts appear in the render (blender internal) and how can I get rid of them, without switching to cycles? No double faces or intersecting geometry in the scene... The artifacts occur when a mesh is in front of a plane with a transparent image.

]1

Transparent objects and solid objects are rendered in two different steps during the render pipeline.

If you compare the render pass of solid color with the z-transparent one, you'll notice that the alpha channels do not match perfectly.

Combining the solid and transparent layers, you'll get some differences along the anti-aliased edges.

To solve this issue without increasing the render size, you can toggle transparency in the solid material (the character).

Doing so, Blender Internal will render the whole scene in a single pass.

Here you can find a similar example:

How can I make transparency act as expected with the internal renderer?

By changing the setting for render "Anti-aliasing" to "Full Sample" the artifacts were removed.


I accidently hit a key combo and it messed up my view My hands accidentally fumbled over the keyboard and the 3d view ended up with a dark volume that extends out forever from a point. Anything outside that view is hidden. I am unable to recover the file for some reason and may of just lost about 20 hours of work as I am unable to find out what I did.

You can try this:
File > Load Factory Settings.

Of course, this will reset any custom settings you set up.

I don't know what that thing is. Kinda looks like a lamp. Try alt+H to un-hide everything? Or check other layers?

Sorry about your lost work. Did you check .blend1 files?


What are the practical differences between beziers, nurbs and paths? I know that Beziers, Nurbs curves and Paths have different controls:

Bezier handles have control over tangents, and the curve always touches the control point.

Nurbs curves don't touch the control points, they just bend towards them. The curve doesn't reach the first or last control points, but ends around the second/second-last point.

Paths are the same as Nurbs curves, except the curve continues to reach the first and last control points.

But what are the practical differences between them? What can each of them be used for that the others can't, or what about each of them makes them easier to use for certain tasks?

I must say that I make quite extensive use of Bezier Curve objects in Blender, I use them a lot more than I actually use mesh objects.
I work mainly in architecture mostly doing archviz, design and interior decoration projects. I know this is not a popular nor a 'standard' modeling technique, I am perfectly aware how exotic it is and that most people's workflow is far different from mine, even in similar business areas.
Curve objects in Blender suffer from severe limitations when compared to meshes, like limited availability of modifiers, poor texture mapping capabilities, can't be unwrapped, can't have particles or participate in Boolean Operations, and can't be rigged or animated like meshes do.
That being said I find that bezier curve objects kept live and without converting to mesh have certain advantages and also particular constraints that make them well suited for these use cases.
Bezier Curves
By being inherently bidimensional, bezier curve objects (in 2D Mode) automatically guarantee a flat 2D surface avoiding dealing non planar surfaces originating from unintentional snapping, which is a frequent requirement recreating real world situations.
Because they you don't have to work with faces directly, you don't have to worry about topology nor maintaining a good edge flow, like you would with mesh objects. This lifts a huge burden and frees you from worrying about mico-managing
geometry.
Since curves have a builtin quality setting for curved segments smoothness you also don't have to use Subdiv Modifiers which are often a source of concern for topology. Mixed straight and curved shapes live happily together automatically handled by the bezier curve fill engine as well; so you also avoid having to worry about adding support edge loops or unwanted smoothing in straight areas.
Because the fill engine also handles automatically inner curves and recursive shapes inside shapes it easily creates holes and islands inside outlines, avoiding extensive use of Booleans, which are slow, error prone and often source of frequent problems and frustration.
The builtin beveling, offsetting and extrusion features allow for a non destructive workflow, which can easily go back to and change parametric without having to redo manually.
Bevel objects also allow defining extrusion shapes along complex paths, common in metal work, frames and railings frequently found in architecture, and often provided in CAD format by manufacturers.
In building and construction area, Bezier curve objects end up being very versatile in designing:

Building walls, which can conveniently be defined as an extrusion of an architectural plan outline that is often provided by the client, guaranteeing planar closed shapes.
Facades, curtain walls, and elevations can also be easily defined from client provided elevation drawings, since again they are mainly bi-dimensional extrusion structures with holes and island that are well defined from a 2D closed curve with holes for windows, doors, openings and stonework around them.
Pavement or floor finish areas (like an room with a certain type of wood, carpet or ceramic tile finish) which often a closed boundary combining complex shapes with mixed curved and straight geometries.
Concrete slabs, or extensive ceilings with arbitrarily shaped and numerous openings for lighting and holes for installed equipment, are also easy to define because you don't have to worry about topology, manually deal with gaps, fill holes nor use booleans.
Railings, metal work, extrusion profiles and frames along complex paths are easily handled by the builtin Bevel objects.
A lot of other real world objects made from sheet materials (like table tops, wood board, wood furniture benefit from the same advantages like easy extrusion, tessellation and beveling.

Other than that, they are also very useful as complement for illustration based graphical design type of work, like Logo design and symbol creation, or 2D type of motion graphics often used in TV, video and animation work.
NURBS
NURBS surfaces on the other hand are more suited for smooth almost organic-like shapes used in vehicle design like cars, boats, airplanes, or more aerodynamic industrial design objects.
They differ from subdivision surface because you never deal with faces directly, the emphasis on precision, trimming, and Boolean operations.
Looking at Blender alone it's hard to imagine using them as an actual full features modelling tool, since Blender's NURBS tools are admittedly a stub, with very limited features and lacking tools.
They are there more as a remnant of the past than as an actual production ready tool. Other dedicated software like Rhino, MoI, Katia, etc. have actually usable and full featured NURBS modelling tools, capable of very accurate surface definition, surface trimming, Boolean operations, etc.
They are very suited for actual technical drawing extraction from models, since correct and exact elevations, plans and sections can be extracted from a NURBS or Solid based 3D model.
Paths
I don't frequently use them myself, but from what I gather they are mostly used for animations purposes, mainly to define animation paths objects must follow, sort like a railway. They are mathematically more accurately and precisely defined, yielding smoother animations and avoiding jitters and sudden movements while animating.

You guys are so wonderfully technical. LOL. For me, the practical difference between the two types of curves in my artwork is that the N-curve lets me put the vertices of the curve exactly where I want them. The B-curve is for me madly confusing making those curves end up in the right place. It may seem tedious but I will almost bet that I can beat anyone time wise creating a complex of curves using the N-curve, extrude, click (rinse and repeat)like a little race car running around the contours of my design.


Blender 2.9 Not Displaying DDS textures in viewport I've heard something about Blender not rendering DDS textures in the viewport somewhat. It does seem to be true. Is there not a fix to this?

I'm having a similar issue with .DDS files on a project and apparently all you have to do is convert them to .png. Should be as simple as just renaming the suffix from .dds to .png (but make sure you do this with backup files!)
Can Blender open .DDS files?


Creating a block from two wireframes I'm a very new Blender user (read: no experience).

I would like to create a block between two wireframes without losing the "texture" of the wireframes. A previous attempt using the Loft function was largely successful, but seemed to connect points from the bottom wireframe to points on the top wireframe.

Is there an easy process to create a block between two wireframes without having the wireframe points connect between layers.

Thank you for your help :)

EDIT: Currently I have three wireframes 'layers', I've sketched these out, but simplified them for the purpose of this question.

I would like to connect layer 1 and layer 2 to create one block, and also connect layer 3 and a copy of layer 2 to create a second block.

EDIT 2: Following Rick Riggs' animation, I was able to create this. This looks like what I am trying to do, but the object still has an internal structure. What I am trying to create is an object that has either no internal structure, or is solid, so that I am able to calculate a volume. My apologies for not being clearer, but this is very new territory for me. Thanks again for all your help :)

This may be what you are looking for, if it is then I will circle back around to explain the details.


Is there a way to rotate the axes themselves? Is there a way to rotate the axes themselves? I want to rotate the global coordinate system, basically redefining the x and y axes 45 degrees from their original position.

Yes, if one fits your needs you can use a different transform orientation. If not, you can create a custom one.
Other transform orientation systems can be selected in 3D view > Header > Transform orientation:

Note that to transform a selection along the orientation set in 3D view > Header, you need to press the axis key twice, e.g. RYY. Otherwise Global coordinates will be used)
View
The orientation for the View setting is controlled by the angle of the view. See the wiki:

The manipulator will match the 3D view, Y → Up/Down, X → Left/Right, Z → Towards/Away from you.
This way you can constrain movement to one View axis with GXX.

You could use two 3D views, one to define the transform orientation, and another to actually view and interact with the scene.
Local
You could also try using local coordinates, which is defined by the rotation of the selected object(s). See the wiki:

The manipulator matches the object axis. Notice that, here, the
Manipulator is at a slight tilt (it is most visible on the object's
y-axis, the green arrow). This is due to our 15º rotation of the
object. This demonstrates the difference between local coordinates and
global coordinates. If we had rotated the object 90º along its x-axis,
we would see that the object's "Up" is the world's "Forward" -- or the
object's z-axis would now be the world's y-axis. This orientation has
an effect on many parts of the interface, so it is important to
understand the distinction.

Custom
You can also define arbitrary custom orientations based on the orientation of existing geometry, see my answer here.

You can change the coordinate system when exporting to Wavefront (.obj).

In this example, the model has the taper orientend on the Z-axis

When you export to .obj (file > export > Wavefront .obj), you can change the coordinate system (in this case, I'm setting the taper on the Y-axis)

Now, you can import the .obj file and change the options:

This is the result:

You can play with the forward/up combinations to achieve your goal


Rendering frames:Black and white instead of colour images, settings are RGBA I am trying to render few specific frames through python, both depth and colour images. Script is given below. Output images of depth are correct but rgb images are black and white. What could be the reason, how can I fix it?

 .

render_layers = nodes.new('CompositorNodeRLayers')
output_file_rgb = nodes.new("CompositorNodeOutputFile")
output_file_depth= nodes.new("CompositorNodeOutputFile")
normalizer=nodes.new("CompositorNodeNormalize")
viewer = nodes.new('CompositorNodeViewer')

scene.node_tree.links.new(
    render_layers.outputs['Image'],
    output_file_rgb.inputs['Image']
    )
scene.node_tree.links.new(
    render_layers.outputs['Z'],
    normalizer.inputs['Value']
    )
scene.node_tree.links.new(
    normalizer.outputs['Value'],
    output_file_depth.inputs['Image']
    )
scene.node_tree.links.new(
    normalizer.outputs['Value'],
    viewer.inputs['Image']
    )

.
.
.

for f in frame_numbers:
     scene.frame_set( f )
     scene.update()
     output_file_depth.base_path = "D:/dep/"
     output_file_depth.file_slots[0].path="Imagede"
     output_file_rgb.base_path = "D:/rgb/"
     output_file_rgb.file_slots[0].path="Imagergb"
     bpy.ops.render.render(write_still=True)

It was because the textures are not imported. If you are importing models, make sure that textures are also imported before rendering

Try this

  bpy.ops.render.render(write_still=True) ->
  bpy.ops.render.opengl(write_still=True)


How to set origin of multiple objects at the same time? I want to set the pivot of all the arrows to their bottoms like the pic below. The method of "origin to geometry" does not help in this case. I have like 6000 arrows, so... Any ideas?

Well I'm not sure of a good way to do this, you can try to select all your arrows, and then select the one with the correct origin, then press CTRL+L, and select "Object Data" from the list.. Unfortunately this is not ideal, as it also copies all other object data such as materials and UVs, effectively making all the arrows instances of the active one.

You can then select all the arrows again, then press U on the keyboard, and select "Objects and Data" from the list, to make all the arrows mesh data single users again, and not instanced..

You can join objects. Then set origin and then unjoin them.


I can't install any addons into Blender I know this question has been asked before, but I can't really find a solution.
This was happening years ago too I think, so... I'm pretty stuck.
I've even re-installed my entire os since then, but I remember addons working at some point.

The two addons I need are these;
https://github.com/sugiany/blender_mmd_tools
https://github.com/ousttrue/pymeshio

I've tried to install them in a couple different ways - I tried using 'install addon' and using the zip, but nothing.
I tried to put the extracted folders into the addons folder of my Blender installation, still nothing.

When I click on the button to install an addon from user preferences, it just does nothing. It doesn't ever appear in the list, and I can't see any errors. This happens every single time I try to install the addons, just nothing happening.

I tried this with a portable install as well, there was no difference.

I realize I'm probably doing something very wrong like an idiot, but I would appreciate some help. Thank you.

These might be the possible errors:-
1. Check if there is sufficient space in the drive your os is installed.
2. Check if the addon downloaded is of correct windows architecture I.e. 32 bit or 64 bit.
3. Check if the blender version you are using is same as mentioned for the addon.
4. Install a stable blender release instead of nightly build or alpha build.
5. Check that the python version you are using match the one on which the addon is scripted.
6. Check if the addon is complete and is not missing any command line.

If it still doesn't work you may have a error or bug report on the respective page.


How do I restrict scaling to a specific axis? Im new to Blender but have some experience with 3dsmax.
In blender, when i select some polys and try to scale them, i have no control on the amount and especially relative axis on which the scale would happen, where as with 3ds max i could scale restricted to x, y, z or any combination of using the handy widget.
Is there a way to replicate this, or to get any control over the scale ?

thanks,

Yes there is a way to do it.

During the scale S :

Use either X or Y or Z to scale only along X, Y or Z
Use either Shift+X or Shift+Y or Shift+Z to respectively scale (Y and Z but not X), (X and Z but not Y) or (X and Y but not Z)

And after you have confirmed your scale, you still have the operator panel in the bottom left part of the view :

It's not currently possible, with the widget alone.

It's a know limitation of the current widget system and it is being worked on. There is a live project Wiggly Widgets focused on bringing Blender's widget system to the 21st century but when it will be ready is not know.

In the meantime use hotkeys instead which is where blender excels the most. Press S to initiate the scale operator, and then press X, Y or Z to select axis. During this phase you can also introduce a value for scaling with the keyboard for precise measurements or even simple math expressions.

For two axis scaling press instead Shift + X, Shift + Y or Shift + Z to exclude that respective axis and scale in the other two directions.


What value does the Displacement input of the Cycles Material Output node expect? The Blender implementation of Cycles displacement is still experimental in version 2.79, and there are some gaps in the documentation. The manual advises the use of the Vector>Displacement node or the Vector>Vector Displacement node for the 'displacement' input of the Material Output node.
In my build, I haven't found these nodes.

In a recent answer to a BSE question about masking a displacement texture, Anton S used a node tree which (if I've read it correctly,) resulted in a vector in the range (0,0,-0.5)->(0,0,0.5) being used as the 'displacement' input.

A lot of other tutorials / answers seem to shove in a value in the range 0->1. Are they wrong? What space is Anton's vector in? Can the range be changed? I'd lke to take the guesswork / trial and error out of using displacement.

The confusion is probably stemming from the fact that this output was changed post-2.79. More confusingly, the later builds are still officially labeled as a form of 2.79 due to how Blender versioning works. For clarity, the rest of this answer will use "2.79" to refer to the stable release and previous versions, and the term "nightlies" to refer to the post-2.79 versions available in the buildbot. So:

In 2.79 and earlier, the displacement output was a float output (gray socket). The values expressed a displacement along the normal in decimeters. Yes, 1/10th of a meter. I don't know why this particular scale was chosen, maybe it was considered more artist friendly? In any case, this system was always a little unfinished and many people (myself included) have warned that it may change behavior in a later release.

Well, in the latest development trees those changes are here. The displacement socket has been replaced with a vector3 (purple) output. It now describes a world space transformation from one location to another, rather than along the normal. If you do need to simply displace along the existing normal, the new Vector>Displacement node you linked will do that. It takes a scalar heightfield and calculates a position along the normal based on the values. It outputs a world-space vector of the new mesh shape which you can feed to the displacement output. This works similar to the old displacement, but the scale is now in meters. So a value of 1 results in 1 meter of displacement instead of 0.1 meters.

There is also a Vector>Vector Displacement node. Since the new displacement is just a world-space position, it is now possible to describe more complicated shapes, such as baked down sculpts. The input itself only supports world space vectors. The Vector>Vector Displacement node can convert other formats, such as a tangent space, into the world space format needed for the output.

The attached blender file shows how the current (2.79a) Displacement input impacts the actual mesh displacement. This may not accurately or scientifically answer the question (as @JtheNinja did) but still allows to answer it visually and in a practical manner. It also interestingly allows to visualize the values of the different procedural textures.


Addons Not showing up in Toolbar (Blender 2.8 Alpha) After installing the addons in the user preferences, they don't show up anywhere in blender 2.8 except from workspace addons tab in the properties and clicking it doesnt do anything. In user preferences next to the addons list, it also says that "Upgrade to 2.8x required". Does that mean that we can't use any addons in 2.8 unless they are upgraded for 2.8 builds?

Blender 2.8 has yet to notify the add-on developers to make it compatible with 2.8. Currently, no or very few Add-ons work for this release. The release day for the beta version has been notified, check the website.

Link to the site : https://code.blender.org/2018/06/beyond-the-code-quest/

Ok the addons are in the addons in the preferences in 2.80  the mesh 2 is there
But I am missing the measuremnts and the snap utils that used to show up in the T toolbar. Tool bar T is missing now.
Someone else must be scratching there head about why the addons are included with 2.80 but no person can find them to use them.


How to drive text based off of a value How can I drive the content of a text object by a value box such as the samples slider?

I want to be able to change the value here:

And have the value show up automatically on this text object, without any type of manual refresh:

i have created a blend example to show how to do this.
http://www.pasteall.org/blend/36360

Ill warn you that this is big hack. it will most likley not work if you submit this job to an external renderfarm, deppending on the renderfarm settings.

What we want to do is create a driver on a transform property of an unrelated empty. Then write a custom Python Driver that updates the Text.body string with the Scene.cycles.samples value.

create an empty
create a driver on the x transform (not too important which axis)
run script in text editor.
set up driver

Code:

import bpy

def update_driver():
        bpy.data.objects['Text'].data.body = "%i samples" %bpy.context.scene.cycles.samples
        return 0

bpy.app.driver_namespace["update_driver"] = update_driver

Run this code when you open the file. now our custom pydriver will be available in the expression field of the driver. If you have already entered the expression before running the script, you will need to click in the expression field, and press enter to update.

It is important to have this fake_driver variable connected to a transform property of an object. This 'hack' forces the driver to update on each frame.
In the driver we now enter update_driver() for the expression.

Depending on your settings, you may need to open the User preferences and turn on 'auto run python scripts' to allow our python driver to work.

consider the python script pseudo excerpt

def somefunctionName():
    object.data.body = textcreated

    //use one only ... good to know about the pair
    bpy.app.handlers.frame_change_pre.append(somefunctionname)

    //bpy.app.handlers.frame_change_post.append(somefunctionname)
    //to have a function called on every frame render

You may also have to remove any previously append-ed function or reload Blender.
The appends can accumulate if you are furiously updating your python

You can search at this site for many examples.


cannot see the geometry of the imported stl file I am a newcomer to blender and this is my first question. When I tried to import an stl file into blender using the import function it takes some time to load the file and then shows me only the default cube only (but it displays the number of triangles and vertices in the top right corner) . I have even tried to change the scaling but there is no use. can somone please help me?I am not sure of whats going on.

The STL will import in the position of the 3D cursor using the origin point of the STL object - the little orange dot. In theory that is the absolute centre 0/0/0 in the X/Y/Z. Some models are created far from their origin and while they might appear not to be there, they might actually be off screen.

Make sure the object is select the object in the Outliner...

Before trying scaling - set the origin to the geometry...

With the object still selected press ALTG which will move the object back to 0/0/0.

Another possibility: Blender STL [both import & export] have a scaling approach which makes [most] STL files prepared in other applications one thousand times larger - here too, they could have imported, but are not visible...yet.

In either case pressing the Home button on the keyboard, will show everything in the scene - if it jumps back and turns grey it just means it has exceeded the visible parameters, and as suggested, you will need to expand the View clip values.

Select Model at the top, then go to file, import, stl and choose your file


How open file browser to save a new blender file I'm trying to open a file browser (similar the browser in the image bellow) where the user can chose a folder and file name to save a new .blend file with the selected objects.

I want make a addon to easely save a new blender file e.g to select a collection and save a new blender file with the collection name and all objects inside there or select only two object and save a new file with that.

To do that I'm using the code bellow but all I get is some errors. Someone know a simple way to open that browser. I read some parts of the blender api documentation but I'm really confusing with some functions that I found in there.

The code I'm using:

class FileExporter(Operator):
    bl_idname = "export.file_exporter"
    bl_label = "Save"
    bl_options = {'REGISTER'}

    def export(self, context):
        self.file_path = bpy.path.relpath

        bpy.ops.wm.path_open(filepath=self.file_path)

    def execute(self, context):
        self.export(context)

        return {'FINISHED'}

There is no need to use code to save stuff. It's quite simple, actually. Blender's file browser isn't like the one built-into your computer. You have to go through your drive's file system from the root to locate the destination folder that you would like to save your project to. First, select your main drive. While there, you will see a "users" folder. Double click on it, and then select the folder with the account name that you are using. Then you will find a long list of many folders. You'll also see folders such as documents, music, videos, and any other library. Click on the library that you wish to store your project in, and then select your folder, and name your file, then click "Save As" (or press enter) to save.

Hope that helps!


Particles Not Emitting Smoke I am using 2.83a and I am trying to create smoke from a chimney stack of a steam locomotive.

The plan is/was to animate the domain along with the ground surroundings - long story.

I have been tearing my hair out trying to find the right settings for the smoke emitter and domain - I would have ideally liked a small amount of fire and a generous amount of smoke, but I cannot seem to prevent the emitter from spewing it in all directions, any setting less than 1.0 from the surface of the emitter results in no smoke.

A more satisfactory way to animate the smoke is to use the emitter to emit particles. I've successfully managed that in the past but I am not sure what I am doing wrong now.

The Emitter is set to emit particles and die out shortly afterwards - it isn't affected by the domain so I have a wind force field. If the particles emit smoke, it will look spot on.

The domain is set up correctly so far as I can see, buoyancy density is set to -1 so the smoke sinks, heat to 1.5 and vorticity 0.

I've turned off noise for now, turning it on and off made no difference.

What am I missing?

There's something with the new version of Blender that requires you to Bake Data in the Smoke domain to start producing smoke.

https://www.youtube.com/watch?v=XN6ClIdL8yw&feature=youtu.be

Playing with the fuel value, might help to choose how much fire you want.


Rendering Diffuse Color pass in Cycles Can I render just the Diffuse Color Pass in Cycles? I tried to check just Diffuse Color Pass, but it rendered the whole image anyway.

To the best of my knowledge, it is not possible to directly render only a single color pass in Cycles. However, after rendering your image, you can access the different color passes by using the compositor.

Before rendering, make sure to go to the Render>Layers menu and select "Direct", "Indirect", and "Color" for the material type you want to single out. This makes sure that you have all the necessary color passes when you get to the compositor.

In the compositor, instead of using "Image" as input to the Composite node, you want to combine in some way the three color passes "Direct", "Indirect", and "Color" for your material type. In the example below, I used two Color Overlay nodes as shown in my compositor setup.

My original image:

Diffuse Color Passes only:

Glossy Color Passes only:

My Compositor Setup:

(Ok, lets see if i can write a proper answer)

With this render machine you will have to activate the render passes of your choice (in your case the three under Diffuse) and in compositing you will have to combine them ((Diffuse indirect + Diffuse Direct)*Diffuse Color) together, sorry if this is not much of help, dont really work with cycles, i think Bartek Skorupa have some really good tutorials in compositing on Blender cookie for cycles, check them if you want a deep explanation :)

Edited: Sorry, i explined for the wrong render machine


Bake Simple Deform animation into mesh for Unity3D export? I'm trying to use a .blend file with a keyframe animation on the angle of a Simple Deform modifier in Unity3D. Unity3D however does not know how to handle modifiers and hence cannot play the animation.

How can I bake/save the animation to the .blend file so that Unity3D can play it?

There's not much ways to do that… Only one I can think of is applying enough 'keyframes' of your deform animation as shapekeys (you can copy modifier, apply as shapekey the copy, go five frames later, copy, apply as shapekey the copy, etc.), and then in Unity (or Blender), create an animation interpolating between those shapekeys. But this will be rather painful to set up I’m afraid.

You can make use of third party assets to do this for you, the MegaFiers asset for example has most of the modifiers/deformers found in Max, Maya etc so you could maybe recreate it with that, it also has support for Point Cache playback of industry standard cache files such as .pc2 .mdd and .mc files.


How can I quickly generate / create a large city without modeling it all by hand? I am trying to create an urban open-world environment in Blender that would be about one square kilometre in size. To avoid having to model hundred of individual buildings, I am looking for a way to quickly generate them procedurally - but there should be an element of variety (i.e. preferably not a grid-like fashion).

Also, it is possible to generate other features such as pipes, windows and ledges on the exterior of the buildings?

I have the feeling that the way about this is using Python scripts, but I am unsure as to the specific details required.

Any help would be appreciated.

City Generation

Suicidator "City Generator" (SCG)
This is a very robust Blender addon that can create amazingly detailed & complex cities:

Generate random terrains (including bodies of water) for your city, or use your own bump maps to create the landscape of your choice
SCG automatically generates all the textures for your buildings, roads, grass, water, etc.
(NOTE: Currently, SCG only generates textures in Blender Internal, not yet for Cycles)
Specify if it's day or night in your city

NOTE: As of City Generator v0.5.7, textures will ONLY be generated in Blender Render, NOT yet in Cycles. So, make sure you are in Blender Render BEFORE you click the Build City button:

You can read the City Generator online manual on their website and see many more examples.

NOTE: There is another addon listed on the Blender Wiki called  "City Block Generator". However, this addon only works with Blender versions 2.4x - 2.5x, so it's not an option for any versions later than 2.5

Adding Special Building Details for Close-Up Shots

If you ever want to have a close-up shot of a particular part of your city and want to add specific building details, you can use these add-ons:

Block Wall Builder: Block Wall Builder allows you to build your own custom walls. It has a lot of functionality, including the ability to add holes in the wall for windows, doors, etc.:

Window Generator 2: Add custom windows. Download it here and read more about it here. Here are some samples:

Jamb Generator: This addon from Seyit Ali YAPRAKCI makes custom door frames/jambs:

Archimesh: Archimesh gives you the ability to add great detail to your buildings: add rooms, house structure (walls), doors (one and two leafs), columns, stairs (strait and curved), tile roofs, cabinets, shelves, windows, books, lamps, curtains, etc. It can also UV unwrap rooms! You can download it here and you can get more information on how to use it here. Here is a sample of the cabinets with shelves:

Balcony Generator: This addon, also from Seyit Ali YAPRAKCI makes balconies:

Chimneys: This addon, again from Seyit Ali YAPRAKCI, makes chimneys:

Flat Board Generator: This addon allows you to make hardwood floors:

Add Pipe Joint: You can read about this built-in addon here and here are some sample joints:

NOTE: If you want to extrude pipes from these joints, see this question and answer for details on how to do it.

Add Snow and Icicles

If it's winter in your city, you can add piles of snow to your meshes with the technique described here and with the Icicle Generator you can add icicles:

Adding Terrain for your City

If you don't want your city to be on flat ground and aren't using Suicidator City Generator, you can make unique landscapes easily with the built-in addon ANT Landscape:

The Blender manual describes how to use this built-in addon.

NOTE: Previously, these landscapes all had the normals flipped the wrong way, which makes the underside of the mesh be considered the top. This has been fixed in an update, but if you have an older version and you're finding this is a problem for you, you can fix it simply by flipping all the normals:

Select landscape → TAB → select all (A) → W → Flip Normals

Add Trees

"Sapling" is a built-in addon that allows you to make trees:

This addon is amazingly robust, capable of making a huge array of different kinds of trees and bushes:

This addon is much easier to use if you watch a tutorial about it.

For more detailed information about making trees, see this page.

Add Scattered Debris, Litter or Plants

If you want to have litter around your city, or debris & weeds in an abandoned lot, you can do that using a Hair Particle System, which you can learn how to make on this page.

Add Rocks

The Add Rocks addon allows you to quickly add randomly generated mesh rocks, thus making it much quicker to add detail & practicality to your outdoor settings, urban or otherwise. Here you can read about & download this addon (note: the Add Rock addon is part of the bundle described in that post.) Here are some examples of the 5 rock presets:

For lots more details on making Add Rocks, see this page.

NOTE: One thing to be aware of is that each rock has many modifiers on it, and these slow down render time. See this page (at the bottom) to get details on how to solve this issue.

Add Ivy

Blender's built-in "Ivy Gen" addon is very good at creating realistic looking ivy:

If you need to work with Cycles, there is the BlenderGuru tutorial on building cities.
It uses a particle system with one particle (from a group of objects) per face of your street plan.
With a group of 30 to 40 low-poly building models you can build a pretty substantial city.

In this case I did not need streets so I packed my buildings tight but the tutorial includes a technique to create them. I used three particle systems one for the center with a dozen different models, another for the hi-rises with another set of models and a third system for the outlying lower buildings.


How can I duplicate a model and it's armature, so the rig still works? I need to make a duplicate of a character with its armature. When I try to duplicate the character, the duplicate remains associated with the original armature. When I make a duplicate of the armature, and try to associate the duplicate character with it, it fails. How can I accomplish this? Or is there a way to make duplicates of the character and the armature together, making the duplicate character associated with the duplicate armature?

Make sure you are in Object mode, then select both the character and the armature. First select one, then hold Shift while selecting the other, then duplicate with ShiftD

I'm a noob, so this is more a workaround than anything. No matter how many times I tried to duplicate an object with it's rig (and maintain parent/child relationships) I failed. Finally I created a new file and used file -> append to bring in two copies of the target object. Had to redo the parenting (that doesn't seem to survive append) but I did wind up with two objects each parented to its own rig. This probably wouldn't be practical for an extremely complex file, but it worked for a simple one..


Wacom Intuos Draw CTL490DW Digital Drawing and Graphics Tablet compatible with Blender? I need to be sure before buying this Wacom tablet. Is it compatible with Blender for painting, 3D modeling, and blueprinting?

Considering Wacom Tablets are basically mouse/pointing devices, there is literally no reason it wouldn't work. I have a Wacom Tablet myself, and it works excellently for painting, although for 3D modelling, a 3D mouse would probably be more useful.

It is compatible, but it doesn't work very well. See this thread on blender.org.


Render View Problem on fire rendering So i was following a "How to make a fire" tutorial on youtube and i have a render view problem now.

An when i change to render view it looks like this

How can i fix it?

You can set a transparent material to the domain object (or whatever blocks the light!)