It looks like you've managed to set your camera to a non-camera object (which can happen via View -> Cameras -> Set Active Object as Camera, or via the hotkey CtrlNumPad 0) and then deleted the object.  So, the camera is stuck in a really weird position and is clipping faces incorrectly.  On top of that, you've turned on a local camera, also pointing to the same missing camera object.
To recover, open the sidebar with View -> Sidebar (or the N key).  Select the "View" tab in the sidebar, and uncheck the "Local Camera" checkbox.
Now, switch to Object Mode, and in the outlier, select the "Camera" object.  (If you don't switch to object mode first, it won't work.  You need the camera to be the only thing selected in orange, not red, in the outliner, with the "Camera" object displayed in the properties panel below the outliner.)
With the Camera object selected, use View -> Cameras -> Set Active Object as Camera.  This will move to a new camera location where the apple no longer appears.  Now, select the "Item" tab in the sidebar and enter the following numbers into the Transform panel:
Location:
X:   1.25
Y:   -3.7
Z:   2.1

Rotation:
X: 90
Y: 0
Z: 0

That should move the camera to where you can see your apple again, though it'll be a little small.  Because you've got the camera set to orthographic mode, you won't be able to zoom using the middle mouse scroll wheel.  Instead, in the properties panel in the bottom right, select the camera-shaped icon ("Object Data Properties") and under "Lens", change the Orthographic Scale to 3.
Now it should look more or less like it did before, but the weird distortion should be gone.


Rendering and compositing shadows only with Cycles

Select the object you want to use for shadow data, go to the Object Settings tab, scroll down and enable the Shadow Catcher. Then, if you want it to overlay it on another scene, make a second Render Layer and select the scenes you want to use by pressing shift+LMB. Go to compositing and add an Alpha Over node and two RenderLayer nodes. Plug the first layer's Alpha channel into the Alpha channel of the Alpha Over node, plug its color into the bottom socket and the second layer's color into the top color socket.


How to always have the local Z axis pointing upwards in the viewport?

World Transform and Local Transform exists for reasons.

You can reset/apply your object's transform to make your Local Z axis pointing upward.  But there is no way to lock Z axis to point upward.  What you can try is to move/rotate your object's mesh in Edit mode, in there, your rotation/move operations won't change the local axis's orientation.


As stated by @bertmoog this is result of bad topology. I will not elaborate on that as you have enough information in the link in comments, but I will show you how your topology should look like if you want to use Subdivision Surface modifier.

Final result:

I don't know how much do you know about modeling so I'll be brief, and if you need more info - ask in comments.

I've started with simple Plane with Mirror modifier on X and Y axes, extruded it upwards along your mesh. After that I've Subdivided it once and used Inset on top face. Then with LoopTools addon I've created Circle from vertices created by Inset, extruded it down and filed with Grid Fill, to achieve hard edges I've used Bevel Tool (not modifier).

Keywords marked with Bold should be enough for you to learn about this simple technique.


Are addons written in python compiled at runtime?

Python is by default an interpreted language. Blender bundles and uses the default python runtime (CPython), ans therefore python code in blender is interpreted.

However there is a catch. Most of Blender's API is actually written in native code (C) and is then exposed to the Python runtime through generated bindings.

Relative performance is trickier, as this is dependent on many many factors. And there are other issues here as well, in particular the GIL, which prevents the CPython interpreter from being truly multithreaded. Efficient use of the Blender API and the Numpy library (bundled with Blender) can bring most performance issues to acceptable levels. It is best to start with those anyway, and only look at other alternatives when you actually run into issues (i.e. avoid premature optimisation). You may find that the main performance bottlenecks are things other than code execution speed anyway (e.g. file handling).


Is there a way to equalize the thickness of my grease pencil drawing over an entire scene? or per entire frame?

Solution: Thickness Modifier

Check my fast scribbled helper showing the might of the modifier.

Don't laugh, well you can, but only if this helped you, then i can laugh with you.
Joke aside, the modifier affects all layers under the same Stroke Object. It's slightly more work if you have multiple Stroke Objects. Then all need a modifier, but you can select all Stroke Objects and once you have "Normalize" active and the Thickness Factor set, just right click on each and use "Copy to selected" for each, that way all Stroke Objects or rather their Layers will be normalized and the same thickness.


You probably didn't add a uvmap. A UV map is what maps the 3d coordinates of the object to the 2d coordinates of the Image being used as a texture.

Notice properties -> Data -> UV Maps has no entries.

The simplest way to see a texture there is to press the + symbol to the right. Your viewport rendering will show a texture on the Cube.

See blender's manual page about uv_mapping.


How to visually rotate uv/image editor's canvas?

The UV/Image Editor is not intended to be a full fledged 2d editor like Gimp, Krita, or Photoshop, but to be a tool toward small editing and basic texture set up that might then be opened up in a better 2d editor. HOWEVER, I am somewhat of a blender addict and fell in love with the paint tools as they have been added through the GSOC a few years ago, and with some help from some pretty good friends worked on an addon to use the 3d view as a 2d editor. Result ended up being the Artist Paint Panel, and then evolved into the EZDraw panel. Coupled with the Texture Paint Plus version on my github as well as the EZdraw popup, there is a lot I do with 2d painting in the 3d view now - I almost only go to the 2d editor window just for the isolation of a single texture image versus the multi layer effect in the 3d view. FOr now it only works with Blender Render, but we will adapt it to Cycles as it becomes possible.


OK I looked at your blend, and it was nothing more then the reflection of the shadow from the other objects.

First off I whent into edit mode, selected everything with A A, then on the tool shelf under the Shading/UV tab pressed the Recalculate button. Half of the normals were backwards.

The main thing I did was add a Diffuse node to your material, connected to a Mix Shader. The diffuse node gives the material a base color, regardless of reflections. Then mixed with the glossy node will add some reflections back to the material.

You really need something for the glossy shader to reflect off of, if you are going to get any reflections. A HDR is commonly used.

Modified blend


Rendering Ambient Occlusion onto alpha instead of white

Just figured out my own question. It seems like the best way to do this is to Bake AO, then use a color ramp node to get rid of the white and adjust the transition.


I just cant find IK (Inverse Kinematics tab in toolbar)

IK Constraint is a Bone Constraint, not an Object Constraint, you need to switch to Pose mode (you are already) and click on the Bone Constraint tab.


How do you use an image in a blender animation?

Import Images as Planes Add-on

This is an add-on bundled with Blender. Go to File > User Preferences > Addons and type Import Images as Planes. Check the add-on to enable it.

Cycles Render

Key Shift + A and select Mesh > Images as Planes. Find the image in the File Browser. On the lefthand side, choose either Diffuse or Emission considering that Emission does not require a light source but does not receive shadows (without a crazy amount of Compositing; see my answer here) and Diffuse does require a light source and, likewise, receives shadows. Click Import Images as Planes.

Blender Render

Key Shift + A and select Mesh > Images as Planes. Find the image in the File Browser. On the lefthand side, either check Shadeless or don't considering that Shadeless does not require a light source but does not receive shadows and not checking Shadeless does require a light source and, likewise, receives shadows. Click Import Images as Planes.


Fill tool not respecting the boundaries of my face selection mask

This is done on purpose to make sure that those UVs are completely covered.

If you want to turn it off, set the Bleed to 0 in 3D view > Tool shelf > options:

However this may cause artifacts like this, where the pixels don't completely cover the entirely UV face:


Packed images used as background don't show up when reopening the file

Do you have Load UI unchecked in the User Preferences -> File tab?  That is the only way I can reproduce this.

Re-checking Load UI, will make blender open a file using the layout of when the file was last saved, including background images

From the Blender Manual:

  Load UI

  Inside each .blend file, Blender saves the user interface arrangement. By default, this saved UI is loaded, overriding any user defaults or current screen layouts that you have. If you want to work on the blend file using your own defaults, start a fresh Blender, then open the file browser and turn off the Load UI button, and then open the file.


Is it possible to set the framerate of an animated image texture?

As far as I know you cannot set the framerate in the Node Editor differently for specific sequences (better answers welcome). If I understand the question correctly, you need your project to keep the 24 fps, right? If not, just set it to 18 fps if that's what you need for the image sequence.
If you instead want to play it slower than the project framerate, you could load the sequence into the Video Editor and add an Effect Strip > Speed Control to it.
Set the Speed Factor to 18/24 = 0.75 and stretch the sequence to a rounded 85 frames. Now render the 85 frames as a new image sequence so you can use it in your 24 fps project and it will be about 3.5 seconds long like it would have been at 18 fps. Unfortunately this results cross-fading images that are put inbetween the existing.
This is just a workaround in lack of a better solution. Of course you wouldn't have to re-render if you would only be working in the Video Editor combining multiple image sequences with different speeds - in this case you just keep them adjusted by the Speed Control Effect Strip.


Changing Default Checkered Background UI Color

Now the checkerboard color are changeable in theme preferences
under Preferences > Themes > User Interface > Transparent Checkerboard.


What mode to work on when texture painting - Solid / Lookdev / Rendered mode in EEVEE?

You should paint in lookdev mode, making sure texture paint opacity is set to 0 to be able to see your full material when painting.


How do I take a picture (of only the render and not the menu)

Yes You can do it easily
Just click on image and then here you will see a Menu with a Option to save the image.


I've found a solution bpy.context.scene.world = bpy.data.worlds['WorldMask']


How do I make this model of a digital camera?

Personally, I would start with a cube. Make the cube the approximate dimensions of the camera, then start subdividing, adding loops, moving faces, until you have the shape, then go and add the smaller details.

Starting from an extruded shape as you have there will not make it easy to get a nice smooth end result, and you will find adding the details is more difficult.


Toon Shader appear to be have gray colour coming out, for the shadow

Go into the Render Properties tab, and under Shadow, turn off (un-check) "Soft Shadows". Also, consider enabling high-bitdepth, and if the shadows have jagged edges, you can get rid of them by increasing the shadow-map Cube Size.


select d 2 vertices u want to join den hit d V botton on d keyboard dat sud do it but u cant do multuple vertices at d same time it has to be one b4 another


How can I create a diffuse map that looks and reacts like a Vertex Weight map?

You have two options:
Image sequence

With the canvas object selected, set the format to image, then set the UV map and output path/format:

Bake the image sequence, then load it into your material with an image node:

Result:

Vertex paint:
You can also bake to vertex colors and use a node setup like this, using an attribute node to get the vertex color:


To make the eyes fit properly in your character's head there are a couple of things to keep in mind.

Eyeball size: If the eyes are incorrectly sized they will not fit right no matter what you do.
Eye position: Make sure the eyes are in the correct location on all axes. One thing to try is to move the eye just slightly above center on the z axis (so that the center of the eye socket opening is very slightly below the center of the eye sphere).
Eye socket geometry: If you look at references for eyes you can get an idea of how the eye socket is shaped and how the eyelid is around the eye. Many people often forget to include the tear duct at the inner corner of the eye, and that can cause a lot of issues.

The main thing to keep (which encompasses all of what I said above) is how eyes look in real life. Find some reference images of a character similar to what you are going for and keep them handy to refer to.


Can I bake a Bump Map from a highpoly model?

Yes.
With Blender Render, in Bake Mode, select Displacement. It's basically the same as bump.


That is the reflection of the sun lamp.  The size is related to the size property of the lamp.  If you change it to 0, it will disappear.  You will also have perfectly crisp shadows.

The sun lamp reflection looks unnatural because cycles produces a perfect reflection, instead of the soft edged sun were used to seeing because of the atmosphere.  And there is no bloom that happens in your eyes or in cameras to bright objects.  More info

So instead, You can add the bloom as a post process.

Or, use HDR an illumination map instead of a sun lamp.

Or, on the lamp, uncheck the box for "Multiple Importance".  If the glossy shaders have no roughness, or set to "Sharp", the glint with disappear...

More info on multiple importance: 1 2


Like this?
import bpy
bpy.ops.wm.console_toggle()

There should be a python command under that button?


How to change render samples using python

Sometimes Blender just doesn't update things when the code is executed "blindly", so you need to imitate like some parts of it were called by user. To do so you need to create and register Blender Invoke or Modal Operator and then call it with ('INVOKE_DEFAULT'). In the most cases it solves such problems. I've written and tested this Modal Operator, it works. Maybe there's even no need in the whole modal section and you could place context.scene.cycles.samples = self.samples and bpy.ops.render.render('INVOKE_DEFAULT') right inside invoke method and just return {'FINISHED'} from there, but I just wanted to ensure that the samples have been changed using the modal loop. More information about Blender Operators you may find in the API documentation And here is the code with lots of comments:
import bpy
from bpy.props import IntProperty

class SetSamples(bpy.types.Operator):
    '''Blender Modal Operator'''
    bl_idname = 'render.set_cycles_samples'
    bl_label = 'Set Cycles Samples'
    samples : IntProperty(
        name="samples",
        min=0,
        default=20
    )
    timer = None

    def execute(self, context):
        # in execute method we just create a timer and add a modal handler
        # which handles events in real-time. We set the timer to the class
        # variable to be able to remove it later on.
        self.timer = bpy.context.window_manager.event_timer_add(.1, window=context.window)
        bpy.context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'} # this starts the modal() method

    def modal(self, context, event):
        # modal handles events in real-time
        if event.type == 'ESC':
            # in case something goes wrong and we need to abort it manually
            bpy.context.window_manager.event_timer_remove(self.timer) # remove timer
            return {'CANCELLED'}
        elif event.type == 'TIMER':
            print('Tick!') # just a test to count how many times timer ticks
            # on every Timer tick the Operator checks:
            if context.scene.cycles.samples == self.samples:
                # if everything worked correctly and Cycles samples have changed:
                bpy.context.window_manager.event_timer_remove(self.timer) # remove timer
                bpy.ops.render.render('INVOKE_DEFAULT') # render
                print('FINISHED') # just a test message after
                return {'FINISHED'}
            else:
                # if samples haven't changed:
                context.scene.cycles.samples = self.samples # command to change samples
                context.scene.update_tag() # not sure what it does but it was recommended
                                           # in the comments to the question
                print(f'Cycles samples after changing: {context.scene.cycles.samples}') # test message
        return {'PASS_THROUGH'} # returns us to the start of the modal() method

    def invoke(self, context, event):
        # Operator starts to execute from here when called with ('INVOKE_DEFAULT'),
        # like if it was called by user, not by script
        return self.execute(context) # this starts the execute() method

def register():
    # as we use the Blender Operator class, it needs to be registered:
    bpy.utils.register_class(SetSamples)

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

if __name__ == "__main__":
    register()
    # after register you can use your Operator just like any other Operator in Blender
    # the last parameter is the samples you need
    bpy.ops.render.set_cycles_samples('INVOKE_DEFAULT', samples = 20)


Duplicate and scale edges but keep in the same mesh

There may be a snappier way, but I would:

CtrlB bevel the outer curve of the wheel-arch, Segments 2, Profile 1
CtrlX dissolve the surplus loop on the inside of the arch
Select the new edges, and GG with C Loop Slide to adjust the depth of the new loop's offset..

..depending on your previous use of the Loop Slide, you may have to hit E to get the sliding loop to be parallel to one side or the other, and maybe F to flip which side.


'NoneType' object has no attribute 'ui_type' when running blender using CLI

Thanks to @batFINGER, his solution to ditch the operator worked! Here's the answer: Simple python script to stitch images into movie failing with incorrect context.


Clear reflection on floor surface (beginner)

You can try using Glossy BSDF surface, and also jump your render samples yo at least minimum of 128, i'm usually using 1024, you render sample is 15, so you will not have good result


Calculate the matrix world of the pose bone.

An objects matrix world contains its global transform in relation to scene (0, 0, 0) and the global X, Y and Z axes.

See How to get world-space matrix of any pose bone?

This will give the global Y Euler rotation of pose bone TORSO.  The value of the 'VAR' variable in driver in question.

import bpy

from math import degrees

ivan = bpy.data.objects["Ivan_rig"]
torso = ivan.pose.bones['TORSO']

# torso global matrix

mw = ivan.matrix_world @ torso.matrix

# angle

angle = mw.to_euler().y

print(f"{angle} ({degrees(angle)})")
print(torso.rotation_axis_angle[:])

Output matching driver as shown

-0.3148045539855957 (-18.036972314872912)

where the driver variable value is angle = -0.3148

Re your answer, it's demonstrably incorrect. The property is a 4d (angle, axis.x, axis.y, axis.z)  Result from example above.

(0.0, 0.0, 1.0, 0.0)

default value because my pose bone is not in axis angle rotation mode. Even if it was the angle part would only be global Z rotation when axis is global Z.

Need to convert to global coordinates and convert to Euler to see the WORLD space rotation Y value of driver using this.

Often would use context, eg select the torso bone

torso = context.active_pose_bone

If using 2.7x or prior replace @ with * to avoid TypeError: Element-wise multiplication: not supported between 'Matrix' and 'Vector'


Cannot find a certain node in a newer version of Blender

The nodes you want are there. Make sure that your render engine is set to Cycles and you are using Shader nodes.


Error extruding loop selection along individual face normals

The normals on your object are not correct because the object is rotated 90 degrees in object mode.
To fix select your object, press CtrlA and Apply Rotation and Scale. Then your normals will work for the extrusion operation you want to do.

read: http://wiki.blender.org/index.php/User:Fade/Doc:2.6/Manual/3D_interaction/Transform_Control/Reset_Object_Transformations and http://blenderartists.org/forum/archive/index.php/t-106188.html


Why is TAB Key not working to cycle into Edit Mode?

Solved

It's not enough to just restore your key config, you have to reset it, much like cegaton said.

Go to the Input panel. Hover the "Add or Remove Key-config Preset" dropdown box, and click on "Blender". Then Save User Settings

Thank you everyone.


Particle System - Hair: size jittering - messes up scene

I turned out that I had a Force Field and Wind in my Scene that were supposed to only affect the Smoke, somehow that also affected the Palm Particle System.
I deleted the Force Field and Wind and since I had baked the smoke animation it stayed the same and the palms now don't wiggle anymore.


What causes fire to look like dissolved spots?

Guess the thing with this is that if you put Reaction Speed at >= 1, it'll behave this way. I don't know why, but it seems that way.


It looks like the Khronos Group also has an official exporter for version 2.0: https://github.com/KhronosGroup/glTF-Blender-Exporter


You need to correct the bone's Pole Angle (choose -90°). Also, you'll need to move the Pole Target bone so that your leg doesn't twist too much when moving.


Trigger an event of a different object on object collision BGE

While you can simply plug a senor from one object into an actuator on another, I find it cleaner to use messages.

Have object one (the ghost) trigger a message. Then on object two (the coin) have a message sensor trigger the motion.

Her are the logic bricks for the sensor object. It is just a collision sensor and a message actuator.

Then on the coin object add a message sensor, to trigger whatever you need.

Note the subject in both message logic bricks has to be the same.

Now if you just want to go the quick and easy way (yet very messy) then just select both the sensor object and the coin and hook up the logic bricks cross object in the logic editor.


There is an addon now. You can find it here.

The Save on open option lets you go back to the start, while Save before close covers you for forgetting to save when opening another file or starting a new one, it doesn't get triggered before closing blender so that can still get you. While they do sound good, they can be a bit much if you just go quickly looking through a lot of blend files.

File copies are saved with a timestamp prefix in the name, so you can easily see how old any copy is or choose how far back you want to go.


what is the cause for sharp shadows when using strong bump?

It really depends on how you're applying your bump.

If you're doing it via the new "True" displacement (or "Both") settings in Cycles materials, your mesh should be adequately subdivided in order for it to work properly. The displacement is indeed applied on the actual geometry (vertices) of the mesh, not on its faces.

To do so, try using the Subdivision Surface modifier with an adequate level of subdivision or, if you're using the experimental features on a recent version of Blender, you can make it adaptive: reference.

Also, increasing the lamp size parameter could help.

(the black spots in the last one are because I didn't put too much care in creating a seamless UV map, and a fine subdivision, together with a strong bump value, makes it more evident)

Related: Blender Cycles True Displacement


Each camera may always keep the same resolution?

As far as I know, the answer is no.

The resolution is a global property used by all camera objects in the scene.

One way to work around this is to create a new scene:

Create a new scene with Link Objects in Info > Header by pressing the + button:

This will make copy the current scene into new one and make object mesh data and transforms linked from one scene to another, so if you move or edit an object in one scene, the corresponding object in another scene will move to match it.
Set the other camera as active in the new scene (CtrlNumpad 0)
Change the resolution in the new scene.
To render, select the scene which has the active camera and resolution you want and press F12

Note that it is probably simpler and easier to set the resolution manually when you render.


You probably meant God rays, and googleing that would be a good idea.
In Blender Internal:
Step 1:
Add a spot light (Shift-A>Lamp>Spot)
Step 2: Check Halo
Intensity will effect how strong your God Rays are, step will remove any banding, you will
what to set the step to at least 8, otherwise this effect will not work properly.

Step 3:
As you may have noticed, you have one solid ray, which doesn't look very nice.
to fix this, you will need to make a stencil for the light.
To do this, add a plane.
Subdivide it(W>Subdivide>F6)
It the menu that pops up set the cuts to five.
hit (Shift-R)
Step 3.5:
We will now cut holes in our stencil.
Hit C to activate brush select.
select a random pattern on your plane as such:

Hit X. Your stencil now has holes in it.
Step 4:
Move the stencil close to the top of the stop light's cone as such:

Your God Rays are now ready to Render.
In Cycles:
Complete Steps 1, 3, 3.5, and 4 form the previous section.
Step 1:
Make sure you are using a very recent build of blender 2.71+

Step 2:
Go into the world tab of the properties panel. Under volume set the material to Volume Scatter.
(You can also add a cube around the spot lamp, and set its volume material to Volume Scatter, it will save a lot of rendering time.)
Also check Homogeneous Volume* if you want less slow render times.

Usually the default value of 1 for density is way to high, so start with a smaller value and find what works for your needs.
Keep in mind that the intensity of the lights in the scene will be affected by the scattering, they might not seem as bright as you expect them, so be ready to set the light intensity to a much larger value than you normally would.
Step 4:
Put your samples up really high, (approx 150)
Hit Render...
Wait...
Wait...
Wait...
Tada! you have God Rays in Cycles.
*Homogeneous Volume means that you have applied no textures to your world volume, if you do, something will break.
Edit
Note, that in cycles, mesh lights work as well as a spot light. with mesh lights, you can also add a texture to the emission value.


Enable displaying of key strokes without casting

You want to download and install the   screen cast key status tool plugin. It has been removed from the Blender download package.

It displays the keys when enabled independently from recording a screencast or normal interaction.


İ found solution by myself, so if anyone else had this question, here you are


I apologize if this answer is too basic or misunderstands your issue.

I created a blend file that I made by subdividing a plain, extruding a row of hedges along Z, and then applying a material with an image texture to the raised hedge.

The first image below is the material set-up in Cycles. The second is the view in Blender in Object mode at with Material View selected.

Here is a Dropbox link to the blend file:
https://www.dropbox.com/s/6klf54mwkup0ysd/hedge.blend?dl=0

If this is the issue you were trying to address, let me know if it is incomplete....


I'm afraid you'll have to re-organise the model quite a bit.

I would start by hiding everything but the wheels. Then select all the wheel parts (A) and join them together (Ctrl-J). This will give you one object consisting of all the wheels.

Now switch to edit mode, select a wheel assembly (B or C) (make sure you can reach all the vertices, "limit selection to visible" should be unchecked, light colour) and use P→"Selection".
Repeat until you have 6 separate objects.

Then, for each of these wheel assemblies, you'll have to set the origin to the center of the wheels. Easiest (for me): in object mode, select each wheel and use "object"→"transform"→"origin to geometry" (or animating them is going to be tricky).

Then you'll have to do the same for the wheel supports. Think about how different parts move in relation to the others, that'll give you a good indication on how to combine them (Parent-child relations).

While you are working on such projects, use layers to organise the parts and hide parts you are not working on (by hiding the layer).


There's not an easy way to convert a smoke simulation into a mesh; not in Blender at least. I would suggest a different tactic.

Instead of using the smoke simulator, use the fluid simulator. They both use the same basic algorithm. You'll need to toy with the inflow, gravity, and initial force settings. The main difference is that the fluid simulator doesn't deal with turbulence and heat like the smoke simulator does; you'll need to fake it a bit. However the fluid simulator does generate a sequences of meshes as its output. Any of those meshes (stored as .bobz files on your hard drive) can be converted to a "proper mesh" that you can edit and ultimately export as an STL for printing.


Cycles render no material in full render

It sounds as if you have set a Material Override in the Render Layers tab > Layer panel > Material field. Clear it, and your materials should reappear.


How to merge faces without creating new shapes

If you create 2 unfilled circles and press F, they will fill independently, Blender won’t fill the gap between them. If you put the small circle inside the big one, it’s the exact same situation, the same thing will happen.

This explains what’s happening with your ring, if you delete all the faces within the ring, Blender can’t guess the 2 circles are supposed to be linked to each other, it will fill both the outer and the inner circle but won’t fill the gap between them.
To do so you need to create at least 2 edges between the outer and the inner circle , then in Edge Select mode select each face and fill.


VSE-Background image behind foreground video. Alpha over, alpha under don't work

Your PNGs were probably not exported with the alpha channel.

Make sure you export the PNGs as RGBA

To check if  your image has an alpha channel load it in the UV/Image editor.

An image with alpha channel will look like this, with a checker pattern on the alpha:

An image with no alpha channel will not show that pattern, but a solid color:

To make the alpha channel transparent on the VSE, select the strip with the pngs, presss N to make the panel visible, and in the blend type select alpha over.


Fur is growing out too thick on retopologized emitter

I just had to take it into Zbrush after applying a subdivision surface modifier. Now it works.


Rendering multi-layer EXR using File Output node in Python

In order to change the path of the output node you would have to set OutputNode.base_path. Make sure RenderSettings.use_compositing as well as Scene.use_nodes is enabled. Tested against the following node setup successfully:

import bpy, os

C = bpy.context

# Enable Post Processing and Use Nodes
C.scene.render.use_compositing = True
C.scene.use_nodes = True

# Get the File Output Node by name
out = C.scene.node_tree.nodes.get("File Output")

if out:
    # Set the output path of the node based
    # on the regular path of the output
    out_dir = os.path.dirname(C.scene.render.filepath)
    out.base_path = os.path.join(out_dir, "multilayer_")
    # Call the render operator
    bpy.ops.render.render(write_still=True)

Related: How to properly connect the Denoise node in Compositor?

Rendering in headless mode works as well:
./Blender -b file.blend -P script.py

Layer Contact Sheet node in Natron


Boolean and combining objects for 3D printing

I used the Bolt Factory tutorial and the Bool tool tutorial ad-dons

Pick the object you want to use as a "drill bit" (bolt with threads)
Pick the item you want to drill/place the hole in (box or object) and choose Difference
Note: You could also use Ctrl+Shift+-
(this keyboard combination does bool difference)

Make tolerances for bolt to screw into object

Note: you may want to 3D print the bolt horizontal for strength
3D print the bolt horizontal for strength


How to run Octane Sever as a Daemon on Linux mint?

Bit of a late reply but to my understanding a daemon is just a service that runs in the background.
(This answer is based on my experience in Ubuntu)
After youve installed Octane Server and Octane Blender. Just navigate to usr/local/OctaneServer.
Double click on the OctaneServer file.
While this doesn't seem to initially do anything(Giving the impression it failed),if you boot Octane Blender and proceed to change your render engine to Octane it should ask for your Otoy login details which means the server is working.
Quick tip. Inside Preferences/Addons/OctaneEngine make sure to tick "Deactivate License on Exit" this ensures that you don't encounter any unsavoury license bugs(Assuming you shut down Blender properly).


Cycles render time increases drastically upon adding simple planar backdrop

The render-time difference isn't too surprising, given that without the background most of the camera rays would simply miss all of the geometry and so those tiles to the side would render extremely quickly compared to the rest. Adding the background means that those camera rays hit a surface and Cycles then needs to determine Diffuse rays from the rest of the geometry to shade each point on the surface.
One potential solution would be to use the new(ish) Adaptive Sampling option. This way you can set a noise threshold and those tiles far from the "track" should render quicker than they otherwise would, while still having enough samples to avoid noise.


Stop creating new collection if there is one with the same name already in the scene

Check it exists and is linked to scene.
IMO Two tests required here, one to test if collection exists, and secondly if it is linked at any level to the current scene.  A quick test for the latter is to see if the scene is a user of the collection.
import bpy
context = bpy.context

# name of collection
name = "Foo"

scene = context.scene

coll = bpy.data.collections.get(name)
# if it doesn't exist create it
if coll is None:
    coll = bpy.data.collections.new(name)
# if it is not linked to scene colleciton treelink it
if not scene.user_of_id(coll):
    context.collection.children.link(coll)

Related
How to get all collections of the current scene?


Blender to Unity: Animation is wrong applied

I made a workaround:

Instead of weighting (CTRL + P > Bone) for each door-part-object, I joined them to a single one and applied ( > With Automatic Weights). Than removed the vertices from the vertex groups and asigned them manuelly.
Now the animation worked as expected in Unity


Suddenly, when grabbing I can only move objects in increments

You must have enabled the Snap tool by mistake. To fix it, just click on the magnet at the top of the viewport, or press ⇧ Shift + ↹ Tab


It looks like your inflow Mesh is just a circle?
I think you maybe should use a Sphere. Another Way to achieve more water is to increase the "inicial Velocity" of your Inflow Object.


What is happening here? Boolean modifier works *almost*

You can do this with the new (blender 2.76+) intersect (boolean) feature.

Steps to recreate:

Go to edit mode (Tab).
Select all (A).
Extrude inwards (E).
Go to Face select mode (CtrlTab).
Extrude individual (Tools panel-->Add-->Extrude Individual) outwards.
Select entire inner mesh island (CtrlL).
Open dynamic spacebar menu (Space).
Type in "Intersect (Boolean)" and confirm.


How to stop texture curving around a hole?

You could select upward faces, go in top view and hit U, Project From View (bounds) to fit the faces to your map, but then the other faces wouldn't be unwrapped, so you'd have to unwrap then separately.

If you're going to export it to Unity, you might as well triangulate the mesh inside Blender with CTRL + T before unwrapping, it may work better without NGons.


What is the size of the default grid floor?

Blender 2.79 or earlier
The X-Y grid that is visible in the viewport at all angles is 16x16 "units" large.

It is infinite if you are in any of the ortographic views: Top Numpad 7, Right Numpad 3 or Front Numpad 1.
What is a unit?
By default the "units" are dimensionless. But you can make them be meters or inches by selecting "Metric" or "Imperial" from the "Length" menu under the Scene panel

Blender 2.8 Alpha
In Blender 2.8 Alpha the base grid is infinite. The units are Meters by default.


I provided a video for better clarification, also used Eevee because the render is fast, but you can use cycles too.

What you want is to simply animate a emission property and a light brightness, in the case of cycles, you could use only the emission shader.

You will also need another shader when the light fades off, so you mix the emission with the other shader, for a nice effect, I applied the same texture to the emitter. To the sphere to not cast shadow, I simply set the shadows to none in the materials tab.


To move objects you need to select them then press G to Grap and transform them. After pressing G you can press x or y or z to move along a certain axis.

To move the view in the 3DView, use Shift+Middle mouse button and move your mouse


How do you recommend I overlay textures on object 'Faces'

First of all, import images as planes creates a new mesh, dimension as the image of your choice, unwrapped and with the texture applied: it's not what you're looking for, you want to apply a texture to your already prepared mesh.

There are many approach to this task:

In your case I would go like this:

Numpad 7 and toggle 5 to get orthographic top view,
select all horizontal faces,  U to unwrap, project from view, rename the UV map as something like "UV Top view".

Then H for hiding already unwrapped faces (Alt H to return to whole mesh)

Numpad 1 to front ortographic view, select vertical and visible faces, create new UV map (plus sign), rename it as "UV front view",  U to unwrap, project from view, and so on .....

Then choose different UV maps for every part of the mesh when texturing.

The concept is to create different UV maps mapping useful portion of your mesh in the most useful way. It's good to have a single UV map only if you want a seamless texture over the whole mesh, but I think you're not going to use the same texture on walls, floors and ceilings!

Then we can think about the floor as example of workflow:

Set a new material for floor, set your images textures (even with bump, spec, ...) select all floor faces, in the UV editor window select all and S - scale the "top view" UV map as desired scale (i'm assuming everything is tileable); in the Image editor you can use S X to scale the UV map along the horizontal axe, and S Y in the vertical one, to achieve the desired overall scale and minimum stretching of the texture.

You will have to specify to all your textures the correct UV map.

It's more difficult to say in words than do it: experiment it with a simple mesh and a couple of textures.


Blender stops responding when trying to export fbx with empties but doesn't with just one empty

Seeing the same result you are, taking a very long time to process

My blind guess is that if you wait long enough it will eventually export the file successfully, since selecting only a subset of the empties exported successfully after a while, although it may take longer than you are willing to wait.

The resulting (partial) file did however have 200+ Mb in size, so something else other than geometry is being processed and exported that is causing the long delays and large file size.

I noticed that some objects did have some animations in them, so that must be causing the delay and file bloat. Disabling animation export in the FBX dialog resulted in a 500kb file that exported in seconds.

This may be an actual bug or a result of the high number of empties, heavy use of parent relationships, baking of animations, or any combination of both.


Tricks to get this to work:

Apply object scale then extrude.

Select vertices/edges around the edge of the plane/circle and extrude.

Change the edit mode select mode to "edges" instead of faces or vertices and select the edges then extrude.

Hope these tips answer your question.


There are two issues here:

The duplicated cylinder is not the same size and orientation as the original. This is because you have not applied the scale and rotation on the first cylinder.
Your cylinders are not being duplicated around a circular path because the origin point of the cylinder should be where the empty is. Snap the cursor to the empty and then select the cylinder and click Object>Transform>Origin to 3D Cursor. Then once you rotate the empty on the Y axis you'll get the circular duplication you want.


Period key does nothing on Mac keyboard without numberpad

You can't tell just by looking at it, but it's set to Numpad period. Remap it to regular period and you should be fine. (Emulate Numpad doesn't change this one.)


Problems keyframing a simple cube, End keyframe cancels the starting keyframe

This kind of animation is - AFAIK - only possible with shape keys.
And as you can see - you can only add a keyframe to location (not to vertices or frame) and just in object mode. So the animation frame does relate to the whole object and it's location. Not to vertices or faces or edges.


Blender 2.8 layer grid/palette not showing up in 3D view

There is no Layer grid in 2.80. It's replaced by Collection system.

Read here about this change: https://wiki.blender.org/wiki/Reference/Release_Notes/2.80/Layers


OSL script node : detect if two object collides and output a bool

I've been working on something that goes somewhere towards answering your problem.. don't take it too seriously, I'm only getting used to some of the quirks of OSL in Blender/Cycles: some of these conditionals may look unnecessary, but for example, if I don't use the 'hit' local variable, it won't work, even though I don't need to.

#include "stdosl.h"

shader Dipper(
    string Container = "",
    output int IsInside = 0
)

{
    if  ( raytype("refraction") != 1 ) IsInside = 0;
    else{

        int ray_depth;
        getattribute("path:ray_depth", ray_depth);

        if  ( ray_depth % 2  != 0){

            string source_name;
            int hit;
            hit = trace (P,I);
            getmessage ("trace", "geom:name", source_name);

            if (hit==1){
                if (source_name == Container ){
                    IsInside =1;
                }
            }
        }
    }
}

You enter the name of your container object in the 'Container' input,(unquoted).

I'm also pretty sure you could make the logic of this shader fail, without too much effort.


What to pay attention when modelling for animation?

When people say "modelling for animation", they are referring to making a mesh that deforms well. A model that is used in a single image is easy to position and make look good. A model that gets animated will get deformed and twisted in ways you probably never thought of and needs to look good in the process.

You need to consider how the model will be animated, think of the arm being lifted and swung around, think of extremes like swinging from an overhead bar or doing a high roundhouse kick, your model needs to be deformed by the armature without the shoulders or hips getting kinked and looking unnatural. Some rigs also allow a character's arms to be stretched and bent which also needs to be considered.

Often shapekeys are used to clean up a joint during animation but you still need a mesh that looks good deformed before you make a shapekey that adds a little polish for certain extreme positions.

Not sure of any tutorials that explain this in detail, I think it is more a matter of experience from watching your mesh deform and working out a topology that works for each position.

You can find many rigged models online from sites such as blender cloud or blendswap. Download some of the characters, pose them and look at how the mesh deforms. Enable wireframe display so you can see the topology as it is deformed. Compare how some look better deformed than others. Compare them to your characters.


What's going wrong with my Luxrender Prism?

In my experience, rendering with Luxrender in Blender still (as of June 2017) means avoiding many features that innocently present themselves as "Blender-friendly" (like nodes, LuxCore API, materials conversion, etc.), and sticking to core Luxrender as much as is possible within Blender. In my opinion, this is largely because the two approaches to rendering are fundamentally different, making the "Blender friendly" attempts only obfuscate the fact that, in the end, to get the most out of Luxrender through Blender, the user must adapt to Luxrender's different perspective (on materials, lighting, rendering, outputting). This is not a criticism of Luxrender; I could say the same about how we adapt when going between Blender Internal and Cycles. That said, I do think Luxrender's "Use Materials Nodes" button is almost an invitation for confusion, since it doesn't even appear to give access to the specific things (like dispersion, for example) that make me sometimes choose Luxrender for a particular use.

The rules I tend to stick by when using Luxrender in Blender:

Don't use nodes
Use only Classic API (not LuxCore API)
Use only LuxRender GUI
Don't use the "convert" Blender materials to Luxrender materials feature

In regard to dispersion (the prism effect you are looking for), all you need to do is go to the Materials tab, select material type "Glass", and turn up the "Cauchy B" slider.


How can I know the speed of an object inside a loop?

You need two things to make the Frame Offset work in a Object Transforms Input node:

The Animation of the object must be created using normal keyframes (fcurves)
You have to disable "Use Current Transforms" in the advanced node Settings.

For future releases of AN it is already implemented that the Frame socket will only be available when Use Current Transforms is disabled.

If your animation is not made with keyframes but with this addon you will need to calculate the position of the object twice in each execution (for the current frame and the frame before). Then you have to calculate the distance between both points like you did in your example. You should create a subprogram (a Group in this case) in order to minimize the amount of nodes needed.


How to write a bpy.app.handlers handler thats only called once?

It looks like you're adding the render handler multiple times.

If you want a one-off handler, you can do this:

def my_handler(scene):
    print("render complete")
    bpy.app.handlers.render_post.remove(my_handler)

... you'll also want to change unregister not to error when the handler has run.

def unregister():
    if my_handler in bpy.app.handlers.render_post:
        bpy.app.handlers.render_complete.remove(my_handler)

Note: if you end up writing many one-off handlers, you might want to investigate writing a decorator, so a new handler could look like:

@call_once(bpy.app.handlers.render_post)
def my_handler(scene):
      print("render complete")

... where call_once can handle details to avoid a lot of repetition.


In edit mode, select your entire mesh and press Ctrl+N. This should recalculate all of the normals and the shading should be correct again.


tracking a bone to the average location of 2 bones


Material applied to vertecies not changing color

Colors in Solid Mode and real colors visible in Material/Render preview are independent.


Object becomes transparent/reflective/glowing etc.. in EEVEE Render viewport

I guess we have the same problem. Because I find it hard to rollback the driver, my current solution was to enable High Quality Normals in the Render > Performance section.
My question: Eevee not rendering properly if High Quality Normals isn't checked


How to combine multiple cubes with double faces?

BMesh script.

Wrote the script for another robloxic type question, buggered if I can find it maybe didn't post an answer. Also note script is for blender 2.8, whereas your question image is clearly 2.79. If you are just starting out scripting in blender, my advice is to start using 2.8

Any way, here is a script to run in object mode with all the cubes you want to join selected.

Loads all selected objects into a global bmesh.  Make sure only cubes are selected, haven't tested for it as script expects selected objects to only be 8 vertex cubes.  Also added commented out code to select cubes based on their name starting with "Cube"

Tests if two faces have same center using a bvh tree loaded with the bmesh. The find_nearest_range method finds each face twice, hence 4 matches being a pair, and 2 matches being no match

A further more robust test would be checking opposite facing normals, and to be sure to be sure the vert coordinates of the face themselves.

If remove_originals is set to True then the original cube objects are removed.

If remove_doubles is set to True it will remove doubles.

import bpy
import bmesh
from mathutils import Vector
from mathutils.bvhtree import BVHTree

remove_originals = True
remove_doubles = True

context = bpy.context
scene = context.scene
# by selection
cubes = context.selected_objects
# by name
#cubes = [o for o in scene.objects if o.name.startswith("Cube")]

bm = bmesh.new()
for o in cubes:
    bm.from_mesh(o.data)
    bmesh.ops.transform(bm,
            verts=bm.verts[-8:],
            matrix=o.matrix_world
            )
if remove_originals:
    bpy.ops.object.delete()

bvhtree = BVHTree().FromBMesh(bm, epsilon=1e-7)
faces = bm.faces[:]

remove = list()
while faces:
    f = faces.pop()
    pair = bvhtree.find_nearest_range(f.calc_center_median(), 1e-4)
    if len(pair) > 2:
        # mark face for removal
        remove.extend(p[2] for p in pair)

bm.faces.ensure_lookup_table()
bmesh.ops.delete(bm,
        geom=[bm.faces[i] for i in set(remove)],
        context='FACES_KEEP_BOUNDARY',
        )
if remove_doubles:
    bmesh.ops.remove_doubles(bm,
            verts=bm.verts,
            dist=1e-7)

me = bpy.data.meshes.new("CubeBoundaryFaces")
bm.to_mesh(me)
ob = bpy.data.objects.new("CubeBoundaryFaces", me)

scene.collection.objects.link(ob)
context.view_layer.objects.active = ob
ob.select_set(True)

Note, would be for quicker,   as pointed out by subd guru @RobinBetts, to simply join, remove doubles then  remove interior faces, done via a script using the appropriate operators and object mode for them.

Another take would be to use the set of face indices to remove the faces from the original cubes without joining them. Since the compound bmesh faces will be in same order as the originals.

for i in set(remove):
    ob = cubes[i // 6] # 6 faces per cube
    f = ob.data.polygons[i % 6]


In order to create such a 'folded' structure using the physics cloth simulation, there are two things you need : sufficient detail to your cloth mesh and sufficient 'spare' cloth to allow it to arrange itself into folds.

Without sufficient detail in your cloth you will old get coarse folds - there just isn't the geometry to create anything else. However, bear in mind that the more detail you add to your cloth mesh, the longer it will take to simulate. In my case I used the following heavily subdivided mesh as a base :

In order to create the 'spare' cloth you need to create it 'spread out' and then manipulate it to draw it together. This will naturally create 'folds' as there will no longer be sufficient space for the cloth - similar to when a real curtain is bunched togther. In order to achieve this you can 'pin' the sections of the cloth you want to manipulate and then use Shape Keys to manipulate them, leaving the rest of the cloth to behave as per the simulation.

Start by selecting all the 'top-edge' vertices. Create a new Vertex Group and 'Assign' the selected vertices to that group. Name the group 'Pin'.

In the cloth simulation, set 'Pin' as the group to use for Pinning.

Similarly, select the vertices at the bottom of the cloth that you want to manipulate, create another group named 'Hook' and 'Assign' the vertices to that group. Also assign them to the 'Pin' group (very important!!). The 'Hook' group can be used to conveniently locate your vertices, while the 'Pin' group tells Blender which vertices are being controlled independently of the simulation.

Next, add some shape keys - the first one is the 'Basis' key (the one all the others are based on). Add another shape key (Key 1) - this will affect the top edge. While Key 1 is selected, select the top row of vertices and scale them down to a point (S0Return). Now, adjusting the strength of Key 1 will draw the top vertices together.

It's also helpful to sepearately select the 'Hook' vertices (while still having Key 1 enabled) and also scale those to a point. In this way, as we use Key 1 to draw the curtain together the hook points will stay below the same point in the curtain.

Add another shape key (Key 2). Whilst it's selected, move the 'Hook' vertices to their desired location for raising the bottom edges (bring them forward slightly and 'up').

Now you can simply run the simulation while manipulating the Shape Key strengths. This should have an effect similar to the following :

Once you're happy with the motion, you can enable 'Self Collision' of the cloth simulation to ensure the folds behave consistently and don't intersect. However, note that this will considerably increase the time required to run the simulation.


The problem stems from the high contrast value.

You will find using the Principled BSDF shader instead of using separate nodes, but if you are just learning how to use nodes, then I would suggest avoiding the color correction nodes (i.e Brightness/Contrast) and instead use the RGB color node from the input nodes.


How to Export "Selected Objects" to fbx in 2.77a

Nevermind, for some reason the UI scrolled all the way down, making it impossible to see the export options. After realizing that I scrolled back up and saw the options...


Where is the color setting for disabled menu items?

Some of the colors here re-use generic names (and it isn't always very logical)

See: Menu Item -> Color -> Inner


boolean union having problem when combining cubes with same height

Select the large rectangular add boolean modifier. Select the object (small rectangular). Operation as union.


Is there a way for a shader to differentiate between viewport render and F12 final render?

Currently this solution relies on using an alpha version of the software (download  2.93 here) but it is pretty straightforward. Don't use for production until it is officially released.
Also, it seems it only works for Cycles if you are using a Windows OS.
Add a Geometry Nodes modifier to your object.
Plug an Attribute Fill node between the input and output. Change the Attribute name and remember it. Set the type to Color.
Plug the new Is Viewport node into the value. See the docs.

Add a material to your object, and add an Attribute node. See the docs.
Set the attribute name exactly as in the geometry node modifier. Plug the Color into your shader tree as you see fit. You may need to toggle between Material Preview and Render view to see the effect update.
This setup will render as White in the viewport, and as Black in the F12 rendered view :

Render Result :


According to the API changes:

  In 2.7x, you could directly (de)select an Object from its select property. This has been removed in 2.8x, in favor of some get/set functions.

bpy.data.objects['Cube'].select = True    # 2.7x
bpy.data.objects['Cube'].select_set(True) # 2.8+

Proof using the Console:

>>> bpy.context.scene.objects["Cube"].select_set(True)
>>> bpy.context.scene.objects["Cube"].select_get()
True

API Link: docs.blender.org/api/current/bpy.types.Object.html#bpy.types.Object.select_set

Example on how to select a certain object in the scene and make it the active object:

ob = bpy.context.scene.objects["Cube"]       # Get the object
bpy.ops.object.select_all(action='DESELECT') # Deselect all objects
bpy.context.view_layer.objects.active = ob   # Make the cube the active object
ob.select_set(True)                          # Select the cube

Example on how to select multiple objects by name:

for o in ("Cube", "Camera", "Light"):
   obj = bpy.context.scene.objects.get(o)
   if obj: obj.select_set(True)

Example on how to select all objects of a certain collection:

col = bpy.data.collections.get("Collection")
if col:
   for obj in col.objects:
       obj.select_set(True)


The line of symmetry move when I adjust the size

The easiest way to fix weird mirroring is to create a new empty and use that as your line of symmetry by selecting it under Mirror Object

If it doesn't work as you expect this is usually faster than messing around with whatever it is.


Blender does not recognize imagemagick to run Bligify

Edit ~/.config/blender/*/scripts/addons/bligify/__init__.py file, search for default_magick_path = "" variable and set your value to $ which convert output (in my system, the output is /usr/bin/convert).


Mr. Zak had it right. I had accidentally applied the mirror modifier to my shirt after I had unwrapped it. Went back a few steps, applied the mirror modifier and then unwrapped. Worked like a charm!


Glass BSDF gives different results when rendered in viewport and with "Render image"

Why do you have "Lock Camera to View" enabled? If you accidentally have moved your viewport view, then the camera view would also be different, thus changing the render.
Simply disable this, and find an optimal spot for your camera, then render.
Also, I would recommend using Cycles Render engine for glass reflections, as it is more realistic.


My question is, does mixRGB always handle color inputs as RGB values and not as HSV?

Yes. HSV is somewhat of a crippled colour model.

  I know that is the way it works for most of the blending types, but are there any loopholes or exceptions that I need to be aware of?

Beware because most of them are display referred legacy blend modes conjured up in the dark Adobe days. The math is available in the Adobe PDF specification. They are busted up garbage in a scene referred, physical light transport system.


maybe the problem is the light bouncing from the floor to the dice.
-try to do it in blender render.
-put the floor in other layer(2).
-select the lamp.
-click the "this layer only".
-make sure that the dice and the lamp are in the same layer(1).
-select the two layer(1),layer(2).
-then render.......


Displace modifier does not work as described

Start wit your cube, enter Edit Mode (Tab) and subdivide it like 10 times so you have many vertices. (W).

Exit edit mode (Tab).

Add a displace modifier.

Set the Texture for to be used by the displace modifier.


Creating cables that can drape over objects

You can do this wihout cloth simulation, use the Draw Curves tool.
Add a Bézier curve object.
In edit mode delete all vertices (x).
Select Draw Curve from the toolbox

Press N to bring out the properties region, and in the Tool tab set the Draw Depth to Surface.
Then draw your curve freely.

Then set the curve to have some bevel, to make it the width you need.

You might need to adjust the Tolerance and Detect Corner values to fit your particluar needs.
For more detail on the tool read the manual:
https://docs.blender.org/manual/en/latest/modeling/curves/tools/draw.html?highlight=draw%20curve


How is the .blend file thumbnail generated?

As has been pointed out blender has a python script to perform that task. While the *nix variations install this along with blender, the OSX and Windows distributions do not include it.

As with the rest of blender this script is available under the GPL license so you can copy part or all of the script and include it in the script you are making. A call to blend_extract_thumb(path) with the path to the file you want a thumbnail of will return an image buffer and resolution for you to use however you want.


How do I snap one vertex to the position of another vertex in a different object?

Enable the Snapping Tool (click on a magnet icon and change the snapping type to Vertex). Enabling Snap onto itself function allows you to snap the vertices within the object.


We are unable to find animation of exported object as Collada (.dea) if animation is a modifier animation while using Blender 2.82

This is because of the type you are exporting it. Collada(.dae) is used for exporting objects or meshes not armature action you should use the export type bvh motion capture, this allows you to export armature action with the object.


OMG 1.45 GB.Dude that's quite huge than what your machine could handle smoothly.That's the problem.Try decreasing the resolution of fluid.What exactly are you doing? Not trying to simulate an ocean or huge lake :-p .16 Gb probably won't handle that huge fluid smoothly either.Try to decrease the fluid size.


Enter edit mode select one such vertex like you did in your screenshot and press Shift + G > Select Similar > Amount of connecting Edges

Exercise some caution as this will automatically select all vertex that belong only to two edges as the selected one. Be sure to inspect all the selected vertex to make sure no desirable corner vertex are mistakenly selected.

Then you can safely use X > Dissolve Vertex to delete the non-destructively


How to animate a plane along a spherical area

i think this blend file that i did testing this idea could be the answer, just drag with G key and you will see. to do this you have to turn on snap, set it to face and active, and select the icon that saids align rotation with snapping target and its done i think.


BGE play animation in other object using button

You need to play the action at the text rather than the button.

For inter-object communication I suggest to activate a message actuator e.g. with subject "button clicked".

On receipt of the message "button clicked" the text object can start playing the action.


Get console output when running blender in background

The exact way you handle this will depend on several factors like what OS your running and how much output you expect to retrieve. More detailed help is better suited to stackoverflow as it isn't specifically blender related.

Using python as a more cross platform solution, you should read through the subprocess page which explains and offers several options. Basically output from prints in your script can be retrieved from stdout while errors are normally sent through stderr. For simple needs you can just get the contents of stdout when blender has finished into a string to scan through, while for more advanced needs you can setup pipes and process the output line by line as it comes out.

For *nix like systems such as OSX and Linux you could capture blenders output in a shell script with a line like output=$(blender -b -P myscript.py) - with windows you should be able to do something similar with a .bat script and with OSX you could also use an applescript.


Blender is a jack-of-all-trades, and a master of nothing. It is an all-around universal tool. You can model, make materials and textures, do animation/rigging/skinning, sculpt, make simulations, and pretty much everything any other piece of software can do. You can even make games and edit videos in it. And it's free and comparatively lightweight.

It is a huge benefit, but it is also a disadvantage. Blender is universal, but it excels at nothing. Modeling? 3DS MAX has a bit more to offer and it is more integrate-able with other pieces of software. Character animation? Most big studios use Maya for that. Sculpting? ZBrush is second to none thanks to some mumbo-jubmo making it able to wrangle millions or even billions of tris even on weak machines. Texture painting? Substance Painter or 3D Coat. Simulations? It's hard to compete with Houdini. Landscape modeling? Compared to Blender, Eon-software's Vue is a "make a stunning showreel in one click" type of software. Video editing? I cannot take an editor seriously if it cannot even add subtitles without dropping rendering speed to unacceptable levels. Game making? Why bother with a raw strange game engine if Unity, Unreal and Godot are free now and they have so many out-of-the-box things (not to mention that they will get rid of it in the upcoming 2.8)?

IMHO, the strong point of Blender, aside from price, cross-platformness and light weight, is its customizability. Not every program allows to adjust the interface so flexibly. You can make it fit your needs in any way you like. If you know programming, you can do even more! The problem is, most professionals don't have time to tinker, they need things available to them easily and immediately. Blender cannot offer that yet.

Some related read here and here


Applying a Simple Cylindrical Projection onto a Object

You can use an environment texture in order to project on the mesh surface.

The environment texture is generally used for scene environment lightning, but it performs an equirectangular projection that seems to meet our need here.

Take the object output from the texture coordinates node.

Plug it into a vector mapping.

And plug its result into the env texture node.

Now we just have to handle what needs to be rotated in the mapping (it's a guess): here a rotation of 180 around X and a -1 scale for Z seem to correspond perfectly to the mesh.

They are little distortions on the left part, but all craters have found the good place, it seems.

The texture from the link in the question is not included as too large to be uploaded with the blend file:

Note: 'equirectangular projection' is also called 'equidistant cylindrical projection'


How to add keyframes and change the shape key (named shrinkwrap) value with Python?

Your "shrinkwrap" is a shape key.
You have to access it through the object data, in the shape_keys part and get the key_block by its name (or index).
That can be:
import bpy

#Get the object
lightsaber = bpy.data.objects['Lightsaber']

#Get the shape key
shrinkwrap = lightsaber.data.shape_keys.key_blocks['Shrinkwrap']

#Assign values and insert keyframes on it

shrinkwrap.value = 1
shrinkwrap.keyframe_insert("value", frame = 0)

shrinkwrap.value = 0
shrinkwrap.keyframe_insert("value", frame = 50)


Use Cycles/Experimental option
Add the Subdiv Modifier with Adaptive option to your object
Have fun with Nodes and displacement (use the Displacement only mode in the material option)

Here animating the 3 value nodes controlling respectively the color ramp, voronoi blob and noise spike textures.


How to circularly fade an image to alpha in compositing?

The problem is that your node setup is ignoring the existing Alpha channel. Instead of overwriting it, you need to multiply it with your mask.
I used the Separate RGBA node to extract the current Alpha value, and a Math node to multiply the two values:


I solved the problem by remaking the armature, I think Ray Mairlot was right about a dependency cycle issue.
Ray Mairlot


How to animate a soft object while it is squashed on the floor?

You could use a Lattice modifier to squish the object:

Create a lattice, scale it in Object mode so that it contains your cylinder, subdivide it in the Properties panel > Object Data > Resolution, give it 2 shapekeys. Give your cylinder a Lattice modifier with the lattice as Object. Select the empty, select its second shapekey and deform it Edit mode, the cylinder should deform as well. Back in Object mode, put the shapekey value at 1. Animate the cylinder.


How to stop Action Constraint giving different results when code is run in text editor vs python console?

You change the frame number twice in your script:

bpy.context.scene.frame_current = NUMBER

The frame_current property  should be used for reading the current frame number only, or some special cases in which you don't want to fully update the scene to this frame.

Use the method frame_set(...) instead. It forces an immediate update of all objects in the scene, including animations (transformation matrices etc. will be calculated)

Scripts run from the Text Editor or as addons behave slightly different compared to the Python Console. There are implicit updates when using the PyConsole, which may give the impression of a function causing an update itself. But once you try it in the Text Editor or as addon, you'll experience behavior like you described (basically missing instant updates during an operation, 'cause it's not done automatically).

By the way: although Python supports ; as punctuator, it is no good style.


OBJ File is missing, all mtl files still there

It could be that you had some hard link to the files you deleted from the "temporary" folder... who knows why.

I just tried an export with standard parameters (below): I see an .obj and a .mtl file in a folder I created on my desktop...


UVs Blender - how can i: auto seam hard 90° edges, unfold uv, orient uv, straighten uv


Join two meshes at the intersection within edit mode

Press "SPACE", select search, type "intersect".
Click "Intersect (Boolean)".
Select "Union" from the dropdown menu.
Done.


Is there an addon or a trick to prevent objects from being placed inside of each other?

You can use Rigid Body simulation, maybe combined with some forces to distribute balloons. That may take some time and experiments to make it right.

You can automate that by mass copying rigid body properties from one balloon to others. Please check Blender docs to know more about Rigid Bodies and Force Fields.

You can automate your work by writing small python script. Please note that a lot of commands you need can be taken from the console.

Depending on how "big" number of balloons you want using a particle system for instancing balloons can be quite good solution. To make balloons more diverse, there can be made several versions of them and grouped. Then you just need to use that group for instancing and adjust settings like number, size variation, etc. Unfortunately Blender currently does not directly support Rigid Bodies for Particle System instances so they need to be converted to objects first.


Make duplicates real produces too many objects

This is because there were always 100 Suzannes.

Dupliframes will always create the same number of duplicates, even if the object is not moving. By default it's set to duplicate frames 1-100. If you only want to duplicate frames 1-6, then change the start and end values to match the desired range:


no Shape keys and weight painting, are they compatible?

You need to export the FBX file using the ASCII exporter, not the binary one.

My character can now blink while being animated. The only issue is that the ASCII exporter exports the model x100 smaller. This can be easily changed in the model properties panel, but if there is a way to import it with the correct scale that would be great.


How to connect the mirrored bone to the central bone?

After activating connected in edit mode, the bones are connected.


why is my rigid body object not falling correctly?

The cup object has been scaled down a lot, apply the scale:


I can't keep my armature in pose mode when selecting another object

This has to do with how editors/modes have changed in 2.8 (presumably related to multi object editing?)

There is an option in the edit menu called Lock Object Modes which forces the mode to be consistent across all objects. If an object doesn't support the current mode then it cannot be selected. Disabling this mode allows leaving the armature in pose mode and then selecting the mesh:


To get a perfectly straight strip, select 2 points on one side of a section of your unwrapped ring (preferably one that already has 2 "flat" edges - such as the one at the top). Set your transform pivot point to "Active element".

Scale the 2 points to 0 on whatever axis you are using (I used X) to make the points straight in line on this axis. Do this on both sides until you have a rectangle.

Now select the whole thing, keeping the "rectangle" selected. Press U for unwrap in the 3D viewport and select "follow active quads". This will make your selection into a strip.


Modelling and rendering an "impossible object"

You can't
The 3D shape of a impossible object (this one is called a Penrose square) isn't defined, so you will have a hard time recreating the mesh representation (i.e. exact vertex location and connectivity) of something that can't be described in the 3D space.
... but there are tricks
However, you can do the same thing that people do when photographing such objects: creating an object that looks like the Penrose drawing, but only from an angle. // Edit >> Note: this is more easily done with an ortographic camera, as MrTheRich's answer suggests! If you need/want to go perspective (for example, to composite it on a photo background), a higher focal length is advisable.
For example navigate this or this model on sketchfab: you will see that some of the edges that "look" connected, are actually separated.
There are also ways to use curved shapes that only look straight when seen from the camera. This allows to retain the connectivity.
Shadeless?
You may notice that people who have tried that have often used shadeless scenes.
This is because the shadows introduce an extra complication, since the light "sees" the scene from a point of view that isn't tricked (the trick only works in the direction of the camera), so it tends to give the trick away! You can use a very soft light, close to the camera. It will probably look alright.
One possible shading, that requires using the "invisible curve" trick, which keeps the edges' proximity, is Ambient Occlusion: it only needs to be realistic around the edges.

Edit Nov 6 2020 – There is a wonderful example and write-up on the process in today's blog post on sketchfab


How to make outlined texture in blender?

I add this to show some example related to your edited question:

You say very little about your object mesh, but it seems you set a linestyle thickness quite high for the overall mesh size.

I try to replicate it here:

where you can see the corners are not that good but just changing one setting gets  better results:

of course you have to experiment, to find your best setting, and freestyle really has tons of settings...


Increasing the length of a frame and push following strips

I just discovered the sequence "Shift-K", "A", "E", "G" :)

Position cursor on the frame you want to make a still from
Hard cut (Shift-K)
Go to next frame
Hard cut (Shift-K)
Go to previous frame (cursor left)
Extend from frame (E) <-- This does the trick!
Grab the remainder and move it as far right as you'd like


Smart UV Project on multiple objects simultaneously, but independently?

You don't.

If you want to have independent UV maps for each of your mesh, you have to perform the Smart UV on each mesh separately. You cannot select everything, perform Smart UV and expect to have have independent UV maps for every thing that you selected. That's just not how it works.


Location of an object at a specific frame

Try using frame_set() instead of directly setting the current frame:

import bpy

obj = bpy.context.active_object
ol = obj.location

# set current frame to 1
bpy.context.scene.frame_set(1)

pos_1 = (ol.x, ol.y, ol.z)

# set current frame to 5
bpy.context.scene.frame_set(5)
pos_5 = (ol.x, ol.y, ol.z)

# set current frame to 10
bpy.context.scene.frame_set(10)
pos_10 = (ol.x, ol.y, ol.z)

# set current frame back to 1
bpy.context.scene.frame_set(1)

print('Frame 1 {0}, id: {1}'.format(pos_1, id(pos_1)))
print('Frame 5 {0}, id: {1}'.format(pos_5, id(pos_5)))
print('Frame 10 {0}, id: {1}'.format(pos_10, id(pos_10)))

Directly setting the current frame does not update all the animated values and re-evaluate drivers, etc. so the object position is not updated.
Using frame_set() will update everything, so the location is printed as expected.


Geometry Nodes - How to procedurally subtract the unwanted part of a mesh after applying it with particles?

There are two ways to do that: 1) With Geometry Nodes (GN) itself or 2) with Geometry Nodes (GN) and Shader Nodes (SH).
Method 1:
First distribute the ponits/particles then generate volume mesh from those points. Next, boolean the input mesh mesh with volume mesh and combine it with the points/particles mesh.

Blend File:

Method 2:
In this case, we generate a Vertex Color based on the distance to the points/particles then use this as mask in the Shader Nodes to make that area of mesh transparent,

Blend File:


I was thinking of using the modifier incorrectly and not selecting my target. The object you want to carve a shape out of needs to have the modifier applied, then the dropper will select the carving object to take the shape out of the one with the modifier on it. Thanks for helping!


Combine Filmic Blender and "Standard" Film Emulation

but when it comes to artistic composition and you want to use the benefits of using both troy_s's Settings and the default film emulation

I am going to guess that you mean the existing looks. I would advise against them, simply because they are not reliably actually delivering film emulation. That is, the data they were sourced from was actual data, however the way in which they are applied is incorrect. They are effectively random Instagram filters with no meaning. If you mean the ridiculous "Film" transform, it is utterly broken with a horrible label.

That sums up to both groups of transforms as effectively being technically meaningless, and as a result would conflict with the goals and technical output of the filmic-blender set.

  you have to stop your work, close blender, replace the ocio files, restart blender and so on.

While true that a restart is required due to how Blender was designed when OCIO was added, it should be pointed out that Blender will respect the OCIO environment variable. Example:

export OCIO=/path/to/config.OCIO

While it is still a pinch point, this technique might make remote rendering etc. easier for some.

  Is there a better way to work this out? Is it maybe possible to use the film emulation settings as compositing nodes, similar to a filter in PS or Gimp?

GIMP is broken in many horrible ways that I won't go into, and will remain that way into the foreseeable future. No it is not feasible nor doable without many contortions.

Photoshop as well, while not completely broken as GIMP is, is also strictly a display referred imaging application and makes these sorts of transforms challenging at the base level. It can read some LUT formats, but it is likely complex to list the events here.

What exactly are you hoping for out of the "Film Emulation" set and I can take a look at it.

Again though, I am reluctant to include random knob twiddling in the set, as I am already faced with two design directions (Views vs Looks) that pull against each other.


Reverse pose bone inherit scale via python

Just a short draft. I might expand this answer later.

import bpy
from mathutils import Matrix, Vector

# for debugging purposes - visualize transforms
def create_empty(name, matrix):
    if name not in bpy.data.objects:
        empty = bpy.data.objects.new(name, None)
        scene.objects.link(empty)
    else:
        empty = bpy.data.objects[name]

    empty.empty_draw_type = "ARROWS"
    empty.empty_draw_size = 1.0
    empty.show_x_ray = True
    empty.show_name = True

    empty.matrix_basis = matrix

# ported from blenkernel/intern/armature.c to python
# --------------------------------------------------------------------
def get_mat_offs(bone):
    mat_offs = bone.matrix.to_4x4()
    mat_offs.translation = bone.head
    mat_offs.translation.y += bone.parent.length

    return mat_offs

def get_mat_rest(pose_bone, mat_pose_parent):
    bone = pose_bone.bone

    if pose_bone.parent:
        mat_offs = get_mat_offs(bone)

        # --------- rotscale
        if (not bone.use_inherit_rotation and
            not bone.use_inherit_scale):
            mat_rotscale = bone.parent.matrix_local * mat_offs

        elif not bone.use_inherit_rotation:
            mat_size = Matrix.Identity(4)
            for i in range(3):
                mat_size[i][i] = mat_pose_parent.col[i].magnitude
            mat_rotscale = mat_size * bone.parent.matrix_local * mat_offs

        elif not bone.use_inherit_scale:
            mat_rotscale = mat_pose_parent.normalized() * mat_offs

        else:
            mat_rotscale = mat_pose_parent * mat_offs

        # --------- location
        if not bone.use_local_location:
            mat_a = Matrix.Translation(
                mat_pose_parent * mat_offs.translation)

            mat_b = mat_pose_parent.copy()
            mat_b.translation = Vector()

            mat_loc = mat_a * mat_b

        elif (not bone.use_inherit_rotation or
              not bone.use_inherit_scale):
            mat_loc = mat_pose_parent * mat_offs

        else:
            mat_loc = mat_rotscale.copy()

    else:
        mat_rotscale = bone.matrix_local
        if not bone.use_local_location:
            mat_loc = Matrix.Translation(bone.matrix_local.translation)
        else:
            mat_loc = mat_rotscale.copy()

    return mat_rotscale, mat_loc

def get_mat_pose(pose_bone, mat_pose_parent=None, mat_basis=None):
    if pose_bone.parent and not mat_pose_parent:
        mat_pose_parent = pose_bone.parent.matrix
    if not mat_basis:
        mat_basis = pose_bone.matrix_basis

    mat_rotscale, mat_loc = get_mat_rest(pose_bone, mat_pose_parent)
    mat_pose = mat_rotscale * mat_basis
    mat_pose.translation = mat_loc * mat_basis.translation

    return mat_pose
# --------------------------------------------------------------------

def adjust_matrix(pose_bone, mat_parent_old, mat_parent_new, preview=True):
    mat_pose_old = get_mat_pose(pose_bone, mat_parent_old)
    mat_rotscale_old, mat_loc_old = get_mat_rest(pose_bone, mat_parent_old)
    pose_bone.bone.use_inherit_scale = True
    mat_rotscale_new, mat_loc_new = get_mat_rest(pose_bone, mat_parent_new)

    mat_fix_rotscale = mat_rotscale_new.inverted() * mat_rotscale_old
    mat_fix_loc = mat_loc_new.inverted() * mat_loc_old

    mat_basis_old = pose_bone.matrix_basis
    mat_basis_new = mat_fix_rotscale * mat_basis_old
    mat_basis_new.translation = mat_fix_loc * mat_basis_old.translation

    mat_pose_new = get_mat_pose(
        pose_bone,
        mat_parent_new,
        mat_basis_new)

    if preview:
        create_empty(pose_bone.name, mat_pose_new)
    else:
        pose_bone.matrix_basis = mat_basis_new

    return mat_pose_old, mat_pose_new

def apply_change(parent, mat_parent_old, mat_parent_new):
    for child in parent.children:
        mat_old, mat_new = adjust_matrix(
            child,
            mat_parent_old,
            mat_parent_new,
            preview=True
        )
        apply_change(child, mat_old, mat_new)

if __name__ == "__main__":
    scene = bpy.context.scene
    obj = bpy.data.objects['Armature']
    roots = [bone for bone in obj.pose.bones if not bone.parent]

    for root in roots:
        create_empty(root.name, root.matrix)
        apply_change(root, root.matrix, root.matrix)

    obj.update_tag({'DATA'})
    scene.update()


Painting shapes and patterns on the mesh

Create object(s) close to the surface of the painted object (UV unwrapped object with a texture).
Add various materials on different parts of the shape object.

Add Subdivision Surface modifier with 2 or more subdivisions.
Make creases where it is necessary to preserve sharp edges of the shapes.
Add Shrinkwrap modifier with Target set to painted object and set mode to Projection.

Select shape object(s) and the painted object as last one, then open Render tab and in Bake settings select Textures as bake mode, enable Selected to Active and adjust Distance to prevent baking to the opposite side of the mesh. Then hit Bake button.

Final result:


What setting should I use to keep the same quality of video file?

I wanna know how to keep the same quality or at least what settings would be maximally close to original quality.

The short answer is you can't; migrating to a codec will always result in a degradation of the nebulous term “quality.”

If one speaks of quantization quality, the source RGB will be degraded. If one speaks of a general “perceptual” quality, the source RGB will also be degraded.

Encoding is an extremely complex domain, with content of work factoring into the resultant encode, as well as many other subtleties.

Best advice for optimal perceptual encoded quality is to remember BINAE; Blender Is Not An Encoder. Use an appropriate tool such as FFMPEG to encode material.

Some additional complexities outlined here.


Because the radar sensor finds all objects within its distance cone, it will return all objects, even ones hidden behind others.
To find only the "visible" objects, I'm checking that a ray can go from the radar object (the object with the Radar sensor logic) to each of the detected objects with rayCastTo.

This script loops through all the objects that the Radar sensor detects, and casts a ray to each of the objects. (Think of it as shining a laser   towards each of the detected objects, if the laser hits the object then the radar object can see it, if some other object is in the way, then it is blocked and it is hidden.)

import bge

cont = bge.logic.getCurrentController()
own = cont.owner

radar = cont.sensors["Radar"]

for obj in radar.hitObjectList:
    if obj is own.rayCastTo(obj, radar.distance):
        print(obj)

Line 9 is where the magic happens: own.rayCastTo(obj, radar.distance):.
That function starts the ray at the radar object, own. Then the first argument obj is the object that the ray is pointing towards. The last argument radar.distance is how long the ray will be, here I am using the distance set in the radar sensor, so the two will always be the same length.

All you need to do is connect this script to a Radar Sensor as shown below.


How can i apply a PNG logo on my material?

you need a "Transparent BSDF node (see image). PM if you get stuck


According to your own comment, the objects are not colliding at the same time (same frame).

Sensor triggering

All Sensor types will trigger the controller when:

The evaluation state changes from not positive to positive.
The evaluation state changes from positive to not positive.
[True Level Triggering] The evaluation state is positive after [Skip] frames.
[False Level Triggering] The evaluation state is not positive after [Skip] frames.
[Level] The state of the build-in state machine changes.

([Tab] and [Invert] manipulate the evaluation result. The trigger rules apply as above after that manipulation)

Applied to your observation:

f+0:

no object is detected
-> sensor remains not positive no controller gets triggered

f+1:

the first object gets detected
-> the sensor changes status from not positive to positive

according to the above rules -> the controller gets triggered
The controller prints  mydetector.000 detected       [Obj1] to the console

f+2:

the first object still gets detected
-> the sensor does not change state as it is already positive
no rule applies -> no controller gets triggered

f+1+n:

The first and the second object get detected
-> the sensor does not change state as it is already positive
no rule applies -> no controller gets triggered

Sensors detecting multiple objects

With sensors that sense more than one object (collision, near, radar) you often want to know when the detected object set changes. Therefore they have an additional parameter [Pulse].

So you can consider following rule that applies on that kind of sensors:

[Pulse] the detected set of objects changes (e.g. other objects are detected/already detected objects are not detected anymore)

f+1+n:

The first and the second object get detected
-> the set of detected objects changes (=new object detected)
according to the sensor rule -> the controller gets triggered

The controller prints  mydetector.000 detected       [Obj1, Obj2] to the console

Solution

Switch on [Pulse]

(switch off [True Level Triggering])


Cannot get camera / lamp aligned after importing DXF file

The problem is your dxf imported objects are by far too large, look how they compare to the blender grid!

If you select all them and scale them by 0.01 they almost fit again in the blender grid...

like this

now you can add a plane, a sun lamp and a camera and use them correctly

edit: expanding the answer to follow comments request.

I guess opening a new specific question would be better, but: dimensions are relative to the scene units and scale.

Try this: select a sample mesh (eg: a door panel) go into edit mode, select only a vertical front door edge (it should be around 2 meters). Now in the properties panel (N key) under "mesh display", enable "edge info: length".

if units are "none" what length does the edge show?

and what if units are "metric"?

that door is too high...

You can adjust to the right measure either

scaling the whole mesh accordingly (try scaling 0.01, and apply scaling)
scaling the scene metric units by the same amount (both will make your model sized more like the blender grid)

eg: method 2

I hope this help more...


You probably have faces of different colors sharing the same space, flickering will result from these faces conflicting with each othe during the drawing of the model.

Check the flickering spots in Edit Mode, make sure to show occluded geometry (untick the button marked in red). Delete any faces that should not be there.


Issue running Blender Command Line Arguments using Python Subprocess

These need to be separate elements in the array:

        '--render-output', '/home/username/Sites/project/output/hello.png',
        '--render-frame', '1'


Image reference decreases in quality after opening it in Blender

Convert the image to RVB and Jpeg
Answer submitted by moonboots
thank you


Z axis of mapping node in Shader is not working

It's moving but you can't see it because the projection is flat, it means that the image is only projected on the object local Z axis and therefore on the side you'll only see the stretched pixels of the picture. If in the Image Texture you choose Box instead of Flat you'll see the texture projected on the sides and you'll be able to move it.

But keep in mind that even with the Box option, if you rotate your image, it will stretch it. It's not because it is projected on its face that it can't be stretched if you rotate it.


In the VSE you can cut a strip at the current frame by pressing K, which gives a "soft cut". You can also perform a "hard cut" at the current frame by using ⇧ ShiftK

The two strips resulting from a cut still know the video that they are from and frames that were "cut" from the strip can still be recovered.

The difference between a hard and soft cut is that with a soft cut you can drag the start of the clip to recover frames before the cut, while with a hard cut this will duplicate the frame at the cut to the adjusted start of the clip. This works the same for the end of the strip.

In both cases you can adjust the start and end frame by adjusting the strip input properties - press N to show the properties region.


Add repeating text 6-8 times on a UV Sphere using texture instead of mesh

Sphere or rounded cube, from Generated coordinates, the Image texture can be projected not as FLAT, but drop down and find, BOX. Blend 0.0 is fine for you but you'll need to tweak some polygons in the UV Editor to flip the numbers around correctly.

I'd love to make a video of this if anyone's still having trouble. It's a great question! Also, don't use the image directly as a color; use it to control the FACTOR in a Mix Color Node between two other colors or black and white.

You can also use this image texture to mix between two shaders in a Mix Shader Node. Using a .png directly can lead to odd problems that you don't need to experience. If it's distorting, ensure your modifiers are applied if they distort the mesh.


How to create toggle button use python in blender

Create a bool property for Window Manager (it can be for anything, but WM will store our modal operator handler so why not put this in the same place):

bpy.types.WindowManager.my_operator_toggle = bpy.props.BoolProperty()

Display it somewhere in the UI with the toggle tag on:

layout = self.layout
wm = context.window_manager
label = "Operator ON" if wm.my_operator_toggle else "Operator OFF"
layout.prop(wm, 'my_operator_toggle', text=label, toggle=True)

It looks like this:

Create your modal operator (example of basic timer):

class SomeModalOperator(bpy.types.Operator):
    bl_idname = "my.operator"
    bl_label = "My Operator"

    def modal(self, context, event):
        print("running")
        if not context.window_manager.my_operator_toggle:
            context.window_manager.event_timer_remove(self._timer)
            return {'FINISHED'}
        return {'PASS_THROUGH'}

    def invoke(self, context, event):
        self._timer = context.window_manager.event_timer_add(0.01, context.window)
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

The operator ends itself when the bool property is False.
Add update function to the bool property that will run the operator:

def update_function(self, context):
    if self.my_operator_toggle:
        bpy.ops.my.operator('INVOKE_DEFAULT')
    return

bpy.types.WindowManager.my_operator_toggle = bpy.props.BoolProperty(
                                                 default = False,
                                                 update = update_function)

The modal operator is useful when you need to handle user input. For anything else it is better to use app.handlers, you can toggle them through bool property in similar fashion.


To select the (0,0,1) pointing face(s) attached to the currently selected edge, you could use code like this.

(See TextEditor->Templates->Python->Simple BMesh from editmode)

This script expects to be in Edit Mode with 1 edge selected.

import bpy
import bmesh
import mathutils
from mathutils import Vector

EPSILON = 1.0e-5
up_vector = Vector((0,0,1))

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

edge = [e for e in bm.edges if e.select][0]
linked_faces = edge.link_faces
if linked_faces:
    for f in linked_faces:
        if (f.normal-up_vector).length < EPSILON:
            f.select = True

bmesh.update_edit_mesh(me, True)

For simplicity i've limited the selected edges to the first, by doing [0], but you might want to add warning messages as part of your script to warn the user (mostly you) that you have more than one edge selected..

or if you do want to handle multiple selected edges

edges = [e for e in bm.edges if e.select]
for edge in edges:
    linked_faces = edge.link_faces
    if linked_faces:
        for f in linked_faces:
            if (f.normal-up_vector).length < EPSILON:
                f.select = True

This won't take into account those edges that are hidden. their edge.hide attribute evaluates to True


Unwanted edge around image used in a plane

You should make the emission shader aware of the Alpha information from the image. At present indeed, the antialiased border of the globe is emitting as it was fully opaque.

You can do so by connecting the Alpha socket to the Strength input of the emission shader, and adding a "Math>Convert" node in the middle, set to multiply by 0.8.

(in your setup, the second - half transparent - stripe would have wrongly appeared completely white)

[ As cegaton says, however, for your application the diffuse and add shaders can be removed altogether: your globe isn't supposed to diffuse received light. ]


Blender wont start - New PC on windows 10

There is a bug thread regarding this. I would try out things listed in the first comment, especially trying out the latest build of 2.79 (I assume you have "clean" 2.79 from site downloads and thread seems to state that was resolved in builds after may 2018).
You could also try general solutions for this kind of error, like checking whether your blender folder is not read only and it could also happen when you have incorrect entry in PATH variable(thought it was an answer to java error).


How to move vertices without duplicating them?

This may be because you have a couple duplicate vertices in the same location.

Select all your vertices using A in edit mode and then press W to bring a dropdown menu. Either select "Remove Doubles" or press R as it's faster. Now try moving your vertex. It should work.


CUDA error: Launch failed in cuCtxSynchronize(), line 1372

I struggled with this problem for months. Used different computers, re-installed Blender, re-installed windows (I am using 8.1 & 10), installed new and old drivers for my Nvidia card, changed the TDR and everything I could think of...but no luck.

Then it occurred to me that the Gforce Experience runs in the background (and being in my opinion, not a well written program) may be overlapping the memory of Blender or at least hogging the memory. So I un-installed it and magic!!! All Cuda errors and memory errors went away. Blender works again as it should!!!

I hope this works for you, as it did for me. Unfortunately, I did not discover this for months, until I had pulled every single strand of hair out of my head.


Material wont appear in blender render but it does in blender cycles

Materials are not interchangeable between render engines.

Cycles uses a completely different system to BI even down to how the light is treated. BI uses a diffuse - specular workflow and is not PBR. Cycles uses metallic -roughness and is PBR.

The best you can do is bake the cycles textures to maps then load them in to BI and adjust them that way.


How can I make a mesh copy the same shape of another mesh?

your best option in this case is mesh-align-plus, and modify it according to your needs, I do not understand much of your question but I try to deduce with risk to make a mistake, but this surely fits your problem