Shader: Rounded edge between the two intersecting faces? Is there way to do "Rounded Edge Width" in Blender? It's familiar for me from Modo. Anyone know the trick?

Like Modo's Rounded Edge Width. Couple links for reference:
From the modo documentation:

  The 'Rounded Edge Width' option adjusts the rendered result of surface
  normals at a polygons edge to blend them with adjoining polygon
  normals, giving the impression of a small rounded edge between the two
  intersecting faces. To explain it more simply it shades polygons edges
  at render time to look as if a small rounded bevel has been applied,
  to what normally would be a sharp intersection. Users can define an
  Edge Width to determine the amount or 'roundness' but keep in mind it
  is merely a shading trick and wont round the edges of the actual
  geometry, nor change the objects silhouette in the rendered image, so
  it is best to keep set the length to just a few pixels in width in the
  final rendered image.

  emphasis mine

Video demonstrating the effect.

There's an OSL bevel Shader for Cycles that I believe was originally written by the person who built Cycles.  Several people have been making adjustments to it and have been posting the results to the following thread on BlenderArtists.org  http://www.blenderartists.org/forum/showthread.php?329295-Bevel-shader
OSL Code
Paste the following code into a new Text Datablock in Blender, and use it in the script node of an OSL node tree:
void rng_seed(output int rng, int seed)
{
  int chash = seed;
  if (chash == 0) chash = 1;
  rng = chash * 30391861;
}

float rng_uniform(output int rng)
{
  float res = rng / float(2137483647) * 0.5 + 0.5;
  rng *= 30391861;
  return res;
}

void to_unit_disk(float x, float y, output float x_out, output float y_out)
{
  float r, phi;
  float a = 2.0 * x - 1.0;
  float b = 2.0 * y - 1.0;

  if(a > -b)
  { if(a > b)
    { r = a;
      phi = M_PI_4 *(b/a);
    }
    else
    { r = b;
      phi = M_PI_4 *(2.0 - a/b);
  } }
  else
  { if(a < b)
    { r = -a;
      phi = M_PI_4 *(4.0 + b/a);
    }
    else
    { r = -b;
      if(b != 0.0) phi = M_PI_4 *(6.0 - a/b);
      else phi = 0.0;
  } }
  x_out = r * cos(phi);
  y_out = r * sin(phi);
}

void make_orthonormals(vector N, output vector a, output vector b)
{
  if(N[0] != N[1] || N[0] != N[2]) a = cross(vector(1, 1, 1), N);
  else a = cross(vector(-1, 1, 1), N);

  a = normalize(a);
  b = cross(N, a);
}

vector sample_cos_hemisphere(vector N, float randu, float randv)
{
  vector T, B;

  make_orthonormals(N, T, B);
  to_unit_disk(randu, randv, randu, randv);
  float costheta = sqrt(max(1.0 - randu * randu - randv * randv, 0.0));

  return randu * T + randv * B + costheta * N;
}

shader node_occlusion2(
  color Effect = color(0),
  color No_Effect = color(1),
  int Mode = 0, /* 0: Concave (AO) 1:Convex (Wear) 2:Both */
  int InvertEffect = 0,
  float Distance = 0.2,
  int Samples = 1,
  output color Color = 0,
  output float Fac = 0,
  output normal outNormal = N
)
{
  int i, rng;
  float f, randu, randv, ray_t, hits = 0;
  vector ray_P, ray_R;
  normal hit_normal = N;
  float hit_dist;

  f = fmod(cellnoise(P*123456.0), 1.0);
  rng_seed(rng, int(f * 21374647));

  for(i = 0; i < Samples; i++)
  { randu = rng_uniform(rng);
    randv = rng_uniform(rng);

    ray_P = P;
    ray_R = sample_cos_hemisphere(-N, randu, randv);
    ray_t = Distance;

    if (!Mode)
    { if(trace(ray_P, -ray_R, "maxdist", ray_t)) {
            hits += 1.0;
            int HitNormal = getmessage ("trace", "N", hit_normal);
            outNormal = outNormal + (hit_normal);
        }
    }
    else if (Mode == 1)
    { if(trace(ray_P, ray_R, "maxdist", ray_t)) {
           hits += 1.0;
           int HitNormal = getmessage ("trace", "N", hit_normal);
           outNormal = outNormal - (hit_normal);
        }
    }
    else {
        if(trace(ray_P, -ray_R, "maxdist", ray_t)) {
            hits += 1.0;
            int HitNormal = getmessage ("trace", "N", hit_normal);
            outNormal = outNormal + (hit_normal);
        }
        if(trace(ray_P, ray_R, "maxdist", ray_t)) {
           hits += 1.0;
           int HitNormal = getmessage ("trace", "N", hit_normal);
           outNormal = outNormal - (hit_normal);
        }
    }
  }
  Fac = 1.0 - (hits/Samples);
  if(InvertEffect) Color = mix(No_Effect, Effect, Fac);
  else Color = mix(Effect, No_Effect, Fac);
  outNormal = normalize(outNormal);
}

Here's a render of many spheres that are all separate objects.  It works well in some cases but not always.


Cursor location scene Blender 2.8 There is no cursor_location property anymore now in Blender 2.8

So I tried

bpy.context.scene.location = [0,0,0]

But I again get an error that location is not defined for the scene. Any ideas how to get / set the cursor location in the lastest version?

you can access to the cursor location with this code

bpy.context.scene.cursor.location


How to control rotation explicitly such that it only rotates parallel to a plane So i have a problem as shown:

I want the arrow to rotate about the origin, but still remain parallel to the cylinder. However, the interpolation messes up and the arrow clips into the cylinder instead.
How do i ensure that the arrow only rotates on the same plane as the cylinder?
Is there a way to make an object rotate about any arbitrary axis (instead of a point origin) specified?

There are many ways to do it.
One of them: enable the "Copy attributes" addon in the preferences menu.
Set the 3D cursor in the spot you want as pivot point.
Create an empty in the 3d cursor loc.
Select the empty, shift select the cylinder, press Ctrl C "Copy Rot".
Set the arrow child of the empty.
Animate the empty (in my example on its Z local axis).


Zoom and Crop of a video already recorded I am trying to use Blender for editing sports videos. I need to show players specific movements they did wrong or right. I am wondering if there is a way to zoom in once I have already recorded the video?

You can select your video strip and add a Effect strip/Transform. In the params, you have a scale parameter and a position parameter


Empty for a group instance is far away from the group I created a group instance, and the empty for it appeared at the cursor, but the group is way off to one side. I saw that the objects in the original group had scaling that hadn't been applied with Ctrl+A, so I removed them all from their group, applied the scale, and created a new group with them in it. But when I tried again to create the group instance, it did the same thing. The origins of the original items are in a logical spot, so that's not it. What could be wrong?

No need to apply scale and location of your objects, nor recreate the groups.

You need to manually set the center of your group, which by default if unspecified will be the world coordinate [0,0,0].

You can check this by selecting any object belonging to a group original (not one of its instances) and under the Properties Window > Object > Group see the coordinates there.

To manually set it to a desired location either introduce coordinates manually, or place the 3D cursor at the point in the scene where the center should be, press the small arrow at the desired group and choose Set Offset from Cursor


Blender is exporting the wrong UV coordinates I was making an axe model in blender but when i loaded it into my game engine the texture wasnt right. I tried making a textured cube to find the problem. When editing the texture in blender the cube renders properly, but when I export it the uv coordinates become seemingly randomly jumbled. I have checked the uv coordinates manually by going into the file and checking them and something is definitely not right.
I'm including the texture and the obj file contents below:

Link to the obj file

Two things to check:

Make super sure that you are indeed exporting the UV's when you export the obj.

Make sure that your game engine is consuming the UV information properly.


After I have removed vertices, error says "loop in parent" After I parent my model with the bone, it shows loop in parents.

Does anyone know of a solution?

The .blend file

I did not look at .blend file, but I will explain Loop in parents. It means, so you are trying to make infinite loop of parents(which would cause .blend to crash imediately, so Blender has blocked it). So, if you have set your character as Parent of your Bones, you can't set bones as paernt to your character, otherwise, the parentation principal will be infinite loop. YOu can try selecting Bones and doing ALT + P and than Click with LMB on Clear Parent. Than do the same with char(optional). After that parent char to Bones. Hope this helps.


How to make a circular set of verticies square Is there any way to take my circular vertices, and make them square so that they match my cube? I want it to be a cone with a circular base and a rectangular top.

After subdividing the cube/square to match the circle subdivisions number (with W-->Subdivide) you may try to join vertices using the Bridge Tool. Select the vertices with Alt+RMB as pictured below, hit Spacebar, type 'bridge edge loops' and then dissolve the newly created edgeloop. Select it with Alt+RMB, then hit X-->Dissolve Edges. At the very end select the vertices of a square, hit Spacebar, type Grid Fill and set up the settings as pictured below.


Volume is rendering through objects in foreground I'm trying to recreate the planet with the asteroid belt from the force awakens,

but my renders come up like this.

Atmosphere and without respectively. You can see the asteroid belt that is behind the planet, and the asteroid belt messes with the atmosphere. does anyone know how to fix this?

Here's the blend

The belt geometry is criss-crossing itself (exaggerated here for demonstration purposes):

To fix, delete and one side and re-extrude, this time being sure that it does not self-intersect.

↹ Tab into edit mode, ⌦ Delete
E to extrude, then drag the mouse around. If the extrusion does not already appear to be locked along the object's local Z axis (there should be a line indicating this), press Z twice. Then press 1 to extrude exactly one blender unit (or whatever value you desire), precisely along the blue line.

Another alternative is to use the solidify modifier.

Also note that your clipping settings are causing lots of artifacts in the viewport. Generally you want to keep the clipping range as small as you can. I found .1 . . . 1000 to work fairly well in this scene.


Align eges to remove holes when using mirror modifier When I am applying the mirror modifier to my mesh the bottom of the mesh gets a hole in it.

This is because the top edges is not aligned with the bottom edges.

The yellow edge is the bottom one and the white is the top one. Is there any way to align the two edges (and all the others)?

There are few things you can do.

Enable clipping in mirror modifier options, select all and move everything towards middle point until top and bottom edges will align.
Rotate the object on the Y axis to align all edges.
Select top and bottom edges and press S then X and 0 to align them on X axis.
With clipping enabled, move all closer to the middle until closer edge will stack to it's counterpart on the other side, select further edge and with proportional editing enabled, pull it closer to the middle point.


How do I rotate some text? I'm making a logo in blender. I originally converted a PNG to SVG and then imported it to Blender but that made a really messy mesh. So now I'm making it straight in blender.

Here's what I've got so far:

I basically just typed it out and then extruded it using the Solidify modifier.

But I can't rotate it, or move it. I tried converting it to curve and then mesh but it still won't rotate. Also converting it messes up the mesh pretty bad.

Any clue what's going on?

Also if there are ways I could improve my workflow, let me know. Is there a better way to extrude the text? I also plan on curving it around a circle, towards the camera (so not like around a ball like you would see in photoshop but in the 3rd dimension like a hug or something)

If you 'typed it out' in Blender I'm assuming you used the text tool. If that is the case, then you have been wasting time, since it is still a curve object and will also have a messed up topology.

Text tools are just a special type of Bezier curve objects, so if you plan on converting to mesh might as well have just used the one imported from SVG you already had directly.

Curve objects are actually an underrated and powerful modeling tool to use, if you don't plan on converting to a mesh object later. That will often lead to triangulated uneven topology, unless you do some serious manual cleanup work.

If you don't plan on doing any heavy edits and shape modifications I'd recommend leaving them as curves objects.

Create your text then in Object Mode press Alt + C > Convert to Curve, then use the built in curve properties (not a Solidify modifier) for extrusion. You'll have the added benefit of procedural non destructive beveling and allow easy tweaking of the character's shapes by controlling the bezier curve handles in edit mode.

About rotation I'm assuming you want to rotate each character individually, if that's the case you either have to rotate them in Edit Mode individually (after converting to Bezier Curve or Mesh) or separate each character into it's own object (L to select all linked geometry and P to separate), then rotating each individually in Object Mode

If you plan on doing geometry heavy changes to you logo however, then I'd recommend a different approach and start from scratch modeling you logo as a mesh. It may be harder at the beginning, but with a good starting topology it may well compensate in the long run


Why is the colour of my model the same as its normal map? I am making condensation map for glass mug of donut tutorial series of "blender guru".
I have done correctly but it's still purple.what should I do?

You still have the Viewer node connected.

Remove it by CTRL+SHIFT+Left-clicking on the Principled shader. (Assuming you have the 'Node Wrangler' addon enabled).


Pull target not working My pull target isn't working properly. I was expecting my lower leg pull target to be able to control the position of my knee on the x-axis, however it only controls the rotation of the leg bones...I've checked from side view, the upper/lower leg bone aren't straight. see attached.
Thanks in advance.

I'm not sure about your problem, it seems to work fine, the Pole Target is supposed to control the orientation of your knee, not its position in the 3D space, to move your leg you need to have a controller behind the foot and choose it as the Target in the IK Constraint. To be complete, this Target controller needs to be deparented, you must disable its Deform option in the Bone menu, and you need to parent the foot to it.


Blender 2.49b Mesh Unwrap Issue I'm making some models for a fighting game and recently I have a problem while texturing. When I unwrap my mesh, there are single faces which I didn't mark seam, and they are missing from the whole group. For example, I marked the character's foot bottom, but there are single faces that aren't connected to the mesh when I unwrap. I tried a lot of stuff, but I couldn't make it worked.

This character in particular is an edited model from the first one I did, so i could then import the armature and have some commons moves in it, maybe I screwed up while modeling somehow? What seems to be the problem?

I tried to flip normals but it didn't changed a thing, in fact, they were fine already.

Part A) Assessment with Blender 2.7x.

(i) here are all the areas that may need some more attention because they are all overlapping quads.  The entire texture will show up on every one of these quads as a tile.

(ii) In the following area, there is a noticable overlap of the UV faces.  This tends to happen when there are non-planer poly's along a curved surface.  Separating this island into two pieces using a seam along the affected should help to clear this up.

(iii) The bottoms of the feet look like this for me(still have not checked 2.49b)

(iv)  The spikes on the head are very long and cannot be unwrapped as a continuous piece without heavy stretching.

(v)  As a general guideline, I feel it helps to imagine the UV's as being made out of paper which has a picture printed onto it and since paper does not stretch, it's good to avoid stretching the UV's by marking seams at any sharp transitions.  I tend to mark seams at all 90 degree angles.
For a model that is roughly spherical shaped, I use the axis as guides to follow the 90 degree guideline

(vi) The following image shows where some of these mysterious unmarked quads are coming from.  They are internal faces that I guess happened from repeated extrusion operations.

(vii) Now in the following image I have Unwrapped the model again after adding a few seams and deleting some hidden faces and there is just one little stray UV island and when it's selected, it reveals a part of the mesh that is a bit tangled and has an overlapping redundant quad that should be removed.

(viii) Once you have a cleanly unwrapped model, it's a good idea to inspect the UV's by zooming in and panning around to check for problem areas that are not immediately obvious.  In the following image I've circled a quad that comes to a very sharp point.  This is certain to cause problems with baking.  Pixels from neighboring faces are probably going to bleed over the sharp tip and cause noticeable artifacts.  A vertex can be selected and manually moved over so the quad is more properly shaped.

(iv)  One other thing that helps to reduce UV mapping errors is to zoom out so the UV's are really small and verify that you can see a clear distinction between all of the islands.  When a model is far away from the view and rendered, the UV's will also be very small and the renderer will have a hard time mapping the texture to the proper coordinates.  This causes colors from one island to bleed over the edges of other islands, it shows the seams.  With normal maps it can be even worse because there will likely be some very noticeable flickering.

I'll post the repaired .blend file in the comments when it's ready.  I've baked an AO texture using Cycles to show the results.

The baked map is being displayed using Blender Render(Internal)/GLSL Shadeless Material.


How to get uv_on_emitter for child particles? I wonder if there is possibility to get uv_on_emitter for all particles including child particles?
My loop over particles look like this:

for pindex in range(0, num_parents + num_children):
    p_uv = partSystem.uv_on_emitter(mod, partSystem.particles[pindex])

When there are children enabled I got index out of range because partSystem.particles returns only parents, not the children.

Heres what you do:

if pindex >= num_parents:
   particle = psys.particles[(pindex - num_parents) % num_parents]
else:
   particle = psys.particles[pindex]
st = psys.uv_on_emitter(psys_modifier, particle, pindex)


Input image strip without stretching to fit output frame When you add an image strip to the Video Sequence Editor, it stretches/shrinks your image to fit the full output frame.

How can I add an image at its original resolution?  For example, if I add a 60x60 pixel image, it should appear very small in the final 1080p render.

The default behaviour of an image strip added to the VSE is to scale to the render resolution set for the blend file. To change this behaviour in the way you have specified; enable "Image Offset" in the Strip Input panel on the properties bar for the selected image sequence, then use the X and Y value inputs to position the image within the output image space. You also want to set the blend type to "Alpha Over" so that the underlying strip is visible.


Duplicated planes colour change I've created a room in blender (one floor plane+ 3 wall planes) by duplicating the floor plane.  However, when I change the floor plane colour in materials all the other planes change also. How do I stop this and just assign a colour to one plane in view in 2.8.

There are two possible ways to duplicate, one is duplicate object in Object Mode and another is duplicate faces on Edit Mode.
When you duplicate objects, material also is duplicated applied automatically same as object from copied one.

To avoid this you have to add different material to each object from material Panel.
Click on X in material panel and delete old material, and then click on New to add new material to object. Do this to each object you want to have different material.

Let's check another possibility:
If you have duplicated faces in edit mode.

In such case add more material slot in same material panel by clicking + button beside material name;

Then click New.

After that select face, select material slot you want to be applied and then click on assign.

Now all faces are having different material.


Can not find unlink object data in Blender 2.8 Currently using Blender 2.8 and I would normally hit "U" to unlink object data from  linked duplicates I can't seem to find it anymore. Searched the word "unlink" in the preferences but nothing comes up except for remove from linked collection.

As of the official release of Blender 2.80, 'unlinking' of objects is called 'Make Single User'.

Select object(s)
Go to the 3d viewport menu: Object-->Relations-->Make Single User-->Object & Data
After selecting that menu item, a pop-up appears where you may choose Selected Object(s) or All


Should I just quit Blender when after two weeks of learning and watching tutorials I cannot model anything? I really wanted to start with Blender a long time ago but I was addicted to games and I didn't have enough time. Now, I do have time and I need to know Blender to get onto University so I've tried to dive right into it.

I have been watching videos and recreating the things that the people were doing. I really enjoyed it but now, when I wanted to do something on my own, I feel like I forget everything and the things I've learned are just gone.

I wanted to model but everyone just keeps talking about Mesh and how to add stuff but, at the end of the day, I am just not able to model anything. I only know how to add things. But when I am trying to model things, it always looks like some kind of spaceship.

I hope you know about something that could help me. I tried CG Cookie and the tutorials from Blender Guru, and some other individuals, but it's basically all the same. I even memorized like 50 Blender shortcuts but I still feel like I am unable to create anything.

Two weeks and you are thinking of quitting? No, no, no that will not do.
For anything even starting to be complex two weeks is just not enough time to call it quits. Learning takes time. How much time depends entirely on your effort. You have a good motivator to learn blender, to get into University. So do not loose sight of your goal.
Now how to go about that.
Stop watching tutorials. That's right, Stop watching tutorials. You said yourself that you "forget everything and the things I've learned are just gone." (That is because you never actually learned them, you just saw some guy on youtube do something). I bet you have spent a fair bit of time watching tutorials. Look at the outcome, for you it is not worth it.
This is a common problem with tutorials. We watch all these tutorials, and feel great "look at what I can do." Except if you just watch them, its nothing more then a movie. We feel like we conquered the world, but really we just sat on our butt for two hours.
So with tutorials out of the way, just make something. Start simple, such as the desk your sitting at. Yes it will be hard, your model will be pretty bad, and you will get stuck. However this is how you learn.
Ok so you are modeling, you hit a wall, no idea how to do X. Search for that thing (you very likely will get an answer from this site), then keep modeling.
It is ok to have to ask google how to do every step.
Here's the exciting part. You open blender up on day two, start by making another simple object. Say a wood stove. Now instead of having to search for everything you remembered that GG is edge slide, and why you should be moving that edge loop.

 Image from HomeDepo
Keep it up. Make something, anything every day. Keep it very simple. If you try to bite off more then you can do you will get discouraged and then it is easy to skip blender today, and down the spiral you fall.
Make a simple object everyday for a week and I guarantee you will learn more in that week then you have in all the time you spent in blender and watching tutorials up to this point.
Don't get discouraged when your models don't look like you wanted, or your renders aren't pretty. This is part of the learning process. I bet your first steps as a baby weren't too good either.
Please do not feel like you have to remember everything or every keyboard shortcut. Many times I have searched for something and found the answer, only to discover that I wrote the answer!

TLDR
Stop watching tutorials and just make stuff, mistakes included, in blender.


Interactive Python workflow for Blender beginner I have need to do some 3D fluid piping simulations, and I am seriously considering Blender. I believe Blender is the right tool for the job, but I would like to confirm this before I dive in.

I want to skip the GUI tools as much as possible and instead use python to carry me initially (I want to avoid anything that needs the mouse). My goal is to set myself up for automation by building on Python right from the start. I am coming from AutoCAD, and I am hoping for a similar experience to AutoCAD command line with LISP (meaning, I don't have to touch the mouse if I don't want to).

Is Blender the right tool for what I want?
Should I consider alternatives like PyOgre (for a pure-python experience)?

Yes, as long as Blender has the functionality you need, I would say automation in Python is one of Blenders strengths.

In fact Blender's SPH fluid simulator was developed/improved by a company who made a product that did automated fluid simulation that ran on a supercomputer to test fluids behavior in through different pipes/containers for a commercial project.
But you can automate many other tasks too. see AutoCRC (bottom of credits page link).

Blender can for example be compiled without a user interface, as a Python module (or just run release builds in background mode), and perform automated physics simulations, video editing, rendering, file format conversions, mesh processing - etc.

There are some caveats though:

Not every area of Blender has been used in automation, if you try to automate something that nobody tried before, you mileage may vary(fluid simulation should go fine, but some areas rely on a user interface - game engine or sculpting for eg).
Its best to first use the interface to setup tasks before automating.From your questions it sounds like you may want to avoid using Blender at all? I think its not wise to avoid using the UI at least for testing steps to be automated.

As a starting point for automation in Blender, I'd recommend see the Background Job template. See:Text Editor -> Templates -> Background Job.
This means you can run Blender from the command line to execute the task.

Another example (based on that template) that renders FBX files from the command line.

Any pure-python solution depends totally on the python-modules available to use, I wasn't aware of PyOgre being able to do fluid simulation - and am not familiar with fluid simulation in Python in general, so its hard to answer this part of your question.

Note:

Your question asks "for a beginner", I wouldn't consider this a beginner project, and I don't think being a beginner makes any difference to the answer. This stuff you have to learn one way or another and if you are a beginner you may just take longer to figure it all out.


Blender game hangs when serial read() This is my first time using Blender. I have made a CPLD device that can transmit ASCII binary when pressing push buttons. It has been tested to work well on Spyder IDLE using pyserial.

However, whenever I run this simple test to print input from COM4 in Blender (Text.py), it hangs when I press P to run the Blender game.

import serial, bge, bpy

ser = serial.Serial()
ser.baudrate = 115200
ser.port = "COM4"
ser.close()
ser.open()

def MoveCube():
    cont = bge.logic.getCurrentController()
    obj = cont.owner
    a = ser.read()
    if (a != b''):
        print (a.decode('utf-8'))
        obj.applyMovement([3,0,0], False) #just a random testing

def execute_after_game(scene):
    ser.close()

bpy.app.handlers.game_post.append(execute_after_game)

What is going on? Thanks in advance.

From the pySerial API for read():

  With no timeout it will block until the requested number of bytes is
  read.

Blender only has one thread, so blocking this thread will cause the game engine to hang as it waits for the read() command to finish.

Right now I can think of two possible solutions:

Set a timeout using timeout = x. Again from the API:

  Possible values for the parameter timeout which controls the behavior
  of read():

  timeout = None: wait forever / until requested number of bytes are
  received
  timeout = 0: non-blocking mode, return immediately in any
  case, returning zero or more, up to the requested number of bytes
  timeout = x: set timeout to x seconds (float allowed) returns
  immediately when the requested number of bytes are available,
  otherwise wait until the timeout expires and return all bytes that
  were received until then.

Create another thread and execute MoveCube() in it. This will cause ser.read() not to be executed in the Game Engines main thread and thus it will not be blocked, but the newly created thread will be blocked.

As the first suggestion is simpler to implement and uses less resources, I'd prefer it.

On another note: the bpy module is Blender's API and not the Game Engine's API. So if you want to export your game and use it outside of Blender as a standalone, I'd recommend not using bpy at all, as it will not work. See this post for more information.


How to cut cylinder in a bending shape without deformations? First message in blender but after hours trying to find a solution, I need help from you guys!
I would like to draw with 3 lines a sharp curve, in which a cylinder will follow them and be cut at the meeting points without deformation (like a rigid object).
Of course there will be superpositions of the pieces of the cylinder if there is no deformation to take the curve, but this is perfect because I would like to know the shape of this superposition.
Like that I will know how I have to cut the cylinder (so remove littles triangles) to shape it exactly like the curve.
so 1) Do you know a tool to design just lines linked together to design the shape (path is not good because it s not a curve I need, but a sequence of 3 lines changing direction at nods points),
2) I can I do to force the cylinder to take the shape of the 3 successive lines and tell me the superpositions parts?
Thank you so much!!!

To get straight lines using the bezier curve you can set a low amount of resolution:

(You could even draw the path as a mesh and than convert to a curve with Alt+C to get a similar result.)

Than assign as a "Bevel Object" of the curve the wanted profile section.

To get the individuals cylinders, you can enter in the curve edit mode, select a pair of adiacent vertex and than separate them from the curve object with the P shortcut. Repeat the process for every couple of vertex of each segment.

Now that we have individuals cylinders that follows the given segments of the path, we should convert them to mesh to operate with Boolean Modifiers to get the shape of superposition parts (intersection) and the cut shape (difference).

While in edit mode you can translate the cap faces along their normal to extend the cylinder to the chosen lenght.

If you can use not only rect cylinders but also oblique cylinders to avoid the part in which you have to bool the parts (can be tricky), you can convert th curve to mesh before splitting and than Rip (V) the edge ring on the path angles and than slide it slightly.


How to animate these bird wings So basically I want to be able to rotate my bird wings, but not the part of the bird wing that is touching the bird itself, if that makes sense. So, the end of the bird wings will move down and up but the body part of the bird wings will not move at all.

As you can see below, when I rotate the wing the top goes with it so it does not rotate properely.

How can I do this to animate the bird wing????

Set up a bone that only effects part of the wing and animate the bone so it moves the wing up and down. There are many tutorials showing how to use bones, but really select the faces that you want to move than assign them to the bone. By moving the bone, parts of the mesh move, but not all of it.


Audio sync issues with speed control, pitch and keyframes I have a video which I want to fast-forward during some sections. I can accomplish this by adding speed control, keyframing the speed factor, and for audio keyframing the pitch. This works well if I just render the video as is after that, making no more edits. It seems to render correctly, but problems arise when editing.
If I start playing the video from any other point but from before the first keyframe, the audio is way out of sync with the video which makes it impossible to do smaller edits in the video editor, like for instance add subtitles or restore the playback speed.
Why is it doing this and is there an way around it? Is this even the way to go for fast-forwarding?

The following seems to work. I’ve included the blend-file.

The movie is ”Spring”  from the Open Movie project of Blender. You can download it here.
Let’s say you want to speed up the movie from time 16+23 (frame 407); just after the falling waterdrop with distinct sound until the dog chasing  after the wood stick (time: 42+23 or frame1031).

Add the movie. The frame rate is 25 f/s.
Add speed Control effect strip
Disable stretch to input Strip Length. Set the speed factor to 1.
Place timeline cursor at position frame 406. Keyframe the speed factor to 1.
Select the sound strip and keyframe the pitch to value 1.
Select the speed Control strip
Move to frame 407. Keyframe the speed factor to 3 (triple the speed)
Select the sound strip and keyframe the pitch to value 3.

So, you create a very abrupt speed up from frame 407 (see the block profile in graph editor in figure 1). Now comes the tricky part. You want to triple the speed until the original time 42+23 or frame 1030. But the actual frame 1030 (after the speed up) is now way further in the timeline. You can see this happening, if you select the actual frame 1030 and disable the speed control (shortcut: H).
So, until which frame or time do we have to speed up? You want to play the original time period of 26 s (42+23 s – 16+23 s) with 3x speed. So, it will only take 26s/3 = 8+16 s. So, the speed control should be reset to one after 8+16 s or at time 25+14s or about  614. The calculation in terms of frames is the same. The original range of 1030 – 407= 623 frames is played at 3x. So, they will take only about 623/3 or about 207  frames  of time. The speed control should be reset at 407 + 207 = 614.

Select the speed Control strip. Move to time 25+14 or frame 614.
Keyframe the speed factor to 1.
Select the sound strip and keyframe the pitch to value 1.

Don’t forget to View > Refresh All (Ctrl+R) to remove the eventual cache. The indicated period will be played at 3x no matter from where you start.


How to see the changes in the graph editor while rotating an object Is there a possibility to see the changes in the graph editor while rotating an object (a keyframe in a curve changes its height) i.e. not when the object is already keyframed, but when you're still able to change its rotation?

The graph editor displays keyframed values. If you haven't keyframed a value then the graph editor doesn't have any data to display.

Similarly, as you move an object in the 3DView you are not altering any keyframed data so there are no changes being made to the data displayed in the graph editor.

Note that it does work the other way. After keyframing a value you can make adjusts in the graph editor and see the changes in the 3DView as you make them.


Unexpected workspace change? My friend who has only recently downloaded blender has come across a workspace issue. He said he accidentally pressed a button and it has entirely changed his user interface/ Workspace. He can't open, save or do anything with the change.

This is a full window image!

press ShiftSpace or CtrlUp Arrow or CtrlDown Arrowto exit full screen, or go to view->Toggle full screen


Project a photo onto a surface (This question is coming from geospatial background and not a 3D modeling background, so I may have some terms mixed up)

I am using the BlenderGIS add-in ( https://github.com/domlysz/BlenderGIS ) to easily add geospatial data to Blender. Primarily I am using it to combine elevation and aerial photos to create scenes similar to what you see in Google Earth.  The aerial imagery is "draped" onto the surface. Basically a pixel of the 2D imagery is shown on the 3D point of the 3D surface, from a straight down perspective. This results in photorealistic view of the terrain at "airplane window" scales. The technique works great except for areas with extreme topography such as sheer cliffs. With cliffs, the result is unnatural streaks.

To counter this I would like to figure out how to "drape" a surface photo onto the side of the surface, and then blend it with with the top-down aerial photo. I'm fine with breaking up a photo into reasonable parts to get it done. I just need to know how to designate the area that each photo part should be "draped" to the surface.

Illustration:

This is the result of draping the aerial photo onto the elevation surface, note the streaking.

This is the a surface photo from nearby the above scene. How can I drape this photo on the Blender surface so that the sheer cliff is shown more realistically without the streaks?

I would approach it like this:

Find out what camera sensor size and lens where used to create the picture.

Create a camera in blender that matches those characteristics.

Add an image as background, and set it to Front with an opacity of 50% (so that the image is always present over the model)

Then activate Lock Camera to view, move the camera until you find the spot where the photo was taken from using the background image as a guide.

Once you find the location and rotation where the photo was taken from, use the UV project modifier on the landscape object and set the camera as projector for the texture.

Note that this is not an easy task in any way.


Grey Render? Noobie question As the title suggest I can't seem to render my project. I'm really new to this and I already tried the answers already posted. I'm guessing it's probably a very basic answer, but can't seem to figure it out.

 Here is the file

Render layers

All your object are in the first and second render layer (you can see that by giving a look at the orange dots in the quick layer bar), while the only layer that will be rendered is the third (see the cursor location in the image below).

Is not immediately understandable, but the boxes under the Layer section in the Render Layer panel control the layers that should be rendered.

You just have to enable the layers with your objects. Shift+click the first and the second box.


Render is taking way too long So I'm rendering an animation of 420 frames and each frame is taking more than one hour. I have two render layers, both with the same settings. One is the background and the other the principal object of my scene.
I don't have many meshes.
Here are my render settings am I doing something wrong?

Here  is what I'm rendering

My computer specifications are:

Intel Core i7-2600 CPU 3.40 ghz
Ram 8GB
Nvdia Geforce Gtx 555

1 hour is not outrageously long for a 1080p frame, depending on your hardware (of course). With only a screenshot of your render settings, it's difficult to suggest too many optimizations. Here's the best I can do:

I notice you have 4 diffuse bounces, but only 2 glossy bounces. While your particular scene might be different, in most cases diffuse bounces are less important. In most scenes anything over 2 is a fairly subtle change. It's fairly noticeable if you compare renders with, say, 2 vs 4 diffuse bounces, but if you don't have that comparison the missing light from the extra bounces isn't obvious. Whereas with glossy bounces often larger numbers are needed to avoid black reflections. Again, I'm speaking generally here. I have not seen your render, and this may not be the case for your particular scene.
2500 samples (50^2, since you have square samples enabled) is a fairly large amount of samples. Your scene may not need that many.
Branched path tracing may be helpful, particularly if your scene has empty regions or tricky lighting. Branched PT is not always faster (such as with motion blur or DOF), and has more memory overhead on GPU so it's not always helpful, but it may be. See this answer for more info: What is branched path tracing and how is it useful?


Issues Mirroring Weight Paint I have setup R and L labled bones and am trying to copy all of the weight gradients of the bones labled L, to the similar named bones labled R on the symmetrical model.
The model is resting in the center of the scene, and all R labled bones have been exactly mirrored across the x-axis as well as being rotated normally to "view axis".

Thanks for the help!

You'll need empty vertex groups for the right side, which you can automatically create when you parent the model to the armature. Also make sure you are using a mirror modifier and it has the vertex groups option turned on.


Beveling loose edges on Blender 2.80 I'm wondering how to perform the operation on the selected vertex (left) that will result in the curve on the right:

Yes, those are loose edges. I tried the Bevel Tool and Ctrl+B, but they'll only operate in fully formed faces/edges.

I saw a teammate do this very operation with Blender 2.79 (I'm on 2.80) but he couldn't even name the operation, just a complex shortcut.

By the way: I'll want to transform this edge mesh in tubes, later!

Enabling Vertex Only in the properties of the bevel tool allows you to bevel the edge. You can also enable it in the Adjust Last Operation panel. The shortcut is SHIFT+CTRL+B.


Cloth simulation for game engine doesn't get animated despite Shape Keys have been created I’ve been exploring and fighting this problem for a few weeks with no result and I’m really out of ideas.

I have to create a character (to import to Xcode). It is a standing in place ghost with its 'cloth' just waving in a loop (I used wind force). The only element I need to export is a waving cloth. I have prepared the simulation, baked it, exported as .mdd, imported the .mdd to obtain Shape Keys, removed irrelevant elements (incl. cloth modifier) and… I am not able to turn it into animation…

At first I presumed it’s an export problem (I posted Exporting cloth simulation to Collada results in static cloth instead of a waving one ), but then I realized that it’s not - the object is static and there is no animation.

I have proper Shape Keys but no idea how to push them run as animation. I have tried different methods to link Shape Keys to actions - still I’m not sure whether it is the core problem. I have added armature then run a script to create drivers between Shape Keys and Armature (as in https://blenderartists.org/forum/showthread.php?325838-How-to-convert-a-cloth-simulation-animation-to-keyframes and here https://blenderartists.org/forum/archive/index.php/t-261576.html and How to convert cloth simulation into mesh animation? ). I manually added an action to the Cloth, but I don’t know whether it was needed. I don’t even know if there has been established any relation between Shape Keys and any action. I have applied Object transform (scale, rotation..) - no result… This How to export a scene with Shape Keys Animation? also doesn't work for me...
This one Create ghost character from a certain point in cloth simulation is also not a solution - at the end there is again cloth modified added. I see there are few threads that might be related to mine but they remain unsolved.

Here the pain blend can be downloaded https://files.fm/u/sm2gkvv5

I export Collada and .blend to Unity for testing - there is an animation (I see frames running) but the cloth is static - not deforming.

I guess the solution must be very simple (I am a newbie) or there is a bug… Maybe anyone can help and tell me what is missing? There must be a way to export characters with animated cloth to game engines!…

I’m using Blender 2.79.

Maybe Unity is importing the .fbx from the .blend in wrong ways (Unity imports .blend files as .fbx under the hood).
I downloaded your .blend file, exported manually to .fbx and I can see the cloth waving in Unity3D.

I'm using Blender 2.79 and Unity3D 2017.3.0f2.

Try as follows:

In Object mode select both mesh and armature

Select File -> Export -> FBX
Disable Add Leaf Bones

Import the .fbx file into Unity

Animations in action


Vertex group and curve modifier I've created a vertex group that I want to reshape to more or less how this curve looks in the first image looks like. I'm trying to achieve this using curve modifier. Unfortunately the middle of the vertex group is moved to the edge of the curve, as seen in the other image.

Can this be fixed? Perhaps I'm trying to use wrong tool for the job? It's only my 3rd day with Blender so maybe I'm missing something obvious.

Just select the whole vertex group and grab the x axis arrow and move it toward the other end of the curve, to the right.


How to rotate an object I have a cylinder and I'm wondering how can I rig and make the two-part of it rotate? Do I have to divide it or there is any solution?

You have to separate it to work properly.

You could only rotate it in opposite directions in edit mode and be using shape keys to animate it, but it will mess the topology.

The easier way to do it is: delete the upper or down portion in edit mode and, in object mode, duplicate that object for further rotations or whatever.

I suggest you enter: https://blender.stackexchange.com/

Thare you will find a lot of people to help you better.


How to fix a very distorted mesh after having imported a BVH file with the Manuel Bastioni Lab I've been all day working with the corrective shapekeys. I've understood how they works : I need to modify the mesh manually with the proportional editing and then I should create a shapekey with the mesh modified correctly,BUT what I'm not able to do is to fix the legs of my character,because they became very damaged after that I have imported a BVH file. I tried to modify them with the proportional editing tool,but the job done is not good,since its difficult to alter carefully the mesh,especially behind the knee. Any suggestion ? Is there a way to fix it decently ? thanks. image attached.

Other than proportional edit, the following techniques might be handy.

Move vertecies along normal :Alt+S
Smooth Mesh : Tool shelf > Mesh Tools > Deform: Smooth Vertex
To Sphere : Alt+Shift+S
Shrink Wrap Modifier (use vertex group to specify vertecies)

Hope they help.


How do I add the same Modifiers to all Linked Duplicates? I am building a scene with a lot of leaves, a macroscopic view, each leaf is an object carefully placed rather than using a particle system. I have a base set of 12 leaves that have each been duplicated dozens of times as linked duplicates using Alt+D rather than Shift+D. Now that each linked duplicate has been carefully rotated, scaled, placed I want to add Solidify and Subsurface Modifiers to all of them but maintain them as Linked Duplicates.

Is it possible to add the same Modifiers to all Linked Duplicates in some way?

When I add these Modifiers to the original object or instance it seems to Unlink it from all the Linked Duplicates creating a new object with the Modifiers.

If this isn't possible to do as with Materials where a Material can be linked to an Object or its Data, is there a good workaround to achieve the same without unlinking all the objects and creating hundreds of new separate objects?

If you create a linked duplicate of an object (Alt+D) it will copy any existing modifiers. But the modifier stack of each duplicate can be individually manipulated without affecting the original. So if you retroactively add any modifiers to duplicates they will only be applied to one object.

You cannot add modifiers to multiple objects from the modifier panel. The modifier will only apply to the object selected last. However you can copy modifiers to a group selection, by selecting all the unmodified objects, and then the object with the modifiers, and use Ctrl+L to copy Modifiers.

Useful tip: to select all linked duplicates of a mesh use Shift+L or Select > Linked > "Object Data"

1st Image: Ctrl+L to copy modifiers from the last selected object

2nd Image: Shift+L to select all linked duplicates

S/O to @Ray Mairlot and @Gorgius for their comments, which I have redrafted as an answer for the sake of completion


Need Help with Python in Blender Game Engine I'm new to python code I usually use logic bricks in blender code. I wanted to use python more in my games and I need help in a bit of code. I want it to say that once I collide with an object it will come up with text saying Game Over or Wrong way, etc. Does anyone know how to do this?

Okay,

I'll give you an example of what you could do.

Add the collision sensor as you normally would, the way you want it, but named "Collision" and set to true pulse triggering, and connect that to a python controller with your script (eg. "Text.py"). You also need a text object, named "Text", with a Game Text Property.

Collision Sensor -----> Python Controller

Then, inside the script (eg. "Text.py"), type the following:

from bge import logic

cont = logic.getCurrentController()
own = cont.owner
sce = logic.getCurrentScene()

collision = own.sensors["Collision"]
text = sce.objects["Text"]

if collision.positive:
    text["Text"] = "Wrong Way!"
else:
    text["Text"] = ""

Tell me if you need any more help.


Layers section is not in the render settings panel? I'm very new to Blender and I have been watching some tutorials on how to make models within it. In every one of these, their render settings (In the properties tab) have a Layers section below the Performance section.

My version of blender does not seem to have that, at least by default. I've looked around the user preferences and haven't found anything. Thanks for helping.

I assume that you are mixing two different tabs of the Properties editor into one.
The Performance section is in Render tab of the Properties editor (camera icon), see image below:

The Layers and Passes sections (which are needed for compositing) are in the Render Layers tab (small pictures icon, second from left), see image:

Check out this BlendFile. Note that there are two render Layers (A and B).

Both have scene layers 1, 2 and 10 enabled in Scene layer selection.

In Render Selection, "RenderLayer-A" has layers 1 and 10 enabled, and
"RenderLayerB" has layers 2 and 10 enabled.


Exporting only 1 object at a time to .stl using blender script python I have a scene with multiple objects and I want to export them individually as .stl meshes.

Right now, it is just a cube and a plane, for simplicity. The cube is resting on the plane.

I've tried the following script to loop through the objects in the scene and export them individually as .stls:

cube.select=True
plane.select=True
names = [ob.name for ob in bpy.context.selected_objects]
bpy.ops.object.select_all(action='DESELECT')

for name in names:
    obj = bpy.data.objects[name]
    bpy.context.scene.objects.active = obj
    stl_path = os.path.join('C://Users/deden/Desktop/', name + '.stl')
    bpy.ops.export_mesh.stl(filepath=stl_path)

However, when I do this, both .stl files contain both the cube and the the plane. I am trying to have a separate .stl file for both the cube and the plane.

Can anybody help me with this?

I've seen a couple other stack posts but keep getting the same problem..

Set the use_selection property

To export only the selection, set the use_selection property to True. Also select object before and deselect after.

2.79 and prior.

Export all selected objects to individual stl

import bpy
context = bpy.context
obs = context.selected_objects  # makes a "snapshot" copy of property
bpy.ops.object.select_all(action='DESELECT')
scene = context.scene
for ob in obs:
    scene.objects.active = ob
    ob.select = True
    stl_path = os.path.join('C://Users/deden/Desktop/', name + '.stl')
    bpy.ops.export_mesh.stl(
            filepath=stl_path,
            use_selection=True)
    ob.select = False

>= 2.80

2.8 version.  Exports all mesh objects in scene to stl.

import bpy
from pathlib import Path

context = bpy.context
scene = context.scene
viewlayer = context.view_layer

obs = [o for o in scene.objects if o.type == 'MESH']
bpy.ops.object.select_all(action='DESELECT')

path = Path("/tmp")
for ob in obs:
    viewlayer.objects.active = ob
    ob.select_set(True)
    stl_path = path / f"{ob.name}.stl"
    bpy.ops.export_mesh.stl(
            filepath=str(stl_path),
            use_selection=True)
    ob.select_set(False)


Faint Lines with Subdivision Modifier Any idea why this object isn't smooth at 3 subdivision levels?

Following the previous comments, I would suggest to try the following :

Select the object in object mode
In the header menu, go to Object -> Shade Smooth
Try to adjust the normal smoothing by going into the properties panel, in the object data properties, and enable the auto smooth + try increase the default value


How would I change a Cycles material's color using the scale of the object instance it's applied to? Basically I have a field of spheres that are a bunch of different sizes that use the same material and I want them to be a different color based on their size.

I'm using a volumetric shader, so each of those little clusters is one sphere.

I accomplished something similar to what I want by using the Object Info input node's position attribute. It looks like this. Unfortunately the Object Info node doesn't have a scale option. Is there a way to add that? Or perhaps some method using drivers? I'm still not very good with drivers so maybe I'm just missing something.

atomicbezierslinger has suggested a way to change the color of a particle based on its size, which is an interesting solution, and it worked well.

I'm not very experienced with particle systems, so I basically manually went through to each sphere and gave it it's own particle system that emits 1 particle from its volume and with no physics. I manually changed the size of each particle then shrunk the emitter sphere down to .01 so it would be in about the right spot. I'm feeling a bit like a monkey on a typewriter but it got the job done.

My problem is solved thanks toatomicbezierslinger, but I would still be interested in whether or not it's possible to not have to use particles to do this. I can't be the only person to have this problem and the method I used wasn't exactly fast.

Perhaps there's a way to use Object Index on the Object Info node by assigning an index to each sphere based on its size using a script of some sort? I don't know the first thing about python, so I wouldn't know.

I'm using blender v2.76b, by the way.

Cycles Sample 01

Cycles Sample 02

Consider a particle system and material shader nodes.

Use the particle info node size [relative scale] value.

Note the object particles with [size] set to 1 and [random size] set to 1 in the image below.

We assume that your placement of spheres can use a particle system.
Particles are emitted in 2 frames.  Of course with a more complex mesh particles can be placed anywhere.  There was no artistry in placement of the example I provided.  You can do better.

Below same Material with different Particles Settings. A more controlled placement with particles spaced evenly.


Does array modifier constant offset use blender units or the object's radius? From the official guide and some video tutorials I understood that constant offset move in blender units, but when I try to apply it, it works like relative offset but using the radius instead of the whole dimension. In the picture below I used constant offset=1 in all 5 cubes.

I'm new to blender so I don't know if I misinterpreted the guide, fail to apply it or if it is a bug.

I'm using Blender 2.79 on Linux,Suse Leap 15.1

Scale is factored in

The constant offset is in Blender units, but in the Object Space of the modified object. If you scale the object, (as opposed to scaling its mesh, which you would do by scaling it in Edit Mode) then the object's space is scaled with it. (Thankyou @RobinBetts)

So if scale is 2 and constant offset is 1, scaled by 2 is 2 (explaining the result of your "What I got" column).

Image shows default cube with constant offset one array mod.  Notice at unit scale both expected and result are the same.  Note: non unit scale is one of the most common reasons for getting unexpected results in blender

It is then scaled by 2. (Result: "What I got")

Finally the scale is applied CtrlA Scale(sets on local mesh coordinates object scale returns to unity, equiv of edit mode scale or changing radius when creating cube) (Result: "What I expected")

To keep scale and maintain the 1 x offset could drive the constant offset by

1 / self.id_data.scale.x

making sure to check use self in driver properties.


Can I move Blender between drives without breaking the installation? I'm very new to Blender, and am not aware of it's intricacies. I need to move Blender from F:\ to E:\ . Can I just move the Blender folder to the other drive? Will it break Blender or any add-ons?
Thanks!!

The installation folder of Blender can be moved anywhere on your computer at any time.
The only folder that must be taken care of is the user folder.
That's where are stocked your personal data like preferences and addons. You need to copy that folder if you want to copy your Blender on another computer or have a USB installation that cna be run anywhere.


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.


Reducing viewport framerate When I am in viewport → render mode, how can I reduce the re-render frequency of the viewport in Cycles engine mode?
So instead of it starting to render again when I slide any attribute in the material nodes, it would wait 250 milliseconds or more between each render on the right
Why? My computer is slow at rendering (weak CPU, no GPU) and I don't want to change all viewport/final render subdivisions, and number of samples each time I preview

I don't think that is an option, but here are some general tips.
In Rendered View, there's a button in the top right to pause rendering.

In Render Properties there's a Simplify section you can use to cut down several of the most taxing effects without having to make any changes to the objects in the scene.

If the problem is not the scene geometry, but rather the amount of time it takes to run individual samples, then I suggest a render region with Ctrl + B.  You could also use Local View with / to focus on your selection.


Blender resets restricted rendering settings upon frame change I am using CellBlender for particle simulations and now want to extract a series of pictures using the render feature. The issue now is that my simulations contain many different particle species, but there are only a few that are interesting for illustrating purposes. Once I turned them all of for rendering, render a picture, and go to the next frame I have to turn them off again, because these settings are not being saved.
How can I prevent them from being reset, s.t. I can browse between frames without having to change the settings again?

Also, is there some form of batch rendering? Instead of rendering an animation, I just need every frame by itself.

I have been able to come up with a workaround for both my questions.
It is possible to remove desired particle species for all frames of the render by setting their radius ('scale factor') to 0 in the 'Molecule' section of the Cellblender add-on. They will therefore still be turned on for the render, but invisible due to zero volume.

This enables to not just render one or multiple images, but also an whole animation. Then it is possible to extract all single frames of that animation either from the temporary directory by hand or by choosing 'save all images' of the render window.


Change field of a node in a group I am trying to make a script that will change the value of a specific node within a specific node group. I have seen from this question how to target a node within a material, but I can't see how to change a node within a group.

The target node group exists within several materials, but the materials vary in different scenes, so I don't want to have the script change a specific material unless it has to be that way.

(Note: I know a more common way to solve this would be to use a Driver and Custom Property to change the value of the node, and then have the script change the property. However, I'm running into some issues getting my custom properties to update their drivers reliably, so I'm exploring other options too.)

You can directly access node group data from

node_group = bpy.data.node_groups['NodeGroup']

The node group name is the one chosen in the group node

Each node group then has it's own nodes -

node_group.nodes

You can find a node groups nodes from a material (don't confuse node name with node group name)

bpy.data.material['Material'].node_tree.nodes['Group'].node_tree.nodes

You can get the node group name from the materials group node in node_tree.name

for n in mat.node_tree.nodes:
    if n.type == 'GROUP':
        node_group_name = n.node_tree.name

See this answer for an example of creating a node group using python.

Once you have the group nodes you can access them the same as normal material nodes.

node_group.nodes['Diffuse BSDF'].inputs['Color'].default_value = (1.0,0.0,0.0,1.0)


How do I create grooves which have a certain shape and follow a round edge? How do I create grooves which have a certain shape and follow a round edge? In this example I draw a handle of a coffee mug, and I want the yellow area of the handle to be scooped out of the cylindrical handle, while following the direction of the handle. I am in cycles render.

Starting with a cylinder add a bevel modifier to create the basic shape:

Repeat that shape with an array modifier.

On the same place as your object (it is important that the origins of both objects are in the same place). Add a bézier curve.

Edit the curve so it has the shape you want for the handle.

Now select the Cylinder and add a curve modifier to the modifiers stack. Select your curve as curve object, select the axis in which you want the deformation (in this case is the Z axis). You might need to adjust the count number on the array modifier or you may need to slide the object along the curve on the z axis for the object to fit properly.

The beauty of using modifiers is that you can keep editing the shape of the curve or the array that forms the handle. The changes will not be permanent until you apply the modifiers.


Why does the transparent glass material not allow the emission to pass through? I have light bulb. There is filament inside and it have emission 60000.
MATERIAL of filament:

MATERIAL of bulb:

PROBLEM:

BUT if i turn off bulb i have this:

Cycles doesn't handle this kind of direct lighting terribly well. The only way I know of to rectify this is to reduce the Alpha value of the glass material to something like 0.5.


Keyframing curves' bevel_depth I would like to keyframe the bevel_depth property of hundreds of curves. Therefore, I wanted to use the Python interface like so:

for sel in bpy.context.selected_objects:
    sel.keyframe_insert(data_path="bevel_depth",index=-1,frame=60)

Unfortunately, this does not work and results in the error

TypeError: bpy_struct.keyframe_insert() property "bevel_depth" not found

I can manually keyframe the bevel_depth property by hovering the mouse on the property and pressing "i" but this is not feasible for hundreds of curves. What's the correct data_path for the bevel_depth property?

Okay I think I found my mistake. Sorry for bothering you. It seems I have to keyframe the data of the curve:

for sel in bpy.context.selected_objects:
    sel.data.keyframe_insert(data_path="bevel_depth",index=-1,frame=60)


Control of blender settings via script Could someone please explain, line for line how this script works; in particular the dots in between the setting definitions s.proxy.build_50

import bpy

for s in bpy.context.scene.sequence_editor.sequences:
    if s.type != 'SOUND':
        s.use_proxy = True
        s.proxy.build_25 = True
        s.proxy.build_50 = False
        s.proxy.build_75 = False
        s.proxy.build_100 = False

I'm most interested in understanding how one finds out how to define other settings/switches.

I know you can right click on for online Python reference. Also hover over them to see a bit of code; but looking at these has just confused me.

Is there a list of other settings / code to define them?

bpy.context.scene refers to the current scene, e.g. bpy.data.scenes["Scene"]

Sequence Editor data is stored in the Scene type, and .sequences contains the the top-level strips.

This iterates over all top-level sequences, whereas s refers to a sequence:

for s in bpy.context.scene.sequence_editor.sequences:

If the sequence is of type SOUND:

    if s.type != 'SOUND':

... the following code block is executed:

        s.use_proxy = True
        s.proxy.build_25 = True
        s.proxy.build_50 = False
        s.proxy.build_75 = False
        s.proxy.build_100 = False

A couple sequence properties are set.

Other sequence types:

>>> [item.identifier for item in bpy.types.Sequence.bl_rna.properties['type'].enum_items]

['IMAGE', 'META', 'SCENE', 'MOVIE', 'MOVIECLIP', 'MASK', 'SOUND', 'CROSS', 'ADD', 'SUBTRACT', 'ALPHA_OVER', 'ALPHA_UNDER', 'GAMMA_CROSS', 'MULTIPLY', 'OVER_DROP', 'WIPE', 'GLOW', 'TRANSFORM', 'COLOR', 'SPEED', 'MULTICAM', 'ADJUSTMENT']

You can pick a single sequence and get the type:

>>> type(bpy.context.scene.sequence_editor.sequences[0])
<class 'bpy.types.SceneSequence'>

Check the API docs to find out about the properties and methods:
bpy.types.SceneSequence

.proxy is a subtype, which has several own properties: bpy.types.SequenceProxy

Don't miss to read this:

Blender/Python API Reference Usage: examples of how to use the API reference docs


How do I apply the texture to my object? I just want to apply the bottom texture (assault rifle) to the side of the model I have currently.

How would I go about doing this?

The simplified way is to view the rifle from the side in the 3dview, then Press U and select Project From View, then position the uv's over the rifle picture. You would then need to cleanup the top and bottom faces.

You will find any UV unwrapping/mapping tutorial will help explain this more. You can find plenty on youtube.


No animation with some sensors in the BGE I have a problem with the Action Actuator and animations in BGE. I would like to play an animation.
It works only when I use the "Always" and "Delay" sensors but I need the "Radar" and the "Near" sensors.
But if I use the Near sensor no animation is playing. Here is a picture of my Logic Bricks:

maybe you need to change the true level triggering (pulse mode)

if that not works, maybe at the physics tab click on the actor checkbox there


Whenever I render, the cube appears over the model but everything looks fine on the view port render The cube appears in if I render the model

Welcome here!
Whenever you need help and post in any kind of website, it would be nice from you to provide more info about what you did, what you expected, what actually happened, what you tried to solve the problem, give screenshots to illustrate all of that, and indicate what software you're using (and its version) as well as your operating system. It will make everything easier and faster, both for us and you.

My first guess is that you disabled the visibility of your cube in the viewport, but not in the render.

Chac your outliner, you might have something like this :

Eye icon is for Viewport visibility, Cursor icon is for selectability, Camera icon is for renderability. The simplest way to not have your cube in the render is to uncheck the camera icon.

If this doesn't solve your issue, you will have to do what I said above: give more infos.


How can I make multiple meshes into a single hollow mesh? I have a character made up of multiple meshes, namely a body mesh and two eyeball meshes. I am interested in exporting only the visible surface of the character.

When I export to STL or PLY, the interior vertices remain. In other words, the parts of the eyeballs that are inside the body are included in the export. (Labelled 1 in the diagram below.)

An additional complication is that the body mesh has an interior "mouth" component. Again, vertices that are not visible from the outside are included in the export. (Labelled 2 in the diagram below.)

How can I modify the mesh so that only the visible "surface" vertices are exported?

Gamera / Chinchilla mesh from Big Buck Bunny

(C) Copyright 2008, Blender Foundation / www.bigbuckbunny.org

Shared under CC-BY 3.0

For separate meshes, you should first of all join them in a single object (ctrlJ)

Then, if in that object you have separate "islands" of faces (like eyeballs and body) you can either:

join them manually, adding new geometry, or joining existing
make (eg) eyeballs intersect body by enlarging or reducing any of them, and then use a boolean modifier with "union" to get a single, "manifold" mesh (check very well normals before using booleans, and to not have negative scale, since that would invert normals effect in the boolean). Needs some practice with simpler object.
to remove "interior geometry" I have no other solution then removing it manually, eventually closing open surfaces left inside (there could be some, since the model was thought for a usage (render, animation) for which this was not a problem).
anyway, since you're creating stl, I guess you are going to print the object, so, you can surely have some help before exporting by using the "3d print toolbox" addon (included, but not enabled by default) to find and correct problematic shapes. And after export, the print program tipically have some "correction" tool to fix minor problems.


Simulate fire (quick way) I'm doing an animation on a 2D plane.
I have some 3D objects on it.
Now I would like to show some fire. I know I can follow some smoke and fire tutorials and add this. But rendering takes very long.

Is there a way I can add 'simulated' fire/flames that doesn't need to bake and render so much?
I was thinking of trying to search an animated gif of fire and try to render this (never done this) but I have no idea if this would be the way to go.

Any suggestions?

You may fake a fire effect using animated movie e.g. .avi or .mov (.gifs are not supported as @Mr Zak said) to project it (using image seqence texture node) on a plane with transparency.

Add a plane and unwrap it. Download a fire animation from web (in my case I downloaded an explosion .avi file from here: http://wrathgames.com/blog/2011/12/25/explosion-animation-1/). Go to material nodes editor and set up the nodes as pictured below:

Set up the Emission node's strenght as you like. You might also use a Light Path node to get rid of the shadow casting by a projected movie clip.

To make the plane always face the camera (for the fly through animations  e.g.) use this solution: How can I make a plane always look at camera?


Blender for simple profile diagrams...? My company has asked me to try to find a good program that can assist in our producing diagrams for patent applications.

More specifically, we need to be able to open a STEP file, then manipulate (deleting/hiding lines) into a simplified view of the object in black-and-white profile, with just the edges and maybe some tangent lines, no shading, no hidden lines. (Something like the link below), and then export as a 2D  .dwg file for final touch-ups in Corel.

Should I invest my time (and money) in Blender? Can it do this kind of thing simply?
(If so, or if you have any tutorials to share for this, I would be interested to start immediately.)

You can render the outline if you enable Freestyle.

In the controls for freestyle enable Silhouette and border.

The outline can then be exported in SVG Format by enabling the  Frrestyle SVG Exporter

The exported SVG can then be edited in any vector graphics program like Inkscape, Illustrator, etc.


Highlights with hair Well the question is simple in blender there's hair particle tools and there's a lot of videos on how to work with it. But I haven't seen videos on coloring, painting or dyeing hair in blender.

So I want to ask If I have my blender hair completely red can I give it some small black red highlights and a big yellow highlight?

If I can how?

If you use Cycles, there is a node called Hair Info. You can use the intercept value (Gives a gradient where the root of the hair is black and tip is white) from it to achieve a gradient along the length of the hair. You could for example run it through a ColorRamp. (For more info on hair rendering, see the Wiki here: http://wiki.blender.org/index.php/Doc:UK/2.6/Manual/Render/Cycles/Hair_Rendering). There is also an excellent video on hair rendering by Andrew Price, see here: http://youtu.be/jEnCsvcvX8k.


Rendered view different than camera view in Viewport I am new to blender and I have been learning from Andrew Price's youtube beginner tutorial series. So I am making a donut and coffee and I have enabled Lock Camera to View but my final render is different than the camera view in Viewport.

it seems that you have a keyframe on the timeline on frame 2, maybe on that keyframe you staged the camera in a different way than frame 0 or 1. Try to remove all keyframes from the timeline, then go to frame 1 adjust the camera in the way you want and render (be sure you are at frame 1)


Subdivision surface modifier displays strange results I'm trying to model the 2nd generation Apple Pencil which has a flat section along the top. I was able to model a low poly version of the device, but when i added the subdivision surface modifier, it didn't quite provide the results i was looking for. I added an edge crease along the outer edge of the flat section, but it only made it worse. Is there an issue with the mesh itself, or is it just the subdivision surface modifier?
Here is a google drive link that contains the blend file.
https://drive.google.com/file/d/13cy7EwEumLTFE1v7ZwMdPU0pa_94bfev/view?usp=sharing

Add a face inset once more to get the flat top. See this image.


Understanding units setup for STL I don't understand the unit setup. I need to print the model but its just still incorrect in dimensions.
I have set up length to millimeters unit scale 1.
Exported STL file in meshmixer shows that cube that has 100mm in blender is 0.1mm, how does that work?
Also, blender does not scale the model when changing the measurements.
e.g. A model that has 10cm when I change to millimeters it just show that it has 100mm. Do I have to manualy rescale?
Can someone enlighten me to how to set scale, units and grid size to actually work in the units and export in them as I want?

The STL format does not support units. It just records arbitrary X,Y,Z coordinates of the vertices for each face.  Blender cannot know the units you intend.

blender scenes have their own co-ordinate system.  Unit system and Unit Scale just offer consistent display of properties through the user interface.  The objects themselves remain unchanged, because equally these do not have real dimensions either, much like the STL file they just have an arbitrary X,Y,Z.

To fix the problem with your STL you must enable the Scene Unit checkbox in the STL exporter options as shown.  It is also worth using the Selection Only to avoid exporting unwanted geometry.

.

Please note that the STL importer also has similar settings.


How to convert a linked object into an individual object? Iam trying to use the subdivision modifier, I selected the linked image by Shortcut Key "L" and the I go to modifier tab and select sub.divide modifier and it sub divide the whole object so If anybody how to convert a linked object into an individual object please let me know?

It's just vocabulary, but your question is ambiguous.

If you want to make an instanced object, (one which shares some aspect of its data (mesh, materials,etc., with other objects,) independent, that's now hidden in Header menu > Object > Relations > Make Single User.
A Subdivision Surface modifier always affects the entire object to which it is assigned. If you want to split part of the mesh off to another object, select that part of the mesh in Edit mode, and P Separate > Selection.


Image Texture Didn't Apply to Model Image Texture Didn't Apply in Model and when i try apply it's look like that
Here is the blend file:
https://drive.google.com/file/d/1SvSTPzqZeT0I65Z2vVyeBkcGPSM2FFyK/view?usp=sharing
Here is the texture:

Your objects have not been unwrapped, plus you didn't select the good image in the Image Texture node of your material.


How to get a list of selected bones How can I get a collection of two selected bones from an armature like the bpy.struct.selected_objects[0] list?

If I try this with bones I just get the armature objects name.

Your probably looking for bpy.context.selected_bones

Or ... selected_editable_bones


Is there any way to import blender animations to unity.? I am building a glowing platform for my 3D game. i had used cycles render(emission node) to create a glowing effect. The effect works perfectly on blender but not in unity.

You can't directly export blender materials to unity. The standard shader in Unity features an emission slot though, which will accept a glow map (or simply just a color).


How to unlink material from a mesh, with python script? Blender 2.68a, Python 3.3

I would like to unlink material from a mesh, and even after googling a hour I don't know how to do it. I only saw scripts that work in Blender 2.5x only for this.

So could someone tell me (or link info), how to do this:

with python script?

Unlink a Material

Remove the first material from the mesh.

import bpy
obj = bpy.context.object
obj.data.materials.pop(0, update_data=True)

Remove all materials.

import bpy
obj = bpy.context.object
obj.data.materials.clear()

Unlink Texface

This clears images for each face (active uv layer only)

import bpy
obj = bpy.context.object
for tf in obj.data.uv_textures.active.data:
    tf.image = None

This clears images for all UV layers

import bpy
obj = bpy.context.object
for texlay in obj.data.uv_textures:
    for tf in texlay.data:
        tf.image = None

Update: TexFace has been removed in Blender2.8


Ik bones in makehuman models I am using makehuman 1.1.0 and blender 2.77a. I am able to use rigged human models as mhx2 file exported from makehuman. In makehuman I am using the default rig. The models however dont have the Ik bones. Would it be possible for makehuman to generate rigged model with Ik bones and thus easy controls ?

Yes, I did find solution. It was under my nose all this time. While in pose mode Under tools section we have an option to switch to IK bones. Ik bones does help making things easy.


In the UV Editing mode, how do i rotate the camera on the left side of the split screen? Noob question. How do i turn the camera of the left side of the split screen in UV editing mode?

I believe it is no-can-do. I dont believe u can do it in blender given that the uv editing window works like image view window.
i Guess what u wanna achieve is that ur uv looks like the top view ? And based on the uv, You probably unwrapped it from the view. If so, on the right 3D Viewport, change ur view to top and unwrap it from the view again should suit ur need. BUt I Suggest u do "smart uv project"
Go watch a proper UV unwarp tutorial will make ur life easier


How to select how many subdivisions will a curve have? I have a path curve, I want it to give it 100+ subdivisions, but I don't have the time to do it manually, is there any way to select the number subdivisions?

go into edit mode, subdivide pressing W and type the number of subdivisions you need.


How to setting nodes for making a shop sign (lighting) This is the model I made

How to setting nodes for making shop sign if I want the shop sign lighting in the dark .Like the picture down below

So I don't know how to let my texture light.
Thanks for helping me !!

Cycles works with shaders that describe the interaction with light.

BSDF shaders
Describe light reflection, refraction and absorption at an object surface.

For more info read: What is a BSDF? and https://docs.blender.org/manual/en/dev/render/cycles/materials/surface.html#bsdf-parameters

A Diffuse BSDF shader does not emit light.

You need a shader that does! So use an

Emission shader

Used to describe light emission at an object surface or in a volume.

More info: https://docs.blender.org/manual/en/dev/render/cycles/nodes/introduction.html?highlight=shader


How to move an element symmetrically in edit mode I want to ask how to move an element symmetrically in edit mode.
Like this pic, I want this object be wider in both sides, all I know is to do grabbing for both sides relatively, but this is not smart and not true symmetric.

I tried scale in y axis but this also scaled my curve parts like this pic:

So is there any better way to do this? Thanks a lot!
blend file:

Perhaps the simplest and most surefire way is create a mirror modifier.
Split your object down the middle in Edit Mode by pressing Ctrl + r to generate a new edge loop going all the way around the object at its center. After activating this shortcut, float your cursor a bit along a horizontal edge near the top or bottom center of your object until you see a vertical division appear which snaps to the centerline of the object. Then left-click immediately afterwards one single time to commit to that division, then right-click one single time to cancel any further mode actions, which will then commit to this edit.
Now remove half of your model. Box select the half to be removed. Do this in an orthographic, wireframe front view, to make sure you don't miss any of the desired parts. Also do it with Face Selection mode active (so that you are sure to select faces and not edges or vertices). Then delete these faces so that only half of your model remains.
Finally, create a mirror modifier from the modifier tab (wrench icon) in the Properties Panel. Assuming your object's pivot center is properly aligned with the cut you made (which it typically will be by default), the mirrored half will be positioned correctly in relation to the original half, without the need for further settings changes. The mirrored half will perfectly mimic the other half whenever you tweak it in Edit mode.
When you are done modeling, you should probably apply the mirror modifier, which will make the mirrored results permanent, and give you two proper sides to the object afterwards. Note that you cannot do this apply function while still in Edit mode.


Wrapping a 2D net over a 3D object Is there a way to have a 2D mesh wrapped around a 3D object. Like this:

The red part is a flattened knot, which I mapped onto the surface of the blue part. In this specific case I used math to achieve it, but not all shapes can be easily expressed as formulae. What other ways are there?

I tried using physics, making the blue part a passive rigid body and the red part a soft body falling onto the blue part, and it seemed to work beautifully. But when I tried it again now, I realised that it doesn't do what I'm after. The net and the object onto which I want to wrap it already have the same X and Y dimensions, which is how I want it. I only need to remap the Z coordinates.

Another idea that comes to mind, would be generating a texture from the Z coordinates of the blue part and use that texture with the displace modifier on the red part. Is this possible?

You can use a conbination of Mesh Deform and Cloth simulation with proper settings.

Create a grid plane to cover the whole net;
Add Cloth Simulator to it, then Solidify modifier;
Tweak settings of them;
Add Mesh Deform modifier to the net object. (use higher Presision value if necessary, then Band)
Then play or bake the final shape. Delete the grid mesh (optional).

Example File


Why does my object file show up as a dot? I completed a sculpt in the free open source 3d sculpting program Sculptris then exported it from Sculptris as a object.  but when I imported the object file into Blender  all I saw in the 3d view was a dot as the object. I do not know what do and have no idea what has caused this issue. I opened the mesh in windows 10 3d builder app and the mesh showed up normally but I am still unable to see it in Blender.  Does anyone know how to solve this problem?
I tried to scale the object to see if maybe the mesh was too big in the 3d view but I still saw nothing show up besides the dot.
Here is a picture of what it looks like:

The object file I am trying to export is 24.8 MIB. If you want to know how big it is.  Please let me know if you know of a solution because I am so frustrated from this issue.

Here is the link to the blend file: http://www.mediafire.com/file/jpajin1epe8bvko/myobjectfile.blend

The reason and the solution is actually pretty simple, your model is just way too big and placed high (Z axis).
If you set the scene units to meters, it shows your figure is 5 kilometers tall :)

Just scale it down like this:


are bpy.context.object and bpy.context.active_object STILL the same? So far I haven't found a clear distinction between bpy.context.object and bpy.context.active_object, are they currently interchangeable? If so, might they be different in the future?

edit: Blender continues to evolve - are these still interchangeable? Are they identical? Is there any plan or thought given to give them separate meanings being thought about for the future?

They do appear to be interchangeable at the moment. I have seen no evidence that developers plan to change this. For sake of consistency I prefer to use .active_object for everything that requires the active object.


"Follow Track" motion tracking constraint depth to empty I've created a track and am trying to use that to position an object in my scene using the Follow Track constraint. I've created an Empty to use as a depth object, but when I try and use it in the constraint, it isn't listed but other objects are. Is there some reason why empties aren't able to be used as a depth object?

I'll answer my own question... My original understanding was that the 'depth object' was an object that was purely used to indicate the distance from the 'camera' that the tracking the object would be placed. However, I've just stumbled on the realisation that it's much, much cleverer than that.... the 'depth object' is used to position the object on its surface at the point that it would intersect with the depth object - so a wavey mesh would position it at varying depth depending on which bit of the wave it happened to hit. This means that an empty (being a point) would be a completely pointless (excuse the pun) thing to use - hence it's not valid to use in that situation! If you want to have the track placed at a constant distance from the source then you could use a plane perpendicular to the camera; but if you want it to follow a more complicated path the the 'depth object' can be tailored to suit whatever profile you require.


Cycles smoke always better in viewport compared to render I'm trying to figure out why my renders don't have the same color as my viewport.
When rendering I almost have no color and in the viewport is the result that I'm looking for.

Viewport:

similar result i have with render (value 1000):

Rendered view result:

The only thing I can make it a bit "better" is by setting the multiply node to high values like 300 or 1000.
There is a lamp (sun), but adding a second one doesn't seem to affect it.
Is it maybe my node setup?

You need to bake the simulation. Click on the smoke domain wile the domain is selected go to the camera  properties tab and scroll down to the bake take. Set your simulation range to the number of frames in your animation and press bake all dynamics (or bake all). Then render and enjoy... Make sure you add emission to the smoke to make it pop a bit!


Export video from Game Engine scene I've tried to follow this tutorial to create a simple bouncing ball in Game Engine.

When I run the animation pressing P ("run" being different than "play" that we can find in Internal or Cycles rendering engines, and not related to a timeline), the animation plays fine.

But I can't seem to find any documentation anywhere as to whether or not I can export this as a video file, like I would with the "Animation" button from the Rendering panel in the other engines.

On this old page there's a script that seems obsolete, and people on the discussion board just seem to end up going with a screen capture tool, which is a limited solution in terms of resolution. Also a script is a little too far advanced for me at the moment with my knowledge of Blender.

So, can a Game Engine scene be rendered out in PNGs like in other engines?

There is no checkbox called "Dump framebuffer to disk", so you will have to use a script for this.

The core idea from that old forum thread is good, call bge.render.makeScreenshot() every frame with different filenames.

In the Text Editor, make a script file with a name like "screenshooter.py". That script will handle a frame counter, will make a filename based on that frame counter, and will give that filename to makeScreenshot().

from bge import render

counter = 0

def shoot():
    global counter

    filename = "bge_rendered/frame_" + str(counter).zfill(8) + ".png"
    print("Saving to " + filename)
    render.makeScreenshot(filename)

    counter += 1

In the Logic Editor make:

an Always sensor, with "Activate TRUE level triggering".
a Python controller, set to Module execution method, executing "screenshooter.shoot".
the two connected together.

In the render settings, disable "Use Frame Rate" to disable frame-skipping, otherwise there will be a lot of duplicated frames and jumps in the animation.


How to set blender default properties in addons? For example, when the custom addon is loaded, the value of bpy.context.scene.world.use_sky_paper is expected to be True, where its default value is False in blender.

Setting it in UI (the draw function) will cause an error, while writing an operator to set it will need users to toggle it explicitly. Can I have the behavior that the default value is True when blender is first opened.
Thanks.

A way of automate it could be to use an Application Handler, I think one of the scene update handlers would be the best fit. As you only want to alter the value once I would have the handler remove itself once it has done it's task.

As batFinger pointed out, it would also be useful to setup a persistent handler that will set the value when another file is loaded.

bl_info = {"name": "Set property", "version": (1, 0), "location": "blender",
    "description": "Test a way of setting a default property.",
    "warning": "Only testing", "category": "Test",
    }

import bpy
from bpy.app.handlers import persistent

@persistent
def setIt(scene):
    scene.world.use_sky_paper = True
    bpy.app.handlers.scene_update_pre.remove(setIt)

def register():
    bpy.app.handlers.scene_update_pre.append(setIt)
    bpy.app.handlers.load_post.append(setIt)

def unregister():
    bpy.app.handlers.load_post.remove(setIt)

if __name__ == "__main__":
    register()


Object somehow reversed in position I'm not sure how this happened, but my object appears to have been reversed completely in it's direction.  I tried using mirror (both the modifier and transform tool) and all it does is revert back to its current position.  Any idea why this has happened?  It's like the object has somehow been mirrored but I can't make it face the right direction.
This is how it's currently facing:

As you can see from this picture, it's reversed somehow from the reference photo:

You can mirror your object along its pivot point by pressing , then CTRL+M and in this case pressing X to mirror along X axis.

It appears that the problem was due to a rigidbody on the piece interfering with transform operations.

Your rotation and scale are unapplied, be aware that modelling on a non uniformly scaled object will cause problems.


How to figure out where the UV shows on the Mesh? How to figure out where the UV shows on the Mesh?

I know that there is an option or button to find out what part of the UV mapping matches up with the mesh so that fixing problems is easier.

Does anyone know what that option is?

That button right there is probably what you want. Also keep in mind that by default, only faces you have selected in edit mode show up in the UV editor.


How do I make an object look wet? So I started a project and it mainly revolves around a manhole and a street, and it's raining, but I can't get the manhole to look wet.

One thing I tried was to mix 2 noise textures (one with a low scale and one with a high scale), and mix that with the gloss texture, however that barely changes anything.

The Road has puddles on it, ripples, etc. and practically looks pretty wet, however the manhole looks pretty dry, and I can't seem to figure out what to do to fix it.

I thought about making the ripples (made following Gleb Alexandrov's tutorial) affect the manhole too, however I don't know how to make it in a way that looks realistic, as the manhole has a displacement texture, so adding ripples on it wont really fit.

You can see the material for the manhole below, but the node system is huge, so I color-coded everything.

Dark-Blue: Texture Coordinates, Mapping, and Color Ramps

Bright Red: Mix Shader

Dark Red: Overlay Maps (although I don't think they're having much of an effect, so you can ignore them).

Green: Diffuse Stuff (The two textures are the diffuse and the AO map)

White: Reflection

Cyan (sort of): Gloss

Basically that is the node setup for the wet material

[![enter image description here][3]][3]

so that is the result. the darker part is obviously wet.. with some part still holding water that causes reflections :P
i guess it helped... if not.. look for the how to make puddles tutorial by BLENDERGURU


Does Blender have a way to reduce texture size? I have several objects, each with 1024x1024 textures on them. I want to reduce that to just 64x64 per object, for performance reasons (I'm planning on having a lot of these objects).

I'm not worried about losing quality, since the textures are simple and I'm going for a low-poly, pixelated look.

Does Blender have a way to automatically reduce texture size, or do I need to edit the texture in GIMP, then reapply it to the object?

Create a separate project, import the textures into the VSE as an image sequence, lower the dimesion values to 64 px by 64 px, and render them all out as .pngs or your preferred image filetype.

Though as NoviceInDisguise, Timaroberts and Galih Bagaskara have already said, this is probably best handled by GIMP or some other dedicated graphic editor. Using the method I described, every texture will lose its individual name once rendered, which may or may not be important to you.


What's the fastest / least destructive and most scalable way to create a step pyramid? I want to create a step pyramid. Not a smooth three dimensional triangle with five faces, but a pyramid with "steps", like this:

Requirements:

Creating the pyramid should be fast!
You should be able to control how many "steps" there are
No matter how big, the pyramid needs to be consistent, meaning all the steps have the same height and the distance between the inner corner to the outer corner of a step is the same

There is a builtin addon for that, no need to reinvent the wheel.
Under the User Preferences > Addons make sure Add Mesh : Extra Objects is active.

Then in the 3D View simply press Shift + A > Mesh > Extras > Step Pyramid

You can then adjust the builtin parameters as desired.

Only downside is that the addon seems to generate pyramids radially, hence a four sided pyramid seems by default rotated 45° about the Z axis in relation to world coordinates, it also is kind of destructive, in the sense that it can't easily be changed or its parameters adjusted after creation.

As mentioned by @batFINGER the Reduce Step By value needs to be twice the value of the Height parameter to obtain "square steps", where the riser matches the tread depth. Andrew Morton then clarified this is due to the reduction value being applied in relation to total base diameter, taking into account steps on both sides, rather than an absolute tread depth, thus apparently halved.


How to properly export Cryptomattes for Photoshop? How to properly export Cryptomattes for Photoshop?

Seems I cant find the right thing on the internet so far.

In Modo, was just one click to get the " Color ID Pass"

I've tried EXR multi layer and it doesn't work, I just want a clean ID pass on material/object.

It's working fine using OpenEXR multilayer. You just have to install exr.io for the photoshop side of things and setup your passes in the compositor using the cryptomatte node and a file output node before rendering.