FCurve handles to 3D Bézier spline control points I'm trying to export Bézier curve animations from Blender, but i can't seem to figure out how the control points of FCurves should be interpreted.

A Bézier keyframe for a 3D position typically has one vector for the position at the keyframe, one vector for the position of the first control point, and one vector for the position of the second control point. It is easy enough to get the position keyframe from a Blender FCurve - this is just the keyframe values of the X, Y, and Z curves combined into a vector. However, each FCurve keyframe has two "handles", and each handle has two coordinates - the frame on the X axis and the value on the Y axis. This means that each control point has a total of 6 values (2 per channel) governing it. How is this translated into a control point in 3D space?

The points used by an fcurve are a 2D version of the bezier curves you use in the 3D viewport. To convert an fcurve into a 3D bezier curve we just need to add a Z axis value to the locations.

import bpy

anim_fcurves = bpy.context.object.animation_data.action.fcurves

# index 1 is the Y location fcurve
src_fcurve = anim_fcurves.find('location', index=1)

vis_curve = bpy.data.curves.new('YLocCurve', 'CURVE')
vis_spline = vis_curve.splines.new('BEZIER')
vis_spline.bezier_points.add(count=len(src_fcurve.keyframe_points)-1)

for i,fcp in enumerate(src_fcurve.keyframe_points):
    p = vis_spline.bezier_points[i]
    p.co = (fcp.co[0], fcp.co[1], 0.0)
    p.handle_left = (fcp.handle_left[0], fcp.handle_left[1], 0.0)
    p.handle_left_type = 'FREE'
    p.handle_right = (fcp.handle_right[0], fcp.handle_right[1], 0.0)
    p.handle_right_type = 'FREE'

data = bpy.data.objects.new('YLocCurve', vis_curve)
bpy.context.scene.objects.link(data)

That will turn an fcurve into a bezier curve object in the 3D viewport. How you export that to another application depends on the file format you are using, but in general you want the three locations for each point so that the other program uses the three points to define each point and it handles.

While mostly you can copy the handle type, the fcurve can have an AUTO_CLAMPED handle type that is not valid in a 3D bezier curve.


Apply "backface culling" if the surface is not visible from the given point Given the point (x,y,z) and meshes scattered around this point in the space, where each triangle on the mesh has its normal known, I want to be able to detect which triangles are not visible to the camera (from all possible angles of view from this point). What would be the best way to implement that in Blender - is there maybe already a possibility to achieve this using some higher level API functions or shoud I implement it from scratch?

What I did so far was reading about backculling, but all the algorithms I found so far are related to a specific camera view, not in all possible directions from the point (I guess logic should be similar?).

Thank you for the provided ideas and answers!

At the end I implemented simple check, where I:

1) Calculate the center of triangle, and its normal

2) Calculate direction vector from view point to center of triangle

3) Calculate angle between triangle normal and direction vector

4) If angle is bigger than 90 degrees, the triangle is not visible.


Why is the GPU grayed out? Here is the very elaborate, confusing, even befuddling image which I have selected at the time of this strange error occurring.  https://i.stack.imgur.com/cNjzD.png

You need to allow Blender to use your graphics card.

Go to Edit->Preferences->System and select the card you want to use.
If there’s nothing there, you don’t have a compatible graphics card.
No worries, CPU rendering works too.

Happy Blendering.


Try use option Freestyle in script for Blender I'm about to write a script that allows to make "true" the options (Freestyle in Blender):

Here is the python script I 'm writing to try to use options Script python

import bpy

sceneR = bpy.context.scene

freestyle = sceneR.render.layers.active.freestyle_settings
linestyle = bpy.types.FreestyleLineSet
sceneR.render.use_freestyle = True
sceneR.svg_export.use_svg_export = True
freestyle.use_smoothness = True
freestyle.use_culling = True
linestyle.select_by_visibility = True
linestyle.select_by_edge_types = True
linestyle.visiblity = 'RANGE'
linestyle.select_silhouette = True

I found it in the window "info" Blender indicating each action done in Blender

my problem is that when I run the script it that nothing happens , and options (circled in red on the first picture) are always off or False .

Do I put the wrong way , is there a different way to activate this option in a script?

You are close, the use of bpy.types.FreestyleLineSet is wrong as this refers to the class definitions used elsewhere. The correct way to add a new lineset is freestyle.linesets.new('mylineset'), you also have a typo in linestyle.visiblity = 'RANGE'

A working version of your example is

import bpy

sceneR = bpy.context.scene
freestyle = sceneR.render.layers.active.freestyle_settings

linestyle = freestyle.linesets.new('mylineset')
sceneR.render.use_freestyle = True
sceneR.svg_export.use_svg_export = True
freestyle.use_smoothness = True
freestyle.use_culling = True
linestyle.select_by_visibility = True
linestyle.select_by_edge_types = True
linestyle.visibility = 'RANGE'
linestyle.select_silhouette = True


Models extracted from gamre (LOL) get "mirrored"? I just downloaded Ahri models which was extracted from League, then I used the tool called "lol2dae" to convert the original model file (.skn) to .dae  file so I'm able to importing to Blender.

The model looks fine, I applied its texture (I used PS to convert it from dds to png), and nothing seem to be wrong.

Then I realized that the model has been "mirrored" from the original model.
I don't know if I used the word "mirrored" right.. just take a look at my screenshot here for sure.

I also tried extracting some models myself and got the same problem, so I very appreciate any suggestion to make it work right.

You could simply scale the object. In this tab, go down to "Scale:" and set the X value to negative.


Subdivision Surface and Knife Project. Blender 2.8 I made mesh for deck of guitar. After, i had to make a hole in this mesh. Also i used "Subdivision Surface". I created a circle to use "Knife Project". Made in the mesh a circle then deleted face to make a hole. As u can see, there are some triangles around this hole. If i remove "Subdivision surface" this triangles dissappear.

Ok, the problem you mentioned in the comments is because of these little straggler vertices that aren't connected to the mesh like the others.

So to fix that you can start by deleting this ring of faces:

Next, you create a new circle, place it where you want the hole, select the circle and the rim of the guitar created by the deleting of faces, hit ctrl-E, and select "bridge Edge loops".

And here is the result:

It's definitely not as pretty, but there doesn't seem to be any intersections or anything, and it does get the problem fixed.  Hope that helps.


Automatic AOV shader pass setup for geometry buffer Is there a way to create AOVs that affects all materials in the scene? I can successfully create an AOV shader pass that outputs world positions of the object material is on:

This gives me correct result, which I save to a separate file using composition. The problem is, that this is the only object that will be considered in the shader pass, rest of the image is empty.
So I would like have this shader pass for all of the materials in the scene. Am I coming at this wrong, or should I apply AOV Output to all 150 materials in my case? If the latter is correct, can this be done in python blender API?

You can override all materials in the scene as in the figure below. This is what I did in our paper "Fast Synthetic LiDAR Rendering via Spherical UV Unwrapping of Equirectangular Z-Buffer Images". It is worth looking into material management addons.


Freestyle Wireframe SVG Export Workaround? Little disclaimer: I don't have much experience with Blender or 3D modelling at all, just downloaded the program last week.

My goal is to create polyhedra, then render out the wireframe as a SVG.

I found that using the Freestyle SVG Export add on this seemed possible.

The problem I ran into was that it didn't work when I'd use the Wire material type. I tried using the wireframe modifier and that looked like it worked at first. But, after importing the svg into a vector graphics editor and lowering the line width, turns out each "edge" on the wireframe was actually a stretched cube (or whatever the term is):

I found a work around, but it's very tedious. I removed the wireframe modifier and just rendered the visible faces, then manually removed the faces surrounding each "layer," and exported those. In the end I layered them all together and got the final image on the bottom right. It's a bit difficult to explain, so here's a picture:

Again, very tedious..... Is there a better workaround? Or am I missing something?

Also, is there any way to preview the SVG render? What I'm doing now is rendering after changing something, then opening the SVG file on chrome to check if it had any effect... kinda inefficient.

I was able to get what I wanted by changing the visibility setting on the FreeStyle Line Set section of the Render Layers panel from "Visible" to "QI Range"

which apparently stands for "Quantitative Invisibility Range".
I don't really know what this means but it worked, would appreciate if someone could clarify!


Riggin - BlenRig - Is it possible to swap out similar characters? I have a fully rigged Blenrig character.  I have another almost identical character - not rigged.
Is it possible to just swap out the characters so I don't have to go through the process of rigging the second character?
In both characters - the Verts, Edges, and faces are the same count in the hands and face, and the bodies can be scaled to be very close to the same size.  Don't know if that makes a difference?
I know the answer is probably no, but thought I would ask before I start taking the time to rig the second character.

It is possible. Copy your rig and move the new one into the new mesh. Select the mesh first then the armature and hit CTRL+P and select "Armature Deform". After this deselect the armature, select the original mesh and copy the vertex groups from it.


Everything snapping to grid after some accident hotkey. Precise changes available only when I'm holding CTRL My cat jumped on the keyboard, and now everything keeps snapping to grid.
For example, I create and grab new primitive, or extrude vertex, and if I'm not holding Ctrl, it will not move until I move mouse cursor far away - then at some moment it will jump there, snapping to the grid cell.

So my question is - how to turn off this "snap mode"? Thanks.

Mode: Edit or Object modes

Hotkey: Shift+Tab

Menu: Mesh/Object » Transform » Snap

Once the tool is activated you are ready to drag your element(s) to its(their) destination. Move your mouse pointer to the target where you want to snap to, hold down Ctrl, move your pointer to adjust (especially if your target is an edge or face).

When satisfied with the result, confirm with LMB Template-LMB.png or Enter (as usual, you can cancel everything with a RMB Template-RMB.png click or by hitting Esc).


Why does my array spiral off I've added an empty axis which I'm trying to use as the Object offset in the Array modifier to evenly position the handle details around the handle on this Darth Vader lightsaber hilt, however the array spirals off strangely.
I can't get them around the handle neatly. .

This is the method I've used to solve my issue, select the object you want to array, hit Shift + S to snap the 3D cursor to the selected object, create an empty on said object (make sure rotation and scale are ticked for an even and proportional array), select the object add the array modifier, untick relative offset instead use object offset using the empty just placed and apply how many counts you need.
To evenly space the array I selected the empty hit R Y = 360/8, which divided 360 degrees into 8 parts (which was my array count) on the Y axis.
To make small adjustments I selected the object in edit mode and positioned it slightly as well as making minor adjustments to the empty.


Baked image is stretched I made an edge map using the pointiness node and some musgrave noise texture.

When I try to bake this "edge map" (baking using "emit" option), however, the thin edges of the object show stretching in the baked image, unlike what the edge map looks like in rendered mode (fine dots of noise).

My screen shot shows the rendered result on the left and the baked result on the right.  Notice the stretching at the edges of the UVs.

Thanks for any help in understanding this!

The margin is intentional. It dilate the edge so that you wont background colors mixed in the edge. You can zero it out if you want to. Sometimes you will want to add dilated
margins later if you are composing multiple bakes.


Blender Viewport Issues I am new to 3D modelling so I know my hardware is not up to snuff, but I am running a 13 inch Macbook Air with a 1.6 GHz Intel Core i5, and an integrated graphics card with 121.12 GB of space and 8 GB of RAM.

There are 15,460,838 vertices in my scene. The scene worked fine until I saved it and closed Blender.

Now when I try to open the file, it won’t load properly and Blender is having the hardest time trying to show me anything. When anything changed, the words in the interface turn Braille-like, but all I see in the viewport is flat grey, black or the checkered loading screen.

Blender opens other projects just fine.
I’ve tried closing and restarting Blender.
I have tried opening the file after launching the  default (which works fine).
I have tried opening the file from  autosave.

None of this has helped. I hope I’ve given enough information for someone to make sense of my issue.

I could remake what I had in this file and likely make it with fewer vertices, but I would like to understand the problem to avoid it in the future. Any assistance would be appreciated!

Do the following to help reduce vertex count:
Select an object.
In edit mode press "A" 2 or 3 times to ensure all vertices are selected.
Press "W" then remove doubles.

You can also set your subsurf so it won't render the subsurf in the viewport.

Also you could try opening it with 2.49b. It might open.


Setup for a wine bottle with multiple labels I have modeled a wine bottle and created various wine label designs for a client. The labels were created in Illustrator and so I have PNGs. I want to present a render of the same bottle with each label the client. The labels are not simple rectangles.

Should I:

"model" each label and wrap it on the bottle, or
try to map each label image to a portion of the bottle's surface?

I've seen lots of tutorials showing option #2, but something is telling me that the glass of the bottle should be separate from the "paper" label.

Also, with #1, couldn't I use the same bottle blend file and use a different layer for the each label, then turn on a different layer for each new render?

Maybe there's an even better strategy?

thanks,

Create an object that surrounds the bottle, but it's but that is just a bit bigger than the bottle (to avoid Z fighting errors). Unwrap it to get something like this:

Assign a texture using the alpha channel of the texture to control a transparent shader. A mapping node will also help you with the positioning of the label.

Now by changing the image on the Image texture node (and sometimes the scale and placement) you can preview your different labels.

A blend file to play:


How to extrude only edges I wished to extrude edges of a plane to create opened box. I have created a plane, switched to edit mode, switched to edge select, then started shift selecting edges. I can select 1, 2 or 3 edges normally, but once I select 4th edge, entire face is selected automatically.

Consequently, I can't exctrude edges, entire face is extruded.
Why and how to overcome?
https://youtu.be/fEuzIabBYLo

(I wish users were a bit more curious and explored the menus...)
The Extrude function will extrude a face.
If you olny want to extrude the edges, select the face, then use Edge> Extrude Edges.

Likewise, if you want to extrude only vertices, then use Vertex > Extrude Vertices


BoxCutter and industry standard settings conflict When using industry standard keys, alt+lmb rotates the view. This same keyboard combo completes the operation of a boxcutter Boolean operation. Basically, you are able to start and manipulate the projected shape as long as, and until you desire to rotate the view to get another vantage point on your model. This is a problem in that the tool is completely useless with this limitation. Any help would be appreciated.

This is a limitation of using “Emulate 3-button Mouse.” If you have a mouse with a depressable scroll wheel (AKA a third button), use that instead of Alt-Lmb to rotate the view as it is really standard.


Blender button icons are white (blank) I'm using blender 2.79b. Since the first time I installed, it's interface is like that. Any help would be appreciated.
(https://i.stack.imgur.com/shQqC.jpg)

In IconViewer add-on it looks like this:
(https://i.stack.imgur.com/Kl8wv.jpg)

I am installing the version 2.79 and later the 2.79b due to some limitations of the graphycal card of my laptop. I have had the same problem: empty icons in the menus. I have solved the problem running the blender as administrator. It works now!


Context is incorrect when calling from a timer Eevee in Blender 2.8 is so awesome that just saving the viewport (view > Viewport Render Image) looks really good.

I'd like to save the viewport periodically from a timer script using the operation bpy.ops.render.opengl()

Here's some code that gets close:

# viewport_loop.py

import time, bpy, functools

def render():
    timestr = time.strftime("%Y%m%d-%H%M%S")
    print(timestr)
    # uncomment below line for error...
    # bpy.ops.render.opengl(animation=False, sequencer=False, write_still=True, view_context=True)

def loop(data):
    render()
    return 2.0

if __name__ == '__main__':
    bpy.app.timers.register(functools.partial(loop, ""), first_interval=5.0)

I'm calling the script from the command line on osx

blender ./file.blend --python ./viewport_loop.py

When the render line is uncommented I'm getting the error:

  RuntimeError: Operator bpy.ops.render.opengl.poll() failed, context is incorrect

bpy.ops.render.opengl() does work, but not in this timer (or in a thread incidentally).

Any thoughts, is there any way to override the context for this operation?

Perhaps around the 'view_context' parameter of bpy.ops.render.opengl() because I've seen in other answers that a context needs to be overridden. For example the following, which enlarges the viewport...

for window in bpy.context.window_manager.windows:
    screen = window.screen
    for area in screen.areas:
        if area.type == 'VIEW_3D':
            override = {'window': window, 'screen': screen, 'area': area}
            bpy.ops.screen.screen_full_area(override)
            break

Override the context.

With the timers running partial functions in their own thread, cannot rely on having many context members available. The usual suspects window, screen, scene, object will be None.

One exception is the window manager.

Test script, starts the timer with the index of the context window in the window managers windows collection.

From the window, the screen, area, space and region can be added to a context override dictionary to pass to the operator.

Test script, renders the largest 3d view open in the current screen.

import time, bpy, functools
from bpy import context

def render(od):
    timestr = time.strftime("%Y%m%d-%H%M%S")
    print(timestr)
    # uncomment below line for error...
    bpy.ops.render.opengl(od, animation=False, sequencer=False, write_still=True, view_context=True)
    return 5.0

def loop(idx):
    window = context.window_manager.windows[idx]
    screen = window.screen
    views_3d = sorted(
            [a for a in screen.areas if a.type == 'VIEW_3D'],
            key=lambda a: (a.width * a.height))
    if views_3d:
        a = views_3d[0]
        # override
        o = {"window" : window,
             "screen" : screen,
             "area" : a,
             "space_data": a.spaces.active,
             "region" : a.regions[-1]
         }
        return render(o)
    return 2.0

#f = functools.partial(loop, bpy.context.screen.name)

if __name__ == '__main__':
    idx = bpy.context.window_manager.windows[:].index(bpy.context.window)
    bpy.app.timers.register(functools.partial(loop, idx), first_interval=5.0)

Note: The big issue here re polling is not all context is available to the timer thread.

for k, v in bpy.context.copy.items():
    if v is None:
        print(k)

in loop method above will demonstrate which context members are not available (set to None).

and hence would recommend using a modal timer operator (wired to use context), that you could turn on and off from a button

Related

How to run a python script at regular intervals?

Need help moving a set of cubes from one end to the other on x-axis with python scripting


Compound rigid body in cycles I would like to create a compound rigid body. I had a look at this video, therein compound bodies were created by sampling primitive bodies together. The collision shape was set to a primitive like box or capsule. Than these bodies were all parented an so connected to each other and acted as a complex body.

However, the video used the blender-game mode, where the physics panel looked different to the one available in cycles-mode. In opposite to the video there is no option to set the collision bounds to compound.

But probably some images to explain:

That hook is the a hierarchy of 9 cylinders, each is a rigid body.

That is how it looks like in the outline:

This is the view of the physics panel:

Finally I connected each body with another, using »fixed« as constraint type, but all in all, the resulting body is not stiff and deforms, what is not what I want. I would like to have a completely stiff body. How can I gain that?

This is not possible in official blender at the moment, however this feature was written as part of the 2013 GSOC.
I haven't seen word of it since, so if someone knows why it hasn't been integrated with master yet, please tell me :P

The closest you can get is the Mesh collision shape:


how to scale an object that uses a mirror modifier? Hope you can help

I have applied a mirror modifier to the below. However - how I can make it so that it mirrors the same result, but on the y and z axis?

Also I am having problems when scaling to make the object more narrow. The first image below is what I want:

However instead of scaling, it seems to just move the object around as though they are two seperate objects (see below). The only way I created the desired effect above was through using clipping, although the tutorial I am following does not use clipping and I don't want to run into any more serious issues down the line...

Any help much appreciated!

When are you scaling the object you have selected all vertex, all faces so it's scaling through the all plane which is not yet connected to the mirror object. It's ok to use clip checkbox and deselect it after apply every change you want to. To the first question - you've also checkbox "Y" below "X" in the modifier.


How do I mute the audio on a video and replace it with another audio file? I am completely new to blender, and I feel like the procedure should be simple but I'm just not finding instructions for it (so I apologize if it's a silly question). I have a video where the audio had a lot of noise. I was able to create a separate audio file and reduce the noise with Audacity. What I'd like to do now is replace the original audio in the video for the cleaned up version. Is there an option to mute the video while adding an audio file? Do I need to worry about synchronizing the two? (I hope not, since they should both be the exact same length, but I don't know...)

Thanks in advance!

I've never used the video editing feature of Blender but I gave myself a try at seeing this question.

This is the same process as other non-linear video editing program, you can delete/mute the original sound track and import your denoised one.

Firstly go to video editing layout in Blender.

Import your video/audio file at here.

You can press "G" to move its position. "Shift" for precise slower transformation.

So here's the video track, combined with audio and image frames. Then delete the audio track imported from your video by pressing X or "Delete".

Import your denoised audio, and shift the new audio track to the same starting frame to make both sync.

Preview your work by "Alt+A", remember to change the end frame number larger than your imported one.

Then go to Properties panel:

Go to output tab and change the format to "FFmpeg video" to use the MPEG encoder so that you can output it as an MP4 video in acceptable file size.

Then go to "Video Sequence Editor" panel and start rendering with "flim clapper" button.

In conclusion, the process is easy and clear: remove the original audio track, import your processed one, and render it! All you have to learn is about the Blender flexible UI layout and operation based on shortcuts.

Enjoy!


How do I convert blender render materials to cycles materials in 2.78c? I have found the articles describing the python scripts to automatically convert, but the scripts seem to have been deleted, presumably because they have stopped working.  For example, looking for materials_cycles_converter.py in the diffusion browser produces the message "This path does not exist at rBAC89bfa619831c. It was deleted in 7d7b8c7d3efc and last existed at rBAC3f433bbe91fd."
Is there an alternative script that I haven't found?  Or a tutorial?

-- edit: I originally mistakenly used 'textures' where I should have used 'materials' in the title.

Cycles doesn't really have textures like Blender Render. The textures in cycles only affect the colour of the shader. If you want to have an image texture in cycles, first you got to go to the materials tab and turn your material into a cycles material. Second you open the compositor of the material you just converted. Normally there should be a diffuse shader node and material output node. You also got to add two other nodes: Texture coordinate and image texture. Connect the image texture node with the colour input of the shader node and the texture coordinate node with the image texture node. Select your image in the image texture node and then it should work, if I haven't forgot something.


How do I properly update an application handler? In a project I have a very simple application handler that is executed when the current frame change:

import bpy

def frame_handler(scene):
    print("Running frame handler version 1.")

if frame_handler in bpy.app.handlers.frame_change_pre:
    print("Removing handler")
    bpy.app.handlers.frame_change_pre.remove(frame_handler)

print("Adding handler")
bpy.app.handlers.frame_change_pre.append(frame_handler)

print("Number of handlers: " + str(len(bpy.app.handlers.frame_change_pre)))

Adding the handler works fine and it’s executed as expected. But let’s says I want to update my handler to version 2. If I change to the code and run it again I will now have two handlers. When the handler is executed I see that both the old and the new version was running.

In my script I have tried to detect and existing handler and remove it, but clearly that doesn’t work. How do I do that?

My best solution so far is to execute bpy.app.handlers.frame_change_pre.clear() but that feels like cheating :-)

I’m using Blender 2.80 RC3.

Look at the function names and modules

If a function added to handler has a namespace it can be removed quite simply, as shown in the register and unregister methods in and addon.

def foo():
    print("bar")

def register():
    handers.append(foo)

def unregister():
    handlers.remove(foo)

if __name__ == "__main__":
    register()

The method has that import scope., if however it is added in main thread via a test script then editing to call unregister, rather than register,

if __name__ == "__main__":
    unregister()

foo now compared to then is a totally different foo and will throw an error

Recommend looking at the functions name instead.

EDIT  the module f.__module__ tested against __name__ would be the ideal way to remove these.

# handlers added to main thread

my_handlers = [h for h in bpy.app.handlers.frame_change_pre
    if h.__module__ == "__main__"]

The old code uses a test on the functions names.

import bpy

def foo(scene):
    pass

for i in range(4):
    bpy.app.handlers.frame_change_pre.append(foo)

# handlers named "foo"

foo_handlers = [h for h in bpy.app.handlers.frame_change_pre
        if h.__name__ == "foo"]

print(foo_handlers)

for f in foo_handlers:
    bpy.app.handlers.frame_change_pre.remove(f)

foo_handlers = [h for h in bpy.app.handlers.frame_change_pre
        if h.__name__ == "foo"]

print(foo_handlers)

I often use some silly prefix like def ST_____foo(): and remove all handlers with if f.__name__.startswith("ST____")


Scale whole object in normal orientation As the title says, I want to scale an object perpendicular to the normal of a face.

In edit mode it works fine when I set the transform orientation to normal mode.
But in object mode this isn't an option I believe, local orientation doesn't work eihter, because the rotation of the object.

I can eyeball the scale in edit mode or rotate it in object mode, but it needs to be precise for architecture.

Thanks in advance!

Normal orientation

Wrong scaling orientation in object mode (local orientation)

Maybe there is an method to apply the rotation of an object to a normal or something?

In Edit Mode, create  a Custom Orientation from the face. (That's the '+' in the orientation dropdown at the top of the view, in 2.8 .) Check 'Use After Creation'..Then back in Object Mode, use it, with SZZ

However, it's probably better to A select the whole mesh in Edit mode, and scale that, because non-uniform scaling of the object (giving the object a transform matrix including a non-uniform scale) often interacts in undesirable ways with modifiers and constraints. Either that, or when you're done scaling in Object mode, CtrlA, bake the scale into the mesh by applying it.


Ungrouping objects connected via a vertex I have a few seperate models imported from Sketchup, and I can select the groupings that I made in Sketchup, but there are some groupings that are incorrect (not the same as what was grouped in Sketchup). When I move one group of objects, sometimes there are some unrelated objects which move together with it. However, when I go into edit mode, they are unconnected.

They seem to be connected to random vertices at the grid origin.

I've tried:

'L' - 'Make Local' - 'Selected objects' and
'U' - 'Make Single User' - 'Object' - "Object & Data & Materials + Tex, to no avail.

I've also tried

'Remove from group' among other group options, but they all still seem to leave the objects connected at the vertex near the grid origin, not allowing me to move/translate them as seperate selections unless I got into edit mode.

My question is

How can I ungroup these objects?

Your group is a single object. You can select the object, go into edit mode, then separate parts of the mesh into separate objects.
From Separating Meshes - Blender Documentation

In edit mode press the hotkey 'P'. Then select one of the option:
Selected

This option separates the selection to a new object.

All Loose Parts

Separates the mesh in its unconnected parts.

By Material

Creates separate mesh objects for each material.

If the parts are unconnected in edit mode (as you stated), use Separate > All Loose Parts.

They seem to be connected to random vertices at the grid origin.

If the parts are connected, You can try to can try to delete the vertices/edges before separating the mesh by loose parts. Otherwise you will have to select the part of the mesh, which you want to separate and separate by selected. (Useful:  'L' [Select Linked])


Blender Crashes When I Open A File I have been using 2.83 on a Mac (Catalina OS) and I closed a large 2GB file last night that I've been working on for a while, and Blender crashed.  Now this morning when I try and open the file Blender keeps crashing, I can't open it at all.  I've tried making a duplicate of the "blend1" file and opening that, but it crashes on that also.  I downloaded 2.9 and tried opening it with that, and it crashes too.
I've put a lot of work into that file so I'm very worried that I've lost all of my work. I have been able to open previous versions of this file.
Thanks.

In my experience, when working with blend files that no longer work any more for whatever reason, sometimes you can append them into a blank blender file. Since yours is rather large, you might want to try it parts at a time.
I'd try first with the file that you do have access to, and if that still doesn't work, try again with an autosave or the .blend1 file. Hope this helps!


Split mesh into two pieces using bezier curve I've created a Bezier curve, and used to shrinkwrap modifier to project it onto my object:

Now I want to cut along the curve, splitting the mesh into two.

How can I do this?  If I just use knife project, I would lose the 'lid' part.

Method 1

There is a Cut Through option for Knife Project tool, as shown in Figure 1 below (btw, since Knife Project tool doesn't require the curve being snapped to the surface, the Shrinkwrap modifier isn't quite useful here, just make the projected cut through the ortho view, Top view in your case);
P to separate the default selection after that, see Figure 2;
Select one object, enter Edit mode, A to select none, ShiftCtrlAltM to select the cutting edge loops (in Vertex or Edge select mode), then W > Bridge Edge Loops. Repeat it on another object. See Figure 3.

Method 2

There is another nice script called Sculpt Tools shared in Blenderartists.org, which can do this in one stop. But the final mesh needs a bit refinement compared to Method 1 here.

(Image by the addon author Piotr Adamowicz)

There is also a similar addon called Sculpt Trim Curves Utility, which also did it. But I'm not sure if it still works well with the latest blender version.

(Image from blendernation.com)


Fill cylinder cap with quads Is there any way of converting the triangle fan found on a cylinder cap into quads.

If you know that your circle has a even number of vertices, and do not care how the gird is aligned; then select all the vertices in the circle with alt RMB , then ctrl F > grid fill.

Select half of the vertices of the circle. The selection needs to have the same number of vertices along the top and bottom, and the same number unselected on the side.

Then press ctrl F > grid fill.

Which will give you this.


How to simulate in blender, smoke coming out from a bottle or a flask? I want to create in blender an animation. It is possible to simulate the smoke that coming out from a bottle? I attached here my blend file.

https://drive.google.com/open?id=1rL1v4v-wRPMsXDcpcNEVVpQGlpT3-nak

https://c8.alamy.com/comp/AP78GM/science-research-chemistry-flask-with-blue-solution-and-smoke-in-laboratory-AP78GM.jpg

Many thanks!

Make the Flow object bigger and put above the glass and invert the gravity so the smoke will also flow inside and outside the bottle. May be you have to increase the smoke resolution or subdivison (in the domian) for a better result. Unfortunatelly EEVEE doesn't support hollow glass objectives, so you have to use cycles rendering to see what's inside the bottle.(If you choose cycles I recommend the 2.79 version because it's more stable). Or you can also make thicker smoke to cover those details.
I recommend a hdri for background what you can download here:
https://hdrihaven.com/hdris/
If you use hdris you dont have to use lights.

Edit:
I made a test scene:
https://drive.google.com/open?id=1Vksf8SVzUqXFqZcXheBDsJNDx1mamO4M
Don't forget to bake the smoke.
Enjoy!


Shortcuts for Start and End values in the Timeline In 2.79, it was easy to set the start and end values of the timeline with the S and E shortcuts:
If I put my green cursor at frame 42 and press S it sets the Start value at 42:

It would be great to have them re-implemented in 2.9, but before asking in the Right Click Select website I wanted to make sure that I wasn't missing something, for example, is it shortcutable in the Preferences?
(By the way, it would also be great if Dope Sheet and Timeline were merged into one unique window but it's another topic...)

The shortcuts are now:

Ctrl+Home to set start frame
Ctrl+End to set end frame.

And you can remap it by going into Edit > Preferences > Keymap > Animation  and edit Set Start Frame and Set End Frame


can't see fire in render I made a fire+smoke simulation as shown:

then when I render, it shows only the block of domain but I want to see fire in rendered view please help me how to fix it the screenshot of rendered view is:

does the domain object have a domain materiel ? if it does not (have a materiel) follow this tutorial https://youtu.be/u-zK7Bu8cAI.


Unable to paint texture I referenced this tutorial to paint textures using bpy. I just replaced the Cube object with my mesh object loaded from an obj file. Rather than using all the textures I just used one of them (in code it is sTex). But on running my script, I don't see any texture inpainted on the mesh.

import bpy, os, math
from mathutils import *

class Material:
    def __init__(self, name, diffuse, specular, alpha):

        mat = bpy.data.materials.new(name)
    mat.diffuse_color = diffuse
    mat.diffuse_shader = 'LAMBERT'
    mat.diffuse_intensity = 1.0
    mat.specular_color = specular
    mat.specular_shader = 'COOKTORR'
    mat.specular_intensity = 0.5
    mat.alpha = alpha
    mat.ambient = 1

    self.mat = mat
    self.add_texture()
def set_material(self, object):
    object.data.materials.append(self.mat)
def add_texture(self):
    sTex = bpy.data.textures.new('BumpTex', type = 'STUCCI')
    sTex.noise_basis = 'BLENDER_ORIGINAL'
    sTex.noise_scale = 0.25
    sTex.noise_type = 'SOFT_NOISE'
    sTex.saturation = 1
    sTex.stucci_type = 'PLASTIC'
    sTex.turbulence = 5
    mtex = self.mat.texture_slots.add()
    mtex.texture = sTex
    mtex.texture_coords = 'ORCO'
    mtex.use_map_color_diffuse = False
    mtex.use_map_normal = True

def load_mesh(path):
        bpy.ops.import_scene.obj(filepath = path)

def start():
    os.system('cls')
    print('######## Output of Script #########')
    path = "Mesh.obj"

    load_mesh(path)

    Man = bpy.data.objects["Man"]
    Man.scale = Vector((0.613, 0.613, 0.613))

    Man.select = True
    bpy.context.scene.objects.active = Man
    red = Material('red', (1, 0, 0), (1, 1, 1), 1)
    red.set_material(Man)

if __name__ == "__main__":
    start()

What I know is - To paint a texture
        1. Load the mesh.
        2. Create new material for the mesh.
        3. Select a texture corresponding to this material. Go to edit mode for that mesh, select all vertices, then unwrap using SMART UV project.
        4. Go to UV Image editor, unwrap using SMART UV project, select the texture created above.

But I'm not able to do this with bpy.
As such the code runs without any error. Please help me where I'm missing. If possible, explanation with a piece of code will be much more helpful.

That example tutorial runs and returns an error if you haven't saved the example image in the tutorial to your home folder.

Texture paint is easy enough without python code being necessary, but this seems to be over-complicating what would be normal per face material and image texture assignment. The example tutorial provides no result that is of benefit other than to understand how the code works - but I may be biased toward using a paint or bake option instead.


Rendering animation frames with GPU and CPU Assuming I am not using any shaders which are CPU only, would you recommend against mixing GPU and CPU Cycles network rendering of an animation?

No, I would not recommend against it, mainly because even if there are problems with hybrid rendering with the native network renderer, it's REALLY easy to get around it. By rendering to a network location and turning ON "Placeholders" and turning OFF "Overwrite," any computers rendering to that location will sort it all out themselves, very nicely. This doesn't automate nearly as well as the Network Renderer (i.e. not at all), so if that's important to you, that would take some scripting.

But in short, there is a way to cooperatively render with multiple computers using a mix of GPU & CPU.


Get angle of a face relative to object origin? So, I was hoping there was a way to get very specific information but I seem unable to find it.
I'm planning on assembling various parts of an object (a tree) generated in Blender using code. To assemble these parts I need the XYZ angles of each face relative to the original rotation as it transitions from part to part.
I have assembled, from various answers and the Blender API reference, the following code block:
import bpy
from mathutils import Matrix, Vector
import bmesh
context = bpy.context
obj = context.edit_object
mw = obj.matrix_world.copy()
bm = bmesh.from_edit_mesh(obj.data)
# for this example jmake a face active
face = bm.select_history.active
o = face.calc_center_median()
# calculate the axis dif in local coords

axis_src = face.normal
# local z-axis
axis_dst = Vector((-1, 0, 0))

matrix_rotate = mw.to_3x3()
matrix_rotate = matrix_rotate @ axis_src.rotation_difference(axis_dst).to_matrix()
matrix_translation = Matrix.Translation(mw @ o) #

obj2 = context.scene.objects.get("Branch_New")
obj2.matrix_world = matrix_translation @ matrix_rotate.to_4x4()

This takes the 'inner part' in this picture:

And attaches it at the appropriate location with the appropriate rotation.

This means that what I'm looking for is in here somewhere.
What I need is a way to duplicate this functionality in Unity without hand-recording a 3x3 matrix for each joint I create. And then being able to keep it all proportional in code if the objects change size. I could do this, I think with a quaternion and an angle for each joint?
So I guess my question is how I get matrix_rotate (in its final form) to represent one more simple part of that quaternion, since matrix_translation is the 3-d coordinates of the other part. I think.
Now that I have the code working I can probably get through the rest on my own, and will provide an answer within a few days.  But if someone else has faced this problem before and can help I would definitely appreciate it.

The way to get the information I want per-face out is to run:
euler_rotation = matrix_rotate.to_euler()
euler_rotation

for the Euler rotation, and
matrix_translation

for the translation, taking only the magnitude portion of the matrix's x, y, and z rows. This is as a Euler transformation.  To do it as a Quaternion, I can simply run:
my_quaternion = matrix_translation @ matrix_rotate.to_4x4()
my_quaternion

and get a 4-number output that I believe includes both position and rotation transformations for the joint.


3D View : Abnormal(?) X-Ray mode and Edit mode interaction So for context I'm following along with a tutorial and the course lecturer demonstrates a usage of Blender Edit mode with X-ray enabled (set to 1.0) that shows semi-transparency for faces. Useful for selecting vertices on either side of an object for efficiency reasons (x ray mode) It's how it worked in Blender 2.79(?), but has been changed since. I believe the more important usage is that you can have per object transparency in a scene with multiple objects in it without making the entire scene transparent in Object Mode due to x-ray being enabled.

Here is an example of the intended effect from my friend:

As you can see, you get semi transparency in Edit mode with x-ray enabled, without having the faces completely transparent like you might in Wireframe.

After some troubleshooting and also having 3 separate friends test this in 2.82, 2.80 and producing the same result as the lecturer, I decided to try it in 2.82 (not 2.82a, which is what I was previously using) myself. I am avoiding downgrading to 2.80 if possible because I want to be able to use the overhauled sculpting tools.

I still am unable to get the intended effect of being able to view the selected object as transparent in edit mode and solid in object mode. Both mode's show the object as 100% solid.

Some things I did notice are that my wireframe's default x-ray setting is set to 0.5, my understanding is that it should be set to 0 by default. Not sure why this happens..so I change it down to 0 and I noticed that  I can produce the intended effect of semi-transparent faces if I reduce X-ray down to 0 in Wireframe mode (which isn't what you're demonstrating), but this only lasts between a few changes between Solid>Wireframe>Solid, and eventually Wireframe mode shows no semi-transparency for the faces.

You can see that affect here :

I also tried to reduce my x-ray to 0.999 and received these results :

This seems to create sort of transparent faces, but you can see that the edges are almost like dotted lines and the vertices are not visible.

This is really puzzling and at this point feels like a system specific issue for me. This is a nearly fresh install of Windows with new drivers and I've gone as far as reinstalling Blender both through the website, and even Steam as well (with restarts in between) so I'm not sure how I can even troubleshoot or fix this. Though this functionality is definitely not necessary nor required, I am concerned that the fact that it doesn't work as it should may cause me to run into more issues (or not realize im running into them at all!) later on so I'm trying to see if anyone could determine whats going on here.

Hopefully my explanation here is thorough enough that my issues are clear. Sorry for the inconsistency between the screenshots, I had completely reset my user preferences after awhile as to verify whether or not that could be affecting it.

when your x-ray is set to 1.0 it means that the visibility of the object is set to full. 0,5 means that the visibility is on half and 0 means that the object is completely see-through (invisible). When your shading mode is set to wireframe, wires will be visible no matter how low the visibility is set. The visibility you want is set by default.

Visibility set to 0.5, shading - solid mode, object mode

Visibility set to 0.5, shading - solid mode, edit mode


Enable Ambient Occlusion (AO) in Cycles? How do I enable Ambient Occlusion (AO) in Cycles?
In Eevee, I just active AO in the render settings, but there's no option to do this in Cycles?

I finally found the solution: You don't need to enable Ambient Occlusion in the "World"-settings (since this just brightens your image): just enable it in the "View Layer"-settings as a pass. Then, in the Compositor, add a Color Balance node (or some other color node that allows you to change the darkness of the AO pass) and connect it to the AO output of the Render Layers node. Then, connect the output of the Color Balance node and the Image output of the Render Layers node to a Multiply (Mix) node, and then finally connect the output of the Multiply (Mix) node to a File Output node. This way you can manually control the AO in Cycles.


Nice normal map without beveled edges I've got mesh with lots of holes, concavities and convexities. The problem is that it has no beveled edges and whole mesh is badly triangulated. I only need to bake a good normal map, but adding bevels requires to totally remesh it which will take so much time :/ Is there any quicker way to do that? Maybe I can get around this somehow? Maybe there's another map I can bake and transform  to normals with some PS plugins? BTW I'm going to bake it with xNormal (I have never baked anything straight with blender).

Any help would be appreciated.

Selecting one side of your mesh

Use inset I to get a border of quads

Repeat for surrounding sides

Select the boundary of the side and add a bevel.

With the faces of one side selected you can use Select Boundary Loop (in the select menu) to get the outer edge loop to bevel.


"Follow curve" throws my objects chaotically Whenever I add the Follow Path constraint to an object, that object is thrown far away from where it was.

In this example, I have a camera I want to attach to the outermost circular path:

As soon as I add the Follow Path constraint and set it to follow the circle, the camera is moved far away:

No matter what kind of object I use or how I configure my circle, the object is always thrown wildly.

These are my settings:

If I turn "Follow Curve" on, the camera is thrown to a different location. "Fixed Position" throws it to yet another location.

While I was typing this question, I figured out the answer. I needed to set the origin of my object to match the origin of my path.


Simplify Texture Keyframes I am making a product presentation and need to show the different states of the Backlight(Png File - Emitter).

Rightnow i use a "Mix Shader Pyramid" to guide the right Texture to the Material Output (See picture below) and instert Keyframes as needed.

Is there a more elegant way?

At the bottom of the image node you will see, "Single Image", change this to "Image Sequence" and fill in the number of frames. While the render preview in the viewport doesn't usually update as you change frames it does update when you do a proper render.

The catch with this is that the each image is expected to be named with its numerical sequence, eg. "display001.png" "display002.png" "display003.png". If a number is missing then you get no texture. You can make one image last for several frames by creating symbolic links for the missing files, that is if you make a link to "display002.png" and name it "display003.png" then the same image will be shown for two frames.

Here is a python script that can create symlinks for the missing images in a sequence. So you can name your images "display0001.png" and "display0005.png" and the script will make links so that the first image is also used for frames two to four.


Smoothing across multiple objects I am trying to manually create a fragmented spherical object in Blender for use in a Unity game. When i create a separate object from the mesh the smoothing is no longer contiguous so it becomes obvious that the object is already fragmented.

Is there a way for the fragments to appear like the original whole and contiguous unbroken sphere with no gaps and consistent shading? Can I instruct Blender to smooth across all objects instead of smoothing individual fragments?

I am quite new to modeling and would appreciate any pointers.

Thanks!

Yes, this can be done.

keep a single whole object(this is the reference for correct normals).
enable auto-smooth on all broken parts(needed for custom normals to show).
using the Normal Edit modifier on the broken parts to copy the normals from the whole object to the broken parts.

If you want to avoid some slow-downs from continued updates, you can apply the modifiers to store the custom normals.


Glass not rendering correctly I've no idea where this grey is coming from. Transmission 1.0 and Roughness 0

I found a fix! Apparently my normals were facing the wrong way. You can check this by clicking on overlays and checking "Face Orientation"; Red means it is reversed. I Selected all my vertices and hit shift-n and voila no more silvery things! Thank you everyone who gave suggestions.


Linking movies in VSE but not graphically altering them? There are many instances where I'd like to pre-process a movie into another file and reference it later, or bring in an existing movie and process that into the final.

In this case, I have a longer movie, and I simply want to process the scenes in their own context and then link them all together after.

So how do I link to movies and NOT have them processed again (I understand any image processing to be destructive in nature).

Perhaps this is my confusion and no destruction happens -- but can someone set me straight on this?

The VSE is non-destructivee for any movie file you link into it. Just make sure that rendering outputs to a unique file name (otherwise it could overwrite an existing file and still be destructive to that particular file).


Stuggling to UV Wrap Can I am trying to UV Wrap the can in the image but I am struggling with how to design my label so it fits the correct curve of the UV map.

I tried warping my image in Photoshop but I just couldn't make it look prefect. Is there an easier way in Blender?

You can use UV>Cylinder Projection with your surface faces selected. Just make sure you don't select the bulging parts on top and bottom. They have to be mapped seperately, as well as the top and bottom caps. (Don't use Live Unwrap to avoid your UVs getting messed up)

BTW: If you don't want to deform your can later on, you can save a lot of geometry in your model (and even then, you can always add more geometry later, while it's more time consuming to remove unwanted geometry).
You don't need any of the edge rings between the two shape defining ones at the top and bottom. It's always good to keep the polycount low, be it for vfx or games.


Does one scene affect other scenes? I have 2 scenes in my blend file, one for texturing and rigging, one for the actual animating and rendering. Does the rigging scene affect the animating scene?

Each scene in a blender file is separated from each other, using it's own settings.

The data in a blend file can however be shared between scenes, this may be an object, mesh data, material etc. For example when you selecting a material, every material in the file will be listed and show up the same in every scene. When you use the same data block in multiple scenes then changing the item in one scene will also change it in other scenes.

The easiest way to tell if an item is unique is by the name, data blocks linked between scenes will have identical names. Here you can see that Suzanne is the same object linked between scenes, while Suzanne.001 is a different object that is only in scene.003.

If you want to use the same object in multiple scenes select it and press CtrlL and under Objects to Scene choose which scene you wish to link it to.

So the answer to your question will depend on how your file is setup, this should help you find out and to setup your file as you want.


How can I remove a node group from my startup file? I wanted to import some node groups into a new project to save as my startup file so that I will always have them. I accidentally imported one of the nodes I wanted, as well as a junk copy that I had created. I've tried everything I can think of to delete it, and haven't found anything helpful online. The node was originally a copy of the Rectangular to Polar node group, but is now empty and has been renamed Untitled. I suppose I could simply use it next time I need a new node group, but I'd rather just get rid of it. Is there any way to do this?

Steps:

Open up a new Blender file (aka. the startup file)
In the Outliner, select "Data-Blocks" from the drop-down menu
Find the "Node Groups" section, which should contain the node groups that you are trying to remove
Expand one of the node groups and uncheck the "Fake User" field
Repeat this for all the node groups that you want to remove
Save the file as the start up file, close and open a new Blender file

The node groups that do not have any users will not be saved and thus will not be there when the startup file is loaded. If you have multiple node groups to remove and they have dependencies upon each other, then it may be necessary to save the startup file, close, open new, and save again a couple of times. Each time, the node groups without any dependencies (leaves) will be pruned and eventually you can remove all unwanted node groups.


Weird Hair Behavior After Render It happened once before with another project and It was related to a keyframe that was messing around with the hair somehow but now, I can't see any keyframe in the Dope sheet.

After I try to render though, the hair are messed up in the viewport and everything goes back to normal whenever I move the timeline slider. This Is why I found strange it doesn't seem to be related to a keyframe..

It's a messy hair job for now anyway and doing it all again will not be a whole day waster but I'm posting in case something like this happens at a more crucial time of a project.

Thanks

Hair Normal

Hair Render Preview

Render mess up

Aftermath of render

You have different resolution of mesh in preview and render:

This may not be so important, but not for edited hair. In fact, you have two different mesh. So move Particle system before Subsurf, or make Subdivision setting same for preview and render


VSE limited to 32 channels? I'm putting together a music video with Blender.

I've noticed I can't move my strips higher than channel 32 in the stack.

I'm surprised, becasue there isn't any visible information that there is any limit. I tried finding some option for that in the User Preferences to no avail.

Is there a way to rise this limit?

From what i have searched, u might have to try changing the source code....
Look in content in the below posted link:
Hope you find your answer.
https://developer.blender.org/T42194


How to make sure the final bone in an IK chain doesn't rotate? I've got a chain of inverse kinematic a bones, and I want the one that I grab to be unable to rotate while it is moving. How do I do this?

My setup is a rigged car assembly arm: http://sendvid.com/8z51fsgm

When I move it, the end of the arm points towards the cursor rather than simply translating up/down/left/right like a real arm. Example: https://www.youtube.com/watch?v=xglALqtKGAc

Notice how the arm's grabber tool never rotates absolute to its surroundings. The rest of the arm knows how to rotate in such a way that the tool never has to. How do I do this in Blender?

There are two ways that you can do this.  You can either select the bone and add in rotation constraints or you can do it a really easy way.  Simply select the bone you want not to rotate while in pose mode.  Then press N to bring up the additional menu on the right side of the view port.  The top tab that says transform is what you want to look at.  Where is says rotation, select all of the locks and this will prevent that bone from ever rotating.    Hope this helped!


Dinosaur Reptile Skin I made a dinosaur and I want to put a reptile skin on it. I tried it with sculpting and image texture brushes but then it looks blurry. I can't increase the resolution because I have already 4 steps multi resolution. I also tried it with texture painting but then I only have a texture without the 3d. anyone can help please?

https://i.imgur.com/a/n6u9L.jpg

so I'm not an expert on blender, just someone who messes with it occasionally, but i think a good way to do this would be to use a normal map.

Just in case you don't know what that is, it's like your standard image texture, but it tells the light how to interact with as if it's 3d. This can make an object look like is has more geometry than it actually does. here are a couple of examples of how they look

https://i0.wp.com/unitycoder.com/blog/wp-content/uploads/2013/07/poormans_normal_specular_map_generator_unity3d_big.jpg

http://wiki.polycount.com/w/images/thumb/c/c9/Normalmap_stairs.jpg/1406px-Normalmap_stairs.jpg

So what you do is you pair a normal map with a standard color texture map and boom. it can look pretty nice. There are plenty of tutorials on youtube that show you how to use all kinds of other texture maps than just your color ones.

They aren't usually used with a high poly sculpt, but i bet with a little searching and adaptation of standard stuff you can do it.

anyway that's my piece of advise, again I'm no professional but maybe this will help.


What does focal length mean in Blender? I know how lenses work, and I know what a focal point is, but I don't get what Blender means by "focal length".

I can set the distance to the focal point of a camera in the depth of field panel, while changing the focal length in the lens panel changes my FOV, (larger focal length -> smaller FOV) but what quantity is this change based on?
I need to set the FOV with great accuracy, based on distances calculated from the geometry in my scene, so I would like to know what the meaning is of the distance that I have to fill in in the lens panel.

Focal length is the distance between the lens and the focal point:

At focal point the image is sharp and it's the place where the camera sensor is located (or camera film). The Field of View of each lens depends on the sensor size:

The conversion formula is this:

FOV = 2 * arctan(half_the_diagonal_of_sensor / focal_length)

Blender allows you to enter the "zoom" of camera in either Focal length (mm) or in Field of View (°):


How can I take these two meshes and properly mold them together proportionately like the reciever of a gun? So I want to make that rectangle mesh, which is inside of the cylinder to smoothly transition almost like the cylinder mesh is just a smooth bump over the rectangle, I'm probably going at the entire wrong way as I've only just started using blender for about a week but this one has got me stumped I've tried subsurface as I have seen that used to make the transition between a hole and a flat object smooth out but that hasn't worked, would appreciate any recommendations on how to do this.

Now that I understand your goal, and I tested it, I think I found what you want.
Start with a cube scaled the way you need to have the top face be your rect. Then add a low poly cylinder on top. It's key to make sure that the cylinder is more than halfway submerged in the stretched cube, as this will create a better transition later on.

Add the boolean modifier to that cube, then select the cylinder as the object and set the operation to union. I found that it is necessary to apply this modifier after this.

After deleting or hiding the original cylinder, you might find there is an error with the polygons that make up the remaining rectangle. I found that on one side, the corner vertices were not properly connected, resulting in a u-shaped ngon. I fixed it by deleting that face, and selecting the edges I wanted, then pressing the F key to bridge them.

Add the subdivision modifier, and you get something I'm sure was not your intended shape. If it looks like this, you can rest assured we can control this.
Go into edit mode, and click button on the subdivision modifier to show the results in edit mode.
Select the edges of the top face of the box, and the vertical edges (Like a stick figure table). With all those edges selected, press Shift-E, and then pull the mouse away from it's starting point until the edges turn fully red. The result should look like this.
Creases won't help with the ends though. Creases are a less expensive way of controlling the smoothness, but the ends will require a more old-fashioned approach, known as control loops. While still in edit mode, create a loop with Ctrl-R. Click once while it is the center, then  you can drag the loop around, so drag it close to the end to tighten up the transition and click again.

I hope this is the actual result you were looking for, but if not, it was fun practice on better stack answering.


Cannot unsubscribe function from bpy.msgbus The callbacks still remain after I try to unregister using bpy.msgbus.clear_by_owner, leading to unwanted appending callbacks. Is there something wrong with this code? I do get the expected prints.

    CALLBACK_OBJECT_NAME = "callbackListener"

    if CALLBACK_OBJECT_NAME in bpy.context.scene:
        print("Clearing previous owner")
        bpy.msgbus.clear_by_owner(bpy.context.scene[CALLBACK_OBJECT_NAME])

    bpy.context.scene[CALLBACK_OBJECT_NAME] = {}

    subscribe_to = bpy.types.LayerObjects, "active"
    bpy.msgbus.subscribe_rna(
        key = subscribe_to,
        owner = bpy.context.scene[CALLBACK_OBJECT_NAME],
        args = (),
        notify = selectionChanged,
        )

Owner can be any python object.+

Using example here https://developer.blender.org/P563 can use the simple python object class to instance a handle.

handle = object()

Can also use

handle = 4
handle = set()

Simple example throws callback when context object name is changed.  Running in  text editor (main thread) the handle is lost. A quick workaround is to  save it to the driver namespace.

import bpy

handle = object()

# all branches below work
if 1:
    # To get some properties we need to prevent them being coerced into native Py types.
    subscribe_to = bpy.context.object.path_resolve("name", False)
elif 0:
    subscribe_to = bpy.context.object.location
else:
    # all object locations
    subscribe_to = bpy.types.Object, "location"

def notify_test(*args):
    print("Notify changed!", args)

bpy.msgbus.subscribe_rna(
    key=subscribe_to,
    owner=handle,
    args=(1, 2, 3),
    notify=notify_test,
)

# In general we won't need to explicitly publish, nevertheless - support it.
bpy.msgbus.publish_rna(key=subscribe_to)
bpy.app.driver_namespace["handle"] = handle
# ... to clear
# bpy.msgbus.clear_by_owner(handle)

To clear the callback via python console

>>> bpy.msgbus.clear_by_owner(
clear_by_owner(owner)
.. function:: clear_by_owner(owner)
Clear all subscribers using this owner.
>>> bpy.msgbus.clear_by_owner(bpy.app.driver_namespace['handle'])

If an immutable type like int is used (eg handle = 4 can clear from console with

bpy.msgbus.clear_by_owner(4)

but not for a dict handle = {}, possible the hassle in question code when setting the scene ID property.

In an addon can define the handle globally and remove in the unregister method, as it has the addon's module scope.

handle = object()

def register():
    # set up a callback with owner = handle

def unregister():
    bpy.msgbus.clear_by_owner(handle)


add titles using the VSE I want to add titles to a video (like the titles in the end of Sintel) using the blender video editor. I made a long Image using GIMP and I want to scroll it in the end of the video. Probably I need to set a dynamic offset, but I didn't find an option for this.

The problem was solved simply:
I went to the first frame, right-clicked on the offset, inserted a keyframe, then I went to the last keyframe, right-clicked on the offset and inserted a keyframe again.


How to run blender video editor on a weak graphics card? Preview area of blender video editor is always white (blank) no matter what the picture or the video is.

After a little research, I found out it's due to my old OpenGL:

I can't afford to buy a good graphics card and I really need this video editor. My graphics card was able to run many video editing software such as sony vegas...etc. It was also able to run 3D max and Cinema 4D. The only withdraw is that the rendering process is slow. So I feel like my card is able to run blender's video editor and it's just a bug but I don't know how to tweak or fix it.
I'd like answers with creative ideas. I wouldn't like the answer to be like You can't.

Not having your exact hardware, it is really difficult to give an exact answer, or even good suggestions. You didn't even describe your pc specs or your card model, drivers version. It could help.

But I think you could, as a last resort, try a software opengl emulation. It won't be performant, it won't be fast and it could have (other) glitches, but at least you could try.

How? In simple terms, usually blender relies on the (usually much powerful) opengl hardware implementation but there are software implementation that are run by your cpu, and they could support better opengl levels, hopefully better than your gpu or driver.

The most used, I think is Mesa (https://mesa3d.org/) and you should build (compile) it to obtain a dll. But you can also find some .dll pre-built around... just be careful about the source you're relying on!

Here is a developer's thread that explains roughly how to do this (note the link suggested is now dead!):

https://developer.blender.org/T43077

  Download opengl32.dll from
  http://download.blender.org/ftp/incoming/softwaregl/ and put it into
  the same folder as the blender.exe. This will switch blender to fully
  software opengl mode, avoiding possible issues with
  driver/configuration

I found a steam thread that has working links, apparently

  for 32bit
  http://download.blender.org/ftp/sergey/softwaregl/win32/opengl32.dll
  and for 64
  http://download.blender.org/ftp/sergey/softwaregl/win64/opengl32.dll
  once downloaded just put in the directory of blender

https://steamcommunity.com/app/365670/discussions/0/598198356178829559/

See this thread also

https://www.opengl.org/discussion_boards/showthread.php/138029-OpenGL32-dll

I used this approach once (on linux, on thinkpad R60 with a crappy intel card) and it kinda worked, although the most complex functions in blender had issues, but I used this way until I had a new pc, with a much better card, to use the (at the time) newest blender versions... So, you have to try, and maybe report here your findings, to help others!

Good luck!


Particle system not rendering, emitter rendering see-through I need to motion track a fireplace to some footage. Everything looks fine in the render preview, and even in the viewport, however the actual file that renders doesn't have a fire, and the emitter is see through looking.

The photos are of the render itself, and the render preview.

Use the rendered layer's image on top of the background plate using Alpha Over:


How do I make my model smooth? I am trying to do a 3d model of a rabbit but it looks more like a balloon. I have tried adding more poly's and I have tried sculping but neither seem to work.

Here are a few things you could try:

  select the vertices you want to smooth, right click, select "Smooth Vertices"
  apply the subdivision modifier -> this will make the model have more faces

      For more reading here is the  Blender Subdivision Modifier Manual

  You could shade smooth, in order to do this:

        Go to Object data properties > Normals > check the box and select the degree of angle you would like to be auto smoothed
        select the model and go to mesh > normals > recalculate outside
        finally, go to mesh > shading > smooth faces

I hope one of these helps, good luck with it.


Shadows not Showing up? Also help with color variation in shaders Here is a link to the blend file
Click here to download
I created this set of gumdrops with an array modifier. The Rectangle underneath is shaded to like marble and has a couple of image textures and BSDF settings. It isn't really catching the shadows but the reflections and whatnot are visible. I'm assuming the problem is the shader on the plane but I don't know how to fix it.
I really doubt it's a settings thing or lighting issue. The only active light I got in the scene is an area light with a reasonable amount of watts.
As you can see, in the image the shadows are too "red" when
I try out on a blank plane with no shader adjustments(Exhibit A). Meanwhile, with my makeshift marble shader it looks goofy as well (Exhibit B). Any takes?
I included the blend file and some images.A

B
Heres a pic of the marble shader from exhibit B.

PS. anyways that aside, I also want these gumdrops to be different colors but don't know how to do so because it's an array modifier, amimated, and I dont know where to put the color ramp in my nodes to make it happen.
If any of yall know I'd be very happy

Right here you are telling a Transparent BSDF to amplify the light passing through the gumdrops in a non-realistic way.  Stick to Value and Saturation in the 0 - 1 range to produce realistic results.
Geometry -> Random Per Island is the key to separating out an array.

You could replace the Viewer here with your Color Ramp.


How to make a circular array using offset object as center? We know that the there is an Object Offset option for Array modifier, but when trying to make a circular array with that offset object as the center of the array circle, it always doesn't behave quite like what's expected. So how to make a nice and controllable circular array?

P.S.: There is an old trick on CGCookie about moving the object's origin. I wonder if there is any way to do this without changing the location of the origin. :)

Add an empty at the origin of the object that you want to duplicate.
(Remember to hit CtrlA and select rotate and scale, to apply transormations on the original object).
Then, add an array modifier with object offset linked to this empty.

Set the 3D cursor to the desired centre of the circle. Add another empty here. Make it the parent of the other empty. Now select only the centre empty. Rotate.
The amount of rotation is of course dependent on the number of objects, e.g. 12 objects = 30°.

If you want the single elements to "touch" as in your picture you need to either adjust the object width or the radius. The circumference of the circle is 2 * PI * radius, so the width has to be the nth (e.g. 12) part of it. (Or, if it is not about absolute exactness, it can be done visually.)

You probably want to parent the object to the centre empty.

This circle is "controllable" as you can simply change the angle by rotating the centre empty.


in python I want to select faces in edit mode by the index of for loop I'm trying to understand how python works in blender  ,  I want to select faces in edit mode  by the index of for loop to modify each face separately , I tried different ways but I failed

import bpy
import bmesh

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

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

print(len(bm.faces))

bm.faces[0].select=True

for f in bm.faces:
    print("face")

With the Default Cube that prints

6
face
face
face
face
face
face

to the system console.


How to add green screened footage to this scene? I'm looking for advice on different ways and work flows for an animation idea. i want to get video footage of a human standing on the look out tower in my scene below (WITH) the 3d camera moving

1. tracking markers on a green screen, motion tracking the green screen, key out the green and then constrain the tracking data to the camera in the 3D view

is there any way to do this without a giant hollywood green screen studio?
how do i deal with scale? for instance i want my subject to be on the look out but the camera to be far away.

2. Adding a video image sequence with alpha to image planes and removing the alpha.

this would restrict some axis of camera movement but could in theory yield a decent result for some types of shots. Yes no?

Overall i'm rather confused. Any advice right or wrong would be appreciated as there is little info in this subject

Cheers

Integration of CG and shot footage is tricky: it has to be done carefully and with the end goal clearly defined.

When you shoot your green screen element, add enough markers on it so that you can track it later. Plan the placement of your trackers so that you get a good idea of the actual geometry of the location used. Pay special attention at the places where the tracking marks might overlap with the foreground elements, try to avoid placing markers that are going to be blocked, or that might create probrems with the key.

No you don't need a massive green screen to pull this off, you just need a green screen large enough to cover the edges of the person you want to superimpose on the scene. The rest you can take away with masks (creating what is called a garbage-matte)

Keep accurate notes of what camera was used, the sensor size, lens, camera height, distance to the subject and do include some element on the shot that will help you determine the scale. For example if you set tracking points and measure the distance between them you can later have blender use that scale. To set the scale properly you need to have at least one known distance in the scene.

Do not use a zoom in the shot (as blender cannot deal with variable focal lengths yet). Shoot a distortion chart with the same lens used for the shot to determine lens distortion.

After the shoot bring the elements to blender, track them and reconstruct the scene. and combine the elements using the compositor.

Keep in mind that for a better integration your 3D scene needs to be in a scale that matches the real world.

The whole procedure and workflow is not within the scope of this site but there are plenty of videos out there that can help you. Sebastian Koenig's "Match, Track, Blend 2" series should give you enough information.

Before you do anything please read: How can I get better results when doing camera motion tracking?

If you get stuck please ask specific questions in different posts.


Dynamically fill an Enum with a list I'm writting an addon with an UI. In my draw function in my UI class I've this

layout.prop(bpy.context.scene, 'activebone', text='active bone')

Wich create an enum in the UI.

And in my register class I've this:

bpy.types.Scene.activebone = bpy.props.EnumProperty(items=active_bone)

In my draw fonction I fill the active_bone list with the some data and but the enum don't refresh himself. I know that i can retype

bpy.types.Scene.activebone = bpy.props.EnumProperty(items=active_bone)

But the draw function is Read only so I can't.
Is it possible to refresh my Enum item in the draw function or am I obliged to do it in an other class like a button?

In this case it sounds like you want to use a dynamic enum, rather then passing a list, pass items as a function (which returns a list), then you can change it dynamically.
See: https://docs.blender.org/api/current/bpy.props.html#bpy.props.EnumProperty


Select Input Texture file name as parameter/node I am trying to create a material node group for triplanar mapping, but I am not sure how I can parameterize the image texture name.

I have 3 image texture nodes, which all use the same file with the same settings, the only difference is the vector input.

Is there a way I can make it so that I only have to select the texture name once, possibly as a input for a group?

This can be achieved with OSL - but this is not compatible with GPU rendering - so CPU rendering only.

To start with we need a node where we can specify the filename. For this we can use the following OSL code - paste it into a new Text Editor datablock named 'simpleFilename.osl' :

shader simpleFilename(
    string FileName = "",
    output string oFileName = "<undefined>"
    ) {
    oFileName = FileName;
}

In the Node Editor, add a Script node and set point it at your new 'simpleFilename.osl' text block. Assuming you have OSL enabled (if it's available in your Blender then you'll have an Open Shading Language checkbox on your Render properties) you should see the node transform into the following :

This new node provides an input (which can either be connected to another 'string' socket or the filename can be typed into the input field - enter the full path to the image or use a '//' prefix to indicate a 'local' file relative to the location of the saved .blend file) and an output - both of which should be colored white to indicate type 'string'. The output from this node will be used to drive our Image Texture node (so you can drive multiple Image Texture nodes from the same input).

However, while we're at it we might want to add some flexibility - we can use OSL to combine multiple inputs to generate the filename. For example, create another Text block , this time named 'dynamicFilename.osl' and paste the following :

shader dynamicFilename(
    string Base = "//",
    int Index = 0,
    int Digits = 4,
    int Subframe = 0,
    int SubframeDigits = 4,
    string Suffix = ".png",
    output string oFileName = "<undefined>"
    ) {
    string filenameFormat;
    if (Subframe > 0) {
        //Build format string as "%s%0<Digits>i_%0<SubframeDigits>i%s"
        filenameFormat = concat("%s%0",format("%i",Digits),"i_%0",format("%i",SubframeDigits),"i%s");
        oFileName = format(filenameFormat, Base, Index, Subframe, Suffix);
    }
    else {
        //Build format string as "%s%0<Digits>i%s"
        filenameFormat = concat("%s%0",format("%i",Digits),"i%s");
        oFileName = format(filenameFormat,Base, Index, Suffix);
    }
}

Assigning this to a Script node will produce a node with additional inputs :

This node will behave similarly to the 'simple' version except that the filename will be built from the various elements in the formal PPPPNNNN_MMMMSSSS where PPPP is the prefix (eg, //images/), NNNN is a numeric representation of the Index input value (formatted to Digits number of digits - eg, '0001'), MMMM is similar but based on Subframe (and if Subframe is zero then the _MMMM element is omitted entirely), and SSSS is the filename suffix (eg, .png). In this way you can construct a filename that is automatically generated based on the input values similar to that used in How to show different images based on Object ID.

Now all that is required is the actual Image Texture and this is achieved by using the OSL 'texture' function which can extract pixel data from an image. Create another Text datablock (named 'imageTexture.osl') and paste the following :

shader imageTexture(
    vector Vector = P,
    string FileName = "",
    int Wrap = 0,
    output color Color = color(1,1,0)
    ) {

    string wrap;
    if (Wrap > 0)   { wrap = "periodic"; }
    else            { wrap = "black"; }

    Color = texture(FileName, Vector[0], Vector[1], "wrap", wrap);
}

Assigning this script to a Script node will produce the following :

Note the FileName input to accept the filename (as generated by either the 'simpleFilename' or 'dynamicFilename' node) along with a Wrap input (the equivalent to Repeat/Clip of the standard Image Texture node - set to '0' for Clip, 1 for Repeat).

Now simply connect the nodes as required, linking the output oFilename to each of the ImageTexture's FileName input :

Varying the inputs to the 'Filename' node will vary the image for each of the Image Textures. Each Image Texture will be using the same image and this can be amended by simply changing the Filename node. The filename can also be passed into and out of node groups.


Mesh Smoothing My Model So I know this has been asked a million times but I am pretty new to Blender and not finding a resolution that works for me. How can I smooth out these ridges in the attached image? I have tried sculpting and modifiers, etc and feel like I am just missing something, so asking for some clear direction to solve this. Basically as you see this is a pig face, and needs to be rounded out and playing with edges, faces, etc is just not working out either. Please help a brother out!

If you want to smooth out the whole mesh you can do it by clicking on the mesh, going into the modifiers tab, adding a Subsurface modifier and increase it's value from 1.

On the other hand if you only want to make a certain area smoother I know a couple of other options:

1) In object mode select the mesh, go into Edit Mode, click 2 to use edge selection, select the edges than you want to smooth, press CTRL+B to apply a bevel to them.

2)In object mode select the mesh, go into Edit Mode, press 3 to enable face selection, select the faces you want to smooth, press W to bring up the Specials tab, select subdivide, press 1 to enable vertex selection, press W again and click smooth.

Of these 2 options it's probably best to use the first one to keep better topology.


CAD file into blender, round shapes not round A client of mine send me a .obj file (which was exported out of a CAD file). But on importing into Blender, I noticed the round shapes aren't like they are supposed to, see image attached. Is there any way to fix this, besides fixing all the vertices manual?

If the mesh hasn't been tampered with, I'm guessing this is a situation caused by incorrect smoothing information. A normals related issue.
Make sure when you export, you export the smoothing information correctly. After importing it into blender you have 'shade smooth' set, and then play with auto-smooth angle.


Delete selected particles and their trajectories I have a (baked) particle cache, I can enter "Particle Edit" mode, but I can't seem to be able to delete selected particle trajectories. Can it be done? How?
Example
I've created a minimal example: there's an emission object and a "kill particles" collision object. A "dupli" object is added just for visibility.

Let's say I want to remove retroactively all the particles that aren't killed by the obstacle.
Attempts
Several other related questions have answers that mention Select+X and Select+Del (in Particle Edit mode) as ways to remove trajectories or trajectory points: it wasn't specified. I'm unable to do either.
In "Path" select mode, I can't seem to select anything, with either  RMB or C+LMB:

In "Point" select mode, I'm able to select trajectory points (but I wouldn't know how to select all the trajectories: there's no Ctrl+L functionality). However, X and Select+Del show no effect.

Same for "Tip":

The "cut" brush also seems ineffective:

File
you can download my minimal example here:

As far as I know, there is no way of deleting individual particles.

BUT - possible workaround:
In particle edit mode, deselect "Keep Root", hover your mouse over a strand, press L to select the whole strand (you'll have to repeat this for every single strand) and move them somewhere else. They'll still be in the scene, but out of the way at least.


No audio while editing video I am trying to edit my video in blender and I soon realized there is no audio. By looking at other questions similar to this I turned on the audio codec, made sure audio was on in user prefences, and put the video on AV-sync. I also checked sure to make sure the video did have audio.  As you can see in the image I did set up the audio codec, I'm just not sure if it is correct. To clarify, I need to get audio in my video but I can't. This is different from similar questions because they are concerning after render, mine is not.

I am using Blender version 2.77 on windows ten with a video converted from .Mov to .Mp4

Audio playback doesn't work in the Movie clip editor.
For Video editing you should use The Video Sequence Editor.


How to control the two transparent sides using empty? What should I do to control the right side with empty02 and the left with empty01?

One way would be to use drivers. This quick setup uses the global-x value of the empties and transferes it to the position of the colorramp sliders.
This is not the most elegant way to do this, because of the usage of global transformation values.


How to run an Alpha Build? This would seem to be a dumb question since I can't find anyone asking it before....
I thought I would install an Alpha build for the first time (2.93 - on a Windows PC). I unzipped all files to a different directory from 2.92 but I cannot find the exe file to run it!
Should I have installed all the files to the 2.92 directory? Was really hesitant to do that since I want to be able to remove it easily, if necessary. I would think it not necessary to do this since if I never had Blender installed prior how would I run an Alpha build?

The alpha build should have an EXE file, if you downloaded it to a Windows computer.
If you used a different OS to download it, the website may have selected a different binary format. Alpha and beta builds should always be able to be run simultaneously.


Why does a bezier curve twist when rotated? If I create a bezier curve and rotate it in edit mode it does not accordingly rotate the tilt of the handles which creates an undesirable twisting along the curve.

Here is an example using a bezier circle with a square used for a bevel object:

Here it is after being rotated 90° about the y-axis:

How do I prevent/fix this?

According to Wiki:

  A 3D Curve has Control Points that are not located on the Curve’s local XY plane. This gives the Curve a twist which can affect the Curve normals. You can alter how the twist of the Curve is calculated by choosing from Minimum, Tangent and Z-Up options from the drop-down menu.

There are three tilting calculation methods. Choose the one that results as expected.


Overlaying multiple textures in one I have generated a 3d Modle with Meshroom and when I import it in Blender it has three Materials on it each with one of the three textures generated:

I am trying to combine the Three materials into one but whatever I try it does not work properly:

I have tried to get a mask from the black of the images but it didn't work either.

Here is the model with the images. Thank you for your time.
The model might look slightly different because I have already cleaned the mesh up a bit. And I also was not able to export a single texture in meshroom it crashed.

You can do it by two ways.
First notice the UV map:

It is made as 3 parts, each corresponding to a texture.
So you can either use the new UDIM features of Blender or calculate it in a node tree.
Using UDIM tiles
Create a UDIM texture in the image editor. Check "Tiled":

Add each of the textures to it (in the correct order):

From the image tab on the right, open the first image from disk with the folder button.
Once done use the "+" on the right of the tile list. Open the second image.
Use the "+" and open the third image.
At the end, you should see that:

Now you can simply use the UDIM image as a normal image in the material editor:

Without UDIM feature
If your version of Blender does not have UDIM.
You can use the following nodes, testing the UV map parts with math nodes.


How do I make an abstract 3D waveform-deformed surface? I really like this 3D waveform-like approach for this logotype, and I want to create a mesh something like that. Any thoughts/tutorials/approaches I could use?

This can be done using a Displace modifier.

Add a sphere.
Add a Displace modifier.
Create a new texture for it.
Choose the texture type "Distorted noise" and play with the options to get something you like.
Copy the Displace modifier and change the Strength and Midlevel for more sharper edges.
Add a Subdivision Surface modifier and set type of subdivision to Catmull-Clark (default).


Strange anisotropic artifacts? I am setting up an aluminum material using Blender's internal renderer. It gives me a strange output. I attached 2 screenshots below, one is the render output and the other is the texture settings to achieve the anisotropic effect.

The following image is the texture settings.

If I do an edge subdivision at the spot where the anisotropic effect looks wonky, the wonkiness shifts upwards. What did I do wrong? How should I fix this issue?

EDIT
Following @CharlesL ' s comment, I attached a screenshot showing all normals are pointing outside.

EDIT

This is the .BLEND file for your analysis.

Tangent shading for BI was introduced in 2.42. According to the feature note:

Using the 'tangent' option in the Material → Shaders panel alters the direction of shading to use the tangent vectors, giving anisotropic shading for any of Blender's diffuse and specular shaders. This is useful for creating brushed metal or wood, where the microscopic grooves in the material give highlights that follow a direction, rather than just being circular.
Currently, Blender uses a mesh's UV co-ordinates to define the direction of the shading (along the V axis). This means that models must be UV unwrapped to take advantage of tangent shading.

So, an expected anisotropic result needs UV coordinates to know which direction the light should stretch. To be exact, the anisotropy will stretch the light vertically along the UV coordinates.

For the attached case, You can unwrap it from the side view with UV unwrap methods like Cylinder projection, which is usually recommended. Besides, using UV as the Coordinate type in Texture setting is the better choice as well.


How i put 2 effects in my video strip? I've tried to put two effect strips in the video strip, but it's only working the effect strips that stays on top. How can I make the two effects work at the same time?

When you add an effect strip, that strip essentially replaces the input strip. So add your transform strip, then--with that transform strip selected--add the gaussian blur.


Can't open cgcookie flex rig I downloaded the "cgcookie flex rig" zipfile but when I try to open it in blender, the whole blender app disappears on my screen. Does anyone know how I can fix this.

I have a windows 10 (32 bit) if that helps.

Try this:

source : http://www.blendswap.com/blends/view/61707

I added the license and packed the textures into the file. I'm still on windows 8 but I can confirm it opens in 2.78a.


Problem with subsurf I´ve been working on a car from Rocket League. First, I decided to design the "basic shape" of the body and when I added the Subdivision Surface modifier I had the problem you can see in the photos. By the way, the car I´m trying to make is the one in the upper right corner of the screen.

BEFORE SUBSURF:

AFTER SUBSURF:

As you can see, the front grille has some curves in front of it and I can´t fix the problem either with Ctrl+Ctrl or Ctrl+B or Shift+E

Why does the bevel tool create faces of different sizes?

You can find the blender file and the photos here
THANKS!!!!

Hi, your problem as already pointed out is N-gons, the highlighted area in the image was one crazy huge ngon, all I did was use the knife tool to slice it into 2 polygons (still ngons but better ones).
It is best to use quads if posible, ngons are not always bad, but in this particular case it had too many sides surrounded by small polygons (small detail), so this particular ngons was overpowering them.
search on google for topology and quad modeling.
cgcookie has some good tutorials.
good luck on your projects.

https://drive.google.com/file/d/0B7Is78yvd9nWMXQyTzRiWi1pVjA/view?usp=sharing


Blinking Emission Objects I don't know how to make Emission objects have a flickering animation. I'm trying to make it like those broken gas station signs that flicker. I've looked through the internet and they give me little details. Help a brother out?

There are two ways you could go about this:

Animate Emission Strength (This is the better option)
Using an Animated Texture

Hover of the strength of your emission shader and press I. Then skip a couple of frames and make strength 0 and again press I. Keep on doing this and adjust as you wish to get the wanted result.
The texture could be made inside Blender using the compositor or in Photoshop (requires you to do it frame by frame).


How to use texture paint in Blender Render I had to use the edge split modifier and it makes my model IMPOSSIBLE to unwrap, so I just had to project from view, now its basically necessary for me to finish with texture paint but I have to keep it in blender render because the model will be going in a game.  When I select texture paint in blender render the model is just purple.

Never mind I got it, I had to add a texture image then select the texture that I had on the UV map.


Issues opening files created in 2.8 in 2.83 Today I uninstalled blender completely from my computer after using 2.8 for a long time. i kept all the files and even opened the files on another computer in the same version (2.83) that i installed newlt on my own computer after the uninstall of the older version. I can use 2.83 with no issue what soever but when i try to open or append things from any of my existing files created in 2.8 the mesh looks exploded for lack of better term. the outline is correct but its not all messed up. this is happening with ALL my files. HELP picture is of an appended group of objects from my most recently worked on filees. i was literally working on it in 2.8 this morning before the uninstall and switch and it worked totally fine. Help.
EDIT: I just switched over to cycles and in cycles render my stuff all looks perfect, textures and all. i will attach a screenshot of that as well. its still messed up in the normal editting viewport as well as lookdev.
As you can see in the image from different angles the exploding gets worse and changed randomly while moving around the screen but the outline of the objects are clearly correct.[![enter image description here]

Actually, the problem with blender is that when you try to a file from an older version on a new version, or a file from a new version on an old version, blender sometimes doesn't find data that was present in the version the file was made in when trying to open on a different version. The best thing to do is open this file with 2.8 or tediously fix all the problems manually.
Hope it helps.


Cloth simulation: Gaps between meshes sewing springs I'm modelling a t-shirt, but I get these gaps between the meshes that are being sewed with Sewing Springs. It is as the springs aren't tight enough, but if I adjust the Sewing Force nothing really happens in term of the gaps.

I had this issue and found that the problem was not having enough sew edges. ie add loopcuts to the parts that are being sewn together and connect them so that you have more stitches. once you have enough the seam will pull fully together.
(this fix assumes that there is enough "fabric" as in the gap is not caused because the fabric is not stretching around the model)


Why are the vertices extruded instead of the edge? I selected the two ending vertices of an edge to extrude it but instead of getting the entire edge extruded (after selection) I got only the vertices extruded? I've met this problem a couple of times before. How do I solve it?

Here's a screenshot of the extruded vertices:

You need to select the edge and then extrude. Select the edge using the icon marked in yellow.

EDIT:
When the vertices option is selected you can perform actions on the vertices them self. So you can extrude every vertice separately, or like in your case the ones you selected. When the edge option is selected you can perform actions on the edges. And the same for faces.


Is there any way to import a .json model into Blender? I need to find a way to import some .json models into Blender, and it seems I can't just import them the same way I can import a .obj model. So is there some way to convert a .json model to a .obj model, or another file type Blender can import? I've tried using Blockbench for this, but I think it only works with Minecraft recourse pack .json models, as those are the only models that will ever actually load in it. Thank you to anyone who can help me figure this out.

Have you found this addon here? https://github.com/warmwaffles/io_mesh_json and here with https://www.barneyparker.com/blender-json-import-export-plugin/ comments