Making a Laser in Cycles - Straight Beam of Light?

First Solution:

I have a line-laser and a plane-laser node setup.

For the line-laser:

For the plane-laser:

Second Solution:

Now that you have asked and I tried to remember,
I got a solution that is easier to understend.

You can get the plane-laser when using
dot-product instead cross-product.
Then higher strength is required.

Important Edit

Since I answered this, Blender was updated several times, and I had to update my solution also. An important note is that this solution only works with area lights, since the normal is only provided for those. Other light sources are not capable of providing their direction to the node system. I will contact the devs about this, since the normal has no meaning for other lights now, it could contain the direction of the object.

Some artifacts appear near the edge of the area light when using constant strength, therefor a slight adjusment is required. This can also be used with a point light, when the bottom most node is used instead of the geometry normal. For a point light you can actually skip the subtract.

Here is everything nicely organized and nodes grouped:


No the grid is a visual guide, part of the viewport and won't show up anywhere else except the OpenGL rendering.

Unless you are planning on doing some simplistic OpenGL based rendering this should never be a problem.

If you do use the Render OpenGL viewport and it does show up, remember to tick the option Render Only in the 3DView Properties Shelf, under the Shading tab.


Any blender GUI toolkit for use with Game engine?

There is a library called bgui that makes creating GUI for the bge much easier.

There are two locations for the documentation, the old (but better) google project wiki and the read the docs page.

In a nutshell, add the bgui script to your project with a python controller in the logic editor. Use a always sensor to trigger the script to always run.

Next you add widgets or components to bgui with a line such as this (this will add a button).

# A FrameButton widget
self.btn = bgui.FrameButton(self.frame, 'button', text='Click Me!', size=[0.3, 0.1], pos=[0, 0.4], options=bgui.BGUI_DEFAULT | bgui.BGUI_CENTERX)


Upgrade your Blender. This feature was introduced in 2.70. By now 2.79 is the current version. You can just download a tarball, extract it, and run it.


Ease camera acceleration which follows a path

If you've used either a 'Follow Path' constraint or parented the camera to your path with the 'Follow Path' option, the keyframes you're looking for are on the path itself, not the camera.


How to draw geometry in 3d View window with bgl

Using a modal operator is the simplest and especially the correct way to draw something with bgl.

import bpy
import bgl
import blf
import gpu
from gpu_extras.batch import batch_for_shader

def draw_line_3d(color, start, end):
    shader = gpu.shader.from_builtin('3D_UNIFORM_COLOR')
    batch = batch_for_shader(shader, 'LINES', {"pos": [start,end]})
    shader.bind()
    shader.uniform_float("color", color)
    batch.draw(shader)

def draw_typo_2d(color, text):
    font_id = 0
    blf.position(font_id, 20, 70, 0)
    blf.color(font_id, color[0], color[1], color[2], color[3])
    blf.size(font_id, 20, 72)
    blf.draw(font_id, text)

def draw_callback_3d(operator, context):

    # object locations
    cube_loc = context.scene.objects['Cube'].location
    lamp_loc = context.scene.objects['Light'].location
    camera_loc = context.scene.objects['Camera'].location

    # 80% alpha, 2 pixel width line
    bgl.glEnable(bgl.GL_BLEND)
    bgl.glEnable(bgl.GL_LINE_SMOOTH)
    bgl.glEnable(bgl.GL_DEPTH_TEST)

    # green line
    draw_line_3d((0.0, 1.0, 0.0, 0.7), camera_loc, cube_loc)

    # red line
    draw_line_3d((1.0, 0.0, 0.0, 0.7), cube_loc, lamp_loc)

    # blue line
    draw_line_3d((0.0, 0.0, 1.0, 0.7), lamp_loc, camera_loc)

    bgl.glEnd()
    # restore opengl defaults
    bgl.glLineWidth(1)
    bgl.glDisable(bgl.GL_BLEND)
    bgl.glDisable(bgl.GL_LINE_SMOOTH)
    bgl.glEnable(bgl.GL_DEPTH_TEST)

def draw_callback_2d(self, context):

    bgl.glEnable(bgl.GL_BLEND)
    draw_typo_2d((1.0, 0.0, 0.0, 1.0), "Hello Word")
    bgl.glEnd()

    # restore opengl defaults
    bgl.glLineWidth(1)
    bgl.glDisable(bgl.GL_BLEND)
    bgl.glEnable(bgl.GL_DEPTH_TEST)

class ModalDrawOperator(bpy.types.Operator):
    bl_idname = "view3d.modal_operator"
    bl_label = "Simple Modal View3D Operator"

    def modal(self, context, event):
        context.area.tag_redraw()

        if event.type in {'RIGHTMOUSE', 'ESC'}:
            bpy.types.SpaceView3D.draw_handler_remove(self._handle_3d, 'WINDOW')
            bpy.types.SpaceView3D.draw_handler_remove(self._handle_2d, 'WINDOW')
            return {'CANCELLED'}

        return {'PASS_THROUGH'}
        #return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        if context.area.type == 'VIEW_3D':
            # the arguments we pass the the callback
            args = (self, context)
            # Add the region OpenGL drawing callback
            # draw in view space with 'POST_VIEW' and 'PRE_VIEW'
            self._handle_3d = bpy.types.SpaceView3D.draw_handler_add(draw_callback_3d, args, 'WINDOW', 'POST_VIEW')
            self._handle_2d = bpy.types.SpaceView3D.draw_handler_add(draw_callback_2d, args, 'WINDOW', 'POST_PIXEL')

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "View3D not found, cannot run operator")
            return {'CANCELLED'}

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

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

if __name__ == "__main__":
    register()

Documentation: https://www.blender.org/api/current/bgl.html#module-bgl

Blender 2.7x

Click to enlarge
import bpy
import bgl
import blf

def draw_line_3d(color, start, end, width=1):
    bgl.glLineWidth(width)
    bgl.glColor4f(*color)
    bgl.glBegin(bgl.GL_LINES)
    bgl.glVertex3f(*start)
    bgl.glVertex3f(*end)

def draw_typo_2d(color, text):
    font_id = 0  # XXX, need to find out how best to get this.
    # draw some text
    bgl.glColor4f(*color)
    blf.position(font_id, 20, 70, 0)
    blf.size(font_id, 20, 72)
    blf.draw(font_id, text)

def draw_callback_3d(self, context):
    bgl.glEnable(bgl.GL_BLEND)

    # object locations
    cube_loc = context.scene.objects['Cube'].location
    lamp_loc = context.scene.objects['Light'].location
    camera_loc = context.scene.objects['Camera'].location

    # green line
    draw_line_3d((0.0, 1.0, 0.0, 0.7), camera_loc, cube_loc)

    # red line
    draw_line_3d((1.0, 0.0, 0.0, 0.7), cube_loc, lamp_loc)

    # blue line
    draw_line_3d((0.0, 0.0, 1.0, 0.7), lamp_loc, camera_loc, 2)

    bgl.glEnd()
    # restore opengl defaults
    bgl.glLineWidth(1)
    bgl.glDisable(bgl.GL_BLEND)
    bgl.glColor4f(0.0, 0.0, 0.0, 1.0)

def draw_callback_2d(self, context):

    bgl.glEnable(bgl.GL_BLEND)

    # draw text
    draw_typo_2d((1.0, 1.0, 1.0, 1), "Hello Word ")

    bgl.glEnd()
    # restore opengl defaults
    bgl.glLineWidth(1)
    bgl.glDisable(bgl.GL_BLEND)
    bgl.glEnable(bgl.GL_DEPTH_TEST)
    bgl.glColor4f(0.0, 0.0, 0.0, 1.0)

class ModalDrawOperator(bpy.types.Operator):
    bl_idname = "view3d.modal_operator"
    bl_label = "Simple Modal View3D Operator"

    def modal(self, context, event):
        context.area.tag_redraw()

        if event.type in {'RIGHTMOUSE', 'ESC'}:
            bpy.types.SpaceView3D.draw_handler_remove(self._handle_3d, 'WINDOW')
            bpy.types.SpaceView3D.draw_handler_remove(self._handle_2d, 'WINDOW')
            return {'CANCELLED'}

        return {'PASS_THROUGH'}
        #return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        if context.area.type == 'VIEW_3D':
            # the arguments we pass the the callback
            args = (self, context)
            # Add the region OpenGL drawing callback
            # draw in view space with 'POST_VIEW' and 'PRE_VIEW'
            self._handle_3d = bpy.types.SpaceView3D.draw_handler_add(draw_callback_3d, args, 'WINDOW', 'POST_VIEW')
            self._handle_2d = bpy.types.SpaceView3D.draw_handler_add(draw_callback_2d, args, 'WINDOW', 'POST_PIXEL')

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "View3D not found, cannot run operator")
            return {'CANCELLED'}

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

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

if __name__ == "__main__":
    register()


In addition to Duarte's answer, I'll  add another method. It will use the subdivision surface modifier as well, but another method to create the sharp corners

Add a plane. Subdivide it once. Add a solidify, bevel and subdivision surface modifier.

Since the sail would have a thickness anyway, the bevel modifier comes in handy. Otherwise just scale the value down untill it is no longer noticeable (but no 0). Use a high number of segments and a high angle. The angle has to separate the corners from the sides. The corner angles are going to be > 90 in your example, so I entered 80°.

You can now easily edit the shapes. Other shapes (not just quads) are equally possible as long as there is a distinction between side angle and corner angle.

You could also use NURBS surfaces. Add a surface, delete the standard additional points and close the endpoints, by checking Endpoint U and V.


Is It Possible to Select Faces (in Edit Mode) Based on the Normals of the Faces Connected to It?

Select +Z faces and neighboring -Y faces if they go down:
import bpy, bmesh
from mathutils import Vector

up = Vector((0, 0, 1))
side = Vector((0, -1, 0))

def main():
    me = bpy.context.active_object.data
    bm = bmesh.from_edit_mesh(me)
    for face in bm.faces:
        if face.normal == up:
            face.select = True
            conditional_select_neighbors(face)
    bmesh.update_edit_mesh(me)

def conditional_select_neighbors(face):
    for loop in face.loops:  # each edge has a 'loop' associated with it for each face
        loop2 = loop.link_loop_radial_next  # radial_next gets the loop of the same edge but another face
        is_side = loop2.face.normal == side  # as R. Betts spotted, this is not enough
        loop3 = loop2.link_loop_next.link_loop_next
        is_lower = loop.vert.co.z > loop3.vert.co.z
        if is_side and is_lower:
            loop2.face.select = True

if __name__ == "__main__":
    main()

Select +Z faces without -Y neighbors:
import bpy, bmesh
from mathutils import Vector

up = Vector((0, 0, 1))
side = Vector((0, -1, 0))

def main():
    me = bpy.context.active_object.data
    bm = bmesh.from_edit_mesh(me)
    for face in bm.faces:
        if face.normal == up:
            conditional_select(face)
    bmesh.update_edit_mesh(me)

def conditional_select(face):
    face.select = True
    for loop in face.loops:  # each edge has a 'loop' associated with it for each face
        loop2 = loop.link_loop_radial_next  # radial_next gets the loop of the same edge but another face
        if loop2.face.normal == side:  # in this case this is enough
            face.select = False

if __name__ == "__main__":
    main()


Can you Animate like in Stop Motion Animation?

What you want to do can be done using shape keys. There are many tutorials on Youtube this is one of them Shape Keys Tutorial


If you use booleans, use solid meshes as cookie cutters, not planes. A cylinder maybe.

Inverted normals and an inner surface are indeed a good idea.

Also kill any selection and hit my favorite shortcut: CTRLALTSHIFTM to check for any problems with the mesh. Ideally no verts or edges should get selected. Booleans like perfect watertight topology. Just like 3D printers.

Then you can subtract the cylinder and have holes in your egg shell.

Or you simply delete a few edgerings, select the rim and connect them with the bridge tool.


Basically, quads are low-key made of triangles.

Quads have no magical ability to stay "flat" so if you move a vertex out of its original plane, it can't be a "real" quad anymore and so blender shows you the ugly truth: a quad is two triangles stuck together.

Generally you want to build models so the quads don't get bent much, but they often will a little, and that's ok as long as the result doesn't look bad.


How do I change the default color picker mode from HSV to RGB?

there is no option to change the color picker type to rgb
but you can download source of blender 2.83 and add an option to change colors to rgb

blender-2.83.5\source\blender\editors\interface_region_color_picker.c

Easy Solution
as you know enum has a default value

enum ePickerType {
  PICKER_TYPE_RGB = 0,
  PICKER_TYPE_HSV = 1,
  PICKER_TYPE_HEX = 2,
};

by default color picker type is PICKER_TYPE_HSV = 1
so you can change it to PICKER_TYPE_RGB = 0
 static char colormode = 0;

Hard Solution Adding to preferences
you should add a case for RGB in preferences
  switch (U.color_picker_type) {
    case USER_CP_SQUARE_SV:
      ui_colorpicker_square(block, ptr, prop, UI_GRAD_SV, cpicker);
      break;
    case USER_CP_SQUARE_HS:
      ui_colorpicker_square(block, ptr, prop, UI_GRAD_HS, cpicker);
      break;
    case USER_CP_SQUARE_HV:
      ui_colorpicker_square(block, ptr, prop, UI_GRAD_HV, cpicker);
      break;

    /* user default */
    case USER_CP_CIRCLE_HSV:
    case USER_CP_CIRCLE_HSL:
    case USER_CP_CIRCLE_RGB: # I ADD THIS CASE HERE
    default:
      ui_colorpicker_circle(block, ptr, prop, cpicker);
      break;
  }

there is a function to change the hsv/hsl to rgb:
void ui_color_picker_to_rgb(float r_cp0, float r_cp1, float r_cp2, float *r, float *g, float *b)
{
  switch (U.color_picker_type) {
    case USER_CP_CIRCLE_HSL:
      hsl_to_rgb(r_cp0, r_cp1, r_cp2, r, g, b);
      break;
    default:
      hsv_to_rgb(r_cp0, r_cp1, r_cp2, r, g, b);
      break;
  }
}

enum ePickerType {
  PICKER_TYPE_RGB = 0,
  PICKER_TYPE_HSV = 1,
  PICKER_TYPE_HEX = 2,
};

How does enum work?
 /* mode */
  yco = -1.5f * UI_UNIT_Y;
  UI_block_align_begin(block);
  bt = uiDefButC(block,
                 UI_BTYPE_ROW,
                 0,
                 IFACE_("RGB"),
                 0,
                 yco,
                 width / 3,
                 UI_UNIT_Y,
                 &colormode,
                 0.0,
                 (float)PICKER_TYPE_RGB,
                 0,
                 0,
                 "");

  UI_but_flag_disable(bt, UI_BUT_UNDO);
  UI_but_func_set(bt, ui_colorpicker_create_mode_cb, bt, NULL);
  bt->custom_data = cpicker;
  bt = uiDefButC(block,
                 UI_BTYPE_ROW,
                 0,
                 IFACE_((U.color_picker_type == USER_CP_CIRCLE_HSL) ? "HSL" : "HSV"),
                 width / 3,
                 yco,
                 width / 3,
                 UI_UNIT_Y,
                 &colormode,
                 0.0,
                 PICKER_TYPE_HSV,
                 0,
                 0,
                 "");

then you can use this function to change the color picker type:
bpy.context.preferences.view.color_picker_type = 'CIRCLE_RGB'

I also downloaded blender 2.79 source
I found a function to convert rgb to hsv
maybe useful:

2.79\scripts\addons\cycles\source\util\util_color.h

ccl_device float3 rgb_to_hsv(float3 rgb)
{
    float cmax, cmin, h, s, v, cdelta;
    float3 c;

    cmax = fmaxf(rgb.x, fmaxf(rgb.y, rgb.z));
    cmin = min(rgb.x, min(rgb.y, rgb.z));
    cdelta = cmax - cmin;

    v = cmax;

    if(cmax != 0.0f) {
        s = cdelta/cmax;
    }
    else {
        s = 0.0f;
        h = 0.0f;
    }

    if(s != 0.0f) {
        float3 cmax3 = make_float3(cmax, cmax, cmax);
        c = (cmax3 - rgb)/cdelta;

        if     (rgb.x == cmax) h =        c.z - c.y;
        else if(rgb.y == cmax) h = 2.0f + c.x - c.z;
        else                   h = 4.0f + c.y - c.x;

        h /= 6.0f;

        if(h < 0.0f)
            h += 1.0f;
    }
    else {
        h = 0.0f;
    }

    return make_float3(h, s, v);
}


How can I change the size of the square of the camera which I see things through?

The render resolution in the render panel defines the upper limits in the dimensions of all renders through the camera, final or viewport.

You can also set a Render Border, using CtrlB in Object Mode, to restrict the rendered area in all views, (further restricted by the render resolution, when looking through the camera). In the 3D view, it's delineated with a red dashed frame.

In Object Mode, hitting  CtrlB again allows you to resize the border, and AltCtrlB dismisses it.


Is there a way to make a project directory for all the external files, including textures and render saves?

I know what you mean and not quite. While Maya has these files on disk, blend files are like an archive and have an internal folder-like structure where it organizes scene data/resources etc. Blender has a feature to pack external resources into your file such as textures/images (useful for appending/linking things later and creating reusable libraries).

I would argue that this is superior to how Maya or Max does it as you can simply pack a blend file and it will locate all external resources and group them into a single file. At anytime, you can always unpack the files to the current directory (usually just creates a textures folder).

Anyway, to answer your question, no it's not possible out of the box to automatically generate folders and have resources or renders to these predefined locations, if you want to mimic such behaviour, you can always create the folders and ensure that your file paths are relative.


Fake flashlight volume with smoke: how to make noise texture coordinates not to follow camera

I think you would like to keep the noise to be bound to the world coordinates. This will let you move the camera freely without effecting the noise coordinates. The Position in the Geometry will give you this.


Trying to get solid physics working coherently

Sometimes rigid bodies are really tricky, changing the size of the hole scene is sometimes the solution. You could also try the same scene with soft and collision bodies, if they are photos, it would be more accurate since they have to bend a little bit.


"Select Interior Faces" buggy and unpredictable?

First, it may be useful examine this in wireframe display, instead of the solid display you have in the screenshot in your question. I suspect the reason why some of what are marked interior might be more obvious that way.

Whether the problem is a bug, will depend in part upon how one defines what a bug is. I suspect that in this case, the software is working as designed, and the problem lies in the difficulty in describing for the software what an constitutes an "interior face". The best definition of "interior faces" I can find is in the hint that appears if you hover the cursor over the "interior faces" option of the select menu in the 3D viewport in edit mode. That reads

  Select faces where all edges have more than 2 face users.

which explains why some faces that appear to be exterior faces are selected in your screenshot. For example in the center of your screenshot are three exposed faces which are showing to be as "interior" Examining these closely, you will see that each of the edges of these faces is connected to three different faces. For example, the leftmost edge of the left face is connected to the two fades one can see on either side, and then also connected two the face perpendicular to these two. Examining the other three edges would reveal that each edge is part of three faces, and by the definition of an inside edge as given in the tool tip, the face is interior.

There are also classes of interior faces that the algorithm would not catch. An example of one of these is an interior face in a cube defined by the lower far left, the upper far right, and upper near left vertices. When displayed solid, it is obvious that this is an interior face, but none of the edges belong to more than one face, so it would not be reported by the "select > Interior faces" option.

I don't know that I'd say the algorithm is poorly implemented, but it might be that this may be a good implementation of an algorithm that is not the best one for your purposes.

You might find the algorithm associated with the "Non-manifold" option from the select menu item (shortcut SHFT-CTRL-ALT-M to give more satisfactory results, although I don't know how this algorithm is different from the "interior faces" one.

You might also reconsider how your tool that generates the python script, is generating a new cube? The screenshot suggests that you may be generating the new cube by adding a new cube mesh primitive. If this is so, it might result in the kind of interior faces you are seeing in the screenshot. As an option, you might modify your python script so that where you need a new cube, check to see if will be attached to the existing mesh. If it is, then check to see if there is a common face between the new cube primitive and the existing mesh. If there are no common faces, check for common edges between the new cube primitive, and the existing mesh. And if there are neither any common faces, nor common edges, check for common vertices. If there are common vertices, edges, or faces, then create the needed geometry by extrusion from the existing mesh, rather than adding new primitives, because extrusion should reduce the number of interior faces. Of course, if you need a cube where you don't have an element to extrude from, then you'll have to add a mesh.


Matching vertex indices in similar models by UV coordinates

A caveat.. there are people on this site who are better at this than me.. I wouldn't have posted if one of them had done it first. (I've really had a go at it, to explore bmesh better for myself)
This script may be a starting point though.. it assumes the two meshes share identical UV maps, vertex counts, and that there are no overlapping / coincident vertices in the map(s).
To use it, you would insert the source and target object names, and the names of their matching UV maps. It creates a dictionary of the pairs of vertex indices, keyed by the UV coordinates.
import bpy
import bmesh
from collections import defaultdict

# Insert object names here
ob1 = bpy.data.objects['C1'] # Source object
ob2 = bpy.data.objects['C2'] # Target object
me1 = ob1.data
me2 = ob2.data

# BMesh representations of both meshes
bm1 = bmesh.new()
bm1.from_mesh(me1)
bm2 = bmesh.new()
bm2.from_mesh(me2)

# Insert UV map names here
uvm1 = bm1.loops.layers.uv['UVMap'] # Source's map
uvm2 = bm2.loops.layers.uv['UVMap'] # Target's map

#Create dict {(UV coordinate : [bm1 vert idx, bm2 vert idx]),...}
uvdict = defaultdict(lambda: [-1,-1])

for face in bm1.faces:
    for loop in face.loops:
        uvco = loop[uvm1].uv[:]
        vidx = loop.vert.index
        uvdict[uvco][0] = vidx

for face in bm2.faces:
    for loop in face.loops:
        uvco = loop[uvm2].uv[:]
        vidx = loop.vert.index
        uvdict[uvco][1] = vidx

#get rid of dupe loop -> vert refs
matchlist = list(set(tuple(x) for x in uvdict.values()))

bm2.verts.ensure_lookup_table()

#reassign target v indices
for pair in matchlist:
    bm2.verts [pair[1]].index = pair[0]

bm2.verts.sort()
bm2.to_mesh(me2)

bm1.free()
bm2.free()

It's possible I've got the wrong end of the stick re. your problem.. I run the script in object mode, with nothing selected. Tightening / correction, by folks who know better, would be welcome.


F-curves disappeared but keyframes still work

Now that you have turned it into an NLA strip, you have to select the strip in the NLA editor and press TAB to begin editing the action in that strip.  One problem is that if you add keyframes outside the boundaries of the strip they will not affect the object.  There are other complications surrounding the strip extrapolation settings.

Alternately, you should be able to "undo" the stripification by selecting the object and using the dope sheet's Action Editor mode to assign its primary action to the one that was there before the stripification (make sure you are not tabbed into the strip or your change will affect the strip instead of the primary action).  It's the combo box left of the Push Down button.  At that point the object will have a primary action AND an NLA track with strip. You can delete the NLA track by selecting the track in the NLA editor and using the x to delete the track.


My computer also does not support openGL. When I try to open Blender 2.80 or higher, I get an error "support for openGL 3.3 or higher required". Since I am using an Intel HD graphics 3000 chipset that can not be re-programmed to run openGL 3.3, I resulted to two solutions. 1) Only use Blender 2.79, or 2) Buy a new computer. And since I am only 12 years old with a limited budget, I decided to choose option one. In your case though, you can get a decent desktop with a good GPU and an intel i9 cpu plus 16gb of RAM for around 800$


Cycles image texture node is writen in python or c?

Implemented in C, see:

The whole tree:
tree/HEAD:/source/blender/nodes/shader/nodes

The Mapping node:
HEAD:/source/blender/nodes/shader/nodes/node_shader_mapping.c
The image texture node:
HEAD:/source/blender/nodes/shader/nodes/node_shader_tex_image.c

Editing / changing is possible, but then you embark on a journey of custom compiles whenever you want to update, maintaining your own branch might not be an option until you have a certain amount of C / compile / revision control experience.


From your screen it seems to me you use Sphere object (not IcoSphere).
Blender basic objects are unwrapped automatically. Image node is also automatically mapped with UV coordinates.

For the country flag you can use UVmap generated by default (when object is added).

Switch to UV Editing layout, in 3D view switch to edit mode, select all vertices
in UV Editor appears UVmap so just select all and stretch on X axis until you see image as circle

To avoid repeating texture from backside change Repeat to Extend in Texture node.

Your reference image deformation in corners is same so I guess it was unwrapped in the same way. If you want to avoid thouse deformations you would have to apply black parts separately or change UVmap.
Another option is to use object to control texture coordinates.
If you add any object (I used Empty) and for Sphere material you add some image (logo in my case) you can mix them together.

By default image texture is positioned to object by left up corner, so I used Mapping node to shift center of logo to center of Empty.
To follow Empty surface of Sphere enable Snapping > Face and check Align Rotation to Target.


I have problems assigning different materials to different faces

This might sound stupid but did you check you're not in x-ray mode?
If not, check the Blend Mode and Shadow Mode in the settings of the material tab. Make sure they are both set to "Opaque" if you're not using transparency otherwise materials can appear to slip through each other.


Bake (in the rigid body cache panel).

Storing the locations to keyframes on every frame is very inefficient and will make the size of your .blend skyrocket. The cache system used when baking is designed for exactly this purpose, and so is naturally more efficient.

Bake all dynamics will bake all physics simulations in the scene. This is useful for taking interactions between simulations into account without having to manually bake all the simulations in the right order. If you only have one simulation, then it's the same as Bake.


Is there a working extension to import Kinect skeleton data as animation into Blender?

There should be a script for importing bvh files under

File -> import -> Motion Capture (.bvh)

, at least in current versions of blender.

A program to save kinect skeleton data as a .bvh file can be found e.g. on  the following site:
http://tech.integrate.biz/kinect_mocap.htm


You definitely don't want to use a fluid simulation for rain. I'd use a particles system for the general rain in the scene. You can use Dynamic paint to make the particles interact with a "water" surface to make ripples (without actually using fluid sim).

For the arrow piercing a raindrop, that's more like a hero shot, up close in the foreground. I'd probably use soft body physics on the raindrop as it will be large in the shot (possibly), and at that size the surface tension of the water drop will be more like a gel object instead of flowing water (until it bursts). The trick is once the arrow pierces through and breaks the surface tension. At that point you do want something more like a fluid sim effect to show the displaced water splashing out around the arrow.

Here's a quick mockup of the fluid sim for the hero rain drop. Note I went for a slow motion look and decreased the gravity to -1m/s2.


How do I edit an image node in blender using python

To get a material by its name:

mat = bpy.data.materials[ mat_name ]

To get a node in it by its name:

node = mat.node_tree.nodes[ node_name ]

To get all the image texture nodes in a material:

nodes = [n for n in mat.node_tree.nodes if n.type == 'TEX_IMAGE']

For the image part, I presume it is loaded and exist in Blender.

If yes, to get it from its name:

image = bpy.data.images[ image_name ]

If no, you can load it:

bpy.data.images.load( filepath )

Setting an image in a image texture node:

image_node.image = image

where 'image_node' is one of the nodes obtained as 'TEX_IMAGE' above.

and where 'image' is the object obtained from bpy.data.images


How would I import/export Blender's preferences?

Depending which OS you're on, navigate to:
Linux
~/.config/blender

Mac
/Users/username/Library/Application Support/Blender/
Windows
%APPDATA%\Blender Foundation\Blender

Once there you should see folder(s) corresponding to the version(s) you currently have.

In my case here I have 2.66 and 2.67, just open the previous folder (2.66) since I had saved my settings there earlier and copy the config folder to the new one (2.67). What you really want however is the startup.blend and userpref.blend inside.


how would i go about opening the save as menu using python?

In order to open the file browser you need the operator's invoke() function to be called. This can be accomplish by setting the execution context. Pass the argument 'INVOKE_DEFAULT' into the function call and the file browser will open.

bpy.ops.wm.save_as_mainfile('INVOKE_DEFAULT')

The manual explains the execution context in the following way:

  Execution Context

  When calling an operator you may want to pass the execution context.

  This determines the context that is given for the operator to run in, and whether invoke() is called or only execute().

  ‘EXEC_DEFAULT’ is used by default, running only the execute() method, but you may want the operator to take user interaction with ‘INVOKE_DEFAULT’ which will also call invoke() if existing.

  [...]


What is the purpose and idea behind baking in Blender?

In computer graphics, baking generally refers recording calculated information in some kind of cache, to avoid the need to keep recomputing it.

For materials and rendering specifically, it refers to recording various kinds of surface information (e.g. colour, lighting, normals) into image file(s), which are then used as textures of various kinds.

It can be done for a many different reasons, some of the more common uses are:

Transfer surface geometry information (e.g. normals, curvature, ambient occlusion) from one (usually more complex) mesh to another
Transfer textures form one UV layout (possibly generated) to another.
Record procedurally generated textures either for export to another program or for performance reasons.
Save lighting information on static parts of the scene to speed up rendering.


How to make a shortcut key for switching to Texture paint mode?

There are no exact hotkeys for mode change. But you can assign custom keys by left-clicking on mode then click add shortcut and press key on keyboard to assign.

I recommend, before adding key as shortcut, go to user preferences->input-> change filter to keybinding then press shortcut to see what are assigned to it.

There is more related info in following link:
https://blenderartists.org/t/how-to-set-custom-shortcuts-for-mode-switching/626237


Messed up Blender models when exporting to Unity3D

This looks like you have flipped normals.

Blender draws double-sided by default, but you can enable Backface Culling in the Display panel (one of the panels right hand side of the view-port).

You can also enable drawing normals which draws a line in the direction each face points.

So you can use either of these draw options to check which way your normals are flipped.

This could be...

Normals flipped the wrong way in Blender, you can select all in editmode and run 'Mesh -> Faces -> Recalculate Normals' (CTRLN). OR if they are all the wrong way around: you can simply flip the normals. 'Mesh -> Faces -> Flip Normals')
Negative scale on the object. Blender detects negative scaled objects and shows the faces pointing the right way, but many game engines will show normals flipped if you have a negative scaled object.


How to get more options in the Viewport shading?

Make sure you are viewing in solid mode and go back into the menu to choose the matcap you'd like to you. You should be able to change it and see your changes clearly from there.


During render can I render freestyle lines, then re-insert them back into the scene so other objects may interact with them during their rendering?

So I broke up the scene into 3 render layers:

A freestyle render layer which just renders the lines
A land+water which renders the land and the water without lines
And a land layer which is used for depth

Then mix like this:
we use land + water as a base, outputting a material index so we can mask the water area.

material index:

Then using the alpha channel of the freestyle layer we mix the original output and the colors we want for both above water and below, using a material to output the depth of the land enabling us to interpolate between surface colors and depth color on the water covered surfaces.

depth land material:

these are the compositor nodes:

and this is the result:

of course you can tweak the colours of the lines and make it look non-terrible :P

Hope this clears up your doubts!

(if you want the file I can give it to you, but I probably broke any kind of settings or order that you had)


you can create input sockets by creating a link to the date you want to connect.

The new input socket will have the color of the data is is connected to.


Snap an animated rig to another static rig position while keeping the animation of the first one (MoCap, Kinect)

To understand your problem, let we simplify: suppose that rotating the left arm from T pose to A pose is happening with a 45 degrees rot on X axis arm bone; 90 degrees will take the arm vertical, along the body. If the animation data store a value of 90 starting from a T pose, the same animation data will take the arm inside the body if applied to an A pose rig.
So there are many ways to solve the problem. The simpliest is to set your character to a rest T pose, matching the Kinect rig rest position (as it is in the video tutorial).
If you really don't want that you will have to create an empty in the loc of the Kinect bone and child of it. Then you set a copy rot constraint to your CharacterBone targeting the empty.
Once the setup is established you set the Kinect rig in rest pose and rotate the empty until the two arm bones are perfectly aligned in their T pose, so that when the animation says 0 degrees you get a T pose, when it says 45 degrees you get A pose, when it says 90 degrees you get the arm along the body, as expected.
You will have to trim the empty on the other 2 axis of rotation also, and repeat the operation for all involved bones.


BGE - how to create a menu that pops itself up

You want a menu to open after the player is inactive for a while. You can do this relatively easily. Instead of trying to detect if the player is moving, or if something is happening to the player, we can instead check to see if any input devices are being used. If not, we can make a timer increase until a certain value, when a menu will appear.

    In this logic setup, I have an always sensor with true level triggering, sending a positive pulse every tic to the property actuator "Add to Timer"
This means that every logic tic, the property "Timer" is increased by 1.
When the property "Timer" is equal to 3600, it broadcasts the message, "Open Menu" I chose the value 3600 here because by default, the BGE is set to 60 logic tics per second. 60 tics per second times 60 seconds for a minute of inactivity is 3600 tics. Now is the interesting part - I have a whole bunch of sensors connected to an "or" controller, which then assigns "Timer" to 0. I have a keyboard sensor set to all keys, and a whole bunch of mouse sensors. If any input is received from the mouse or the keyboard, the timer will reset. Only if the player is not pushing any buttons or doing anything with the mouse will the message "Open Menu" be sent.

    Of course, if you are using a different method to control your character, such as a joystick, you will need to use a joystick sensor also attached to the "or" controller. You essentially want any input that could control something in your game to also reset the timer. I am using an "or" controller because if it receives a positive pulse from any of the connected sensors, it will send a positive pulse to the connected actuators. If I used an "and" controller here, you would need to be pushing a key on the keyboard, as well as moving the mouse, clicking the left and right mouse buttons, scrolling, and pushing the middle mouse button. Using the "or" controller here, any input will reset the timer.

    This logic setup only broadcasts the message "Open Menu" once there has been 60 seconds of inactivity. You still need to make your menu, and have it open upon receiving the message "Open Menu" This as simple as using a message sensor, with the subject filled in as "Open Menu"

    You can see a working example here. While you are pressing any key or doing anything with the mouse, Suzanne will shake her head. After 60 seconds of not using the mouse or keyboard, the game will pause and the inactivity menu will open.


Using bmesh

Yes it is do-able.

Add all selected faces to one set
Remove the active face from set
Find all neighbouring faces

Going by screenshot, this is any face that has an edge in the edge loop of each of its vertices is deselected.

Remove them from the selection
Repeat with next selected face until exhausted.

Result of running on this grid with all selected

Test script, run in edit mode. Have a face as the active selection.

import bpy
import bmesh

context = bpy.context
ob = context.edit_object
me = ob.data
bm = bmesh.from_edit_mesh(me)

selfaces = set(f for f in bm.faces if f.select)

f = bm.select_history.active
selfaces.remove(f)
while True:

    # find all "neighbours" of f
    desel = set(f for v in f.verts for el in v.link_edges for f in el.link_faces)
    for f in selfaces.intersection(desel):
        f.select = False
    selfaces -= desel
    if not selfaces:
        break
    f = selfaces.pop()
bmesh.update_edit_mesh(me)

Recommend checking out bmesh via the py console. With a mesh in edit mode

>>> import bmesh
>>> bm = bmesh.from_edit_mesh(C.object.data)
>>> bm
<BMesh(0x7f3308fde308), totvert=100, totedge=261, totface=162, totloop=486>


Pauses for 2 minutes in between rendering animation frames

Blender is not pausing between rendered frames: its generating the curent frame, and sometimes it can take a long time to calculate all the information needed to start rendering.

3D rendering can be one of the most compute-intensive operations you can throw at a computer. With very little effort you can create scenes that will push your system to its limits.

You are probably taxing your system with a scene that has:

Lots of particles
Physics Simulations
Lots of vertices (either from complex/detailed objects, or from
vertices created by modifiers, like subsurf modifier or arrays).
Volumetrics (volume scattering and/or volume absortion).
All or some of the above, and maybe even other layers of
complexity...

You have the option to:

Wait
Optimize your scene
Split the rendering load on different computers (like a Render Farm)

You might be able to find what process is taking so long by checking the top of the UV/Image editor window while rendering:

Things you can do to make the scene more friendly and renderable within your lifetime?

Simplify the geometry: decimate or re-topologize.
Use smaller textures. Textures shouldn't be any larger than the size
they are going to be on the final render.
Bake textures and lighting if possible.
Cache simulations and particles to disk and/or bake all dynamics,
so that the computer doesn't have to compute them again for every
frame.
Keep your subsurf levels as low as you can, no more than 3... read
this post.
Find the optimal tile size for your system
Keep the render samples as low as you can, set them to a noise level
you can live with, remember for animation not all frames have to be
as perfect as a still image.
Split the scene in different render layers that render efficiently,
and composite them together into a final scene.

Avoid rendering directly to video formats: if your computer crashes you'd have to stat over! Always render as image sequences and encode to video afterwards.

Lastly (an option that been deprecated but might still be available on older versions of blender), for geometry that does not change through the scene: cache BVH.


Material emitting only in dark parts of an object

Yes, this can be achieved with a Shader to RGB node. This lets you have a diffuse shader to compute which parts are lit, which you can then pass into an emission shader to make it glow.
Nodes:

Result:

I use a color ramp to separate between the lit and unlit areas, and then feed that into a mix shader so the lit parts are shaded with the emission, and the unlit with the diffuse shader.
If you want to achieve a smoother gradient, you can pass the value of the color ramp into the strength of the emission, so that the more lit parts also emit more.


TLDR; OVERLAPPING OBJECTS

Make sure you don't have objects in the same position overlapping, I initially thought that I moved one object behind  others but forgot to add keyframe for that. It resulted in overlapping meshes and was the reason of the unexpected render.


The objects are disabled in "Viewports". You need to enable the Restriction Toggle and then enable them there to make them visible.


Objects in the middle of plane on hair particle system

The origin of the cubes in your group is in the center each cube instead of their respective bottoms. In each of the cubes in the group, move the origin to the bottom face to fix it:

Edit mode --> Select face --> Shift + S --> Snap cursor to selected

Then:

Object mode --> Ctrl + Alt + Shift + C --> Origin to 3D cursor

Another explanation on how to set the object's origin.


I have the answer. I noticed that there was no camera in the layers I wanted to render. I simply had to additionaly select the original layer where the camera was placed in order to manipulate the camera view.


Can't get smooth surface when subdividing selected faces of an object

In the edit mode with the vertex selected go to vertex panel at right hand and uncheck auto smooth

With the vertex selected go to tools panel under mesh tool click smooth vertex

Then convert the tris to quad go to Mesh > faces > Tris to Quads (Alt+J)


questions about viewing a model and selecting objects

To fix the view-ability of your object, you can change the camera end-clip distance by pressing N and finding it under "View".

If you are having difficulty changing the transformations of your object, check the Opbect Properties panel and make sure you don't have any Delta Transforms enabled.


I love curves. To make it look less noodle like, go to the curve circle and edit the shape of it. To give it more of a stand like appearance just copy some of the vertices in the circle detached from the original circle. It turns out beautifully, but don't be afraid to copy a lot of detached vertices. Also, another thing is the curve. That is what makes it thick and thin. I hope this was helpful.


how can i make a low poly render on blender internal viewport render

As I mentioned before. Blender Render isn't my thing, but I think result is pretty close.

Materials:

I've used mostly default material. Just set Diffuse color and lower Specularity > Intensinity to 0.2.

Light:

Again, as simple as it can be.

Lamp set to Sun with Sky turned on.
Shadow > Ray Shadow with Sampling > 5 and Soft Size > 5.

Note. Postion Light directly from top to bottom to have shadows right beneath objects.

World:

Under World tab set Horizontal an Zenith Color to some candy like colors.
Switch on Environment Lighthing and set it to Sky Color.

Blend file:

And here to play with.


make sure that under the settings with that square icon that shadow catcher is not checked. and also in the particle settings make sure that 'show emitter' is on.


I think that there is not an absolute "Best" way to make it.
It depends on what's you goal.

If you are want to render only this simple geometry,
ngons are ok while they keep being planar.
If this is only the starting point from a more complex geometry,
maybe is better to mantain a quad-only topology to help future
modeling...or maybe not,... it depends! What's sure is that quads are the only way to take advance of the edgeloops, which usually makes the model easier to handle.
If you are going to add a subdivision surface modifier to smooth the
surface, you definetely nedd a quad-only mesh to have easily user-predictable results
If you are making a game asset you'll probably will look for the
lesser amount of polygons, so some quads may should be switch to
tris...
If you want to deform an object for an animation, you'll probably need a high density quad base topology for the interested parts in order to avoid streching

and so on...

At the end, the topology strategy strictly depends on what you are developing meshes for and how.


Can I have two separate meshes in the same object?

Make the 2 meshes with their desire blend shape, then merge both meshes and now the 2 blendshapes should be in the shape key list, make both of them 1 of influence then create a new blend from mix.

Hope it can help you, im not 100 % sure its what your are looking for.


Initiate loop-cut mode by hitting Crtl + R
While you are still in that mode, scroll your mouse wheel (up or down) / Page UP - Page Down buttons work as well. Or if you have some specific numbers of parallel running loops in your mind, you can make use of the numeric keys as well.


Transparency in Eevee Blender 2.81 not working

In EEVEE, I find that glass shaders don't work so well, so I leave them for cycles. For EEVEE, I use this arrangement to get realistic glass - pay attention to the blend modes I have highlighted on the right. If you absolutely must use a glass shader, go with the arrangement I placed above, but generally I find the one I have highlighted (framed) works best. I tinted it blue just to show it better with the fresnel. See image:


How to merge two or more groups to one using Python API?

After trying some more elegant methods and failing, this is a brute force solution to what you're trying to achieve. It essentially appends all the objects from the provided list of files (without their groups), and then adds all the objects into one group called 'merged'. It's can probably be solved more elegantly with groups, but since this worked for your example, I stopped trying to find other workarounds.

import bpy
from os.path import join

for g in bpy.data.groups:
    g.user_clear()
    bpy.data.groups.remove( g )

baseDir = "path/to/blendfiles"

allObjects = []

files = ['f1.blend', 'f2.blend']
for f in files:
    fPath = join( baseDir, f )

    objects = []
    with bpy.data.libraries.load( fPath ) as (data_from, data_to):
        for name in data_from.objects:
            objects.append({'name': name})

    bpy.ops.wm.append( directory = fPath + "/Object/", files = objects )

mergedGroup = bpy.data.groups.new('merged')
for o in bpy.data.objects:
    mergedGroup.objects.link( o )


Python Scripting: remove animation from mesh/object

obj = bpy.data.objects["Cube"]
obj.animation_data_clear()

works fine, it seem to remove animation data, but doesn't update timeline immediately visually.


(Python) How to add items in context menu in 2.8?

The Shader Editor context menu is called NODE_MT_context_menu (found by inspecting Preferences> Keymap> Node Editor and looking for Right Mouse) and we can 'append' (add) a draw function, which draws your menu item, into the existing menu. In the example below I have used the Node Editor's existing 'Duplicate' operator.

def draw_menu(self, context):
    layout = self.layout
    layout.separator()
    layout.operator("node.duplicate_move", text="My new context menu item")

def register():
    bpy.types.NODE_MT_context_menu.append(draw_menu)

def unregister():
    bpy.types.NODE_MT_context_menu.remove(draw_menu)

Explanation:

The draw_menu function deals with the UI that you want to add to the context menu (an operator) by using the bl_idname of your operator - in this case node.duplicate_move.
The register function should contain, in addition to the code that registers your operator, the code to append that UI into the existing menu.
In the case of an add-on, the unregister function will remove the UI you added.

Note:

The separator() line is not required, but useful for keeping your UI separate from the existing one.
prepend can be used instead of append to add items to the top of the menu instead of the bottom.

Some more information about menus can be found in the 2.80 Python API documentation. A few examples of extending the existing UI can be found in the Python templates included with Blender via the Templates menu in the Text Editor header.


I believe you've most likely got your Normals flipped the wrong way. This makes the surface behave like the inside of the glass and results in an effect called Total Internal Reflection when hit by light at a shallow angle - ie, it effectively acts as a glossy surface.

The solution is to edit the glass mesh (select it and press Tab to go into Edit mode), select all (A until the whole mesh is selected), then go to Mesh/Normals/Flip Normals - or press Space and type 'Flip Normals'. Once done, press Tab to come out of Edit mode. Your glass should now behave as it should.

To demonstrate this, here's an example scene consisting of a cube sitting above a plane with a Glass shader material, with a further plane below and a large doughnut above. With the correct normal this produces the following result :

Note the subtle reflection in the glass as you would expect.

Flipping the normal (so it now points down) produces the following result :

ie, it acts as a mirror. This is a result of the Total Internal Reflection due to the rays acting as if they are hitting a surface on the inside of a block of glass.

Note that a similar effect to swapping the normals can be achieved by using an IOR of less than 1.0. ie, changing the IOR to 1/1.45 = 0.69 would produce the 'correct' result, without flipping the normals as the glass would then behave as its inverse; instead of being a 'block' of glass surrounded by air it would behave as a cavity of air within a block of glass (ie, as if its normals were pointed the ‘wrong’ way).


Getting the state of a joystick button BGE

You're checking the button status, but the constants used are for sensor statuses. For those checkings, use sensor.status instead of sensor.getButtonStatus. Example:

if joysticksens.status == bge.logic.KX_INPUT_JUST_ACTIVATED:
    print("just pressed")

Remember that sensor.getButtonStatus returns only True or False, and equals to the expression:

BUTTON in bge.logic.joystics[0].activeButtons

Use the sensor.getButtonStatus along with sensor.status to check if a given button is pressed and which status of sensor at the same time.

Below, your file reworked using the method I mentioned, and few additions:

Optimized by using Module mode instead of Script mode in controller
Keyboard status checking without using the Keyboard sensor.


YOu probably change from individual origins to 3D Cursor


The head has an animation, so when you move it and save then reopen its position will be overridden by the animation you created


How can I create a water material in Cycles?

It is very important to add some small scale displacement to the water surface. This small scale detail is present even in closed spaces due to minor drafts of air, especially in large pools of water. My personal experience is that for best results you can use a combination of animated voronoi textures, like perlin noise does.

This small detail makes it possible to have areas of water that are slightly more refractive or reflective than others. To separate the refraction and reflection parts, you use a standard fresnel factor connected to a mix shader node.

This is my example shader:

(play with index of refraction to achieve a different ratio of refraction to reflection depending on the angle of viewing)

And this is the resulting water:

Of course on indoor scenes you will need many samples or clever lighting to avoid too many fireflies.


Where is the apply option in modifiers for 2.9?

Right next to the close button there is a little down arrow. It is a pop-down menu where you can find the apply button. You can also apply with Ctrl+A.


Silhouette chroma key effect - how to finish off?

After your Mix node you will want to add either a Luminance Key node, or a ColorRamp node. Then just move the values around until you get what you are looking for.
Before:

After:

or

I hope this helps
-Tom


Firstly you need to enable Use Modifier Stack in the particle system settings, so that the particle system uses the final derived mesh instead of the original base mesh.

From this point onwards the Particle System will start read the modifier stack and behave accordingly, so you have to have the stack order in mind.

You have two Displace Modifiers in place so i you want the grass to sit on the deformed terrain it can only be emitted after the deformation. Change the modifier order accordingly.

After that check your object scale and apply it with Ctrl+A , non uniform scales often cause issues, otherwise you will get weird results.


Is there a way to save a baked cloth simulation (in .blend file or to disc)?

Save the file first, cache your simulation with AltA. then use Current Cache to Bake. Then use the Disk Cache option on Cloth Cache and save again:

Next time you open the file the cloth simulation will be there.

On the folder where the file is saved you'll see a new folder called blendcache_filename. If you move the blend file to a new location make sure yo move the blendcache folder to the same location.


The FBX should presumably include a mesh when it is imported. Most likely if it came from Mixamo it also includes an armature, and the mesh will be parented to that armature.

Make sure you select the mesh, not the armature, and then you should be able to add physics properties to the mesh.

In this case you want to go to the Physics tab of the properties editor and add collision to the object. This will tell any cloth objects that this object should be treated as an obstacle.


Objects are not selectable since Blender 2.8 UI Freeze

In case anyone else comes across this, the selectability toggle is now filtered by default. What I mean by that is in the top right corner of the Outliner you'll see a filter icon:

Opening it will provide you with the various toggles and options for objects in the outliner. There you can enable the selectability toggle:

That should be all, hope this helps whoever comes by!


Weight paint (for particles) not working

You are using a 0 weight brush with add setting. Nothing will change for + 0 operation

Change your weight and try it again. There are many options(not that much compare with Photoshop) in the Tool panel, you should check it out.


Usually you wouldn't want to create a muzzle flash using a smoke simualtion. The flash is only visible for one frame.

I'd recommend you to parent a plane to your gun and create a Material for the flash with animated transparency.
Plug an image texture of the flash into an emission shader, so the flash illuminates the scene accordingly.


How do I view the different texture paint of multiple objects simultaneously?

In order to view multiple textures simultaneously, change the viewport shading mode to either Material Preview or Rendered. Material Preview will allow you to view all of the materials in a scene and Rendered will provide a preview of what the rendered scene will look like.
To switch modes, use the four icons located at the top right hand corner of the viewport. The modes (from left to right) are Wireframe, Solid, Material Preview, and Rendered.


What should I do to save the final image in a .png format?

On the Render result screen, Please follow the menu Image -> Save as Image, as shown below:

Seems that you are using a laptop, you will have some combination, you may try
function key + f3 or function key + shift + f3
If you share your laptop model number, I may pin point alternative for you!

Thanks


How to get a proper elastic collision in a rigid body simulation

The values of my example still need to be fine-tuned.

General Rigid Body Tips

Use the simplified rigid body shapes (where possible) and to stabilize the simulation, amplify the scene's scale. (Don't use objects smaller than 1 Blender Unit.)
Adjust the solver iterations. Too few iterations will result imperfect motions, to many will destabilize the simulation because floating point imprecisions will add up. (See this last paragraph.)

For Newton's Cradle

For the spheres you have correctly set the shape to Sphere. Increase the Bounciness to a high value ~ 1 and decrease the Friction to a low value ~0.
Add a small gap between the spheres!
To reduce extra velocity, enable Split Impulse in the Rigid Body World settings and use a Translation Damping value > 0 in the Rigid Bodies' Dynamics Settings.

The stability of the simulation seems to be a delicate interaction of Rigid Body World Iterations and Samples and the gap between the spheres.


GPU Rendering with Mac Book Pro with AMD Radeon R9 M370X 2048 MB?

With GPU rendering it's usually best to increase the tile size to about 256x256.
That way you're not going to-and-from CPU and GPU memory so much.


From your linked definition of iridescence:

  Iridescence [is] the property of certain surfaces that appear to change color as the angle of view or the angle of illumination changes.

Thus, the following node setup should suffice:

If you're not familiar with node groups, this will create a new "node" called Iridescence that takes a base color parameter (you probably want white) and a factor parameter (which determines how strong the iridescence is; you probably want about 0.4) to output a color that you can put into a shader. You can see examples of how this works before.

The setup simply takes the dot product of the view vector and the surface normal and maps it to a spectrum. If you're not familiar with vector math, you can basically think of a dot product as a measure of how parallel two vectors are: the dot product of two perpendicular vectors is 0, while the dot product of two normalized parallel (or anti-parallel) vectors is 1.

You can put this node group in any shader and get a nice result. I tried it in a Diffuse BSDF, but putting it in a Glass BSDF might yield some nice bubble renders.

Here's an image of Suzanne wearing her iridescent cloak (the factor is set to 1.0 to exaggerate the effect):

Here's the factor turned down to 40% (lower works in better lighting setups, but my sky texture is blowing it out):


Replicating double-sided normals on a cube face, extruding causes inner faces

it's impossible to have two normals per face. (you can check out the documentation of how the mesh datablock is designed)

The only way you can get this situation is if you managed to duplicate the face. (Shift-D for example) So you do have two faces overlapping, facing in different directions. You can verify that by selecting one face and then moving it away, the other one will stay.

Of course I can't really tell what you did in that particular scene.


Why is my glass material noisy and opaque instead of translucent?

It seems like Blender messed up. After messing around for a while to no avail I closed blender. When I went back to it and reloaded the scene the glass was transparent and the graininess for the most part had gone.


Extra vertices created when extruding and scaling?

You have multiple vertices on the same position. Selecting and moving on of them, reveals the other.

Make sure you are in Wireframe View mode. Toggle with Z.
Select the vertices which overlap each other. This can be done by pressing B an dragging a box select over them or by toggling the select all A which will (de)select all.
Do the remove doubles operation. Open up the specials menu in edit mode W and choose remove doubles R. This operation merges overlaying vertices together.


Export/list out object information as text format

It's pretty easy with if you know a little Python.

# import the necessary modules we need
# in our case, blender's python API and python's os module
import bpy, os

# get the current selection
selection = bpy.context.selected_objects

# initialize a blank result variable
result = ""

# iterate through the selected objects
for sel in selection:
    # get the current object's dimensions
    dims = sel.dimensions
    # write the selected object's name and dimensions to a string
    result += "%s - %.03fm x %.03fm x %.03fm\n" % (sel.name, dims.x, dims.y, dims.z)

# get path to render output (usually /tmp\)
tempFolder = os.path.abspath (bpy.context.scene.render.filepath)
# make a filename
filename = os.path.join (tempFolder, "newfile.txt")
# confirm path exists
os.makedirs(os.path.dirname(filename), exist_ok=True)
# open a file to write to
file = open(filename, "w")
# write the data to file
file.write(result)
# close the file
file.close()

Copy and paste the above into Blender's Text editor and press Run Script (Alt+P). It will save the data (object name and dimensions) into your tmp folder.


What is the name of this item and how to get it back?

It looks like I have disabled all manipulators like this:

in which case pressing Ctrl+Space does not have an effect.

Turning on at least one of them like this:

brings the manipulator back.

Hovering over the item does not show a keyboard shortcut, so it must have been a mis-Shift-click instead of an unintended keyboard shortcut.


How to automatically complete these edge loops?

One of the method may be using a Knife Project tool. In Edit Mode select all the cross edges with Shift+Alt+RMB (with the edge select mode enabled). Duplicate them with Shift+D, then separate them with P-->Selection. Then, being in Object Mode rotate them along Y axis and scale them by Z axis. Now select the edges, then select the object and enter its Edit Mode (make sure you're in the side ortho view). Press Spacebar and type knife project. In a Tool Shelf (T) check the Cut Trough checkbox. Finally delete the edge loops with X.

Second method may be extruding the top part of the object and scaling it by 0. Select one of the bottom vetex in Edit Mode and snap the cursor to it (Shift+S-->Cursor to Selected). Change the pivot point type to 3D Cursor. Enable snapping tool (click magnet icon and set its type to Vertex). Select all the top vertices of the object, press E, Z (twice) and snap them to cursor. Next press S,Z,0. Finally remove doubles (select the whole mesh with A, then press W-->Remove Doubles) and recalculate normals (Ctrl+N).

Note: I don't know what your topology looks like, but if it looks like the one pictured below you may use a Grid Fill tool.


You need to create a controller bone that will control your IK:

Create a bone from the last one and deparent it with alt P.
Deactivate the Deform option of this bone so that this bone won't deform the mesh of your object when you'll parent it to the armature.
Choose this new bone as the Target of your IK bone.
Move the controller, the bones will follow.


Blender is Crashing Finding Missing FIles

I have the same issue, possibly with the exact same models - I downloaded a couple of the free minikits they had and it crashes whenever I try to find the missing files.
Overall, to fix it I am deleting all the groups except one of them, then saving that group to a separate file and doing the find textures fix. It manages one group at a time with no issue.
I also ran the "report missing textures" then opened the console and saw that KitBash defaulted their texture directory to K:\KB3D\KB3DTextures, so another workaround would be to map a network drive as K: then recreate that directory structure and copy the textures there (this would be the quickest fix but also means you have to map the drive to use them). I am new to Blender, so I am not sure, but there may then be a way to move the textures to the correct directory after doing this. If there is, please let me know :)


user1853's comment in pictures :)

Change Transmission to 1

... or use Glass shader instead of Principled BSDF.

The only weird thing is when I replicate your node, result is totally white, not transparent as yours ... hm. Some changes happened from 2.81?


Hair Dynamics throwing hair all over the place in Blender 2.8

i don't know if you already figured this out, but when the hair is going all over the place, if you want the hair to move together like a head of hair or like a main, you need to set the voxel size high enough, 1.0 is a good start, and then set the hair target hair density to 0.5, and target strength to something like 0.01.  Goal strength i set to 0.3 for cloth and for hair.  That should get you going in the right direction.

Under field weights wind can be an issue, OH and your hair may to heavy at 0.3kg, try 0.08 kg to start, maybe less.


How to Set a Property Value in Blender Game Engine?

Here is one way of setting the property value of a game engine object (which has an int property by the name 'upkeycount')

I have setup the following logic on a cube object

Sensor:Keyboard('UPARRAOWKEY') <--> Controller:Python(increment_up_count.py) <--> Actuator('upkeycount')

and following is the code for increment increment_up_count.py

import bge

cont = bge.logic.getCurrentController()

sensor = cont.sensors['UPARROWKEY']

if sensor.getKeyStatus(bge.events.UPARROWKEY) == bge.logic.KX_INPUT_JUST_ACTIVATED:
    owner = cont.owner
    upkeycountAct = cont.actuators['upkeycount']
    value = owner.get(upkeycountAct.propName) + 1
    upkeycountAct.value = str(value)
    cont.activate(upkeycountAct)

Few variations of the above code can be found at https://gist.github.com/satishgoda/5682945


In mirror mode, why is it not balanced with the reference picture

There could be two reasons:

The reference image is symmetrical but not centered, in this case align the offset of the background image (x,y):

The reference image itself isn't symmetrical. This would require to cut one half of the image off and mirror the other half by a image processing tool.


How can you make it automatically invisible to render if its already invisible in viewport?

Handlers

Could set in a handler. bpy.app.handlers.depsgraph_update_[pre or post] are the v2.8x equivalent of scene update in versions prior.

Run this script once. Now every time the depsgraph updates ( a lot ) it will match the hide render attribute to the objects hide status.

import bpy

def hide(scene):
    for o in scene.objects:
        o.hide_render = o.hide_get()

    return None

# uncomment to clear all
#bpy.app.handlers.depsgraph_update_post.clear()
bpy.app.handlers.depsgraph_update_post.append(hide)


Using noise texture of one object to effect another object

The simplest way to do it is first to create your lines and join them to your plane. Use a Texture Coordinate node (Object output) that you plug into the Texture node you've chosen. The noise will affect both the ground and the lines, with no discontinuity.


Tips and tricks for posing / overlaying correctly a 3D character over an image mapped on a 2D plane

Instead of using an image on a plane use the image as background and composite later using the compositor.
Put the background image in Front and set the opacity to a value where you can see the image and your object.

Consider a few more things: The settings for the camera in blender will make a difference. If you are trying to match the placement of 3D elements on an image, the point where things match reality will only be valid for a single point in space. If the camera is a bit higher or lower or has a different perspective, then everything you do will be off. In other words the camera settings (field of view, height and rotation) should also match those of the original camera.
Use Blam or similar tools to determine the settings and placement of the camera in blender.
Create very basic proxy auxiliary objects that might guide you (like the couch) and help you visualize things when you are not looking through the camera view.

NOTE: Blam is no longer mantained and has been replaced by Fspy: https://fspy.io/, but there is no importer for blender 2.79 or previous versions.
For a detailed post on how to use blam and Fspy read: How can I recreate geometry using a photograph?


Animated cloth simulation parenting troubles

The solution was quite simple. Didn't understand the nature of the baking process and how it worked when the physics object (plus forcefield) was a child of an moving parent (the camera).

Being a bit unexperienced in the physics field I did'nt understand the obvious necessity baking the flag / running the entire animation.

After executing this the flag catched up fine.

Thanks for your kind attention: Often a matter of verbalization of the problem brings one close to the truth -- and solution :-)


Best way to "sculpt" sphere-shaped holes on a sphere surface?

If you use booleans and want smooth spheres as results, increase your original sphere segment counts, later on you can always retopologize if the resulting face count is too high. Starting from a highpoly mesh and working to a lower one can give acceptable results.

The implementation of Blender Booleans is from the Carve Library, this is what the blender dev has to say about how to use booleans (in another very similar question) -- link

The carve library has made it possible to do really nice booleans in blender, but you need sufficient geometry for the polygon based approach to retain smooth shapes.

Cleaner topology results come from being precise about matching up the level of sudivision where the objects interface each other. Taking a highly divided sphere like above and doing a difference with a scaled down sphere with identical vert count will produce more geometry than needed.

Ideally you will have similar face sizes like here:

Use the EdgeSplit Modifier, on smooth shaded faces, in combination with matching face sizes it looks acceptable.


Seeing Construction History for use in python

You can pull down the 'Info' panel at the top of the blender window to reveal the code for operators that have been run:

Here I have deleted an object, added a cube and then rotated the cube.


It's because your mesh is mirrored.  You will have to apply the mirror modifier, and you will probably have to redo your weights.

Hope this helps.


Is there a tool to remesh an object such that it contains a specified number of vertices?

Soooorrrttt oooff.  It will require some math on your part.  And it only works one direction (down, removing verts).

You can tweak the Decimate modifier to collapse to a ratio of vertices kept.  If you know the number of vertices you want and the number you have is look-up-able, then you can directly calculate the ratio:

for target vertex count $t$, vertex count $v$, and ratio $r$ , it is simply
$t/v=r$ .

Remember, Blender can remove vertexes all day, but it can't add any.


As cegaton suggested, I've increased the number of samples (doubled) and the noisy decreased so much!! :)


We have to guess, as you did not provide us with a minimal example file that demonstrates your issue. Most likely, the "object in hands" action contains fcurves for the rest of the body too, not just the arm/hand holding the object. These then override the walk cycle. If my guess is correct, the solution lies in removing the lower body fcurves from the "object in hands" action.


Can I choose when animation in animated dupli-groups starts?

Currently this isn't supported

This used to be supported (in 2.49), using the Time Offset field on the empty object instancing the dupli-group.

However support for this is planned. One of the goals for having an improved dependency graph (currently in development), is to have local time for group instances.


How do I make a square when the existing edge is not alined to any of the axes?

With the edge selected open up the properties pane with N Scroll down to the Mesh display section and turn on Length for the Edge Info.

Now press E to extrude, then press YY to constrain the movement to the Y Normal axis. Pressing XX or ZZ would lock movement to each their respective axes. Finally before you confirm the movement, type in the length of the first edge.


Python: Edit panel to edit custom bmesh face layers?

Set up an approach similar to https://blender.stackexchange.com/a/40264/15543.  One instance of an edit bmesh is added to a global dictionary on editmode toggle via a scene update handler.

A dummy int property is added to the window manager and is used to set the face layer int via an update method.

The dic bmesh instance can also be used in your panel.

import bpy
import bmesh
from bpy.app.handlers import persistent
from bpy.props import IntProperty

# global to hold the bmesh.
dic = {}
# update method
def setlayerint(self, context):
    eo = context.edit_object
    bm = dic.setdefault(eo.name, bmesh.from_edit_mesh(eo.data))
    face = bm.faces.active
    cfl = bm.faces.layers.int.get("collision_flags")
    if face and cfl:
        face[cfl] = self.layer_int_value
    return None
#layer_int_value is used to set the value
bpy.types.WindowManager.layer_int_value = IntProperty(name="Collision Flag",
                                                      update=setlayerint)
#keep wm.layer_int_value updated to active face
def set_collision_flag(bm):
    face = bm.faces.active
    if face is not None:
        #print("BFace", face, face.index)
        cfl = bm.faces.layers.int.get("collision_flags")
        if cfl:
            bpy.context.window_manager.layer_int_value = face[cfl]
    return None
#scene update handler
@persistent
def edit_object_change_handler(scene):
    obj = scene.objects.active
    if obj is None:
        return None
    # add one instance of edit bmesh to global dic
    if obj.mode == 'EDIT' and obj.type == 'MESH':
        bm = dic.setdefault(obj.name, bmesh.from_edit_mesh(obj.data))
        set_collision_flag(bm)
        return None

    dic.clear()
    return None

class MarioKart8EditPanel(bpy.types.Panel):
    bl_label = "Mario Kart 8"
    bl_region_type = "UI"
    bl_space_type = "VIEW_3D"

    @classmethod
    def poll(cls, context):
        # Only allow in edit mode for a selected mesh.
        return context.mode == "EDIT_MESH" and context.object is not None and context.object.type == "MESH"

    def draw(self, context):
        obj = context.object
        bm = dic.setdefault(obj.name, bmesh.from_edit_mesh(obj.data))
        face = bm.faces.active
        collision_flag_layer = bm.faces.layers.int.get("collision_flags")
        if collision_flag_layer is None:
            self.layout.row().label("No collision layer.")
        elif face is None:
            self.layout.row().label("No collision face selected.")
        else:
            wm = context.window_manager
            self.layout.prop(wm, "layer_int_value")
            #self.layout.prop(face, '["collision_flags"]')
            row = self.layout.row()
            row.label("Collision Flags")
            row.label(str(face[collision_flag_layer]))

def register():
    bpy.utils.register_class(MarioKart8EditPanel)
    # clear the handler for testing purposes.
    bpy.app.handlers.scene_update_post.clear()
    bpy.app.handlers.scene_update_post.append(edit_object_change_handler)
register()

Note could add something like the active_face_index to the dic and check on change, instead of constantly setting the face layer value.


Python script renders a collection even when excluded from view layer

I did this recently, you have to access your collection through specific view layer.
You should try :
my_view_layer = bpy.context.view_layer #up to you

#append to sideplates only checked collection
sideplates = []
for collection in my_view_layer.layer_collection.children["RACK 1 - 1 RACK FRAME"].children :
    if collection.exclude == False :
        sideplates.append(collection)

##render individually checked collections
for s in sideplates:

    #exclude every other collection
    for sp in sideplates:
        if sp != s :
            sp.exclude = True

    ## RENDER STUFF ##

    #restore exclude attribute
    for sp in sideplates:
            sp.exclude = False


Need help with recreating organic microscopic material in blender

Dot Product and Fresnel

In your nodes you should consider the dot product node depicted in the image below or fresnel node

VectorA • VectorB

computes the strength of the parallel component for the two vectors as a scalar.

VectorA and  VectorB are normalized for ease of understanding.
A result of [1.0] would mean the vectors are parallel
A result of [0.0] would mean the vectors are orthogonal
A result of [-1.0] would mean the vectors are antiparallel

In the image provided in the question the color is different at the glancing angles and more transparent when looking directly at the faces of an imagined 3D model.
[viewing vector] dot product the [face geometric normal vector]
Using the result of VectorA • VectorB  can be used to determine the mix of two colors or transparency and et cetera.  When they are not so parallel use different color.  vector1 and vector2 can be normalized.  When the dot product is close to zero [0.0] then the vectors are at right angles.  You will be able to identify looking at the edge silhouette or directly at a face. Experimenting with this will be a start.
dot product and those vectors are  available in the nodes

https://en.wikipedia.org/wiki/Normal_(geometry)

https://en.wikipedia.org/wiki/Dot_product

This has been used in 3D CG long ago 40+ years

Image above with dot product calculations.  When your viewing vector is more orthogonal to the [face normal] the color will be more opaque.  When your viewing vector is more parallel to the [face normal] the color will be more transparent.  Transparent factor is the property that was designated to be affected by the calculation.

Please also secondarily search Fresnel which is related.
Depending on your models.  You could consider textures and the compositor.
At this moment this is not a tutorial.  I am trying to give you some quick action tips.


Duplicate objects transformation applies to both objects

This could be...

Proportional editing, (disable in 3d view header)
Objects can share an action (shared animation data), (check the action space with each object selected)
a constraint, check object constraints
a driver (unlikely this would be setup by accident, but drivers can do this still)


Friction with balls rolling down a funnel

I  don't know ... in theory right curvature (what is right?), enough weight and initial speed should work, but didn't for me either. It is loosing speed too quickly. Some low Friction helped a bit, so its not such slippery.

add Vortex force field, Strenght 20, Inflow -2 and
lower Gravity to -4

to make it work. Even this is not going in spiral, but in oval. I'm not happy about that, but probably better something than nothing.

Also there seems to be some collision margin, but I checked sphere and collider, there is almost notnihg.

Notes: Initial ball velocity is given by animation (first 10 frames). To make it work for riggid body you have to ad two keyframes to two animate checkbox frame zero on/ frame 10 off (Physics Properties > Riggid Body > Settings > Animated)


Note: This is non destructive way to do such thing. You can always use
  Proportional Editing to directly model this shape.

Add a Plane and Subdivide it as much as you need/want.

Add Lattice and Scale it by 2.
Go to Lattice Data tab and set U: 3, V: 3, W: 1.

Add Lattice modifier to the Plane and choose Lattice as Object.

Go back to Lattice in Edit Mode, select needed vertices and Scale them down and also move center vertex on the Z axis.

Blend file:


How to align view to 3D cursor orientation?

There's an align tools addon in vanilla blender that has 3d cursor option. But it appears to be buggy.
I wrote an addon for that just now. So it probably has bugs. It has only one functionality for now: align view to 3d cursor.
link to addon
Important Note: It can be used in object and edit mode but it removes (unselects) previous selections. It's not hard to fix that. I probably fix it when I have time. Or feel free to fix it yourself.
let me know if you found any bug or any way to improve this addon.


Python: How to get object's true length?

You can use the below script to get the dimensions of the selected object:

x = bpy.context.object.dimensions[0]
y = bpy.context.object.dimensions[1]
z = bpy.context.object.dimensions[2]

which is controlled from the 3d view as shown below:


Problem with rigging after object rotation

I don't know, but I would try to use parenting to make a hierarchy. By doing this you need only to move one object, and the rest will follow.

Note the differences in the outliner:


My guess is that you are in edit mode. The bge will only start in object mode.

Adding this line bpy.ops.object.mode_set(mode='OBJECT') to your script will alleviate that issue.

Your edited code:

import bpy

bpy.context.scene.render.engine = 'BLENDER_GAME'

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        bpy.ops.object.mode_set(mode='OBJECT')
        override = bpy.context.copy()
        override['area'] = area
        bpy.ops.view3d.game_start()
        break


Make an object not cast a shadow in eevee

Yes, by setting a material to an object and in properties panel choose Materials > Setting > Shadow Mode : None


Rendering large amount of short videos with different generated "animation"?

Ramdomizable setup

Basic components/

Plate parented to "car", car is driven along a curve using follow
path constraint.
Camera has a track to constraint, tracking its view axis -Z to the Plate

Zooming in.

Here I've chosen a frame change handler. The handler takes the scene as an argument. Our camera is scene.camera, our target object is the target of the track to constraint.

The camera is put into field of view mode, and the angle is calculated by the handler. Simple equation using the diagonal length of the plate (target) and the distance from camera to target.

Copy , paste and run script below to set up the handler.

import bpy
from math import atan

def zoom_cam(scene):
    cam_obj = scene.camera
    con = cam_obj.constraints.get("Track To")
    obj = con.target
    #w = max(obj.dimensions)
    w = obj.dimensions.length # diagonal on plane.
    mw = obj.matrix_world
    cam = cam_obj.data
    l = mw.translation - cam_obj.matrix_world.translation
    cam.angle = 2 * atan(w / l.length)

# remove the previous for testing
bpy.app.handlers.frame_change_pre.clear()

bpy.app.handlers.frame_change_pre.append(zoom_cam)

Producing this result.

Mixing it up.

Every time the handler comes to frame one could randomly set any or all of

the camera object location
the curve transform (loc, rot, scale) as well as shape keys
swap curve objects with others in scene
the plate object texture image (for different plates)  Find link re this
randomize the zooming in handler
put some noise on constraint influence


You can see all the sounds that are being used by the blend file by using the 'Outliner'.

Change the display mode of the 'Outliner' by changing the dropdown box from 'All Scenes' to either 'Sequence', 'Blend File' or 'Data Blocks'.

'Blend file' and 'Datablocks' each have a 'Sounds' section which lists all the sound files that are in use in the current blend file. The 'Sequence' view will only show audio files in use in the Video Sequence Editor and not in other sections of blender.

To further filter the results in 'Sequence' view for just audio and not video or images type the extension of the audio files, in this case '.mp3' into the search box.

Each of these views only lists audio files that have been loaded into blender and not a direct way to edit the audio file.


Yes bones are mirrored if you enable x-axis mirror and as long as everything in the name is the same except 'Left' and 'Right' and can even be directly next to a letter if you use it as suffix. If you use 'Left' and 'Right' as prefix, then separate with '.' (period) or '_' (underscore)

But if you use 'L' and 'R' it cannot be next to a letter, but has to be separated with '.' (period) or '_' (underscore)

For example prefixes:

L.Bone and R.Bone
Left.Bone and Right.Bone
L_Bone and R_Bone
Left_Bone and Right_Bone

or suffixes:

Bone.L and Bone.R
Bone.Left and Bone.Right
Bone_L and Bone_R
Bone_Left and Bone_Right
BoneLeft and BoneRight


How can I delete a UV unwrapping to start again?

You can start again and re-do the UV unwrap just by doing the unwrap command again. In edit mode press U and select any of the methods. The UVs will be redone with the new method and the old UVs will be discarded. The mapping methods are explained here.

There is one exception to the above and that is UV pinning. If any of the UV vertices are pinned (they are red), you need to unpin them first with Alt+P. Pinning prevents UV vertices to be re-done.

Deleting the UVs is another thing. One mesh can have multiple UV unwraps and you will find them in Mesh Properties:

You can delete any UV map completely with the - button.

If there is no UV map awailable, the unwrap operator U does create one automatically when unwrapping.


You are not supposed to plug a composite node into the denoise node- or any other node for that matter.
The composite node represents the output the compositor will return. What you plug into it will be returned as the output.
To use the denoise node, you will instead need to hook it up to the render layers node. This is the output from the render result you have just generated. Plug "Noisy Image" into "Image", "Normal" into "Denoising Normal", and "Denoising Albedo" into "Albedo". Now drag the output "Image" of the denoise node into the input "image" of the composite node.
The compositor is designed to change the render result, sort of like an image editor except it is node based and more powerful.


Node editor's backdrop and render result are not the same!

You are looking at the render layer not at the composite.
Change to composite here:


Python automate Assign parent relation and keep transform

You have to set the inverse matrix  of the child to clear the initial transformation of the parent at parenting moment :

obj1.parent= obj2
obj1.matrix_parent_inverse = obj2.matrix_world.inverted()


Point features to 3D models with same scale of object

Object Link Data substitute the whole mesh, not the vertices

The method you proposed works with the substituction of the Mesh Data, but it requires to have multiple objects to work with (one object for each pole).

Currently, all the points are all binded inside the same mesh data, so they are simple vertices of the same mesh. Points are currently threated as a whole. Look in the outliner that only an object is selected:

You'll need at least to split each vertex into an individual object and set the origin of each new object on its geometry.

Enter edit mode, select all, press P and choose "By loose parts". Notice that now the outliner has many object. One for each disconnected vertex.

Enter object mode without losing the selection and set the origin of all the objects to the geometry.

Now you are ready to Link another Object Data to those object. Before running the operator make sure to apply the scale of your pole object.

Note: You'll probably have many advantages in adopting another approach to the task, like for example using the instancing of dupliverts or a particle system which both offer a greater level of interactivity (object is instanced on the fly, you control only the vertices) and avoid splitting the objects in many other objects.


ad Plane, Subdivide, Modifier-Cast>Sphere controled by Empty to get base curvature of glass

ad another Plane as TV-glass, Modifier-Cast>Sphere to set oval sides from front view, Modifier-ShrinkWrap to get base curvature of first Plane, Select edge loop and Extrude it in Y axis (to avoid shrinking this extrude create Vertex group of front faces and assign it to modifier)

select extruded faces, duplicate, separate ... and you have a frame, ad solidify modifier ... TV box as ussual :)

Note:
- use Subdivison Modifier as much as you need
- thanks to modifiers you can adjust front and side shape any time to make it more or less sphery :)


Overlapping Grease pencil showing jagged white or black edges

Amazing my problem was solved with the 2.81 update. I literally did nothing, just waited for an update. Do you ever get that weird feeling that everything is ok?


Offsetting flames and/or smoke from the emitter

You could try making a fake emmitter. Basically an object that has faces where you want the smoke emmited.


Topology for a disk with circular holes?

As was already recommended in the comments, don't use booleans, they are a beginners trap. They can be extremely useful but they are also dangerous.
Until you understand how edge flow, tensions and general topology work I'd advise to stay completely clear of them.

The "perfect topology" doesn't exist, what you can make is clean topology, clean topology is made of mostly quads (four sided polygons) of very similar edge length, there are other rules and guidelines, but as long as you adhere to those two points you will be in the clear for the most part.

Have a look at the site Duarte linked: Topology it has a lot of very good examples.

This object as far as I understand has 16 holes and 8 spikes, so you can make just an 8th of the full spin and then instance it around a circle using the array modifier and an empty.

Like this:

Create a piece matching the "period" of your full model, in this case this is dictated by the spikes, there are 8 spikes, so you need to pick a 45° section and model it:

I'm using looptools to make sure my square holes are perfectly square, you can do something similar without enabling looptools by using spherify, ALT+SHIFT+S.

This is how it looks with Subsurf:

Finally you use an empty and an array modifier to copy the piece and rotate it around its origin:

Hope this helps, I'd advise starting over and keeping the un subdivided mesh fairly simple.


How to overide custom node operator variables in the execution

self.node is set in invoke.
THe operator is designed to be invoked by pressing its button displayed on its node.
The operator defines
self.node = context.node

in its invoke method, and uses self.node in its execute method, and will hence not work unless invoked.
bpy.ops.foo.bar(override, 'INVOKE_DEFAULT', filepath=somefilepath)

IMO the simple fix is to edit the operator to use context.node as the node in place of self.node by placing
self.node = context.node

in the execute method also.
Alternatively return self.execute(context) from the invoke method if the value passed to self.filepath is a valid filepath and use
bpy.ops.foo.bar(override, 'INVOKE_DEFAULT', filepath=somefilepath)

to ensure it is invoked and node is set.
A note on overriding.
What you are passing in the override dictionary are context members, eg
override = {"foo" : "bar"}

then if passed as an override to  the operator
context.foo == "bar"

is true within the operator.
The filepath is a property of the operator, not the context and is hence not going to do diddly squat if passed as part of the override.  The operator (self) and context are not the same.  Pass it to the operator as a keyword variable.
Fork it.
Finally, fork and make the changes, or suggest / request  changes to the maintainer of the addon, so that it can be executed directly, or to find out if there are reasons why it cannot.


Blend modes are implemented in the Color>"MixRGB" node, and are almost the same as in any layered 2D graphics software, like Photoshop or Gimp.

  Premise

  Such Nodes don't act in the 3D
  world, but either on the 2D space of a surface's material or on the
  (still 2D) space of the rendered canvas.

  In the 3D raytraced rendering, the color and intensity of each ray
  that hits the camera depends on its path through the scene's
  materials, that can be comprised of reflections, refraction,
  translucency, diffusion etc, in a way that is meant to be faithful to
  reality.

  In principle, you can't make two distinct objects "blend" their
  appearance in the 3D scene through 2D blending modes, i.e. by
  just arithmetically adding, subtracting,
  averaging the colors of different layers.  If
  you're looking for a way to fake this behavior, then my answer isn't
  the right one for you.

To create a textured material for Cycles whose (2D) texture is obtained by blending different layers, you can follow these steps.

Select your object and assign an UV map to it. I've done this by selecting it (in my example, half a cylinder) in edit mode and hitting U.

In the UV/Image editor window, open all the images that you will need as layers

Then create a new material and open the Node editor window.
Add new nodes by clicking "Add". You will need:

An "Input">"Texture Coordinate" node, and its "UV" socket to obtain information from the object's UV map
As many "Texture">"Image texture" nodes as your layers. Remember to connect their "Vector" input to the "UV" output from the Texture Coordinate node
Several "Color">"MixRGB" nodes to do the actual blending pairwise. They are displayed with different names in my screenshot, depending on the selected Blend mode.
Any "Shader" node (in this example, "Diffuse", that should be already present by default). This will take the Color output from the last MixRGB and its output will be plugged into the "Surface" socket of the Material.

Here's the complete node setup based on the example in your question

And here's the rendered result


Blender 2.8 - No xyz arrows on vertices in edit mode?

The gizmos can be brought back from the gizmo menu:

Tools also have gizmos by default:


How to edit shape keys with the armature deformation in needed position?

Do you use this button in modifiers?

I think, this is that you are searching for.


How to put a cursor in the middle of the screen?

Aside from this method, if the "cursor" always stays in the middle of the screen, another way would be to parent an object to the camera (⎈ CtrlP):


How can I make stubble facial hair in Cycles?

By default particles will use the same material as the object they are emitted from. To use a custom material for your particles you need to add another material to your object -

then assign that material to your particles in the particles render settings.


How to avoid flattening a shrinkwraped object?

I would add the scales to the fish mesh using a particle system. You can create a couple of separate scale objects, and then use the particle system to instantiate those on the fish skin.


In animation nodes rotation around an object

Use Combine Matrices node. You can add more to the matrix list for more complex transformations.


How to add custom property to bone in pose mode with python?

1st Method

Assign a custom property to an existing type

"type" are blender data types please note that "Bone" is different from "PoseBone" type
"custom_float2" is just random name it can be anything you like

bpy.types.PoseBone.custom_float2 = bpy.props.FloatProperty(name="Test Prob", default=0.3, min=0.0, max=1)

For more description on Creation of Custom property
Then Assign it to the bone you wish to use it with

bpy.data.objects["Armature"].pose.bones["Bone"].custom_float2 = 2.0

Select the bone in pose mode and you will see the custom property
Note: bones["Bone"].custom_float2 is unique from bones["Bone 2"].custom_float2 and bones["Bone 3"].custom_float2 just you have to repeat step 2 to assing custom property to other bones

2nd Method

Create the property. Assigning some value is very important.

pbone = bpy.data.objects["Armature"].pose.bones["Bone"]
pbone['myControl'] = 0

Now as Jerryno pointed To change min, max, softmin or softmax you need to adjust the _RNA_UI_ dictionary with those parameters.
There are few things have to be kept in mind.

_RNA_UI is a single dictionary for all ID-Properties for any given object.

we have to check if this _RNA_UI dictionary exists if not create

if "_RNA_UI" not in pbone.keys():
            pbone["_RNA_UI"] = {}

And we have to use update() method to append this dictionary

pbone["_RNA_UI"].update({"myControl": {"min":0.0, "max":1.0, "soft_min":0.0, "soft_max":1.0}})


Blender provides settings for this. Use Diffuse (on) Direct (on) Indirect (on) with the rest (including shadow) turned off. This will bake only the light that directly comes from the lamp.
Alternately, you can use the "Diffuse Color" pass to get JUST the color, with no lighting at all.
A note about bake time: Baking will use your render settings, so if you have set up to render a lot of samples, baking will take a long time. Time to render is quite linear, though, so if you bake 5 samples and divide the time it takes by 5, that will be how long each sample will take, and you can use that to estimate pretty accurately how long a bake will take. You could just to 1 or 2 samples to benchmark, but there's a little bit of imprecision in how long any given sample takes. Calculating from multiple samples evens that out.

From the Manual:

Bake Modes
Combined
Bakes all materials, textures, and lighting except specularity.
Combined Pass Options The passes that contribute to the combined pass can be toggled individually to form the final map.
Ambient Occlusion
Bakes ambient occlusion as specified in the World panels. Ignores all lights in the scene.
Shadow
Bakes shadows and lighting.