Particles render in front of other objects Situation: I wanted to render a scene which is made up of a few flowers model in the foreground, and in the background, I have a grass particle system.

Problem: Whenever I tried to render, there seems to be a bug which looks like the image below. It's as if a part of the grass is displayed over the flowers, which should've been in the background. How do I fix this?

After trying over, I found that one solution is to turn off 'strand render' under render settings on the particle system of the grass. That way, I wouldn't see those overlaying grass effect. However, when I turn it off, I would have a different result for my grass and it doesn't look good at all.
Here is my Blend file: http://www.pasteall.org/blend/30319

Well, my blend file is too big to be uploaded so I deleted some settings and objects in order to have as minimum size as possible. I used just a plane on the blend file above. but as you can see the problem still applies. When we render, there are a few traces of grass over the plane.

The hint from cegaton's comment solved the issue. I had only to increase the end clipping distance in the camera behind the plane with grass.


cloth and collision problem problem:
I want to make it looks like the cup is passing through the curtain but it seems like the curtain are attached to the cup??
I am using cloth modifier for my curtain and collision modifier for my cup.
question:
How can I prevent the cloth from the collision?

update: turns out i just have to scale all of my objects, i don't really know the reasons behind of it but it works after i scale it up


extruding handle of mug I am making the coffee mug of "blender guru" in donut tutorial,
when I extrude a face for handle and extrude again for second time,when I want to rotate it.the rotation influences whole the mug n faces.please tell me what should I do.

you have "proportion editing on", this means you'll edit all the vertex inside the "area" controlled by the "proportional size".

disable it clicking on this icon:


Are 3d assets purchased from assets website, say turbosquid editable? I want to save my time in modelling and sculpturing 3d model. I found some assets in turbosquid close to what I want. If I buy it, can it be edited in all aspect? How to know a 3d model in turosquid is editable? If there is no editable 3d model in turbosquid, any other sources to find editable 3d assets?

Yes they are,

Re TURBOSQUID

  Do I have the right to modify Stock Media Products?

  Yes. You may modify them to make your Creations. Please keep in mind
  that no matter how much you modify a Stock Media Product, it still may
  only be distributed as a Creation and is subject to the rules of the
  Royalty Free License.

please read the TURBO SQUID licensing terms to be sure you can use them for your intended purpose.


Why isn't the perspective/focal length correct in this camera track? I'm attempting to use camera tracking on two similar photos to determine focal length and orientation and, subsequently, to reconstruct the scene with geometry. I've tracked all points manually, since there is too large of a perspective change and only two frames. I appear to have gotten a very good solve, with an average error of 0.1334. However, after orienting the camera (set origin, X axis, etc) and trying to match geometry, I realized the focal length was slightly off. The focal length that Blender calculated matches that obtained from fSpy. I also tried a few different focal lengths to verify that I had the lowest error value. I have also tried adjusting the focal length and re-solving to get the trackers to match the geometry, since it's a simple shape with right angles, but with no luck. I believe I've had this same issue after almost every successful camera solve I've gotten in the past. In fact, I think I've only ever gotten one decent camera match, out of numerous attempts over the last few years.
Would anyone be willing to take a look at the file for me and tell me what I'm doing wrong? I would really appreciate it! Here are the images I used, as well as some screenshots.

Delete the trackers with errors (like the one that tracks a reflection in the window, and one that has only one keyframe).
Then set origin, X and Y, and solve again.
Set the tracking scene again.
You can always fine tune placement manually by grabbing any of the tracking markers and moving them so that they align with the grid (presuming of course that the house is really square, which most of them are not). Keep in mind that the camera solve is a constraint, so moving one element will move everything, including the camera, so there is no danger of having any of the tracked elements be misplaced relative to the camera.

Try to line up markers that belong in the same axis (like a wall, for example).
Then just get a cube in there and try to match the features. Start with the edge of the wall that is closest to the camera, then start moving faces to get the height, width and length.
With a minimum of guesswork and re-orienting the markers manually, will get your camera and geometry in the correct place.
For more detail read:
How to align the camera in a solved motion tracked scene?


I made a mistake and moved a surface texture Now some of the triangles are messed up and the back of one arm shows through a transparent inside to the front of the arm's texture in reverse.

From the popular voxel based game ROBLOX, here is my .blend file. Either tell me how to fix it, or fix it for me, thanks in advance.

(source: ezimba.com)

I think you have just moved down a tris of vertices. Select them and grab it on the Z axis with snap to vertex active as in the following pictures:

Moving faces in the 3D view don't interfere with their UV data, so the texture should come back to his initial state (not streched) without further operations.


What are some good low-poly scene techniques? Recently I have noticed that low-poly art has really come into vogue, and I thought it would be helpful if we could collect some helpful concepts and techniques in how to replicate this style.

How can you create pig-art styled low-poly scenes in Blender?

Well, you can:

Use Ambient Occlusion in BI
Use rougher materials
Set up the Depth of Field setting to get a tilt-shift effect
Use the ortographic camera instead of the perspective


Creating a background with stars I know the stuff with the noise texture and the colorramp but when moving the camera something looks kinda off. When searching for this I heard terms like "infinte background" and stuff like that but I really don't know what I should do now. Is there a correct way to display the background or am I just crazy

does it help?
noise texture + color ramp + background + world output
(applied to world, not a mesh)


Result of ray_cast on armature deformed mesh I'am trying to develop a plugin that raycasts an animated mesh to produce pointcloud streams, which then are used as computer vision related training data with known ground truth poses. Everything works fine except of the raycasting when using the ray_cast function on the mesh to be sampled. Below I posted a picture depicting the problem.

On the left, the mesh is undeformed, the ray used is drawn in white and a sphere is created at the hit point result from ray_cast, everything as expected. Middle and right meshs are deformed and the hit points are obviously off the surface.

The code used for raytracing:

def raytrace(obj, ray):
    drawRay([ray[0], ray[1]])
    valid, pos, _, _ = obj.ray_cast(ray[0], ray[1])
    if valid:
         bpy.ops.mesh.primitive_uv_sphere_add(segments=15, ring_count=7, radius=0.01, location=pos)

Any help is appreciated, I'am really struggling with this problem and couldn't find any workaround so far. Many thanks in advance.

Use the depsgraph

To hit the evaluated mesh use the depsgraph. (Assuming 2.8+)

Example, raycasts from global (0, 0, 10) in a negative global z direction.  The object raycast uses the object space of the mesh, so convert the rays to object space and the result to global.

import bpy
from mathutils import Vector

context = bpy.context

ray_co = (0, 0, 10)
ray_dir = (0, 0, -1)

ob = context.object
mw = ob.matrix_world
mwi = mw.inverted()

hit, loc, _, _ = ob.ray_cast(
    mwi @ Vector(ray_co),
    mwi @ Vector(ray_dir),
    depsgraph=context.evaluated_depsgraph_get()
    )
if hit:
    bpy.ops.object.empty_add(
        location=mw @ loc)


Animation attached to objects instead of Armature? I don't understand why a few of my animations are showing up under objects in the NLA editor instead of the armature. I don't know how I messed this up or what the implications are.

Any wisdom is greatly appreciated!

You probably assigned animation Action to these objects.

If you switch to Dope Sheet editor and in header switch from Dope Sheet to Action Editor - there you can assign any animation (listed) to what ever object you have selected.


How do I make a rig with one bone? As stupid as this sounds, I would like to make a rig with one bone.
The reason why is because said rig doesn't have any actually moving parts, it's just one solid object meant to move on its own. Now the tutorials that I've seen on YouTube and other sources don't seem to provide any information on how to animate a rig that's just a solid object that can roll. I'm using this particular rig for an on-rail shooter in Unity, so I have no idea what to do when it comes to these turns for my player model.
Can anybody lend me a hand here?

If I understand your question correctly you just need to be in object mode with your model, then (SH-A) add an "Armature".  Move it into the model's internals somewhere although that's not absolutely necessary.  Press the X-Ray box in it's properties panel under the "Display" tab so you can see it at all times.

Once scaled and positioned, highlite the bone (select it), get into pose mode (CTL-Tab from Object mode).  Highlite it again if it's not already glowing.  Left click on the model to select that first, then with shift held, left click on the bone.  A 'parent' menu will come up.  Select "Bone".  Your mesh model will then be locked to the bone.

Select the bone not the model when back in Object mode, rotate or move it about and your model will follow.


Render a rotation grid of an object Is there any way to automatically generate a rotation grid of an object like in these pictures in Blender?:

Also, I'd like a way to control the exact increments of the rotation if possible

And maybe also use a full 360 rotation, instead of being limited to 90/180.

Any help will really be appreciated!

I made a small addon for you, that you can download here: https://github.com/Hilicot/Blender-Rotational-Grid

after installing it, you can tweak the settings in the Matrix Grid tab in the tool menu and press "create grid" while you have your object selected.

you can also modify that grid or delete it (but you always need to have the original object selected before pressing those buttons)


Driver script not updating mesh I have a driver script being called on an empty's position properties. When the user moves the empty, I'm regenerating a mesh based on the position of the empty. The driver script runs, but the mesh doesn't visibly change (until I go into edit mode afterward). Here's basically what the script is doing:
obj = bpy.data.objects.get(name)
mesh = obj.data
mesh.clear_geometry()
mesh.from_pydata(verts, [], faces)

I tried calling obj.update_tag() but that did nothing (perhaps it's too late in dependency graph update?).
I also tried calling context.view_layer.update() but that gave the error "Dependency graph update requested during evaluation".
I'm using a driver script because it makes it easy to bind to specific property changes of the empty (position, scale, etc.).
Is there a better way to be doing this or a way to force the mesh to update?

Seems like driver related dependency graph issues are common and often go unanswered on StackExchange.
I figured out a workaround:

Modified the driver script to only set a boolean variable to note that a change happened. The driver script also saves what data was changed by the driver.
Added a depsgraph_update_post handler script that does the actual mesh changes (see sample code above).

This approach fixed the problem as it appears that mesh changes made in the update_post of the dependency graph gets updated properly in the 3D view.
Takeaway: Don't modify meshes directly in a driver script because the dependency graph doesn't update it properly until after edit mode.


How to select welded elements with marked seams I'm using Blender 2.8, but I don't think this matters.

Is there any way to select an entire element of a single object (as key L does) that has various marked UV seams? It appears as though marked seams create breaks in the element connection just as if those edges were disconnected.

This means that if an object is broken into many UV islands, there is no longer a way to select it in a single click? Perhaps there is some way to customize the function of the "select linked" command?

Thank you!

When you use the Linked select, on the (T) toolbar popup you can choose what kind of link you want to use.

If this menu is collapsed there is a + tab that can open it back up on the bottom of the toolbar.

Blender usually automatically sets it to the Seam selection once you've unwrapped your object, but you can [shift]+[click] any of the options to turn them on and off. (If you know programming, this is an AND function; it will only select something that fulfills all of those selections.)


Importing FBX with camera & target placeholders I am importing FBX files that have camera placeholders.  They will import as Empty's in blender that may have useful animation.  I want to add add a camera to each as a child (inherit animation) and align the view to the placeholder's alignment, parent it, and add a TRACK_TO constraint if there is a "cameraName.Target" Empty placeholder.

The following is an example script that worked for me.  I first (manually) created a collection named "cameras" and moved all the Empties into that collection.  I skip any existing cameras in case I run the script more than once.
import bpy

for obj in bpy.data.objects:
    hasACamera = False
    if ( ("Camera" in obj.name) and ("Target" not in obj.name) and (obj.type != 'CAMERA') ):
        for child in obj.children:
            if (child.type == 'CAMERA'):
                hasACamera = True
        if ( hasACamera is True ):
            print( obj.name + ": already has a camera")
            continue
        print( obj )
        print( obj.type )
        bpy.ops.object.camera_add()
        bpy.context.object.name = obj.name + ".Camera"
        print( bpy.context.object )
        print( bpy.context.active_object )
        sel = bpy.data.objects[bpy.context.object.name]
        print( sel.name + " align"  )
        bpy.ops.transform.transform(mode='ALIGN', value=(0, 0, 0, 0), orient_type='GLOBAL',
         orient_matrix=((1, 0, 0), (0, 1, 0), (0, 0, 1)), orient_matrix_type='GLOBAL', mirror=True, use_proportional_edit=False,
         proportional_edit_falloff='SMOOTH', proportional_size=1, use_proportional_connected=False, use_proportional_projected=False)
        sel.parent = obj
        bpy.ops.object.collection_link(collection='cameras')
    if ( (obj.type == 'CAMERA') and (".Camera" in obj.name) ):
        targetName = obj.name[0:-7] + ".Target"
        try:
            targetObj = bpy.data.objects[targetName]
            if obj.constraints["Track To"] is None:
                print( "adding Track To constraint" )
                obj.constraints.new(type='TRACK_TO')
                obj.constraints["Track To"].target = targetObj
        except:
            print()
```


How to add a "select path" input in a UI addon script? I have to allow users of my addon to select a path via the directory browser window of blender.

The path is already set in an external ".conf" file, but I need it to be customizable via blender GUI, to avoid users to edit the config file manually.

I tried many things, (note that I'm a novice with the blender API), for example :

#(...)
bpy.ops.buttons.directory_browse()
# or
col = layout.column()
col.operator("file.directory")
# or
col.operator("buttons.directory_browse")
# or
col.prop(path, 'choose a folder')
#(...)

But nothing works. And can't find a way to do this after a day of seeking.

What I want to achieve is something like this :

Note that the input could be pre-filled with the config file's default value.

Thanks by advance.

Well, I finally found a solution:

First, I had to define a custom property in the register() function:

def register():
    bpy.utils.register_module(__name__)
    bpy.types.Scene.conf_path = bpy.props.StringProperty \
      (
      name = "Root Path",
      default = "",
      description = "Define the root path of the project",
      subtype = 'DIR_PATH'
      )

def unregister():
    bpy.utils.unregister_module(__name__)
    del bpy.types.Scene.conf_path

Then in the draw() method of the panel class, I had to call the property this way:

def draw(self, context):
    layout = self.layout
    col = layout.column()
    col.prop(context.scene, 'conf_path')

And... it worked!

Now, I wanted to display the default value (which is stored in a separate ".conf" file), in the "file input" when Blender starts (or the add-on is enabled).
To do so, I just had to call a function which get this value, and put it in the "default" parameter of the property definition:

def register():
    default_path = get_path_from_config_file()
    bpy.utils.register_module(__name__)
    bpy.types.Scene.conf_path = bpy.props.StringProperty \
      (
      name = "Root Path",
      default = default_path,
      description = "Define the root path of the project",
      subtype = 'DIR_PATH'
      )

And that's it!


I am having trouble with the subdivision surface modifier I am using Blender to try to create a simple handgun, though I have run into quite the problem. I am an noob at Blender so please forgive my simple understandings. With edge split it creates blotches and leaves holes as seen here:

 Without edge split it does a similar thing, as seen here:

 Though it doesn't create holes, it just folds out in a very strange way. Any help is much appreciated.

Subdivision Surface modifier folds stuff. It's kind of meant for that. It smooths your mesh, it's not like it actually subdivides. It emulates subdivision placing "imaginary" vertex in middle of the existent ones. Those imaginary ones can't be edited, they move calculated by the program as you move from point to point the real ones, and when you apply the modifier, just then they come to life. There is no way to correct that bending using just the modifier, I believe.

Why don't you try, actually modifying the mesh using Space->Subdivide or in the viewport in Edit Mode: T(on left of view port) ->Subdivide ?

Be aware that will add real vertex to the thing and make it heavy if abused. Next time if you are planning on doing all with the Subsurf, start right from the start using it, and model your thing with it active. I'm telling you that doing that will turn your crazy, because the program will still smooth the planes; I mean you will be working with the vertex putting them in places that make your modified by modifier mesh "nice" to the eye, but at the moment of turning the modifier off at any given moment, you'll realize that the vertex are not actually where you put them. Because the modifier calculates stuff placing them that way so that the algorithm for the modifier shows you nice stuff.

For the time being, use the Subsurf modifier for organic stuff of smooth stuff, and not for sharp edged things like rocks, guns, etc. You can always use cylinders, cubes and subdivide them with "real subdivide". And turn on the Smooth shading in the T menu (on left of view port) in Object mode.

EDIT: Please, take a look at this page. These are the geometries you need. Although 2nd option may be better since doesn't require you to add geometry at all.

Keep sharp edges when using subdivision surface


How do you sample an image at a computed coordinate in the context of a Blender Internal node-based texture? I am experimenting with procedural textures, and I'd like to create a texture like

x = A.dot(orco-P0)
y = B.dot(orco-P0)
output = image[x][y]

It is not THAT hard to compute dot products in nodes (although it is a lot of clicking).  The roadblock I am hitting is that the Image input has no input for coordinates.

How can I accomplish my mission in texture nodes?  (This is using Blender Internal in case that wasn't clear from the subject line)

The calculations belong in the material not the texture.

The nodes for a texture define the colour for every available point as if it was an image.

The texture node in a material requests the colour from the texture at a specific point. The vector input to the texture node defines the point requested from the texture.


Automatic weight painting does not deform the mesh of my character? I found a situation that I don't understand. It seems that the automatic weight painting does not work with the girl that I have rigged using rigify. I don't understand the reasons of this behaviour,because :

1) I'm trying to deform the parts of the mesh that are attached with the DEF bones

2) I'm repeating the steps that I did previously with the boy and it worked

3) I split the mesh into several pieces and I have attached each piece to the rig called "rig.girl" under the armature modifier tab

Let's take as example the bone called "DEF-forearm.L.001". I would like that it deforms the "braccio_sx_girl" aka arm_left_girl. What I do to achieve this output ?

a) I select the bone "DEF_forearm.L.001" ;

b) I press SHIFT and then I select "braccio_sx_girl" ;

c) I change from object mode to weight paint mode ;

d) I do weights / assign automatic from bones ;

but the mesh is not deformed....

NB : I repeated again the steps from "a" to "d" with the boy and it worked.

This is the blender file.

My friend, you have "Face selection masking for painting" enabled. Disable it by clicking on the icon in the red circle on the image attached, and everything will back to normal.


How to use loopcut_slide operation without any UI? So i need to perform some basic loop cut and slide operators on a mesh.
The edge index is known and the slide amount is also fixed.
using override method from How do I override context for bpy.ops.mesh.loopcut? i am able to perform the cut successfully inside blender script editor.
but when run without the UI the the script gives an error.
I would also like to know if there is an alternate non-UI based methods to perform loop cuts with proper UV updates
here's an example version which adds loop cuts and smooth operation. tested on Blender 2.83 script editor
import bpy

bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete(use_global=False)

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0))
bpy.ops.object.editmode_toggle()

win      = bpy.context.window
scr      = win.screen
areas3d  = [area for area in scr.areas if area.type == 'VIEW_3D']
region   = [region for region in areas3d[0].regions if region.type == 'WINDOW']

override = {'window':win,
            'screen':scr,
            'area'  :areas3d[0],
            'region':region[0],
            'scene' :bpy.context.scene,
            }

bpy.ops.mesh.loopcut_slide(override,
MESH_OT_loopcut={
"number_cuts":5,
"smoothness":1,
"falloff":'INVERSE_SQUARE',
"object_index":0,
"edge_index":4,
"mesh_select_mode_init":(False, True, False)
},
TRANSFORM_OT_edge_slide={
"value":0,
"single_side":False,
"use_even":False,
"flipped":False,
"use_clamp":True,
"mirror":True,
"snap":False,
"snap_target":'CLOSEST',
"snap_point":(0, 0, 0),
"snap_align":False,
"snap_normal":(0, 0, 0),
"correct_uv":False,
"release_confirm":False,
"use_accurate":False})

bpy.ops.object.editmode_toggle()

```

bmesh bisect does exactly this...but its not automated like bpy loopcut so make sure to select all the faces you need to cut and you'll need to provide the cutting location & direction yourself.
import bpy
import bmesh
import math
import mathutils

bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete(use_global=False)
bpy.ops.mesh.primitive_plane_add(enter_editmode=False, align='WORLD', location=(0, 0, 0))

def bmesh_loopcut(bm,face_list,direction_axis,center='auto'):
    for f in bm.faces:
        f.select = False
    bm.faces.ensure_lookup_table()
    for f in face_list:
        bm.faces[f].select = True

    edges = [e for e in bm.edges if e.select == True]
    faces = [f for f in bm.faces if f.select == True]

    if center=='auto':
        weights = [f.calc_area() for f in faces]
        weighted_centres = [f.calc_area() * f.calc_center_median() for f in faces]
        cutting_point = sum(weighted_centres, mathutils.Vector()) / sum(weights)
    else:
        cutting_point = bpy.context.scene.cursor.location
    geom = []
    geom.extend(edges)
    geom.extend(faces)

    result = bmesh.ops.bisect_plane(bm,dist=0.01,geom=geom,plane_co=cutting_point,plane_no=direction_axis)

# Make a new BMesh
bm = bmesh.new()

obj = bpy.context.object

ob = obj
me = ob.data
bm = bmesh.new()
bm.from_mesh(me)

face_cut=([0])
bmesh_loopcut(bm,face_cut,[1,0,0])

bm.to_mesh(me)
bm.free()
me.update()

```


can't add more than one armature? i want to ask,
so i make more than 1 character in one scene and then i tried to generate rig for my second rig, it didn't want to. and it always go back to my first rig.
i can't add controller to my second character

why?
can't i make multiple rig then? or what? is it a bug?

and what do i have to do if i need move more than 2 character if i can't even generate my second rig controller?

can someone help me? thanks

i use (human) meta rig from blender 2.79b

update:

it doesn't work it still work the same it come back to my first rig

actually this is what happend when i generate my second character rig

and then i generate rig for my first character and then this happen it's like my second character didn't have rig and it overlapping with my first character but only the arrow controller there.

is it because i duplicate my first armature and then adjust it for the second one this is what happen or what?

thanks

You need to go into Advanced options and select NEW:


How to remove black box from my cloud, cycles First I create my cloud via metaball -> converting it with Alt+C-> pressing generate cloud.

Rendering is ok (it doesn't have this black bounding box), but after some time or some manipulations this black bounding box shows up.

However if I copy everything to new file it's ok again. Can it be something to do with way of creating sky?

Any suggestions?

You can check blend file:
https://yadi.sk/d/BZkRwk6T3DqUda

Your max transparent bounces setting is set to 0 in Properties > Render settings > Light Paths:

This setting limits the number of transparent surfaces a ray is allowed to pass through. Setting this to 0 means rays are not allowed to pass through any transparent surfaces, rendering black instead.

Set this to something greater than 0 (e.g. 8) and all should work as expected.


Blender Units of scale and solidify modifier I have my units set to metric, centimeters, and unit scale to 1.0, meaning that each grid square ecuals 1 cm.

My object its about 17 cms long, so it is about 17 grid squares long. I all makes sense until now.
But, when I add the solidify modifier, I set a thickness of 3cm, and the thickness does not look like 3cm at all

It looks like the solidify modifier thickness is using a different scale for some reason.
What can be happening here? How do I know what thickness I am giving to the model in reality?
Thanks

The scale of your object is all over the place:
[![enter image description here][1]][1]
Apply the scale with CTRL-A in Object mode and try again.
[1]: https://i.stack.imgur.com/yL8Ni.jpg


How can I make a perfect sweep with bevel object in Bezier curve(3d) (Pipe) I can't create a Pipe 3D without annoying shrinkage in the corner of my bezier curve using bevel object. Those are my step.
I create a bezier curve (on 3 axes) transforming two corner in Vector corner (to have a perfect angle)

I generate a circle and using bevel object I sweep the circle along the bezier (3d).

Easy...BUT I can't undestand how to solve the shrinkage in the corners. Other artifacts (such as compenetration) comes when instead using a Vector corner I use a normal (automatic) corner and model it in 90 degree shape.

Thanks

Short answer: No you cannot. It's a known limitation of the current system and unfortunately there is no current way around it.

This is currently planned to be improved as part of 2016 GSOC Bezier Curve Improvements, but if it will ever be successfuly done or actually land in an official Blender release remains to be seen.

Either use a 2D curve, which causes no distortions, add extra control points near the tight bends to minimize the deformed area or where possible use separate segments. See this answer for more details.

Alternatively if you want to use simple pipes with exclusively straight or angled segments and don't mind using mesh objects instead try using one of the builtin addons Pipe Joints

https://blender.stackexchange.com/a/53486/19307


Associating extra information to a ray in Cycles Maxwell Render has a feature called Multilight, where the integrator keeps track of which emitter contributed how much to the scene, so that lights can be dimmed or brightened without re-rendering.
As far as I'm aware, this feature does not exist in Blender.

If you wanted to implement Multilight in Blender, you would need to keep track of the different emitters' contributions in the integrator.
So to any ray is associated a series of numbers indicating the contributions per light, and afterwards these extra numbers are available to the compositor (so that the different contributions can be mixed and matched however needed).

My question is not about Multilight, but rather about a more general problem:

  Is it possible (and if so, how) to associate in Cycles' integrator to every ray some extra piece of information, process it on every bounce, and have the result available in the compositor?

The Multilight case is an example of this, but here are two others:

calculate for every ray the total distance it has traveled from camera to emitter
keep track of how many times a ray has hit a certain object

For the first of these, I'm aware of the Ray length socket in the Light path input node, but I don't see how to keep track of all these things along an entire ray.

Simple Answere

This is not possible without changing the code of Cycles. ;)

More Detailed

While rendering, there is no data stored about the individual rays, only until the current sampling function returns. There are multiple images – passes – stored and are kept and accessible, but storing data for every ray would need hundreds of gigabytes for large renders. Reading such amount of data would most probably be slower than rendering.

By touching the source of Cycles you could average out additional information about rays into new passes, like the number of bounces or total ray length. This is what other renderers do probably.

Emulating Multilighting

LuxRender allows to create light-groups. The lighting of those groups can be changed later, their color or intensity to be precise.

This behaviour can be achieved in Blender by separating your light-groups onto layers and creating a separate render layer for each group.

In the compositor you could mix these without rendering. Rendering each layer again in the compositor would be easy with the designated button.

Example Scene

Compositor Setup

The pass of the lamps are multiplied with (2, 2, 2) and (0.5, 0.5, 0.5) colors. The same result is achieved when the strength of lamps are changed to 200 and 50 from 100:

Emulating Bounce Count Pass

You would have to create multiple renders with the limit of total bounces increased on each render. Subtracting those from each other one would get the amount of contribution a given bounce provides.

You could multiply 0, 1, 2, etc with the related contributions and sum those. Dividing the result with the sum of the contributions – the last render – would result in the contribution weighted bounce count average.

You could use the bigger than node to get where each bounce contributed at least a little and multiply them with the related 0, 1, 2, etc and get the maximum of those. This would result the maximum bounce count for each pixel.

Bouce Count Setup


controlling the number of edges in a "object in curve" (Sverchok) How I might control the number of edges in the "X" direction for this surface? The edges in "Y" axis are controlled by the "Float series count"

You can use the List-Item node with Int Range which will delete some points along the X axis depending on the step you set in the Int Range node :  ( change the step to get different results )


How do i access the methods for the Virtual Reality addon? I want to access the methods for the add-on of virtual reality viewpoint. How would i do this. I have previously did the hover over the ui, and take the code from there but it did not work. are there an suggestions on what i should do?

Ok, I found out what the problem is.  I looked at the code for the virtual reality addon, and it wants a context argument for bpy.ops.view3d.virtual_reality_display.poll() Now unfortunately, I don't know what it wants for that argument, so you'll have to figure that out.
Hope this helps!

UPDATE:
context MIGHT be bpy.context, but I can't test it so I'm not sure.


How can I enlarge selection without numpad? The  command Crtl+Numpad + makes the selection larger by adding loops to the selection.

The example of mesh:

I want to select 3 loops more. At the moment I do it with Circle Select tool via C but I want to do it faster.

Here is the desired selection:

Just press ctrl and numpad + three times. :)


Cloth simulation broke after slight geometry change Whats up
I made this first simulation of a pair of shorts falling and then getting blown away with some wind and it looks pretty good.

Now i tried to add the waist folds by selecting the upper row of faces, checker deselect, slightly inset them and added some sub surf to smooth it out, but now the cloth reacts unexpectedly contracting on itself when the simulation begins.

It has to do with the self collision because if i turn it off it wont bend.
Any ideas how it can be solved?

If you tweak the Self Collisions > Friction (here set to 15) it seems to work fine.
Edit: So, according to you, the best is to increase the Distance value.


How I can define the order of the panels? at this moment I have I tag with many panels
I do some folder and some __init__.py in order to import all the addons at the same time in the blender's addons_contrib folder.

I did that __init__.py and the main OrigamiPanel.py at the same order that I want the panels, but the panels aren't in the correct order...

all the code work fine, but  ... How I can define the order of the panels?
thanks for any help

As a script author you have limited control of panel ordering.

You can change the initial order they show in relation to each other. (for multiple panels you define)
You can't change the order they display in relation to other panels(defined by other scripts for example).
You can't change the order of panels in existing blend files(see workaround below *).

Panels are shown in the order they are registered,

This means if you use bpy.utils.register_module(__name__) the order they're defined.

Since having to re-arrange code just to change panel order is inconvenient. You can register each class explicitly with bpy.utils.register_class(cls), and re-arrange the order of registration this way. See example.

Note that once the panels are saved in a file - their order is saved too. To ignore the saved order you will you will need to load the blend with Load UI disabled.

* You can workaround this and ignore saved panel location in existing files - by renaming the class. (admittedly a kludge).


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

thanks,

Yes there is a way to do it.

During the scale S :

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

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


Newbie Modeler Question: How to unbend a character arm before rigging I'm just learning Blender, and have figured out a lot, but I haven't grasped a lot of modeling yet. I have a character (Slimer from Ghostbusters) that I'm trying to rig but it came posed, not in a T pose. I'm not good enough to figure out how to bend his arms back into a T pose without destroying the mesh. Any suggestions here?

The character may have been modeled that way and in that case there's not much you can do without deforming the mesh in some way to get it to be in a T pose.


Artefact in imported Hair I have wierd bump in hair and i am desperate.

I created a model in VRoid then exported it to blender. Then made clothes and details, exported the whole thing to MMD. In MMD it worked okayish.
After that i wanted to render motion in blender with fancy lighting and physics. Here's where I faced problems. Exporting back to blender using add-on caused problem with hair - physics had a defect and hair followed after head partly. And also has this weird bump artifact.

Add-on makes automatic mash/bones/weights from MMD, therefore there was a problem. I deleted all hair physics, so next desision was to make new rigid bodies. Still I was met with the same problem. This bump..thing is still there. After 1st rigid body in chain the rest follows the head. The 2nd rigid body follows only partially. Weights and normales are okay, baking all physics doesn't solve it. I would gladly appreciate help

not parented: 2

3:

Paranted:

Apologies as I'm kind of new, so I'm unsure how to fix all of your issues, but I assume the bump is an issue with colliders, as a similar thing happened with one of my models.
Try editing the collider for the head by moving it or making it smaller. This should at least partially help with the weird hair lump. I removed the hair in my screenshot to make it more easily visible, but this specific collider seems to give a lot of issues if you go directly to blender.


Nurb path not rotating or moving in lower section of double pendulum I would like advice on best approach to simulate double pendulum as rigid bodies. I tried 3 UV Sphere connected by strings as nurb paths extending a youtube simple pendulum Blender example which I did get to work. I seem to have hit a dead end.
The .blend file is attached using Blend_exchange.

With this double pendulum, I can only get the middle ball to swing and, after adding the lower nurb path, the bottom ball just gets stuck locking the second pendulum although as you can see the ball's origin does get disembodied on a move - just not the ball itself which remains stuck.  As a newbie, I expect I'm missing something obvious and hope someone can help me out.

I managed to build the double pendulum.  The simulation shows the expected chaotic motion of the two pendulum bobs and so it looks like the Blender physics rigid body simulation is accurate.


Comprehensive list of 'missing' features in Blender 2.8? I am considering moving from 2.79b to 2.8, but I am still unclear of what 2.8 doesn't yet have. Is there a list of all the features it lacks (in comparison to 2.79x).

All I have so far mostly is this from 2018.

  Currently, a few areas area still being completed:

  Stable and well documented Python API for add-ons developers.
  User interface for Collections in the 3D viewport.
  Keymap for left-click select that works well with the new tool system, and a new keymap compatible with other software.
  Making image empty objects a fully-featured replacement for background images.
  Restore support for all the physics systems within the new dependency graph.
  New subdivision surface and multi-resolution modifier implementations based on Pixar’s OpenSubiv.

P.S. also interested in features missing from Animation Nodes.

Blender 2.80 has solved all of these aspects.

  Stable and well documented Python API for add-ons developers.

The Python API for 2.80 is documented in the manual. The API was completed on 24th of May, 2019. It's stable in the sense that there are no major changes between 2.8x releases at the time of writing. Add-ons written for 2.80 continue to work in 2.81 and 2.82.

  User interface for Collections in the 3D viewport.

I assume this refers to the updated outliner. This has been completed, collections and view layer replace the old render layer system from 2.79. The concept is explained in the View Layers and Collections post by Dalai Felinto on the developer blog.

  Keymap for left-click select that works well with the new tool system, and a new keymap compatible with other software.

The new keymap system allows you to choose between left- and right-click select. You can create completely customized keymaps. There is an Industry Compatible keymap included in Blender which may help professionals to transition from other 3D software.

  Making image empty objects a fully-featured replacement for background images.

There are two image object types, the Reference and Background objects. Both are based on empties. This is only for images that do not appear in the render though. If you want your image to appear in the render, then the Image as Planes add-on is still quite useful.

  Restore support for all the physics systems within the new dependency graph.

The major dependency graph changes have been completed. Some technical information about the design can be found in the wiki article Blender 2.8: Dependency Graph.

  New subdivision surface and multi-resolution modifier implementations based on Pixar’s OpenSubiv.

The modifiers now use OpenSubdiv which has been integrated by Sergey Sharybin.


Disabled constraints still being calculated? I ran into an issue where an Eye rig setup to track a camera using bone constraints was causing performance issues. Each eye had a bone with an IK constraint targeting a gaze control bone, which had a Copy Location bone constraint set to copy the Camera.

When I move the camera, the viewport lags badly, even with a relatively simple character. What is strange is that the performance drop continues even if I disable the copy location constraint by unchecking the Eye icon on the constraint panel. This suggests that the constraint is still being calculated even when it is disabled.

Is this correct, and is there any way to deal with this problem? Some of my rigs need a lot of constraints, and I don't want to be stuck with this performance problem when doing basic posing and scene composition.

It's not the constraint that's the cause. The common way to deal with this is to enable "simplify" and globally reduce the subdivision level while you're animating.


using three.js how to add texture to .OBJ object We have exported sample human model(.obj) from makehuman.org along with textures(shirts/trousers as img) and tried to run the same from browser using three.js

Using MeshPhongMaterial tried to add texture(dress) to the human model but it went into indefinite error. pls suggest the way forward.

var material = new THREE.MeshPhongMaterial( { map: THREE.ImageUtils.loadTexture('female_casualsuit01_diffuse.png') } );

var geometry = new THREE.SphereGeometry(1000, 20, 20);
var meshFaceMaterial = new THREE.MeshFaceMaterial( material);
var mesh = new THREE.Mesh(geometry, meshFaceMaterial);
scene.add(mesh);

FYI:

The following is the code snippet being used:
https://jsfiddle.net/84fu6f7m/1/

Thanks
ASH

In your example you're creating the material but not applying it to the Mesh(es) loaded from the OBJ yet. You can do that as follows:

// Create a material
var textureLoader = new THREE.TextureLoader();
var map = textureLoader.load('./diffuse.png');
var material = new THREE.MeshPhongMaterial({map: map});

var loader = new THREE.OBJLoader();
loader.load( './my-model.obj', function ( object ) {

  // For any meshes in the model, add our material.
  object.traverse( function ( node ) {

    if ( node.isMesh ) node.material = material;

  } );

  // Add the model to the scene.
  scene.add( object );
} );

three.js r89. Documentation for THREE.OBJLoader.


Bending / folding issue? Getting issue with the folding mechanism. I want to fold or bend the bar so that it get the 90 degree angle. The mesh getting merge inside each other and to some angle its away from the screws.
Video

Need little detail information regarding the bending or folding mechanism. How it works. Any suggestion or help. Thanks

adding to @moonboots Comment: In edit mode, select vertex, vertices, or part of the "bar" you want to be the Pivot point (internal cylinder), and then RMB: Snap vertices: Cursor To Selected.

Then in Object Mode: RMB: Set Origin: Origin to 3D Cursor.  Then your pivot point will be correct

I then did the same for your "Plane.014" connection point internal cylinder.
I then aligned the bar (origin) to the Plane.014 origin:

And then the rotation of the bar was as desired:

Here is the result:
Also consider setting the Pivot Point to Individual Origins when doing these adjustments, as the 3D Cursor may not be where you want (usually located at 0,0,0):


How to perform basic tasks in Cycles vs. Blender Internal? In Blender Render let's say I want to texture a box.

This would be my process:

Model than UV UNWrap
Bake AO to a image set blend mode to multiply
Add diffuse texture with appropriate blend mode on a DIFFERENT UV Map to allow changing the size of the wood grains.
Add normal or bump with appropriate blend mode on same UV Map as AO.
Add "grunge" layer in which to add decals etc on same UV MAp as AO.

Doing this in Blender Render was really easy.

In cycles I'm getting VERY lost trying to do these exact same tasks. Even after looking at the manual. I think nodes just scare me I'm not sure. I've made SOME progress and I see the power of nodes, but helping me clear up how to do some common functions like these would probably set off a chain reaction of "Oh I see now".

Introduction to Nodes

Well, you can have all sort of nodes, mostly it's quite strait forward what the node does, for an instance the Transparency node or the diffuse, glass, glossy or emission node. Depending on what you want to make you might want to Mix two nodes, for that you would use a Mix Shader node or an Add Shader node, the difference is that the Mix Shader node has a more controll over the Factor that the two nodes are displayed. I'll give some examples of how you can do basic things with nodes.

Giving material an Image Texture

To give a material an Image Texture you would create a Diffuse Node then connect to it the Image Texture Node and plug the Diffuse Node in to the Surface slot in the Material Output Node.

Giving material a normal map

There are couple of ways that you can give your material a Normal Map but a common one would be by simply connecting a Normal Map node into the Normal slot  of the Diffuse Node, also for Normal Map to work properly you have to plug into the Color slot of the Normal Map node another Image Texture Node, this Image Texture would be your Normal Map.

Adding Decals to your material

Adding Decals to your model is slightly more difficult, to add a Decal to your material you would need to connect MixRGB Node into the Diffuse Node, then you will have to connect your Base Texture into the bottom slot and the Decal Image Texture into the upper slot of the MixRGB and finally use the Alpha value as the factor for them both, just like so:


How do you assign a logic brick onto an indivual bone? I am trying to make a simple head turn but there are multiple bones that are part of the object for rigging... every time I try to assign a logic brick in edit mode to only the bone controlling the turn of the head... it assigns it to every bone making the whole body turn.

Blender's logic bricks are attached to an object. An armature is one object that can contain several bones, a simple motion actuator will move the entire armature as one solid object.

To move a single bone you need to create an action, then play the action using an action actuator.


Faster boolean cross section? I'm trying to animate a cross section for a complicated object. I'm doing this by using a difference boolean modifier on the object and then sliding a cube into the object. The results look very nice, but blender basically grinds to a halt when trying to calculate the boolean.

This is easily reproducible: just create a cube, add a subdivision surface, increase to 6 subdivisions (makes a sphere), add another cube, and add a boolean modifier to the first cube. Try to move one of the objects across the other one and observe the incredible slowness.

I've tried to decrease the number of vertices and faces in my scene, but it's a complicated object, so I cannot get much below 100k vertices.

There are some other methods of generating a cross section (using nodes, or camera clipping plane), but I like the look of the boolean which produces nice, closed objects instead of open ones.

Is there any way to speed up the boolean?

EDIT: to be more specific, I'm not really looking for a cross section, but more of a "cutaway view", as described in this post.

You can achieve a much much faster cross section effect (almost real time) by using a simple mesh circle with a Shrinkwrap Modifier.

To set this up:

Add a mesh circle (Add > Mesh > Circle) with at least 64 verts.
Scale the circle so it's bigger than object you want to slice, and position it so that the center of the circle is at the center of your object more or less.
Add a Shrinkwrap modifier to the circle object and set the Target to the object you want to slice into cross-sections.
Set the Shrinkwrap mode to Project, and toggle both the Negative and Positive Direction on.

That's about it. You can move the circle up and down to see the cross section effect. You can hide the target object or move it to another layer to see only the cross section.

You can add depth to the circle and make it renderable by adding a Skin Modifier.

If the Shrinkwrap modifier is misbehaving, try to scale the circle or change its center position.

Here's how it looks with Skin and Subsurf modifiers added, played in real time in OpenGL:


The amount of samples in cycles render won't change I have a problem regarding the samples setting with cycles render on blender. Whenever I made changes to the amount of the samples I want in the samples setting it just won't save, it always revert back to 135, the amount of samples I used the first time I tinker with it. I want to use lesser amount of samples for preview purpose, and increase it to more than 135 but it simply won't save the setting. Sorry if it's a bit long, How do I save the samples setting?. I really appreciate all the answers.

The only thing I can think is that you must have a keyframe on your render samples. I would try to right click and remove keyframes.


How to control the mix of emission and transparency materials? I'm trying to make a glowing jellyfish.

I have the model, but I have a problem when I want to blend the glowing material (located in the little thin tentacles jellyfish have) with the transparent one (being that material the main colour of the body) so that you cannot see a clear discontinuity between those materials.

I have tried following some tutorials, but I do not seem to find any of those that really solves my problem (all of them solve the problem with colours, but the shaders seem to not be included).

If anyone could help me, I would be really thankful.

Thanks in advance, Cdeluz

You can see in the image that there is like a red and blueish fade when the glow and the body of the jellyfish conect. that is the effect im looking for.

As Artturi said, a mix shader can help transition between different shaders.  In the example below, I've used vertex paint to make the black and white image that is used as a factor between a glowing/opaque pink material (mostly an emission shader) and a more transparent purple material (I've used the fresnel node to make the outer edges more opaque, as in the picture you uploaded).

The node setup is more complicated than it needs to be to illustrate the principle, but it does show how you might use it to get something like your picture.


Cancelling extrude still leaves extra geometry Steps:

Create a cube

Start extruding the top face, but either right-click or press Esc to cancel

As you can see, the number of objects (verts / edges / faces / tris) increased, even though the action was cancelled.

Undoing the action (that was supposedly cancelled) reverts to previous count

Am I missing something here about the intended functionality of Esc / right click when doing extrude (and other actions)e or is this a feature / bug?

Pressing E is really calling extrude_region_move(), which is a two part operation. It extrudes the selection and then moves it as if you had pressed G.
Pressing RMB or Esc will cancel the move part of the operation, but not the extrusion.

This is actually useful behavior, as it allows you to easily keep the extruded geometry (or loop cut) in place (maybe you want to scale it or something). If you don't want the extruded geometry, you can of course undo it with CtrlZ.

This goes for all two part operations, such as CtrlR loop cut and slide (loopcut_slide).

Note that there are actually one part equivalents for these, but there aren't shortcuts for them (to my knowledge).
If you press Space in edit mode and search for e.g. Loop cut:

Pressing Loop Cut will put you in modal operator for cutting loops, just like pressing CtrlR, but it won't slide them like CtrlR does once the cuts are confirmed (and if they are not confirmed, e.g. by pressing Esc there will be no cuts made at all).


Undo suddenly stopped working 2.79b I was working on a project in the VSE and editing some keyframes via the graph editor. I believe I used key: Mirror as my last known command because I was trying to invert the keyframe positions. It didn't work, the keyframe became a solid line and moved downwards for some reason, I went to undo and undo didn't work.

I've spent another 30 minutes in the project thinking it would fix itself, it didn't. I restarted the project still not working.

Looked online, tried shift+alt and shift+w but there was no change or any indication that keyboard change was the cause. I'm using qwerty and it's supposed to be control+z to undo and control+shift+z to redo as its always been. Checking controls it indeed still is. Under undo steps they had been set to 42 a while back and global was always on. I moved them to a lower value, no change. Keyboard is set to the same language its always been in the windows tray. I'm at a loss here on what happened or how to fix it. Only remaining thing I can think of is to mess around with the graph editor and see if that jogs it, perhaps a bug with the mirror options, perhaps it was an earlier operation or a bad strip in the vse?

This is rather upsetting as I still have a fair amount of work left to do on the project, mainly the finishing touches and filters and special effects, and those are the ones you need undo the most for.

Somehow I changed to edit mode in the 3d editor, I don't know how given I was only using the vse, but changing back to object mode fixed the problem.


Selecting faces within a given radius How would I construct a simple loop in Blender (via Python scripting) to select all faces (or all vertices) within a given radius? I'm not able to find a description of how Blender indexes it's vertices.  I suspect it's something like..

for v in vertices
   if v.radius < 10
      v.select = True

To illustrate, I've added an image of the vertices that I would like to select.

You might start by reading through the Templates available.

TextEditor -> Python -> BMesh Simple Edit Mode.

The following snippet is a small modification of the template, but is by no means a particularly efficient way to find the faces within a certain radius of a given coordinate. Merely to illustrate one step, here the coordinate i'm searching around is the active face.

# This example assumes we have a mesh object in edit-mode

import bpy
import bmesh
# from mathutils import Vector

# Get the active mesh
obj = bpy.context.edit_object
me = obj.data

# Get a BMesh representation
bm = bmesh.from_edit_mesh(me)

# this is a coordinate like Vector((0,0,0))
active_median = bm.faces.active.calc_center_median()

# Modify the BMesh, can do anything here...
for f in bm.faces:
    f.select = False
    if (f.calc_center_median()-active_median).length <= 3:
        f.select = True

# Show the updates in the viewport
# and recalculate n-gon tessellation.
bmesh.update_edit_mesh(me, True)

here I hardcoded the 'epicenter' of the search sphere using the median location of the active face, but you could change that to the location of the 3d cursor. (if the object's origin isn't at (0,0,0) or has unapplied Transforms you will also need to take the object's Transform matrix into account )

A great module for spatial searches is KDTree , and it has adequate examples on the API page.


Imported Scene is Very Slow – Deleted and Undoing Takes Forever After importing a model from Google Poly (via fbx), I have a scene with

8.8k tris
4.6k faces
24k vertices

There are no modifiers active, and adding / editing / navigating are working very smoothly. However, undo, joining objects and especially deleting objects is incredibly slow (5-20 minutes per action).

I have never experienced something like this before in Blender.  How can I improve on this situation?

Also, a side note: why are the edges purple in edit mode?

The .fbx file does seem rather resource hungry for such a simple scene. I've downloaded the .obj version for comparsion. Counterintuitively the .obj is both smaller in file size and loads much quicker despite being a ASCII text format. The reason seems to be that in the fbx import all objects are parented to empties and every object has 25 materials assigned. This increases the scene complexity and dependency graph that has to be constructed on import. The actual geometric complexity is identical, none the less the effect is quite profound since the fbx import requires 542.9 MB of memory compared to the 44.5 MB of the .obj import. The solution would be to use the .obj instead of the .fbx file.

Scene statistics .fbx

Scene statistics .obj

The light blue edges are marked as sharp.


Background reflected in glossy glass, but I didn't set it I've made a roughness 0 glass pane, when I'm in lookdev mode it's reflecting a background that I didn't put there. I know I could just ignore it, but I'd rather be able to see what it'll mostly look like when I'm in the later stages. I also just want to know how on Earth I managed to set this background without realising it

Reflection completely ignores any objects I put in front of it. If I placed this glass inside my house, it would still just reflect trees (This is the point where I felt I couldn't ignore it - reflections are going to play a big part in my project and I don't want to be in render mode all the time)

The nodes are the default glass BSDF, except I set roughness to 0

The glass is set to 20mm thick, if that makes a difference

The background moves with my perspective and moves when I relocate the glass

I have a few HDRI's on my PC, but none look remotely like this

Also, I'm using cycles as I find Evee buggy as hell

Lookdev mode uses Eevee under the hood overrides certain lighting parameters for a faster, simpler preview. The idea is for it to provide a reasonably general lighting setup out of the box without needing configuration, enabling users to quickly develop how their materials look.

You may find the following questions also relevant:
Differece between Blender 2.8’s camera and world HDRI
How to use 2.8's default HDRi's in renders?


Compressional wave in a cube I want to see the propagation of a compressional wave in a cube. I meshed a cube along Y and just added wave in this same direction as follows:

But only the first and the last Y normal surfaces move while the rest of the cube remains completely still. How do you get all the surfaces to move to illustrate the propagation of a compression/dilatation wave through the cube?

For illustration, you could pass an Empty down the length of the cube, create a vertex group in the cube, (say, 'Prox',) and give the cube a Vertex Weight Proximity modifier, modifying the weights in the group by the proximity of the Empty.
Here, we see the Vertex Weight Proximity modifier, affecting the 'Prox' group, targeted on the plain-axis Empty, and the consequent weights (made visible in the 'Overlay' settings,in Edit Mode).

Those weights can then be used to control other modifiers. For longitudinal compression, you could parent a plane to the Empty, and give the cube a Shrinkwrap modifier, projected in + and - of the length-axis (mine is X) towards the plane, weighted by the 'Prox' group:

If, for example, you wanted a leading compression front, rather than contraction on both sides of the plane, you could get the shrinkwrap to project on one side only.
This, though, is as shown:

For transverse compression, you could use a Displace (along normals) modifier instead of the shrinkwrap.. no need for the plane:

If you needed something more mathematically exact, I'm sure there will be a Geometry Nodes solution. For that, maybe you could provide your wave function.


How to create a colorful gradient shader? So I keep seeing this kind of soft gradient texture (on the torus), which I'm struggling to replicate. Would anyone be able to point me in the right direction?

I'd suggest to try using Layer Weight or Fresnel node in this case and add color to it using Color Ramp node. Also you may add more colors using Texture Coordinates separate outputs as masks and rotating, scaling and moving them using Mapping node. Also I'd suggest to use Emission shader instead or together with Diffuse and other shaders. This will give you more individual controls over your objects and make them more independent from the overall scene lighting. If you want the texture to be static, not dinamically changed depending on the camera view angle, you may UV-unwrap the model and bake emission from the Bake tab in Cycles render properties to use the result as the texture for emission color later on.


Hair too rigid unable to get rid of right angle structure My hair is not smooth and too stiff, how can I make it less of a right angle near the roots?

You might want to add more control points to the hair particles. The goal is the add some extra control points near the scalp/head so hair can bend nicely there.

To do so, make sure Selection Mode: Point is active to see the points. Select all roots by using the menu. Then select the next points via the menu (Select → Select More or hit Ctrl + NumPad +). Now you add another control point for each hair particle with Particle → Subdivide.
Extend the selection before subdivision or repeat the steps when you need more control points. The selection can also help you to comb or puff only the parts of the hair strands you want.
To see the effect you need to increase the number of path steps for the hair. There are 3 settings for this. One in the tool options for the Particle Edit mode. Then for the final Render and one more for the Viewport Display. The default values are 2 or 3, often too low to bend the hair properly.


Why doesn't the shutter speed have any effect on image brightness? I'm trying to simulate some motion blur caused by camera shake and object movements. I checked motion blur, and tried to customize the shutter speed of the camera to see the differences.
In the real world, when you increase the camera shutter speed the output image would be darker with less blur, but in my experiments,increasing shutter speed has no effects on the brightness of the output image, but it causes less blur effect. It just makes no sense. Do you know why it behaves like that?

So it seems there is no advantage in slow shutter configuration which is not true in the real world.

Unlike a real camera, in blender the brightness on the scene will not be affected by the shutter speed (or angle), or the f stop used by the camera.

If you want to change the overall brightness of a scene change the

Film->Exposure control.

There is no ISO, or photosensitive anything in blender as on a real camera. You can of course change the exposure of your scene to simulate the effect it would have with changes in exposure time.

If you think of a shutter shutter angle of 0.5 as the normal exposure, changing the value to 0.25 would result in an image that would be darker since it only captures half of the light than the normal exposure. To simulate the exposure change you would need to make your image darker by changing the Exposure in the film section to 0.5

Conversely, if you changed the shutter speed to a setting of 1.0, it would result in twice the brightness, so to simulate the change you would need to have an exposure value of 2.0.

There might be a way to create a script or a driver to do the computations for f stop, and shutter... but there is no built-in functionality for it by default.

Just to be clear, the term "exposure' in blender is quite different than it is in film or digital sensors. In cycles, the value of a given pixel is calculated by the amount of light being reflected by objects based both on the intensity of lights, the albedo (reflectance) and other characteristics of the material and other atmospheric factors (if you use volume scattering). The resulting values are then processed through the color transforms on the color management section, which will determine what the pixel's brightness and color will be. There is no notion of "exposure time" or "ISO" (in terms of sensitivity that would affect brightness).

The shutter speed option in blender is there to simulate motion blur (as pointed by @michaelh).

The F stop is there also to simulate the effects of depth of field.

Changing the values of either one of them will not affect the brightness of the rendered image.

If you want blender to behave like real camera in terms of exposure there is no automatic option for it, you will have to do it by hand (or through a script)


Curve from a set of points I want to make 3D visualisation of a neuron. How can I plot curves from a set of points ? The data is shown in the image.

I found an artist created a mesh with this data. Same posted below.

Data is from this website.
http://neuromorpho.org/neuron_info.jsp?neuron_name=211-6mt

From the provided data file, you can obtain this kind of rendering, with (for example) either creating splines (curves) or creating a mesh with skin modifier.

The script allows to:

Load the data from the indicated site
Convert it to inner objects (NeuronPoint class below)
Optionally add some random intermediate points between the loaded coordinates

And

Either convert them to curve, creating a new curve for each data ramification
Or create a mesh from this point and add a skin modifier in order to obtain the neuron branches

Here is the commented code and blend file:

import bpy
import random
from mathutils import Vector

# Store the information from the SWC text file
class NeuronPoint:
    def __init__(self, id, type, x, y, z, radius, parent_id):
        self.id = id
        self.type = type
        self.x = x
        self.y = y
        self.z = z
        self.radius = radius
        self.parent_id = parent_id
        self.parent = None
        self.children = []

    @property
    def coordinates(self):
       return Vector( (self.x, self.y, self.z) )

# Read data from the file
def read_neuron_points( file_name ):
    file = open(file_name, "r")
    points = {}
    for line in [l for l in file if l and l[0] != '#']:
        string_data = line.split()
        if string_data:
            id = int(string_data[0]) - 1
            neuron_type = int(string_data[1])
            x = float(string_data[2])
            y = float(string_data[3])
            z = float(string_data[4])
            radius = float(string_data[5])
            parent_id = int(string_data[6]) - 1

            neuron_point = NeuronPoint(id, neuron_type, x, y, z, radius, parent_id)
            points[id] = neuron_point

    for point in points.values():
        point.parent = points.get( point.parent_id )
        if point.parent:
            point.parent.children.append( point )

    return [p for p in points.values()]

def random_vector( random_amount ):
    return Vector( (random.uniform(0,1), random.uniform(0,1), random.uniform(0,1)) ) * random_amount

# Cuts the data to have additional random points
def make_intermediate_points( points, point, min_distance, random_amount ):
    point_co = point.coordinates
    parent = point.parent
    parent_co = parent.coordinates
    vector = point_co - parent_co
    distance = vector.length
    # Do it only if distance is above the parameter
    if distance > min_distance:
        # Cut in half + random
        intermediate_co = parent_co + (vector * 0.5) + random_vector(random_amount)
        intermediate_radius = (parent.radius + point.radius) * 0.5
        # Insert the new point in the hierarchy
        new_point = NeuronPoint( len(points), point.type, *intermediate_co, intermediate_radius, parent.id )
        points.append( new_point )
        point.parent = new_point
        point.parent_id = new_point.id
        parent.children.remove( point )
        parent.children.append( new_point )
        new_point.parent = parent
        new_point.children.append( point )

        # Cut around this new point
        make_intermediate_points( points, point, min_distance, random_amount )
        make_intermediate_points( points, new_point, min_distance, random_amount )

# Cuts the data to have additional random points
def subdivide_points( points, min_distance, random_amount ):
    for point in [p for p in points if p.parent]:
        make_intermediate_points( points, point, min_distance, random_amount )
    return points

def mesh_from_neuron_points( context, name, points, scale_factor = 0.01, radius_factor = 1 ):

    # Gets vertices and edges from the points data
    verts = [p.coordinates * scale_factor for p in points]
    edges = [(p.id, p.parent_id) for p in points if p.parent]

    # Create a mesh
    mesh = bpy.data.meshes.new(name)
    mesh.from_pydata(verts, edges, [])

    # Create an object with this mesh
    obj = bpy.data.objects.new(name, mesh)

    # Add a subdivision surface (smooth the edges)
    subdivision = obj.modifiers.new( "subdivision", 'SUBSURF' )
    subdivision.render_levels = 1
    subdivision.levels = 1
    # Add a skin modifier in order to have thickness
    skin = obj.modifiers.new( "skin", 'SKIN' )
    skin.branch_smoothing = 0.5
    skin.use_smooth_shade = True
    # Smooth again with another subdivision
    subdivision = obj.modifiers.new( "subdivision", 'SUBSURF' )

    # Associates the radius to each skin vertex
    for s, p in zip( obj.data.skin_vertices[''].data, points ):
        radius = p.radius * radius_factor
        if not p.children:
            radius *= 0.1
        s.radius = (radius, radius)

    # Link the object to the scene
    context.scene.collection.objects.link(obj)
    return obj

# Cuts the point set into continuous spline parts, creating a new part for each ramification
def splines_points_from_points( points ):
    result = []
    base_points = [p for p in points if not p.children]

    while base_points:
        next_points = []
        for point in base_points:
            current = [point]
            result.append(current)
            while point.parent:
                point = point.parent
                current.append(point)
                if len(point.children) > 1:
                    next_points.append( point )
                    break
        base_points = next_points

    for spline in result:
        spline.reverse()

    return result

def curve_from_neuron_points( context, name, points, scale_factor = 0.01, radius_factor = 1 ):
    # Create a curve with some bevel depth
    curve = bpy.data.curves.new(name=name, type='CURVE')
    curve.dimensions = '3D'
    curve.bevel_depth = 1

    # Create an object with it
    obj = bpy.data.objects.new(name, curve)

    # Calculate splines parts
    splines_points = splines_points_from_points( points )

    for spline_points in splines_points:
        # Create a spline for each part
        bezier_curve = curve.splines.new('BEZIER')
        bezier_curve.bezier_points.add(len(spline_points)-1)
        # Set the points
        for bezier, point in zip(bezier_curve.bezier_points, spline_points):
            bezier.co = point.coordinates * scale_factor
            bezier.radius = point.radius * radius_factor
            if not point.children:
                bezier.radius *= 0.01

    # Link object to the scene
    context.scene.collection.objects.link(obj)
    # Toggle handle type (faster than doing it point by point)
    obj.select_set( True )
    context.view_layer.objects.active = obj
    bpy.ops.object.editmode_toggle()
    bpy.ops.curve.select_all(action='SELECT')
    bpy.ops.curve.handle_type_set(type='AUTOMATIC')
    bpy.ops.object.editmode_toggle()

    return obj

# Get the file name relative to this blend file
file_name = bpy.path.abspath("//test.txt")
# Read the file into points
points = read_neuron_points( file_name )

# Some parameters to handle result scale
scale_factor = 0.1
radius_factor = 0.1
# Subdivide the model with some random (optional)
points = subdivide_points( points, min_distance = 4, random_amount = 1 )
# Create the object as mesh with skin modifier
#obj = mesh_from_neuron_points( bpy.context, "test", points, scale_factor = scale_factor, radius_factor = radius_factor )
# Create the object as curve
obj = curve_from_neuron_points( bpy.context, "test", points, scale_factor = scale_factor, radius_factor = radius_factor )

# Set a material on it, if defined
mat = bpy.data.materials.get( "Material" )
if mat:
    obj.data.materials.append(mat)


How to render particle hairs in cycles? I have created a hairstyle with the hair particle system. I can't render the exact style in final render, but I can render that in openGL.

I have found the solution for my question.

Increase steps value to above 6 or 8 in particle render tab.


Why can I not see the rest of the lamp panel and/or how can I find it? I was looking to make lightbeams using volumetric lighting. I used a sphere for the "dust" instead of the environment because I am using an HDRI. I looked up how to increase the intensity, and I found a link on something that turned up the brightness on volumetric scattering, but I could not find it on my computer. I looked for it on my computer and found that the setup looks different.
Basically, For the lamp tab in the manual, there are several more options than those that I have
Here is the manual's:

Here is mine:

Does anyone know why I might not be seeing this part of the interface?
My plan is to use this to add intensity to the volumetrics of my spotlights so that it does not have to appear so grainy but can keep the beams of light clear
Thank you!

So, I believe it's because you are working in a blender render engine.  You can switch it to Cycles on the top of the window


Is it possible to combine a Meta-rig armature with a manually made armature? I made a kind of basic dog armature. As I was wondering how I could make the face armature, I thought of using the face armature from pitchipoy metarig and manipulate it to suit the dog. However, the result didn't come out as I expected. It doesn't seem like they play well with each other. After parenting to mesh, it completely flipped my dog horizonally. So is it not possible to combine two different armatures?

While I'm not sure of any limits, I do believe there is a need to have correct bone names and parenting or chain lengths in place for the rig generation to work properly.

The next release of blender (2.79) which is expected to get a beta release soon has some new rigify rigs available with the updated addon version. These include basic human and quadruped rigs as well as bird, cat, horse, shark and wolf.

You can download an early 2.79 test build from here that includes the rigify update, I haven't tried it but I expect the updated rigify addon should work with the current release of blender if you want to copy it across to your current install.


What is the difference between dissolve and limited dissolve? On the delete menu with vertices selected, I am presented with two options(among others), dissolve, and limited dissolve. What is the function of each, and when should I use each?

As per the wiki

A dissolve

  ...effectively turns the selection into a single N-gon. Dissolve works
  slightly different based on if you have edges, faces or vertices
  selected. You can add detail where you need it, or quickly remove it
  where you don't.

While a limited dissolve

  ...reduces detail on planer faces and linear edges with an adjustable
  angle threshold.

From experience, you would use a dissolve to create one large N-gon from several vertices while a limited dissolve can be used to remove excess geometry.


Unable to select only mesh on Rigged Object I'm new to blender.   I'm working with a rigged model that I've downloaded from a sharing site.  I'm trying to move the model from one layer to another for compositing purposes.  When I attempt to select the rigged character, however, and then move it using the "M" key, only the underlying rig gets moved to the new layer.  The mesh is left behind.

When I attempt to select the mesh in object mode, however, I cannot.   If I go in to edit mode, however, the layers are no longer available.

Any thoughts?

There are couple of scenarios that this may happen:

Make sure the mesh and armature are parented, to do this, select the mesh first then shift and select the armature then hitctrl+P then Automatic weighting
The object you are trying to select is not selectable, do fix this you need to check the selectable mouse pointer icon beside the object in the object outliner view as shown:


(v2.90) What are these thicker blue lines, and how do I quickly remove them? I can manually remove them by deleting the surrounding faces and remaking them, but there's got to be a faster way.
I get these lines after joining Ctrl + J two separate objects (e.g. two mirrored halves of the body via Duplicate + Scale by -x) and they don't always appear at the fusion points. I'd thought they meant duplicated vertices, but merging them M at center doesn't do anything. Could it be a duplicated edge, though?
If it means anything, the horizontal thick-line was a former UV seam.

Those edges are marked "sharp". To remove, select all (or just the ones you want to clear) in edit mode and then select "clear sharp".


How to set active 'Scene Collection' How to set active 'Scene Collection'? bpy.context.view_layer.active_layer_collection = bpy.data.collections['Master Collection'] not working.

Set active 'Scene Collection'

scene_collection = bpy.context.view_layer.layer_collection
bpy.context.view_layer.active_layer_collection = scene_collection


How do I scale a Torus's minor radius? I have created a Torus and I've already been working a lot on it. But now I realized that its minor radius is too big and I need a way to scale it down after it has been created.

I'd suggest a combination of scaling with Alt + S (Shrink/Flatten) and regular scaling with S. Both in Edit Mode.


How to animate vertex colors using animation nodes How can animation nodes drive vertex colors on an object?
Details
I have a time varying dataset the defines the color for each vertex in a model. I'd like to use animation nodes to drive the colors of the vertices.
The best solution found so far requires a very complex setup.
It requires defining vertex groups and assigning colors to the vertex groups. This could require assigning a larger number of vertex groups. The preferred solution is to work directly with the vertices.

Add the object.
Assign vertex groups. These are used to get access to the vertices.

Assign a texture to the object using vertex colors.

Setup animation nodes using a script to assign colors to the vertex groups. In this example, instead of colors, a temperature is used, and converted to a color.

A script is used to assign the list of values passed to colors for the vertex groups.

def fraction(x,idx,n):
    # on a domain of 0,1 with n center points and
    center = idx/(n-1)
    dist_2_center = center-x
    portion = 1-abs(dist_2_center*(n-1))
    fract = max(0,portion)
    return fract

def find_color(x,colors):
    n = len(colors)
    f = [fraction(x,idx,n) for idx in range(n)]
    c = [0,0,0,0]
    for ii,ff in enumerate(f):
        for jj,cc in enumerate(c):
            c[jj] += ff*colors[ii][jj]
    return c

def t_color(t):
    colors = [ (0,0,0,1),(0,0,1,1),(0,1,1,1),(0,1,0,1),(1,1,0,1),(1,0,0,1),(1,1,1,1)]
    c = find_color(t,colors)
    return c

####################################################################

import bmesh

o = Object       # passed into node

colors = [t_color(t) for t in Temps]   # passed into node

#print(colors)

#########################
mesh = o.data        # get the mesh
bm = bmesh.new()     # place holder for working bmesh
bm.from_mesh(mesh)   # create a copy of the mesh

#build list of vertex indices in each group
vert_group_indices = []
for vg in o.vertex_groups:
    # check if vertex is in this vertext group using indexes
    vert_indices = [v.index for v in o.data.vertices if vg.index in [ vv.group for vv in v.groups]]
    vert_group_indices += [vert_indices]

# walk list of vertex groups, assign colors based on vertext groups

#colors = [(0,0,0,1),(1,0,0,1),(0,1,0,1),(0,0,1,1)]
color_layer = bm.loops.layers.color[0] # use first color layer
for vg_idx,vert_indices in enumerate(vert_group_indices):
    c = colors[vg_idx]
    for face in bm.faces:
        for loop in face.loops:
            if loop.vert.index in vert_indices:
                loop[color_layer] = c

bm.to_mesh(mesh)   # put mesh in the object

The result is an object with vertex group assigned colors that can be animated.

Is there any easier way? Is there a way to assign colors to vertices without using vertex groups when using animation nodes? Is there anything in animation nodes that makes this easier?
A sample file with this setup from Blender 2.83 is here :

Animation nodes have Set Vertex Color node which can assign colors to vertices, loops or polygons.


location info of objects not changing in any frame for physics simulation (but their position changes) I am new to blender and using it for generating a dataset for another problem that I am working on. I use physics simulation to make objects fall. The problem I am facing is that the object.location value does not update after simulating. I can see that the objects did move in 3d view. Do I have to do something different to get the location in the last frame? (need python solution for this) I am using the following code for simulating

def simulate(start_frame=1, end_frame=200):
   for i in range(start_frame, end_frame + 1):
       bpy.context.scene.frame_set(i)
       bpy.context.scene.update()

I found the answer to my question in case someone else needs it, global translation can be accessed as follows.

bpy.data.objects['obj'].matrix_world.translation


Keyframes Not Showing in Dope Sheet I'm trying to make a simple walk cycle. I've moved the armature to a position I want. I opened the dope sheet, then the action editor, changed the name and saved it, selected LotRot, selected the whole armature in pose mode and hit 'I' in the dope sheet. I get a selection of 'All Channels', 'Selected Channels' and 'In Active Group'. I've tried all of them and I'm not getting any keyframes.

What am I missing?

Blend File:

If you press I over the 3D window and choose LocRot from the drop-down menu, the keyframe pop up immediately for the selected bone. Perhaps you were pushing I while your mouse was in another window?

I see you have changed LocRot in the automatic record field, which will do nothing unless you activate it by pushing the red button. After activation move bones to your hearts content. Despite the auto-function - general practise is to select you bones in the 3D window and manually set the first keyframes as described above. If you wish to do automatic key framing, understand it will record everything including your mistakes. Advise tuning that off unless you specifically need it.


Why doesn't the Grid Fill Tool work on this mesh? I would like to create faces within the selected edges that match the geometry outside.
In case that is not possible at all using Grid Fill Is there another way to do that?

For me it doesn't look too different to the situation shown in the documentation:

.blend

As Gandalf pointed out the area can be Grid Filled by:

Separate V the selection
Grid Fill Space,Grid Fill or Ctrl-F / Grid Fill
Remove Doubles Ctrl-V / Remove Doubles


How to completely remove influence of bone to mesh .blend file

I created a rig for my mesh. I created control bones, but they have influence on the mesh. How can I completly remove the influence from a bone to the mesh?

I selected every single control bone and set the weight to 0 and painted over the whole mesh, but there is still a influence as you can see in the picture.

The easiest and most straight forward way is to uncheck Deform in bone properties (marked red on the image below). Second way is to delete from the mesh vertex groups named like the bones.


Unexpected result when using transform.resize API I have a script that works fine on a non-mirrored mesh but produces a different result on a mirrored mesh.  The script emulates the keystroke combination of "s", "x/y/z", "0" using the following line:

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

(substituting the appropriate values for x/y/z)

When I run this on a normal mesh in wire/solid mode I get the expected results:

With a mirrored mesh in wired mode I also get the correct result.  However with mirrored and in solid mode I get this:

Moving any/all of the vertices immediately redraws the mesh and everything snaps to the correct place.  I have tried changing the "mirror" attribute to "True" and get the same results.  Is there a refresh/redraw option that I'm missing?  I'm sure there is something I'm not getting but I can't seem to find it.

Thanks for any help…

@lan

So the operator seems to actually do what it is supposed to do, but the view lags behind.

Try the following call after transform.resize():

bpy.context.object.data.update()

That should trigger the update. I believe this update is incorrectly missing in the C-operator.


How to Combine Two Animations with Different Y Locations I know how to splice together animations if they both start/end on the same point. But this is a little different.

Animation A - Starts at Y 0m, and ends at around Y 2m (this isn't reflected in the Transform tab)

Animation B - Starts and ends at Y 0m

I spliced the animations together, and tried moving Animation B forward to Y 2m where it needs to be using the Transform tab, but it moved Animation A forward as well, which I don't want.

I then loaded up Animation B by itself and moved it forward to Y 2m and saved it. I then tried to combine it with Animation A again, but it once again moved Animation A forward.

How can I get Animation B on Y 2m without pushing Animation A forward so that A and B merge like they're supposed to?

Let say you want animation A to go from point Y = 0 to Y = 1 from frame 0 to 19, and animation B to stay at point Y = 1 from frame 20 to 40.

You could parent your object to an empty that will stay still from 0 to 19, then at frame 20 move at Y = 1.
If you're talking about an armature, in Object mode, you could keyframe the object at frame 0 and 19, then at frame 20, keyframe it at Y = 1 so that it corrects the animation B location.
Again for an armature move animation B's root's location (+ 1 to Y location) or its bones locations (in the Graph Editor select the Y location curve and give it +1).
And you could do it with the Delta Transform values:

Open the Properties panel > Object > Transform > Delta Transform > Delta Location. You will tweak these values in order to change the object's 0 global location.

At frame 0 create a keyframe with X/Y/Z = 0/0/0. Duplicate this keyframe and put it at frame 19.

At frame 20 create a keyframe with X/Y/Z = 0/1/0.

When your object will arrive at frame 20, animation B begins and it should come back to 0, but the Delta Transform forces it to go to Y = 1. Therefore you won't see the object jump back to 0.

You can fix your particular case with the root's position. As you didn't change its position it would still make your armature position move whatever you do, so:

First your armature and animation are super messy, but let's ignore this. Find your root bone, you can find it in the Outliner, it's called b_C_Base, select it in the Outliner, switch your armature to Edit mode:

It's a very small bone so you can't see it, scale it. Now switch to Pose mode. You can see its position on the Z armature local position at frame 90, copy it.

Go to frame 116, when the animation is supposed to stop, you can see that the bone is set to back to its 0 position.

Paste the Z position you've copied, it will move the whole armature to the good position. Create a keyframe with i, it works.


Shading for my hands geometry is different to rest of model Also when i export my fbx and import is into unreal the hands are like semi see through and transparent.

Thanks In Advance!!!!

Okay the normals for my geometry were flipped, you can flip them again by selecting all the faces, then press W, then select Flip Normals.


Graphics Card Not Avalible in Blender Internal For some reason Blender does not use my GPU when rendering, even though I have my card selected in the user preferences

When I render, my CPU usage goes up to 100% and MSI Afterburner shows no increase of GPU usage. It also doesn't show an option to change my compute device in the system area or whatever

However, when I switch to Cycles Render, it gives me the option to use my GPU, but not when I am in normal Blender Render. Is there a way to fix this or is it set like this for some reason?

GPU Rendering is not available for Blender Internal

Blender Internal engine was designed to use CPU long before GPU rendering was available. To make the use of GPU in Blender Internal it will be necessary to rewrite the code of this rendering engine in order to adapt to different computation technology, currently it is not in the priority of the developers, but hopefully in the future.


When texture painting, black line is pixelated when viewed up close I've just started to get into Texture Painting, and I've started one for a model I've made. Now I need to add black lines onto the mesh in places that make the model resemble a 3D outlined character. However, as I started painting the black lines, they came out pixelated as I stroke them. Is this an issue of the map dimensions? Where I would have to greatly increase the size of it in order to have clean lines up close? Please help.

I would suggest giving the area where you need detail more real estate on the UV map. If that isn't enough, increase the size of the image. You can always bake down to a smaller image and a different UV map later.


Using hsv curve in timeline I'm trying to modify the color of an object depending to the time. I set keyframe with the colors and I see the RGB curves in the timeline :

Is it possible to have HSV curves instead of RGB curves to deal more easily with hue, saturation and value?

you can use the HSV space by adding the Combine_HSV node as input color to you material, then keyframe its values  :

to keyframe a value RMB on the value in the Node Editor  and click Insert Keyframe

F-curves :

example file :


Performance of editing/sculpting I have some performance concerns regarding moving vertexes in either edit or sculpt mode.
blender seems to handle editing better than sculpting. At around 20k triangles sculpting begins to slow down. I am able to get upto 300k before edit begins to slow down.
I am using viewport shading and my system supports cuda (cpu and gpu).
I have checked task manager and my system never really peaks (gpu is at 10%) (cpu gets upto 50%)
My drivers are up to date (according to windows)
Im new to blender and I don't know if im asking too much out of my computer
My specs are;
intel i7-3820 3.6ghz

12gb ram

nvidia geforce gtx 680

EDIT: ram used by blender is about 800mb's or so. my system is using about 50% total.

Something I've seen is that the taskbar is known to be inaccurate for showing the GPU usage. You could download something like MSI Afterburner which will allow you to see your GPU usage as it is more accurate. In the past, I've had my task manager saying I'm using 14% when I was using 100% so your problem could be that your GPU is running at 100% but task manager isn't showing it.
Link for MSI Afterburner - https://www.msi.com/Landing/afterburner


How to get around triangles? Im very new to blender, so this is probably a very simple question, I guess thats why i haven't really found a solution online for it. Ive been working on other 3d softwares that just doesn't handle certain situations the same!

Basically my question is how to skip using triangles when working on a model. for example the screenshot ill be attaching, i have my base of the mesh finished, and then i wanna extrude a part of the mesh which will create triangles or actually in this case even worse, Ngons.

Basically i used the knife tool to cut out the part of the mesh i wanna extrude, i thought about using loopcuts But that would create just so many more faces, faces i don't really need.

Personally, I don't trust the knife tool unless it's to do something very specific. It can make lots of irregular faces if used as a freehand tool. I'd rather stick to loopcuts and not worry about the extra faces.

Judging from your second screenshot, seems like you're trying to make some kind of piece/emblem from your current mesh (which is starting to look pretty weird). I'd recommend to make that part as a different object and then join or parent to your first object.


In Blender 2.8, how do I light an EEVEE scene with an HDR? Blender 2.8 supports the same world node setup that Cycles does. This correctly puts the HDR image in the world background.

But EEVEE doesn't light the scene properly. Everything looks flat and washed out. Is there a way to properly light an EEVEE scene with an HDR?

Yes and no.
EEVEE can't use mesh lights or HDRI lights "properly". Why? Because EEVEE is not raytracer.
For further reading/watching please see:

Blender Cycles vs. Eevee 15 Limitations of Real Time Rendering in
Blender 2.8
Blender's Cycles vs. Eevee (Ray Tracing vs. Real
Time)
How does EEVEE work?
EEVEE and Cycles render lighting differences

What you can do about it.
Fake it. Or just try to do it.
You will not get the same results in EEVEE as in Cycles. Period. You can try to match HDRI lightning with use of Sun lamp, and smaller lamps (point, spot, area) to be as close as possible to source.
Render your image in Cycles and then by eyeballing try to reproduce as close as possible result in EEVEE.
EEVEE will use colors and light direction from HDRI but the rest like AO and shadows are not supported.
Example.

This is just a quick example of how you can try to mimic "proper" lightning and shadows. As you can see it's not nearly as good as Cycles result due to pretty complicated HDRI.
For second image I've used Sun lamp, two Area lights for blueish tint, EEVEE AO with high factor (3), Soft Shadows in EEVEE Shadows settings and a lot of tweaking under the light settings itself.
I'll not post settings screenshot on purpose as they will be always different for different scenes and there is no "rule of thumb" for them and posting mine could cause more distraction then learning value.


Blender Game Engine: RayCast to get a point I'm making an fps game and I have a gun which I want to have a laser sight (similar to this: https://imageshack.com/f/jxdscn2857sj)

I've tried to do this using the logic editor but I realised I would most likely need to use python. So basically, is there a way - like in Unity - to get a point by raycasting?

Here's an image of what I want:

The hitPosition of a Ray sensor will give you the coordinate of were a ray hits an object.

To use it, add a Ray sensor to the object and connect it to a Python controller.

Create a text block and enter the following script to access the hitPosition.

import bge

controller = bge.logic.getCurrentController()
owner = controller.owner
ray = owner.sensors["Ray"]

#world coordinates of where ray hit object
ray.hitPosition

Finally, enter the script name in the Python controller.


I can only zoom to the center not to where i point I am really new to blender and i want to zoom and rotate around an object not the cursor at the center.

In Blender 2.9, go to Edit > Preferences > Navigation, then check "Zoom to mouse position" for the zoom, and check "Orbit Around Selection" for orbiting.


How to mix material and texture to single mesh? I'm making a ceramic plate and on the top surface I want to show a painting of flowers which I have in .png format. The ceramic texture is on top and I added a new texture layer below it. I have selected some faces and assigned it to the vertex group. Then I added a texture to the material, I get the image, but it's showing a black background on it. I added a transparent shader.

Is my method correct? Why am I getting this black background with the .png transparent image?

As far as I know you can only mix textures/materials in one "material".
Try this:

Assigne all verts to "Material.001"
Copy "Material.004" and add it to "Material.001"
UV unwrap your object
Copy nodes (see the image below)
Set "image texture" to clip and to non-color data
Match UV Unwrap to your texture