Is pooling vram with Nvidia NV-Link actually possible?

TLDR: it is possible; Blender team should know better, as well as tech people at Nvidia.
The ability to pool memory depends on the implementation of the software using it for Geforce cards, and I understood that it can be automatic (I understand managed by the driver) with profesionnal display cards ie., Quadro (generations before Ampere), and later RTX A6000. For the non display professional/enterprise cards (A100, in DGX Station A100, DGX A100), it happens with a multiway nvlink.
Cards however must be of the same generation, The NVlink is updated from generation to generation and is not backward/forward compatible.
Test with Turing generation Geforce
Memory pooling works with Turing generation Geforce cards (2080, 2080Ti, Titan RTX), in GNU/Linux and Windows 10.
reference: https://www.pugetsystems.com/labs/articles/NVLink-on-NVIDIA-GeForce-RTX-2080-2080-Ti-in-Windows-10-1253/
Comments on cuda 11.2 and pooled memory: Stream-ordered memory allocator
One of the highlights of CUDA 11.2 is the new stream-ordered CUDA memory allocator. This feature enables applications to order memory allocation and deallocation with other work launched into a CUDA stream such as kernel launches and asynchronous copies. This improves application performance by taking advantage of stream-ordering semantics to reuse memory allocations, using and managing memory pools to avoid expensive calls into the OS. The new asynchronous memory allocation and free API actions allow you to manage memory use as part of your application’s CUDA workflow. For many applications, this reduces the need for custom memory management abstractions, and makes it easier to create high-performance custom memory management for applications that need it. Moreover, this feature makes it easier to share memory pools across entities within an application.
cudaMallocAsync(&ptr, size, stream); // Allocates physical memory
kernel<<<...,stream>>>(ptr);
cudaFreeAsync(ptr, stream);          // releases memory back into a pool
cudaMallocAsync(&ptr, size, stream); // Reuses previously freed pointer
kernel<<<...,stream>>>(ptr);
cudaFreeAsync(ptr, stream);          // releases memory back into a pool
....                                 // Executes other work in the stream

As shown in this example, CUDA 11.2 introduces new stream-ordered versions of cudaMalloc and cudaFree—called cudaMallocAsync and cudaFreeAsync—which take a stream as an additional argument. The first call to cudaMallocAsync in the example allocates memory from the OS, but the subsequent call to cudaFreeAsync does not free it back to the OS. Instead, the memory is stored in a pool maintained by the CUDA driver, which allows the second call to cudaMallocAsync to reuse the memory previously freed, if it is of sufficient size.
reference: https://developer.nvidia.com/blog/enhancing-memory-allocation-with-new-cuda-11-2-features/


You need to move the mouse back into the 3D Viewport. Since each Editor has their own respective keyboard shortcuts, Blender will pass the keyboard commands to the Editor your mouse is hovering over. So select the object in the Outliner, move your mouse back over to the 3D Viewport, and press ..


How do I restore my User Preferences>System panel?

I was able to solve this by disabling the Cycles Render Engine in the Add-ons panel, this let me restore the System panel to how it should look.

As for getting Cycles to work again now, I'll ask another question...


If the answer isn't something to do with the post that Mark posted, it might be something to do with the planes you have in your object view, many are enabled in rendered mode, but disabled in view mode:

Alternatively, make sure you don't have a crazy bright lamp enabled in render but not in view.


Select similar vertex in a symmetric mesh

The simplest way to select everything in that loop but vertices in the middle is to use Shift+G > By Length in Edge selection mode. Select one long edge from the loop and run Select Similar command.

Then convert that selection to the pattern shown on your screenshot by changing Selection mode to Vertex.
However this way may not be the best since it will select all the edges falling under the specified length threshold (length of the active edge).

Another way is to use Checker Deselect to deselect vertices you don't need to be selected according to certain pattern.

First select the edge loop with Alt+RMB on it. Then deselect and select again vertex in between long edges to make it active. Run Checker Deselect from Select menu in the viewport footer or from the Spacebar menu. Change its settings to Nth Selection - 2 (to deselect every 2nd element), Skip - 2 (to skip every 2 steps of selection) and Offset - to 2 (to offset the start of selection).


Building Blender from source with static linking

The most relevant line here is:

lto1: internal compiler error: in lto_tag_to_tree_code, at lto-streamer.h:1005 Please submit a full bug report

The compiler has hit code that caused it to fail.  It's not possible to continue this build without fixing the compiler, or changing compilers.

I encourage you to submit a bug report.  gcc-7 is still widely deployed and this will definitely get looked at.


Is it possible to create a loop with Hair Dynamics?

if you're able to have the forces on the hair dynamics be equal in the beginning and the end of the loop, you can bake the hair from a negative frame to get it to settle in the same position that it will be in on the final frame of the animation.


You're using a texture which is black: remove it.


How to install numpy for blender-python (OSX)

Numpy is included in Blender 2.70 on Windows, Mac OS X and Linux.


Make softbodys squeeze through other objects?

Consider Using a Lattice Modifier which can squeeze or inflate 3D meshes.

If you are not being extremely particular this is an easier choice.  Since the 3D object in the video might be a simple sphere this may simplify your work.  You will still have work to do as you may be concerned with more degrees of realism regarding the volume compression and expansion.   The lattice has shape keys.  The lattice and the sphere can be moved relative to each other for animation.  I am letting you be the artist here if you like.  You can definitely improve the lattice shape with experimentation.

If wobble suits your tastes then you can add that with another lattice.  I could try to convince you that the video included your video has low realism wobble.  You can view and be the judge of that in the video.

There are also more difficult and complicated sequences of modifiers such as weight modifiers and shrink wraps.


How to Add Shininess on this Sun Object?

You could use compositor and add Filter/Glare node.


Particle hair falls of when I animate object

You need to have the particle modifier below the armature modifier.

The modifiers are applied from the top to the bottom, that means if the particle system is first then the hair is calculated in place and then the armature moves the mesh which leaves the hair behind.

But if the armature is first then the mesh is moved before the hair is calculated.


The Donut Tutorial uses Cycles Render Engine. You are on Blender Render Engine. You can change it in the dropdown at the top.


Animation Nodes: How to hiccup letters individually?

The first effect can be achieved very similarly to my answer here. The inverse of a delay falloff is used to offset the matrices of each of the characters by scaling them to zero and moving them in the negative y direction:

The second effect can be achieved by introducing a rotation to each character. The rotation of each character will linearly depend on its index, where the rotation of the first character is some negative scalar and the rotation of the last character is some positive scalar:

The third effect can be achieved by introducing a linear offset along the x axis based on the index of the characters, this is done similar to the second effect as follows:


On the bottom where you see a video clip symbol and then words that say, "Sequencer," it's normally set to the Timeline panel where you would see a play button, but it's right now set to the "Video Editor" panel.  Just click on the video clip icon in the bottom left corner and choose "timeline" in the "animation" section.  Then the play button will appear.


Why doesn't choosing different object change Shading nodes?

You have pinned you node tree, that means that shader tree is always displayed for that editor regardless of 3D View selection.

Unpin it from the Shader Editor header by clicking the pin icon.
This is useful when comparing materials, if two Node Editors are open, or to make sure you are editing a certain material regardless of selection, like say editing a particle material when the emitter is selected, or editing the material when an collection instance is selected.


Better way to join bezier curve to bezier (half) circle?

After step 8, click LMB once or twice to select the useless point, then X > Vertex to delete it.

Actually, it's recommended to enable Snapping so that the two vertex can be overlapped, that brings the new segment with zero length.

You can also use a nice addon called Curve Tools (by Mackraken). I recommend to use the modified version Curve Tools 2 (by Mackraken and guy lateur), which can handle this perfectly while keeping curvatures.

Added a short demo video (01:35).

Here is the lastest version, in case you cannot access Blendernation.com. (File > Download)


Why is rendering with cpu added only mildly faster even though it uses so much more power?

You haven't given your hardware, but it's possible your CPU just doesn't have that much to add by comparison.
There is still some CPU load when doing a GPU render, so everything leftover is what you have to dedicate to additional CPU rendering.  Your GPU has dedicated silicon to do significant portions of the math involved with rendering, and that's what typically makes it render tiles much faster, then it hands the rest off to the CPU.
A couple of things:  If you're using large tiles, CPUs have trouble handling those.  Enable the Auto Tile Size addon, and it should find a good compromise for hybrid rendering.
You can also try rendering through command line, I've heard this reduces load on the system because you're not constantly integrating and redrawing the image for the render tab.


Blender 2.82 Parts of solid (opaque) objects in cycles renders are slightly transparent in photoshop

After having a look at your file (without textures attached) I have several suspicions:

"Noah's place bighter 2.exr" may have alpha issues
World background nodes> "Background" node itself was set to 0.920 instead of 1.
Compositor nodes> "Composite" node was set to "Use Alpha". Disable that?
Render settings>Film>Transparent>"Transparent Glass" was on. Turn off if you don't need it.
Render settings>Film>"Transparent" was on. Turn off if you don't it.

You can also check the alpha of your render directly in blender "render" window by right clicking the final render image and holding the mouse cursor over image pixels in question. It reads out RGB and alpha values.


How does Blender Autodetect Texture Culture?

Blender's probably reading the instructions in the mtl (material library) file that accompanies the obj file.

According to the mtl specifications mtl files can include a parameter (-o) that instructs the program reading the file to reverse the texture's origin in the horizontal (u) or vertical (v) directions:

Quoting from the specification document:

  The -o option offsets the position of the texture map on the surface
  by shifting the position of the map origin. The default is 0, 0, 0.

  "u" is the value for the horizontal direction of the texture

  "v" is an optional argument.  "v" is the value for the vertical
  direction of the texture.

  "w" is an optional argument.  "w" is the value used for the depth of a
  3D texture.

-o v   # This should reverse the texture's origin in the vertical direction

Open your OBJ's MTL files in a text editor and see if you can find anything that resembles this.


Is there a way to "calculate" speed/duration for animation?

It seems a little too fast?

There is no "right speed" when it comes to animation. It all depends on what  you are intending to do.

Is there a way to "calculate" the best speed/duration for such a video ?

Best (or any other superlative) is beyond the scope of this site, as there is no categorical way to answer...
But calculating the duration of an animation is not only possible, but absolutely necessary for anyone trying to express ideas through animation.
To only way to get a sense of how your animation is working out, is to pre-visualize it in real time, meaning: evaluating while playing back at a sustained pace at the target framerate.
For simple scenes you can just playback the animation on the 3D vieport at the desired target rate.
As the scene gets more complex your system might not be able to compute the transformations in real time.
As you play your scene you'll see a number on the top left of the screen that reflects the actual playback speed. If those numbers are red it means that the playback speed is not the correct one and what you are seeing is not an accurate representation of your scene.

At that point you can use a multitude of strategies to get a sense the actual pace of the aninmation:

Visualize things in wireframe mode or bounding box.

Do a quick render in OpenGL

Render a low resolution file using a single simple material for the whole scene. Simplify it by reducing the numbers of subdivisions, baking all bakeable actions/surfaces/simulations. Hide objects that do not move or are irrelevant to the elements you want to evaluate. In other words, use every trick you can think of to simplify your scene and accurately evaluate it.

In short, make sure you have a good idea of what the pace of the animation is before you spend a lot of time rendering the real animation in full detail, only to find out errors that could have been prevented by pre-visualizing.
How do you modify the timing of animated objects?
The pace of animated objects is an easy formula: how much are the elements transforming over how many frames (time).
To slow something down you need to have less transformation occur on the same number of frames (time):

Or have the transformation occur over a longer period of time:

In the simplest form of animation you have a start key frame and and end keyframe. Spacing the keyframes apart in time will make the transformation slower, getting those keyframes closer together will accelerate the transformation.

See this post for more details
For complex animations where all the elements are working fine with each other, and you don't want to affect the placement of keyframes in any way,  you can use the Time-Remapping tool on the "dimensions" section of the properties panel:

More info on this post.

And are there any tools in Blender to "play" with the speed of your video ?

There are, and they should really be avoided and thought of as the absolute last resort.
Re-timing a rendered video is only going to create a new set problems. Not only will you be dealing with decompression-recompression issues, and multigeration quality loss, but even if your workflow involves real lossless formats you will be dealing with some form of spatial and temporal interpolation that blender handles very poorly.
When you are re-timing video, you are either creating new information for new frames by interpolating existing ones, or discarding/combinig frames to compress the time. Depending on how severe the changes are you'll be introducing stuttering/flicker to scene or will have issues with inaccurate motion blur.
To re-time video properly you need some form of otpical flow. Blender does not have any such tools.
There are some amazing tools out there that will allow you to re-time video like twixtor (Not cheap) or slowmovideo (open source) both require in depth knowledge to make them work correctly... Adobe Premiere, Davinci Resolve or Fusion have basic tools for optical flow

It is a bit of trial and error.

Just like life...
So to summarize:
Try to get the rhythm of your animation before you render, not as an afterthought.


Vertices disappear after doing a "disolve edges"

That's the way Dissolve Edges works by default, it also dissolve the vertices, but you can deactivate the Dissolve Vertices option in the Operator panel, I agree that it should be the default setting:


How to fix wrong bone axes to edit the animation in the graph editor?

The bones to wich nothing is connected (free or keep offset only) can be freely rotate in edit mode: if you select your armature and in the properties tab check the "axes", you can freely rotate those bones to align their axes with the world axes; in the photo i've changed the alignement of the hips of your model to match world's alignement.
This procedure, of course, changes the pivot point of the rotations, so you should move the head of the bone to the previous location.

Sometimes this is not a good solution, even worse if another bone is connected to the one you want aligned. In those cases the solution is to add a new control bone, aligned with the world coordinates, and make it parent with the deform bone, so you can animate an aligned bone controlling a non aligned deform bone.
For a better use of the graph editor you should also avoid the use of quaternion rotation, wich is useful only in the cases where a bone needs to rotate in all the three axes: if you know that a bone will rotate just a little (er even better it can be locked) in one of his axes (let's say the "z"), choose euler rotation putting that axe in the center (I.E. euler XZY): in this way the graph editor should be more usable to edit rotations.

Anyway, in my experience, lots of animators nearly do not use the graph editor, except for choosing wich type of keyframe they want (vector, bezier, etc..) and they do their editings directly in the action editor, dopesheet and directly posing the character, also because a lot of animation is done by rotating bones and quaternion is mainly used.

https://www.youtube.com/watch?v=c-0oBXJZwQE
This is an amazing serie of tutorals to deeply understand some priciples of advanced rigging.


Objects showing through other objects in the BGE?

The simpliest way (and only one known to me) is to go to "user prefernces-editing" and in "Duplicate data" uncheck the "Metaball". Then duplicate problematic meshes. Duplicates shoudn't have these problems.


Go to Properties window > View > Uncheck "Lock to Cursor", it locates above "Lock Camera View". I just faced this problem LOL.


I can't see my objects in Solid mode, but I can see them in Rendered Mode

When I open your file its not visible even in Render Mode.
Really strange behaviour.

But if you are looking for solution - turn off and on your "OBJECT" collection (check mark on left side of Outliner editor).

Note: Do the same for "MAIN" collection, there are also hidden objects that should not be (like ceiling and totaly discoverable window object). Is not the blend file from some older blender version?


When can you no longer switch from Evee to Cycles render

This question is far too broad to be reasonably answered in it's current state, but rather than flagging it closed, perhaps the following information is useful.  Please take the time to edit your question accordingly.

You will likely have more problems going from Cycles to Eevee rather than the other way round.  If you are having a more specific problem switching to Cycles then you need to specify this in your question.

Please note that both renderers have additional settings in the material properties panel, sometimes these need to be enabled under the render settings panel before taking effect.

There's a great article about Eevee limitations on CG Cookie.

I defer to the vast knowledge-base that is the blender documentation on Eevee limitations:

  Eevee Limitations

  Eevee’s goal is to be an interactive render engine. Some features may
  not be there yet or may be impossible to implement into Eevee’s
  architecture without compromising performance.

  Here is a rather exhaustive list of all the limitations you can expect
  while working with Eevee. Cameras

  Only perspective and orthographic projections are currently supported.

  Lights

  Shadows are not supported on light instances (instance objects, group instancing).
  Only 128 active lights can be supported by Eevee in a scene.
  Only 8 Shadowed sun lights can be supported at the same time.
  As of now, lights can only have one color and do not support light node trees.

  Light Probes

  Eevee only supports up to 128 active Reflection Cubemaps.
  Eevee only supports up to 64 active Irradiance Volumes.
  Eevee only supports up to 16 active Reflection Planes inside the view frustum.

  Indirect Lighting

  Volumetrics don’t receive light from Irradiance Volumes but do receive world’s diffuse lighting.
  Eevee does not support “specular to diffuse” light bounces nor “specular to specular” light bounces.
  All specular lighting is turned off during baking.

  Shadows

  Shadows are not supported on light instances (instance objects, group instancing).
  Only 128 active lights can be supported by Eevee in a scene.
  Only 8 Shadowed sun lights can be supported at the same time.

  Volumetrics

  Only single scattering is supported.
  Volumetrics are rendered only for the camera “rays”. They don’t appear in reflections/refractions and probes.
  Volumetrics don’t receive light from Irradiance Volumes but does receive world’s diffuse lighting.
  Volumetric shadowing does only work on other volumetrics. They won’t cast shadows on solid objects in the scene.
  Volumetric shadowing does only work for volumes inside the view frustum.
  Volumetric lighting does not respect the lights shapes. They are treated as point lights.

  Screen Space Effects

  Eevee is not a ray tracing engine and cannot do ray-triangle
  intersection. Instead of this, Eevee uses the depth buffer as an
  approximated scene representation. This reduces the complexity of
  scene scale effects and enables a higher performance. However, only
  what is in inside the view can be considered when computing these
  effects. Also, since it only uses one layer of depth, only the
  front-most pixel distance is known.

  These limitations creates a few problems:

  The screen space effects disappear when reaching the screen border. This can be partially fixed by using the overscan feature.
  Screen space effects lack deep information (or the thickness of objects). This is why most effects have a thickness parameter to
  control how to consider potential intersected pixels.
  Blended surfaces are not considered by these effects. They are not part of the depth prepass and do not appear in the depth buffer.

  Ambient Occlusion

  Objects are treated as infinitely thick, producing overshadowing if the Distance is really large.

  Screen Space Reflections

  Only one glossy BSDF can emit screen space reflections.
  The evaluated BSDF is currently arbitrarily chosen.
  Screen Space Reflections will reflect transparent objects and objects using Screen Space Refraction but without accurate positioning
  due to the one layer depth buffer.

  Screen Space Refraction

  Only one refraction event is correctly modeled.
  Only opaque and alpha hashed materials can be refracted.

  Subsurface Scattering

  Only one BSSRDF can produce screen space subsurface scattering.
  The evaluated BSSRDF is currently arbitrarily chosen.
  A maximum of 254 different surfaces can use subsurface scattering.
  Only scaling is adjustable per pixel. Individual RGB radii are adjustable in the socket default value.
  Input radiance from each surfaces are not isolated during the blurring, leading to light leaking from surface to surface.

  Materials

  Refractions

  Refraction is faked by sampling the same reflection probe used by the Glossy BSDFs, but using the refracted view direction instead of
  the reflected view direction. Only the first refraction event is
  modeled correctly. An approximation of the second refraction event can
  be used for relatively thin objects using Refraction Depth. Using
  Screen Space refraction will refract what is visible inside the view,
  and use the nearest probe if there is no hit.

  Screen Space Reflections and Ambient Occlusion are not compatible with Screen Space Refraction; they will be disabled on the surfaces
  that use it. Surfaces that use Screen Space Refraction will not appear
  in Screen Space Reflections at the right place. Surfaces that use
  Screen Space Refraction will not cast Ambient Occlusion onto other
  surfaces. Bump Mapping

  As of now, bump mapping is supported using OpenGL derivatives which are the same for each block of 2x2 pixels. This means the bump
  output value will appear pixelated. It is recommended to use normal
  mapping instead.

  Tip

  If you absolutely need to render using Bump nodes, render at twice the target resolution and downscale the final output. Volume Objects
  Object volume shaders will affect the whole bounding box of the object. The shape of the volume must be adjusted using procedural
  texturing inside the shader.

  Shader Nodes

  All BSDF’s are using approximations to achieve realtime performance so there will always be small differences between Cycles and Eevee.
  Some utility nodes are not yet compatible with Eevee (e.g. Sky Texture node).

  See also

  For a full list of unsupported nodes see Nodes Support. Memory
  Management

  In Eevee, GPU Memory management is done by the GPU driver. In theory,
  only the needed textures and meshes (now referred as “the resources”)
  for a single draw call (i.e. one object) needs to fit into the GPU
  memory.

  So if the scene is really heavy, the driver will swap things in and
  out to make sure all objects are rendered correctly.

  In practice, using too much GPU memory can make the GPU driver crash,
  freeze, or kill the application. So be careful of what you ask.

  There is no standard way of estimating if the resources will fit into
  the GPU memory and/or if the GPU will render them successfully. CPU
  Rendering

  Being a rasterization engine, Eevee only uses the power of the GPU to
  render. There is no plan to support CPU (software) rendering as it
  would be very inefficient. CPU power is still needed to handle high
  scene complexity as the geometry must be prepared by the CPU before
  rendering each frame. Multiple GPU Support

  There is currently no support for multiple GPU systems. Headless
  Rendering

  There is currently no support for using Eevee on headless systems
  (i.e. without a Display Manager).

Ad endum

There are a couple of other Eevee gotchas that you should be aware of that aren't listed here, perhaps beyond the scope here, but relate to shader nodes.

Eevee doesn't truly support displacement.
Particle Info node is Cycles only.
Other nodes may be specific (always read the docs for the node)


About says version 2.46 when I install version 2.79

Guess I had version 2.46 installed and did NOT realize it. So when I installed 2.79, it installed to a different folder (Blender instead of Blender Foundation which is what 2.46 installed to). I was opening the wrong version and didnt realize I was doing so.


How can I effectively import and texture a large height mapped terrain mesh?

I have since found a good solution for my problem. What I've done is break up the mesh into individual "chunks" and then applied a material to each to texture it. I discovered that Blender can handle that many objects and my perception otherwise was due to the script functions I was using. Here is some pseudo code for what worked for me with good performance (10-15 seconds to create 8112 5x5 objects with 25 faces each):

for chunk in chunks:
    mesh = bpy.data.meshes.new(str(chunk.name))
    mesh.from_pydata(chunk.vertices, chunk.edges, chunk.faces)

    obj = bpy.data.objects.new(obj+str(chunk.name), mesh)
    obj.location = (chunk.offset.x, chunk.offset.y, 0

    bpy.context.scene.objects.link(obj)

The key was to not use any operations in bpy.ops but to instead create and link the mesh/obj/scene for better performance. See here to understand details Python performance with Blender operators.


Line breaks in Freestyle are almost exclusively caused by clipping/mesh intersections. Alternatively, it could be that you have a minimum stroke length set. Check for intersections in your model at those areas. If that is not the problem, you will need to share your file for it to be determined.


Error using angle measure feature of measure it

I notice from your screengrab that none of the selected vertices is active. That suggests maybe you used something like Box or Circle-select to select them.

Because, (even if you didn't) you might have selected more than one vertex simultaneously, they don't have a selection order. The MeasureIt Angle display needs to know in which order the vertices were selected..

Does it work if you use the default 'Tweak' selection mode, and select the vertices one at a time?


Adding pole bone to IK ignores IK constraints

Your problem is limiting Ik bones ranges with constraints. You need to use this panel for Ik:

A simple leg Ik rig is here: How to IK rig legs

How to handle pole bones and their angles precisely is here: How to Set/Calculate pole angle of IK constraint so the chain does not move?


How do vertex groups and UV maps interact with textures?

Vertex groups are ,like the name suggests, just a grouping of vertices and don't store any information about textures.
the UV map is what connects the two together, it defines for each face in a mesh what part of the texture it has to show when rendered.

  How can I have a seperate texture and UV map for each of my different vertex groups?

I'll work with a subdivided cube and two textures.

I will assign the cube two textures,one to the top faces and one the right faces, both defined in vertex groups with their respective names.

add as many UV maps as you need, it's a good idea to give them meaningful names.

the workflow is as follow:

-In edit mode ,make sure nothing is selected (press A once or twice).
-select the right texture in the UV image editor
-select the right UV map from the list
-select the right vertex group, and click on selected
-press W and select one of the UV unwrapping methods.
if you are not happy with how the UV is mapped to the texture you can either adjust it manually in the Image editor or do it again with a different unwrapping method.

once done, you repeat the same process with the other textures as necessary.


Render using way too much memory no matter how much I lower settings

Every step you listed except for clamping probably helped out.
Turning clamping to 0 actually unclamps them completely.  You need some value in there, I think indirect is clamped at 10 by default and unclamping it increases render times pretty significantly.  It probably wiped out all the gains made by the other methods.
As for the memory usage, check your materials for duplicate image textures.  If you're using high-resolution textures and you think you could get away with a lower resolution, that will take less memory.
You can go this menu -

and lower your viewport settings and maybe cut down on the geometry that blender has to keep track of outside of the rendering process.
Consider adaptive subdivision if you have any highly subdivided meshes.


Blending normals at edge of mesh and accessing result with python

So it seems that data transfer for custom normals works opposite to other data transfers. The object you select first receives the normals from the active object.
The operator works by adding custom normals to the target, not by changing the regular normals.
The custom normals appear to be oriented backwards to the regular normals, and backwards to what you see on the display. If I make the standard cube and select face 0, its normal is (-1,0,0) but the custom normal on one of the verts in its loops is (1,0,0). That seems wrong to me, but I don't know how else to interpret the data.
I'm still not sure how to access these normals. Making a bmesh and using calc_normal on a loop isn't given the results I expect. On the cube the custom normals are still pointing along the axes even when the visuals say the cube is smoothed.
Edit: When I look at my object's mesh's loops and access the normal property of each loop, I see what I expect: The normal points in the direction I expect and it matches what's shown visually. But the bmesh is not picking them up in a way that's obvious to me.


start with

F to fill

I to inset

O to outset

X to delete faces


Instead of having the camera track anything, let an empty do the job. Parent the tracker empty to the path and let it track the focus empty, then parent the camera to the tracker empty. That way you can rotate the camera freely. All the path motion is done by lesser beings.

In the picture I have moved the camera a little away from the empty to show the relationship line. That's just for clarity purposes. Usually you'd keep it smack on the tracker empty.

Another benefit: since the camera is in local space due to parenting it, you can lock its X and Z rotation.

The empties do all the pointing and moving, so rolling the camera around its local Y axis is all that's left to do.

Inbetween objects simplify a lot of complex hierarchies.


EDIT: It's possible now!

You have to get a newest 2.79 (aka Official) build from Blender Builder. It has CUDA support but the kernels are missing. That's easy to fix, however. Get a CUDA 10-based Linux build from GraphicAll. Then go to blender\2.79\scripts\addons\cycles\lib. Copy the filter_7*.cubin and kernel_sm_7*.cubin files to the corresponding folder in the Windows build. It should work now :)

Thanks to Carlo Andreacchio for showing this method in a comment on GraphicAll.

Original answer:

I tried to recompile Blender with CUDA 10.0. Sadly, the library that Blender uses for initializing CUDA (cuew) didn't even recognize the toolkit. Last commit is from 3 months ago, when CUDA 9.2 arrived. We have to wait...


How to use a green texture map from a game character?

Well, I had the same question for the same reason and I finally worked it out. Apparently it's a Unity thing. What you're looking at is an RGBA texture map. G has ambient occlusion, R has metallic, B has something they call a "Detail Mask" but I didn't immediately get the purpose, and A has has the "smoothness" mask which is an inverse of roughness in the form of 1-sqrt(roughness). Here is more than you probably want to know: https://raytracing-docs.nvidia.com/mdl/api/html/mi_neuray_example_distilling_unity.html


The short version is that Blender can output nearly any frame rate and video format you would likely want.  The long answer follows.
There are 3 parts to the answer for your question.

As https://blender.stackexchange.com/users/66870/emir mentioned, this question answers you about what size the image frame can be:  What is Blender's maximum render size?
The Frame rate is set in the property editor's Scene dimension's menu:

All of the 'industry standard' frame rates are supported:

and you can use the bottom item in the menu to set a custom frame rate.

The output format is selected in the properties editor Scene Output Menu:

and you can select from a wide range of still formats or video container formats:

The usual approach is to render to a series of still images, most often png although openEXR is becoming popular and then to use the visual sequence editor to assemble the images.  Once that's done, you render the output one more time, switching to one of the 3 movie formats.  Each movie format also has options for output codecs.  For instance if I select 'FFmpeg Video', new options appear:

How well Blender will suit your editing needs depends a great deal on how much memory you have on your computer, of course.


I think it's realy important that you put the matalicness all the way up. this would mean that the matrial is treated like a metal witch makes it way more realistic. after that you can just use the map you are already using as a bump map. and than you can play with your roughness and specularity and see what you like.


How can I create easily editable stylized hairs and fur?

Note: at the end of this post I am giving you a script that does all of that automatically

Stylized hair creation

The curves allow to create strands of hairs that you can quickly place and shape. You will need three things, the hair strand direction, a taper curve for the width and a taper for the shape to extrude.

Hair strand

Add a Curve > Bezier, in edit mode move it of 1 unit to the right so the root of the hair strand is on the origin. In the side view from the right (numpad 3) rotate the hairs in -90 degrees in edit mode.

Scale the curve in object mode to 0.15, then apply the scale.

Rotate the tip at 90 degrees so it faces downward and move it down.

For the resolution Preview U to 64. You can name it "hair_strand" so you can select them more easily in the outliner.

Taper

The taper determine how wide the hair strand is. The space between the origin and the curve allow to adjust it. Add a curve, from the top view rotate the base at 35 degrees and move it up by 0.04 units. Rotate the tip by 25 degrees

in top view rotate the tip at 15 degrees. You can scale it down to 0.15, do not apply the scale this time. Name it "hair_taper".

Bevel

The bevel is the shape that is extruded along the curve. To create it add a Curve > Circle change the Handle Type to Vector with the V shortcut. Scale it to 0.1 in edit mode then in Y by 0.35. Then set the vector type to automatic.
Name it "hair_bevel".

Here is the result (base mesh: http://www.dota2.com/workshop/requirements/lina ):

Place the hair strand and use Ctrl + T to tilt it.

The script (Blender 2.8+):

import bpy

# Hair Strand

bpy.ops.curve.primitive_bezier_curve_add(radius=1, view_align=False, enter_editmode=False, location=(0, 0, 0))

bpy.ops.object.origin_set(type='ORIGIN_CURSOR')
bpy.ops.object.origin_set(type='GEOMETRY_ORIGIN')

bpy.ops.object.mode_set(mode = 'EDIT')

bpy.ops.transform.translate(value=(1, 0, 0), constraint_axis=(True, False, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.transform.rotate(value=-1.5708, axis=(-1, -2.22045e-16, -4.93038e-32), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.ops.object.mode_set(mode = 'OBJECT')

bpy.ops.transform.resize(value=(0.15, 0.15, 0.15), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.object.transform_apply(location=False, rotation=False, scale=True)

bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.curve.de_select_first()
bpy.ops.transform.rotate(value=1.5708, axis=(-0, 1, 1.34359e-07), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.ops.transform.translate(value=(-0.25, 0, -0.2), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.object.mode_set(mode = 'OBJECT')

bpy.context.object.data.resolution_u = 64

bpy.context.object.name = "HairStrand"

# Hair Taper

bpy.ops.curve.primitive_bezier_curve_add(radius=1, view_align=False, enter_editmode=False, location=(0, 0, 0))
bpy.ops.transform.resize(value=(0.15, 0.15, 0.15), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.transform.translate(value=(0, -0.8, 0), constraint_axis=(False, True, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.ops.object.mode_set(mode = 'EDIT')

bpy.ops.curve.de_select_last()
bpy.ops.transform.rotate(value=0.610865, axis=(-0, -0, -1), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.ops.transform.translate(value=(0, 0.04, 0), constraint_axis=(False, True, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.curve.de_select_last()

bpy.ops.curve.de_select_first()
bpy.ops.transform.rotate(value=0.436332, axis=(-0, -0, -1), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.ops.object.mode_set(mode = 'OBJECT')
bpy.context.object.name = "HairTaper"

# Hair Bevel

bpy.ops.curve.primitive_bezier_circle_add(radius=1, view_align=False, enter_editmode=False, location=(0, 0, 0))

bpy.ops.object.mode_set(mode = 'EDIT')
bpy.ops.curve.handle_type_set(type='VECTOR')
bpy.ops.transform.resize(value=(0.1, 0.1, 0.1), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.transform.resize(value=(1, 0.35, 1), constraint_axis=(False, True, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)
bpy.ops.curve.handle_type_set(type='AUTOMATIC')
bpy.ops.object.mode_set(mode = 'OBJECT')

bpy.ops.transform.translate(value=(0, -1, 0), constraint_axis=(False, True, False), constraint_orientation='GLOBAL', mirror=False, proportional='DISABLED', proportional_edit_falloff='SMOOTH', proportional_size=1)

bpy.context.object.name = "HairBevel"

# Import curves

bpy.ops.object.select_all(action = 'DESELECT')
bpy.ops.object.select_pattern(pattern="HairStrand")
bpy.context.view_layer.objects.active  = bpy.data.objects["HairStrand"]

bpy.context.object.data.taper_object = bpy.data.objects["HairTaper"]
bpy.context.object.data.bevel_object = bpy.data.objects["HairBevel"]

bpy.ops.object.mode_set(mode = 'EDIT')


That would depend on what you intended its use for.

If for the sake of mock up design then either option is fine. I'd recommend trying whichever you're less comfortable with if only to test your ability with blender.

If you intend to break or damage the sword at some later point, then keeping it seperate is more practical.

IF seperate - You should adjust the contours of the grip so that they match the contours of the gaurd (utilizing Edge/Vertex Selection)

(You should add the tang too(B) if that is the case)


The 'width outline' option found in themes adjusts the width of the outline drawn around selected objects. There is no option to adjust the width of lines when drawing objects in the 3dview. There is a pixel mode setting that will allow lines in the 3dview (and all other interface items) to be drawn at double width, this is intended for the Apple's retina displays. You may also want to adjust the DPI setting to control the interface outside the 3dview.

The other option involves altering blenders source code. I don't think there is one location to adjust the line size, you may have to adjust the drawing of each object type, you could setup a preference that is then used in each place. The code you would need to change should be contained within editors/space_view3d/.


My guess is that you pressed / to go to "local object view". Just press it again to show all the other objects.


Colors in object mode are different to render mode

The problem am seeing there is SPECULAR problem.

The solution will be to change the SPECULAR COLOR to something dark,

or

Change the SPECULAR INTENSITY from 0.5 to 0 in the material panel


I'm also having trouble to this problem and start finding ways to fix it on internet or by myself here what I found hope this help


How do I make grass match the base terrain?

Copy the shader you used for your terrain onto your grass, but use "object" texture mode instead
Final result:

Terrain shader:

Grass shader:

While you could choose to apply the terrain texture directly, I chose to multiply the original grass texture with the terrain texture. This way, the grass retained it's colour but would be lighter where the terrain is lighter and darker where the terrain is darker, as seen in the image above.
The best way to experiment is to make a plane and use your grass shader on the plane to check it matches up with your terrain. I had to tweak the texture coordinates quite a bit.
Before:

After:


We can avoid the separation of the two objects after hitting the Separate by loose parts in these steps:

Merge the two objects with Ctrl + J
Go to Edit Mode and select 2 vertices, one belongs to the first object and the second belongs to the second object
Merge the vertices with Alt + M


Why can't I enable the 'new' button of action?

The operator does not poll.

The issue arises since the operator bpy.ops.action.new does not poll in the toolbar header.

Similarly in python console

>>> bpy.ops.action.new.poll()
False

Closer inspection of the action editor UI code, will see that the template object is the dope sheet space st = context.space_data not the animation data of the context object. My guess is the operator uses space to poll.

Code wise will confess to never using this operator; to add a new action would instead

action = bpy.data.actions.new(name)

and assign it to the animation data of the object I'm animating.

Enough waffle. Recommend here creating an operator bpy.ops.foo.bar  that makes the new action and assigns it where you wish, it appears from Q this is on the active object  Call the following from your operators execute method.

def main(context):
    ob = context.object
    name = f"{ob.name}Action"
    action = bpy.data.actions.new(name)
    # choose whether to set as active action or whatever
    ob.animation_data_create()
    ob.animation_data.action = action

Have it poll if there is a context object

Then use it instead for new

layout.template_ID(ob.animation_data, "action", new="foo.bar")

Side Note.

The draw method is only meant for drawing to the UI. If you put an __init__ in a panel class will see they are initialized constantly.

Trying to alter objects in any way during a draw will result in an error.  This applies to

bpy.context.object.animation_data_create()

in question code.


to be honest your files are quite a mess :) it seems you didn't exactly understand UV texturing in Blender Render: it happens at first. Also keep in mind that this (older) engine works completely different from Cycles (newest) and their materials are not the same, should you wish to switch to that engine later.

Here I try to explain what I found in your files: you have 2 different materials (with solid grey/brown colors) that you probably wish to use for texturing different part of your object. Indeed you assigned each of those materials to different faces of your object.

The brown material has no texture, but it's been assigned to the table legs geometry:

The grey material has a texture, and it's been assigned to the table top geometry:

As it is, here it how it looks when viewed through different viewport modes:

Texture

Material

Rendered

In the above results, the pink color means that in those parts a texture was expected, but couldn't be found. Of course you didn't upload (or pack) your image with the example files, and if I replace it with an example I created, here's what happens:

Now it seems that Texturing mode can see the right (red) color of my exampel texture, but look at what its UV map sees in the upper left corner:

Nothing!

Here is how you can correct it: I added my texture to the "legs" material, and set it to UV mapping, and you can see that the mapping works.

Then I moved to the "top" material, and corrected its mapping to UV (it was "object"):

And also looks good in render mode:

Ok but what about the Texturing mode, which still can't see the texture for the "legs" part? Here is what I tried: I went to wireframe mode, deselected all, and then selected only "legs" geometry (I used the help from the brown material, pressing the "select" button just below it)

And you can see it selects the right UV vertices, but the image assigned to that UV map is wrong => TBLTXT, so I replaced it selecting my image:

and now it looks correct even in the Textured mode:

That's the end, and I hope it's a bit more clear to you, now. You could also use a single material, assign the UV to it (image + map) and map different part of the image to different part of the geometry, but that's maybe another test you can do!


Can metallic car paint be exported in GLTF?

(Answer updated 2020-05-13)

You're looking for a feature called clear coat.  There are three relevant inputs on the Principled BSDF shader node, called "Clearcoat," "Clearcoat Roughness," and "Clearcoat Normal."

These three settings will export to glTF files beginning with Blender version 2.83 (still in Beta as I write this).  It will import from glTF files beginning in Blender 2.90 (currently in Alpha).

Clear coat is not part of the glTF 2.0 core specification, but it was added in a glTF extension called KHR_materials_clearcoat.  Not all glTF viewers can display clear coat yet, but some of the major ones have released stable versions that can, including ThreeJS, BabylonJS, and Filament.  The gltf-test project has a test of clear coat with a summary of some frameworks that support it.


Replace object with another on collision

version – Boolean
Some kind of illusion can be done with boolean operation. You can start with Geometry Nodes to create grass object ...

... but final "cut" is boolean operation (grass differenced with Circle object displaced by Radial Texture), that results in glitchy anim (doesn't matter if I use boolean operation inside GN or as modifier).

What solved this is Solidify modifier for grass object, but in cost of viewport playback (1 fps).

Falling parts are particles emitted from Blade object ...

version – Particles
Another illusion can be done with two exactly the same overlapping particle systems.
One with tall grass and hidden blade on plane surface level to kill particles ...

... in combination with second one identical Plane. The only difference is Render as Object with shorted grass model.

This gives you an illusion

Falling cute grass can be faked in the same way like in the first version.

Notes:

Particles works here only because I disabled Gravity
I wanted to use Hair system, but it didnt react on collision object Kill Particles.
Another thing that doesn't work is to use blend texture controlled by another object (that is known issue)


You may have run out of memory. First of all, lower render resolution. If it's not possible, you may need to make it a little less realistic.


It's not working in world space because the target of your copy rotation constraint has a different world space orientation that the foot that is copying that rotation.  Your IK bone is pointed at the ceiling, while your foot bone is pointed at the toe.

If you want to use world space copy rotation, give each bone the exact same orientation.  The easiest way to do this is to make your IK bone a duplicate of the foot bone (but with the parent cleared of course.)


Blender 2.8 Clothing collision with other object overlapping

Found the answer in this topic: How to prevent a cloth from entering another mesh?

Lowered the collision distance in both objects. Edit: And increased as much as needed the "impulse clamping" parameter.


How would you animate a particle system to start dispersed, converge to fill a mesh, then explode?

That is a job for keyed particles, you will most likely want to watch some tutorial videos explaining this in more detail.

Start by creating multiple particle systems, one for the starting position with the particles dispersed, a second one filling the shape that you want, then a third exploding them outwards. Then you setup another with physics set to keyed, in the keys list you add an entry for each system you have setup previously in the order you want them run.

When played the particles will move from position to position of each particle system.

Here is a quick example file that may help.


Why does inserting a new keyframe effect previous keyframes?

I am guessing, but here's one problem. Have you parented the objects properly so there are object origins or, ideally, empties where the rotations take place? Because I guess you haven't just rotated stuff, you have also moved it even though you didn't mean to.

Blender doesn't remember around what you have rotated objects. Sometimes it rotates around the cursor, sometimes around a common selection center. For key frames, that is irrelevant. Key frames only care about the object origin mostly. When you rotate more than one object, it's almost always also movement.

If you don't use armatures, put empties where your box is supposed to fold and create a hierarchy of parents and children. That way you can rotate the inner part around the empty and all other parts will follow, even if they're not animated.

An example:

The sides of this unfolded box are 6 separate objects, similar to your setup. I just used a lot of empties as well.

Boss is the main empty. If I move that, all others follow.
e1 - e4 are all parented to boss and e5 is parented to e4. If e4 is rotated, e5 behaves as if glued to it.

That's also the reason why my top flap does a 180° turn. I made e4 turn 90° and e5 turn 90° as well and it adds up.

The empties may be invisible, but they're handy pivot points and all the faces are parented to the empties, so they move with them. That's the result when animated:

You could achieve the same with bones. Then you could model your box out of a single mesh and deform it by posing the bones. But empties are fine, too.


Soft Body Object gets sucked towards collision object

The problem is with the collision bounds - where the soft-body collision 'Inner' setting was too high. This can result in the 'inner collision bound' being outside the mesh, resulting it it effectively 'dragging' soft body vertices into the mesh, from the opposite side. Generally, you should ensure that 'Inner' is set to no more than half the minimum thickness of the mesh.

To explain this a little, the Collision settings include an 'Inner' and 'Outer' setting. For any soft body vertex in the vicinity of that surface, Blender considers whether it is close enough to the 'outside' of that face (ie, within the 'Outer' distance to the surface) and, if so, it will repel that vertex. The same is true with the 'Inner' surface, where if a vertex is close to the inner side of the surface within the 'Inner' distance then it is considered 'within' that surface and repelled 'out'. It is generally beneficial to have these Inner and Outer bands as large as is practical so as to ensure fast moving soft body vertices are 'caught' and bounce off that surface.

When the 'Inner' is set close to the overall thickness of the mesh you can get a situation where if a vertex passes slightly below the surface, instead of being gently repelled (due to being slightly below the surface) it is actually pulled into the mesh as it is also within the opposite side of the mesh's inner collision bounds. As it is effectively further below the opposite side than it is below the 'nearer' side of the mesh, the opposite face has more of an effect and overcomes the 'solidity' of the mesh and pulls that vertex through. By keeping the 'Inner' bound below half the width of any section of the mesh you can ensure those 'inner' regions never overlap and avoid that problem.

In your case, however, the Inner is far greater than the thickness of your mesh - it is set to 0.2 (20cm) which means for the thin sections (eg, legs) the collision bounds extend from the opposite faces far outside the mesh - it is this which is 'grabbing' your soft body blanket and drawing it towards the dog.

The solution is to simply reduce the Inner collision setting - in this case I reduced it to 0.002 (2mm) and produced the following result :

Note, to achieve this I needed to make a small number of changes to your Blend file - mostly due to the very high number of vertices of your meshes (for soft body simulations, the number of vertices significantly affects the simultion complexity). However, some simple changes drastically reduced the vertex count, vastly speeding up to simulation - I'll share those changes here.

Firstly, for simulations you should Apply Scale to your simulated meshes - select the blanket, press Ctrl+A and select 'Scale'.

Secondly, the geometry of the blanket includes a great many unnecessary faces around the seams. You could re-model the blanket with less faces around the edges, but I got reasonable results by selecting all vertices in Edit mode and running Remove Doubles with a setting of 0.01 (must have Applied Scale for this first - otherwise you need a much smaller value as your existing scale is quite small). This removed the unnecessary goemetry without affecting the overall shape of the mesh. Note that the soft body simulation works best with evenly spaced vertices anyway - so this step won't hurt the simulation.

Finally, for each 'collision' between the soft body and your mesh, Blender needs to consider each face and how it affects that vertex. The more faces you have in your mesh, the slower the simulation will run. If your example file, this was particularly bad due to each point close to the mesh being within the 'inner' collision zone of a great many faces - which is why your simulation took a very long time to simulate only 4 frames. To address this I repeated the Remove Doubles step on your dog mesh - with a threshold of 0.02. Note that this will lose some of your modelling - but for my simulation to produce the above animation that wasn't a concern. You could create a duplicate of your mesh and reduce the vertex count on the copy and use that copy for collision purposes only, using the 'full' mesh for the final render - if you don't want to lose detail from your model (so the soft body simulation collides with the simplified mesh - much more efficient).

I increased the Soft body Friction to damp down any motion (since there’s no gravity - could ‘pin’ the soft body in place instead), 'freed' the bake, moved the dog closer to the mat, and re-ran the simulation.


How do I get flat texture projection on a object without distortion?

Use the Texture Coordinates of your Camera

Add a texture coordinate node and choose the camera output. If all coordinates had the same depth values, then the texture won't be distorted. You can simply reduce the length of the coordinates so that their z value equals 1 by dividing the coordinate by their z value.
Use a Vector Math node for the division and you have scale and ratio invariant view coordinates.

You will notice, that the texture still changes when altering its scale. This is because the Z coordinate is 1 and it's beeing scaled. If you don't want that, then multiply the Z coordinate with 0 with a vector math multiplication node (set X and Y to 1 though, because we don't want to change them).

The setups above will still zoom in and zoom out. They don't change when the camera is moved, but change when the cameras focal length decrease or increases.
However, since we have the relation of the camera coordinates and the window coordinates we can counteract this by multiplying the coordinates with the quotion of a single dimension of window / camera.
The following node setup will produce axis-equal window coordinates independently of camera position, rotation, or focal length.

It works perfectly in cycles, but causes some artifacts in EEVEE in the center due to zero division.


From version 2.92 on, the scaling problem is resolved. So, I suggest that you upgrade your version. If you want to do it manually, you have to add a transform strip to the .3gp clip and set the scale yourself. You can find the original resolution of the clip in the properties panel under the section Source.
So, if your project resolution is 1920 x 1080 and your .3gp clip is 360 x 740, then your scale Y should be 1080 / 740 = 1.46. This will make the smartphone clip as tall as the project viewport. Of course, you should also scale the Y axis with the same amount (360 x 1.46 = 526 px) to avoid distortion (what you'll have automatically in the previous version), leaving a black bar at each side of the clip.


wouldn't a simple script work for you, something like this:

import bpy
obj = bpy.context.object
verts = obj.data.vertices
for v in verts:
    x,y,z = v.co[:]
    v.co = (x+0.1*y*y, y-0.1*x*z, z+0.1*z*x)


transitions between video strips in VSE not working... am I doing something wrong?

At the bottom of the preview window you can select the 'channel' to view. At the moment you have "channel 1" selected. The effect is on "channel 2" so Blender is not showing it to you.

This is called ch solo'ing, that is: make a strip play in solo (by itself) so you can see it without other effects.

To fix it simply change the channel selection to 0 (zero). This will force Blender to view all channels that have anything on them.


Incompatible operator return type in simple empty adding operator

OK, I realized that I made a typo/mistake. In the MarkerAdd operator, in the function execute I've put

def execute(self, context):
    (....)
    return '{FINISHED}'

which is a string, while it should be a Set:

def execute(self, context):
    (....)
    return {'FINISHED'}

Notice apostrophes. That simple mistake caused me to get lost in and I waste hours trying to understand what's wrong. I hope somebody could avoid similar mistake.


Make a custom Slider to translate a object

You can use custom properties bpy.props.

But I don't see any benefit here.

Simply parent your plane to an empty object. Use the empty to transform the plane and the z-location of the plane to translate the plane along its normal.


Reloading scripts from a bootstrap script

I found this in the source code.

https://gitorious.org/blenderprojects/blender/commit/49c90bd

static int script_reload_exec(bContext *C, wmOperator *op)
{
#ifndef DISABLE_PYTHON
    BPY_eval_string(C, "__import__('bpy').utils.load_scripts(reload_scripts=True)");

    return OPERATOR_FINISHED;
#endif
    return OPERATOR_CANCELLED;
}

So I call this in python and it works.

bpy.utils.load_scripts(reload_scripts=True)


how to make lines of mask/image thicker using material nodes in blender

Here's a quick and dirty way to do it, that I think you can get away with based on the fact your image is black and white, and is relatively simple. The graph looks like this:

The idea is simple - make 5 separate "instances" of your image, offset 4 of them slightly (one in each direction), and add (or multiply in this case) them together. For the sample image that I chose, I offset by both .002 and -.002 for each of the X and Y axes, and multiplied them together (to copy the darks) with the original image. As you can see from the image below (which represents the original image), that the lines are much thinner.

As a side note, the "clamp" checkboxes are optional - I just often use them as a matter of habit to keep things in range and so I know there's no wacky HDR stuff going on behind the scenes.


How to fix non-uniform shading after making object from curve by screw modifier?

about the non uniform shading in your pictures, it could also be that your starting curve was not properly aligned /centered on the screw axis, so the screw has repeated a tilt that was in you curve, hence the shading.

I roughly created this in a similar way, and I get no fuzzy shading:

without applying the modifier, you can convert this to 3d mesh using ALTC (the modifier will be removed, the effect is just like if it was applied) - I had to recalc the normals, after, anyway.

[edit] the "peak" you see is because I fastly drew a curve in this shape:

anyway another way is draw the bezier, convert it to mesh, and then screw - using "calc order" in the modifier seems to give better normals, to me.

anyway even with a better "curve" with straight angles like this

i get no "peaks" but the weird shading comes back. It seems due to the normals in that area

one way to fix this is to get less straiht angles there, either using a somewhat smoothed starting curve (as my first one) or after applying the modifier, adding some loops, on both sides:

in edit mode
CRTLR2

before applying, scale on X

then on the circle
CRTL R

before applying, scale a bit toward the center

and now it seems much better

[edit2]
after seeing you video, I got why is different: since your starting curve is closed, screw modifier gives weird shading con the "front circle" face. Again, adding two loops near the inner and outer circle edges gives a much better look.

here the result, flat and smooth shaded:


Move object using coordinates from other objects

you might want to have a look at this addon. It lets you do all kinds of things that are usually very simple in more CAD based platforms
https://github.com/s-leger/blender_cad_transforms


I set my selected object's rotation_mode to ZYXand entered the values as

    selected_object.rotation_mode = 'ZYX'
    selected_object.rotation_euler[0] = rotX * -1
    selected_object.rotation_euler[1] = rotY * -1
    selected_object.rotation_euler[2] = rotZ * -1

This rotated the object into the correct position.

Thanks Robert for the link :)


How do you resurface these objects into one object?

If this is the effect you're looking to achieve

the way I managed it using the blend file you uploaded to dropbox was:

1) [if not already activated,] activate the Mesh:LoopTools addon by means of User Preferences > Addons > Mesh:LoopTools;

2) delete the outer edges joining the two torii in your blend file;

3) Select the each of the edge loops you did on the two torii by deselecting all vertices A key, followed by selecting the same edge loop you had selected on one torus, holding the shift key and selecting the same edge loop you had on the other torus; and

4) In the Edges menu (CTRLE key) choosing the "Bridge Edge Loops" option.

Caveats

As the screenshot shows, I performed these steps in 2.71. My memory on this is just a bit hazy, but it seems to me that up until some version of Blender (2.6?) the Mesh:LoopTools Addon may not have been included in the distribution, and you may need to find it and install it from the Blender Addons repository.

Your two torii seem to have the same number of segments; if the two torii do not have the same number of segments the results may not be shown as here, and you may need to adjust the results differently.

In order for this method to work, the two meshes you want to join need to be part of the same object. If you add the second torus to the first as a different object, the two torii need to be combined into the same object as in the method set out in the other question you cited, and then the expanded object manipulated in edit mode.


Why do I get this unexpected syntax error on the Python console?

This behavior is intended and is how Python knows you intend to terminate a loop. You have to end the for block, by pressing Enter on an empty line, before writing anything outside it.

Oppose:

>>> f = []
>>> for p in bpy.context.scene.objects['Torus'].data.polygons:
...     f.append(p.index)
... print(f) #Notice how this line starts with an ellipsis

With:

>>> f = []
>>> for p in bpy.context.scene.objects['Torus'].data.polygons:
...     f.append(p.index) #Hit enter _twice_ after this line
...
>>> print(f) #Notice how this line starts with three greater than symbols

Note that this isn't specific to Blender, the same behavior can be found in Python's default console - just by running "python" from the command line.


Inserting random loop on the mesh to change topology

You can't change the topology of the model using the edge loop tool alone as CTRL R uses the existing topology of your model. Instead try using the knife tool to manually create your own topology.

Documentation for this can be found here.

https://www.blender.org/manual/modeling/meshes/editing/subdividing/knife_subdivide.html

Make sure that when you use the knives tool you correct your topology as you are going as this can create ngons in areas that can be troublesome.


Parenting disabled collision with child objects

When you parent an object to another, it inherits all transformations (translation, rotation, scaling) from the parent. Therefore the physics has no effect on that object. The physics engine treats children like static objects regardless if you set it to dynamic, rigid body or soft body. This saves a lot of processing time.

Another performance saver is that it is assumed that statics will not collide with other objects (as they are static and do not move). Therefore the Physics engine does not measure collisions on statics. The other object (non-static) will detect the collision.

A third speed improvement is that only 'Actor' objects are sensed. Dynamic and rigid body objects are actors by default (as long as they are not parented -> which makes them static).

Solution

If you need an object that senses collisions but does not get effected by physics you can use the Physics type Sensor. You can even parent it to another object. Just make sure it is larger than the parent. Otherwise it can't detect anything.


How to separate meshes that are converged into a single object

Let me propose a different approach.
I believe the easiest solution is to recreate it from scratch.

Base bricks with two Array modifiers to make a wall
Apply both modifiers.
Select all > Separate by loose parts


I cannot quite replicate a true wrap but it might be good enough at a distance.
This material uses a Radial Texture to twist some noise textures around a coordinate.

Note that there is a hard edge where the UV twisting stops. I guess you could make a duplicate and offset it by 45 degrees?


I moved two vertices on the cube: once side is bent inwards and the other not

To add to the other answer, it is possible to fix errors in the automatic triangulation of meshes.  Faces can be triangulated by pressing Ctrl+T and converted to quads by pressing Alt+J.

When you force triangulation you often find Blender evens out any inconsistencies, but you can manually rotate edges using the Edge menu if necessary.  When done convert back to quads and your mesh should look a lot a more even.


I have to double every command? (V 2.76)

The loop cut example sounds like normal behavior, so I don't know what you're experiencing. If you could upload a video demonstrating the problem, maybe that could help us diagnose.

Until then, try refreshing blender with factory defaults. You can do this by removing your user prefs. By default, these are stored in:

Windows

  C:\Users\%USER%\AppData\Roaming\Blender Foundation\Blender\%VERSION%\config\

Linux

  ~/.config/blender/%VERSION%/config/

Remove or rename config folder and blender should start up with factory defaults.

A simpler way is to start blender from the terminal (CMD) with the --factory-startup flag to bypass any and all config files (there are multiple locations blender searches for user prefs).

Windows blender --factory-startup

Linux ./blender --factory-startup


Adding the answer for completeness!

From the above comments, I compared the "Sat" camera object with a "good camera". The focal length of sat was set at 13 meters vs 3.8mm in the default camera. I think the largest focal length lens in real life is way smaller, so maybe that's why it got all screwy. Anyway, if you change the focal lens size to 3.8mm or some other realistic size, you should be good! You will also need to move the camera closer to the object.


In your active brush a completely black texture is enabled, so that every stroke has 0 effect. Just disable the texture in brush options.


Basically you have set it so transformations only affect the origin of the object, to disable this setting,
go to Options then disable Origins

There is also a very similar looking thing that one can accidentally enable under Gizmos > Object Gizmos


There are a couple of scripts in one rig = bpy.context.active_object in the other rig = bpy.context.active_object.data.materials[0]  I'm assuming you are on the first as the second (materials one) creates the animation_data.

The objects are taken from the context.selected_objects collection, by  name, then sorted, then iterated and made active.

However if you have an object selected that doesn't have any animation_data, ie has no action with keyframes nor a driver, then the script will fail because obj.animation_data is None and as the error says

  AttributeError: 'NoneType' object has no attribute 'nla_tracks'

One fix would be to replace

objs = bpy.context.selected_objects

with

objs = [o for o in bpy.context.selected_object if o.animation_data]

or go straight to names

names = [o.name for o in bpy.context.selected_objects
            if o.animation_data]

to make sure each object, from selected_objects collection, has animation data.


Rendering with compositor only renders single image

The error is this you are setting the offset to 116, but the start frame is set to 1, so the 14 frames you want to render would be rendered in frames 1 to 14. Otherwise you are getting a repeat of the last frame.

On a side note, it is quite unfortunate that you chose to use png as image format, by doing so you've lost a lot of the information that would help you denoise the image. In the future use EXR mulilayer and save the denoise passes.


How to combine multiple hemispheres into a single smooth mesh properly?

did you try "Auto Smooth" feature:

I tried to reproduce your problem, here is the result without Auto-smooth:

And with it, set with a 30deg angle:

I tried to play around with individual Edge sharpening without success.


Any way to automatically mark sharps where edges of UV maps are?

Blender can mark the edges for you :).

Select your whole UV map an go UV > Seams From Islands
Select one of the new seams and go Select Similar > Seams
Go Edge > Mark Sharp


How to place all selected vertices is same position in UV map?

Select them and scale them to 0.

Select the two vertices, then press s, then 0.

Because they are just points in space, this will not effect the verts, but it will put them in the same place, because the vector "connecting" them will be scaled to zero.

There is a better method however.

Select an island.
Set "snapping" mode to vertices.
Grab (g) and hold ctrl to snap.
Move all islands to the same location.

Tip; UV select mode to "islands".

You can do something similar to multiple vertices at once by:

Moving them to relatively the same position. (l and g).
Select all (a).
Open the specials menu (w).
Choose "Remove Doubles UV"

If you have LOTS of islands!
As a final workaround method, if you have LOTS of islands, you can use this scaling hack. It is not technically a "good" method, but it works. The goal of this method is to scale everything down to one point, then blow it back up. To be able to blow it back up, we need to leave some geometric data, so we can't actually scale to 0.

Select all (a).
Select "Median Point" from the Rotation/Scaling Pivot menu.
Scale to a very small number (s, 0.0001, Enter).
Select "Individual Origins" from the Rotation/Scaling Pivot menu.
Scale the islands back to their original size (s, 10000, Enter).

The islands should now all have approximately the same origin. You can move them to your desired location.


Cell Fracture adding unintentional items to object

It's because your "wine glass" has no volume in some parts. The brim of the glass is infinitely thin. How can something like that be fractured?

Try adding some thickness to your model first before doing your spin extrusion (if that's how you made this).


With the two bones selected like in the picture in your question, simply press AltM.
That will merge the two bones and take care of the bone relations.

Or You could achieve the same thing in more steps by deleting the two bones, and "filling" a bone between the two ends that are left. Then going and editing the Bone Parent and checking Connected for the top bone.


bpy.ops.wm.addon_expand(module="module_name") works in console, but not in add-on

Whether an addon is displayed expanded or not in the User Preferences is stored in the bl_info dictionary, in the property called show_expanded.

addon_utils manages a cache of addons. It uses the global addons_fake_modules. It can be used to determine and change the expand state:

import bpy
import addon_utils

# Get a module reference by name
mod = addon_utils.addons_fake_modules.get("space_view3d_3d_navigation")

# If found, expand it
if mod is not None:
    mod.bl_info['show_expanded'] = True

    # Find User Preferences area and redraw it
    for window in bpy.context.window_manager.windows:
        for area in window.screen.areas:
            if area.type == 'USER_PREFERENCES':
                area.tag_redraw()

Note that running this code as part of an addon is tricky, see e.g.:

http://wiki.blender.org/index.php/Extensions:2.6/Py/API_Changes#Restricted_Context
https://blender.stackexchange.com/a/18134/1363


Cycles toon shading and regular shading in same image

Combining multiple toon shaders with different size results in a banding effect for sharp light sources. However it will still look smoother when more indirect lighting occurs.


You have Shader or material nodes selected, what you want are Compositing nodes which is the button directly to the right of that.

If you want to see the output of your render in the compositor, you need a Viewer node connected to the render layer you are working with. So switch to compositing nodes, add a viewer node, tick backdrop and you should see your render.


Filmic Log: How to render a texture to appear identical to the input image?

Images look correct only if they are displayed on the color space that they were encoded to use, or if the color transform to the display deals with the conversion to a different display or color space.
If your image is not log encoded you should never set it to use log as color space. I presume the image is encoded as sRGB sot that is the only color space you can set it as. The issue is that log and filmic use a much larger dynamic range, while the jpeg you are importing is limited to display referred values. Start by reading the post on this site on filmic
Render with a wider dynamic range in cycles to produce photorealistic looking images
and
How to mix a jpeg background image with a 3D scene generated using Filmic Blender?
By reading that you will realize that there is no perfect way to mix apples and oranges, other than using images that are using scene referred values (log encoded or linear EXRs). Images encoded as sRGB are impossible to reverse to linear scene referred values, they can only be linearized to display referred linear (form 0 to 1).
The problem lies in how display referred images are encoded, besides reversing the gamma curve (trivial issue), the way the highlights and shadows are encoded is already non-linear, as it is something that each individual camera does differentrly, and therefore not reversible to linear values accurately. You can play with curves and even with the ASC-CDL node to try to modify the values, but know that at that point is all hokus-pokus and unscientific as it gets, plus you will quickly run into issues where banding and other quantization errors will appear, particularly in 8bit images. Moreover, jpeg is a terrible format to begin with, and will also break once you start distorting the values that make such compression scheme work, showing macroblocks and fuzzy edges.
Display referred image created on a camera is already taking into consideration the fact that we perceive light in a non linear way, as we see better into the shadows than in the highlights, so those images are created to emulate that and therefore need to skew the way values for shadows and highlights are assigned. There are more bits used for the shadows. If you try to linearize the information you will find that at lot of the information on the highlights is just not there, and any tool will have a hard time inventing what is not there.


Is there a way to hide all particles in a scene?

Via script it would looks like this:

import bpy
for object in bpy.data.objects:
    if bpy.context.scene in object.users_scene:
        try:
            for modifier in object.modifiers:
                if modifier.type == 'PARTICLE_SYSTEM':
                    modifier.show_viewport = False
        except:
            pass

And to redisplay all particle systems in the scene:

import bpy
for object in bpy.data.objects:
    if bpy.context.scene in object.users_scene:
        try:
            for modifier in object.modifiers:
                if modifier.type == 'PARTICLE_SYSTEM':
                    modifier.show_viewport = True
        except:
            pass


Start & End Cap not working in blender, any ideas?

The array start and end caps are placed using the same offset distance as each repetition.

The geometries position relative to the object origin plays a part in the positioning. Using a plane with each repetition spaced at 1.1 we can see that an end cap with an origin in the centre will match up with the array while a start cap with the mesh starting at the object centre will be disconnected from the array. Also note that if the original objects mesh is not centred around the origin it can also move the extremes of the final mesh which will require adjustments for the end caps to match up.


The reason you cannot make a loop cut is because your front faces are n-gons (faces with more than 4 vertices).

You can fix it by using the knife tool (K) to connect the loose vertices and make them into quads.

Once it's done (all faces are quads), you will be able to make a loop cut.


what is the name of the blender feature in which a 2d artwork/image is used as a guide to create a 3D model of the artwork

Background Image. Hit the plus sign to the left of the outline panel, and it's located about 3/4ths of the way down the panel.


Adding a Hook to a Nurbs Path with Python

Avoid edit mode if you can.
Suggest this can be done via API calls with no operators. Have lazilly added the empties with the op, add them as you have other objects if so desired.
Test script adds an empty hook to each end of your poly.  Note have used NURBS as per question title. To have end points set the use_endpoints_u and v properties of the spline.
import bpy
from bpy import context

# Add Path
coords_list = ([[0,0,0], [1,0,0]])
path = bpy.data.curves.new('_path', 'CURVE')
path.dimensions = "3D"
spline = path.splines.new(type='NURBS')
spline.points.add(len(coords_list)-1)
spline.use_endpoint_u = True
spline.use_endpoint_v = True
path_ob = bpy.data.objects.new('_Path', path)
for i, (p, new_co) in enumerate(
        zip(spline.points, coords_list)
        ):
    p.co = (new_co + [1.0]) # (add nurbs weight)
    bpy.ops.object.empty_add(
        location=new_co,
        )
    hm = path_ob.modifiers.new(
        name=f"Hook{i}",
        type='HOOK',
        )
    hm.object = context.object
    hm.vertex_indices_set([i])

context.collection.objects.link(path_ob)


How to individually scale more than one face?

Activate the Pivot Point > Individual Origins option on the horizontal menu bar of your 3D view.

On your screenshot, the Median Point was the Pivot Point option selected, which means that the scale will take the median point between all your selected faces into account. Individual Origins will only take into account the center of each face or group of adjacent faces. And so on, if you select 3D Cursor, it will be the pivot point of your operation...


How do I select strips in the Video Sequence Editor?

you can use some of the same selection tools that are used throughout blender.

Pressing A will select all.

WithByou can do box select and draw a rectangle around the things you want to select.

You can just click-select individual strips or press shift and click to add to the current selection.

Clicking CtrlI will inverse the selection.

CtrlNumpad + and CtrlNumpad - will select more or less.

Also if you look at the menu there are a lot more options:


Texture appears stretched in vertical faces of an object

Question, did you Ctrl-A apply rotation and scale? If your mesh has not been rest to 1, then it could be causing distortion. Also, is the texture distorted ONLY in Material draw, or also in Render draw too?


Is it possible to make a plane out of meta objects?

Plane meta-elements have an X and Y Size you can edit in the Properties editor > Object Data > Active Element:

it looks like this is what you are trying to achieve.


▲ jumps to next keyframe of the active object,
▼ jumps to previous.

They don't change frame by +/- 10. If you wanna do so, use:

Shift▲ +10 frames,
Shift▼ -10 frames.

Shift◀ to jump to start frame,
Shift▶ for end frame.


Since, it is not possible to unwrap a highpoly sculpted mesh (i am thinking about 500k polys) in blender. You are left with few choices.

duplicate your highpoly mesh, add a deciamte modifier, decimate and apply the modifier. Turn your Triangles to Quad and then unwrap it. You can always get Details by baking normals. (Worst idea in my opinon, but fastest).

or

Retopologize your model (best option) , unwrap retopo and bake normals, ao, cavity maps.
(retopo is good too , when you want Hard surface and edges too).

By the way, There is no point in giving highpoly mesh to your friend for texturing, as it wont be usable in game, but render only.


Create one curve object per spline in Animation Nodes?

Animation Nodes have a node called Trim Spline Node which can be used to dynamically trim splines. There are certain complications, however, if one decided to use this node:

Edges are not directed, so you may observe some splines growing outward from a vertex and other splines inward toward a vertex.
There no easy way to determine which edges belong to which vertex, in other words, there is no way to determine the locations of the points of the spline to derive the trim node by.

Thus we are forced to to use a more advanced approach, but no worries, it is just as easy.

First, we loop over edges, get the vertices locations at the indices of the edge indices, sort the vertices in the direction of the animation, I can see that your animation is from the left to right, so we check if the $x$ location of the first vertex is larger than that of the second, if it is, we reverse the list such that the first vertex becomes the one that is closest to the initial location of the animated effector, then we create a spline from those vertices.

Second, we trim the output splines based on the distance between the effector and the initial vertex of the spline, since your animation is along the $x$ axis, the distance is simply the difference between the $x$ locations of the effector and the vertex:

Which results in:

Notice that the trim node shouldn't be used here, because the spline is just a line so a linear combination between both vertices of the line would yield the same effect, but I just wanted to show you how trim node can be used.


How do you make the camera point in the same direction throughout a animation?

Use [Track To] Constraint or perhaps secondly the [Locked Track] Constraint on the Camera.
You can use this constraint as a complement to the camera  moving along a path.
Often you may use a third object to as a target to look at specific locations of another object.  In the building example you could move any non rendered object to focus the track on floors or windows.

These constraints will point the camera at a target which can be moving or stationary.

There are free video tutorials on the settings of these constraints on various websites.  You can also experiment to determine the correct settings for you in a few minutes.


It was as easy as selecting the vertices in the vertex group and pressing P key and selecting Selection from the drop down menu.


Render shows geometry that isn't there. Normals?

The problem is your statement that the render is showing "geometry that isn't there."  It is...see this image?

All of those edges around the circumference of the screw hole are edges, so your polygon for the plate has like 72 edges.  Blender is trying to figure out the normals for a 72-edge polygon, but it's getting confused.  Just because Blender let you add that sphere doesn't mean that it's a good idea.  For fun, try selecting the faces of just the plate, and choose Mesh->Faces->Triangulate Faces.  I bet you'll get a ton of triangles on what you think is a simple flat polygon, like this:

And then with smooth shading turned on, you might get something like this:

That's a perfectly flat plane (with a hole in the middle), but Blender's trying to figure out how to smoothly shade those triangles.

The best solution is to separate the screw from the plate, and make the two into separate models.  See @Dontwalk's solution above for a way to model just the plate part with a nice hole.

In general, there is no good reason to model the screw and the plate as a single mesh.  If you want them to be together, you can group them.  By modeling them together as a single mesh you're making the topology of the plate way more complicated than it has to be.

Hope this is helpful!

As a side note, the screw head is not well-modeled either. It looks like you took a sphere and just cut the slot right across it at the angle you wanted, making some of the quads into triangles and turning the quads into trapezoids.  You could have modeled the slot straight across so that it followed the quads, and then rotated the head, and that would have given you a much cleaner model (of the screw head).


Blender 2.8: Where can I find light energy/intensity in Cycles?

Select lamp, click on "use nodes". There will be "Strength" that you can change according to whatever you like. Which increases or decreases the intensity. Its default value is 100 I guess


As stated my lemon, there are numerous ways and you need to consider the flow of the topology. Nevertheless, here is the most basic method.

Hover over the edges to the left and press ⎈ CtrlR to loop cut. A purple line will appear during this operation, scrolling the mouse wheel controls the amount of added edge loops. I scrolled once. Confirm with  LMB.
 RMB Select the vertices respectively and make a face with F.


sculpting - How to get rid of the bumpy surface?

As far as I know the smooth or flatten brush is the only way to do this. You can change your brush size or strength, or you can set your dyntopo value to a number larger than the level of detail you currently have, use the simplify brush everywhere you need to, and see if smooth and flatten work any better for you with a simpler mesh.


Possible to replay repetitive tasks using Python?

If you pull down the Info header you will find that a fair amount of operations you can perform in Blender are printed there for relatively simple stuff such as adding a lamp or a modifier etc.

This example:

adds a cube
scales it by 2.0
translates on the Z axis by 1.0.
sets the color to red
shows the name
renames the object.

Select the lines (mouse-click, border-select or AKey)
Ctrl+C to copy the selected lines.
Paste into the text editor.
add import bpy at the top of the text block.

After that, if you were to have a look at the api, you could cut out much of the fluff and just use said commands in a script to reuse whenever you need to provided it is simple enough and in the correct context.

For example:

bpy.ops.mesh.primitive_cube_add(
        radius=1.0, view_align=False, enter_editmode=False,
        location=(0.0, 0.0, 0.0), rotation=(0.0, 0.0, 0.0),
        layers=(False, False, False, False, False, False,
                False, False, False, False, False, False,
                False, False, False, False, False, False,
                False, False))

... can be shortened to bpy.ops.mesh.primitive_cube_add() in most situations.

This is as close to a macro like functionality that you can get in Blender and it is linear so any actual repetitive bits will have to be crafted by you, loops etc. It is also worth noting that many of these commands need to be run in a specific context so I would recommend using it as a means of learning the correct calls instead of trying to reuse it directly.

Note

For most operations, there is an accompanying line of code printed. Including changing numeric values, toggles... etc.

Excluded operations are typically not useful to redo, zooming/panning, setting the cursor location... etc.


How can i add texture with a realistic fabric look to my mesh?

There must be a lot of solutions to make a fabric material but here is one that doesn't look too bad:

First find a fabric texture and make it tileable, if it's not already. Convert it to a Normal map and a Specularity map with a software like CrazyBump or else.
Build your node organization as below.
Increase the Scale in he Mapping node so that the texture is repeated.
Mix a Diffuse with a Glossy, use the Specularity as factor, it will make the threads shine a bit.
Plug the Normal map to both the Diffuse and Glossy to give a bit of 3D relief to the whole thing.
Then, as a fabric might shine a bit like velvet, bring a second Mix shader and use a Fresnel.
Now you just need to plug your colored pattern in the yellow socket of the Diffuse.


Problems extruding a circle along circular path

gandalf3's answer is the most likely answer and solution to the problem. Another thing you could try is shrinking the bevelled object with AltS. However, I see no advantages in obtaining a torus from curves that way. Why not just add a Curve > Circle and tweak the settings. To fatten, increase the depth and to get it smoother/rounder, increase the resoulution. Much easier to tweak and less work.


how to use compositer nodes on a render farm?

At GarageFarm.NET we support compositor nodes in Blender. they should work the same way as on your end. If you have multiple layers to render in the scene, then all of them will render and will ve combined as you set it up in the compositor.
If you wish to save different layers from the compositor for later post-production, then you can use the File Output node to export it. All the File Outputls nodes are correctly saved on our end. You can also use multi-layer EXR for your output which will have all your passes.
I encourage you to test our render farm. We offer trial credits so in this way you can check if everything works as you expected without any costs.


How to create solid height field from image?

You can still use the displace modifier for this, but with a vertex group to limit the influence to one face of your object.

Select the top face of a cube/suitable volume.
Create a vertex group in Properties > Object Data > Vertex Groups.
Assign the selection to the vertex group.

Then specify that vertex group in your displacement modifier:


Video editing: weird transparency blending with "Alpha Over"

You're combining rgb values and an alpha, without premultiplying rgb values.

You can use the builtin Alpha Convert node, to do the premultiplication.


The tree's bark is a beveled curve, not a mesh object. You have to convert it first. Select the tree in object mode and hit alt+c then select curve to mesh. After you can unwrap it.


It's because the material isn't exported (except its name and mesh assignment basically). Anyway, as long as you change the rendering engine you have to change the material, interoperability is rare in this context.

Once in Unity, the material might be here among your assets, with the same name as in Blender, but with blank default parameters. You will have to set its settings properly and assign its maps (which might also need to be imported first).


Why can't I change the shading of one of my objects from Wireframe to Solid?

It's a common mistake You probably selected all the faces and hit Delete->Only_Faces.  So only the vertices and edges remained on the object.

To check if faces are missing you can go in edit mode and face select mode.
The faces it would look like this:

No faces will be like this:


motion tracking : How to apply lens distortion value from one clip to another?

The lens distortion values (and all tracking information for that matter) are uniquely associated with the clip that was loaded in the clip editor.

The distortion information can be accessed in the compositor via the Distort>Movie Distortion node. There you can assign distortion undistortion and unsdistortion to different elements. The file that contains the undistortion info can be selected there.

Note that the information from the compositor will not be reflected in the Movie Clip Editor. If you must see the undistorted information on the Movie Clip Editor, then you will have to input those values manually.


I found the solution:

When the spoon is selected as Fluid/Control there are two parameters which must be changed:

Attraction strength: with positive value attracts the fluid and with negative repels it.

Velocity strenght: the influence of the  spoon's velocity with the fluid.

Just try configurations until get what you like.


How do you make the inside color of a cup different from the outside?

You could go to edit mode and select all the faces inside the cup that you want in a different color. Change to vertex mode and make the selected vertices a vertex group. Then add a new material for the cup and assign this material to the vertex group


How can I animate radial symmetric object?

You can use displace modifier or shape key.
method 1:displace modifier

change the value or insert keyframe.

method 2:shape key

select the object and press the add button twice.

go to edit mode select all and move it.

exit edit mode and change the value or insert keyframe.


How can I modify the mesh of a linked character?

Just link in the character rig's group as usual, then append the object. It will be shown read-only in the outliner. To make it editable, select the object through the outliner, then convert both the object itself and its mesh to local instance.

Using Make Proxy for mesh object isn't recommended, because it will lose all modifiers and vertex groups:


Check for user interaction in the workspace

For your special case I would use a mix out of modal operator and the depsgraph_update handler.
The modal operator doesn't run when the other operators run. E.g. move operator.
Then the depsgraph_update handler run, because the user make important changes to the scene. So if one of them runs the user interact with blender.
Some cases that are not caught: moving nodes, moving the frame slider (only found these 2)
For these case you maybe could use an event to check if the mouse was pressed and then released or if a key was pressed which starts the moving.


Material libraries in Blender 2.8 for Eevee

Now, there is BlenderKit included right into Blender core add-ons. It provides free materials from online database through simple drag & drop.

The add-on also allows to upload user models and serve as library.