Perfect Machine for blender i've been searching for the perfect machine for blender.. the highest rated production level machine,that break up mentioned on blender site.

I cant go so much in to technical depth of pc components. in some parts something is lacking and something is up to the mark . its difficult to chose. So my question is very simple.

If i buy Apple MacBook Pro – MJLT2 would that be the perfect machine for blender in all aspects.Would i be able to do every ting from sculpting to rendering pretty easily on that machine? Specs for the mac book are below.

• 2.5GHz Quad-core Intel Core i7, Turbo Boost up to 3.7GHz
• 16GB DDR3 RAM - 1600
• 512GB SSD Flash Storage
• Intel Iris Pro Graphics + AMD Radeon R9 M370X with 2GB GDDR5 memory

I would say there are two criteriae for the machine: speed of the UI and 3D-tools and speed of the renders. For the UI you are very well covered. (I have been desperately sculpting with dyntopo on a 15-year old two-core no physical (integrated or other) graphics card (I had to virtualize an old OpenGL-compatible card). It was awful, but OK for the very desperate cases)

So everything 3D or UI, you are good. Then there is rendering. If you want to render with Cycles, you want to use a CUDA enabled (ie. Nvidia-brand) graphics card. There should be changes to this on the way, but for now that's the deal. So while you would have a powerful graphics card, you couldn't practically use the card for rendering.


Convert mouse movement into rotation value (not in bge) Trying to produce similar behavior to the standard Blender rotate operator, for a modal operator I'm building. This stackoverflow post seems to be on the right track but I'm confused as to how I might implement the math. Also, limiting the rotation to a single axis at a time (as the locked axis image below displays) would be fine. Basically want to emulate what Blender's rotate operator does once you've locked an axis (doesn't seem like it should be to hard).

I've got everything else worked out, I just need a bit of code that takes, mouse_x, mouse_y, object_x and object_y and spits out a corresponding angle for say Y rotation of the object.

EDIT: Though the title reads (not in bge) I'm not at all opposed to importing something from the bge module to use it if it can solve this problem (just meant that this is for use directly in Blender, not for the game engine).

Below is what I've got so far. Thought it might help if I traded out the direct object 3D coordinates with those from the screen (only found region coordinates via bpy_extras.view3d_utils though). Currently, the mouse rotation does not correctly equate to the y axis rotation. Any ideas? Another approach perhaps?

import bpy, math
from bpy_extras import view3d_utils

#Call from Space menu in 3D View. For this example
#you would want to be looking in front perspective.

class custom_rotate(bpy.types.Operator):
    bl_idname = "transform.custom_rotate"
    bl_label = "Custom Rotate"

    def modal(self, context, event):

        #Grab active
        ob = bpy.context.object

        #Region context for view3d_utils
        region = context.region
        rv3d = context.region_data
        coord = ob.location.x, ob.location.y, ob.location.z

        #Convert ob loc to region loc (maybe would work with screen loc
        #if I could get it some how?)
        ob_region = view3d_utils.location_3d_to_region_2d(region,
        rv3d, coord)

        val1_x = ob_region.x
        val1_y = ob_region.y

        val2_x = event.mouse_x
        val2_y = event.mouse_y

        #Get rotation angle and update object rotation
        alpha_angle = math.atan2(val2_y-val1_y, val2_x-val1_x)
        ob.rotation_euler.y = alpha_angle

        #Print angle in degrees to help with testing...
        print('alpha angle:',math.degrees(alpha_angle))

        #FINISH
        if event.type in ['LEFTMOUSE','ENTER']:
            print('finished')
            return{'FINISHED'}

        if event.type in ['ESC','RIGHTMOUSE']:
            return {'CANCELLED'}

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        context.window_manager.modal_handler_add(self)

        return {'RUNNING_MODAL'}

def register():
    bpy.utils.register_module(__name__)
def unregister():
    bpy.utils.unregister_module(__name__)

if __name__ == "__main__":
    register()

Woo hoo! Figured it out. I was almost there. The problem was that I was simply using event.mouse_x and event.mouse_y (which returned x and y values for the entire screen, not just whatever 3D View I happened to be in). Change this to event.mouse_region_x and event.mouse_region_y and the angle data will be generated based on the size of the 3D View window you happen to be in and rotation responds perfectly! There's a bunch of other little calculations required to make it prettier (object angle offset, inverting values etc...), but those are pretty straight forward. The hardest stuff is done.


Activating an imported module - Python version mismatch I don't have experience with addons but it should work when I download the .zip from github and install it over the preference window. I want to keep using Blender 2.8 for modelling but the error states that I get when trying to active the module:

  There is a Python version mismatch.

The module is called Animation Nodes and is compiled for Python ver. 3.5.3 yet Blender 2.8 uses Python ver. 3.7.0. What can I do to use it because Blender 2.79 doesn't work with the addon if I remember correctly. Also I want to keep working with 2.8.

Thanks in advance!

No, you need to wait until someone upgrade it.

Since Blender 2.8 change a lot of code APIs (and Python to 3.7.0), it is currently not possible to use the add-on directly if the code is not upgrade to 2.8 APIs.

It might be possible to upgrade the script by your self, but for those complicated scripts like Animation Node, there will be a lot of thing need to fix.

Here is a discussion: Updating Built In Addons to Blender 2.8, and some one even maintain an APIs change list under the discussion.


Boolean Modifier Trouble - Yes.... The Anvil I am following a tutorial by the Blender Guru on how to make an anvil and everything was going well until I came to use the Boolean tool. When I use it - I do see a cut out in the mesh, however when I apply it - nothing happens. I have tried using the Bool Tool (pic 2) and it creates the cut out in the mesh but does not delete the faces in the shape of the cylinder in the anvil.

I have seen solutions for this in earlier versions of blender Choosing Carve instead of Bmesh but there does not seem to be that option in 2.81

Rotate the cylinder a few degrees around the zed axis to fix it.


Smart UV project creates overlapping uv-coordinates I am having a UV-Sphere with 23k vertices and 25k faces. I used the Smart UV project to create UV-Coordinates but I was surpries to see that some of the faces are overlapping.

I was able to reproduce that behaviour with a simple plane, which I subdivided two times and then moved two vertices. The Smart UV Project's angle limit must be 89.00.

Is that a bug? I thought every face should have it's own uv-coordinates as well as texture space.

FYI: The first picture was done with Smart UV project Angle Limit 66.00.

UPDATE

This also happens when I use a Smart UV project on a uvsphere where the vertices are moved along their normal with a value out of a noise function.

This can't be right?

Smart UV Project simply doesn't guarantee non-overlapping UVs.

It doesn't detect or correct self-intersecting UV's within a UV-island.

Using lower angle limit will typically help to avoid this problem, but there are still cases it could happen.

If the possibility of overlapping UV's is unacceptable, you could use Lightmap-pack instead.

Note, in the example given - there is a lot of noise, One way to resolve could mitigate overlapping could be calculate the UV's on a less noisy version of the mesh:

Store the original vertex locations.
Smooth the vertices.
Execute Smart-Project
Restore the vertex locations.


Child Of's set inverse without using bpy.ops I have the following code:

import bpy

obj = bpy.data.objects["Cube"]
target = bpy.data.objects["Lamp"]
const = obj.constraints.new(type='CHILD_OF')
const.name = "Custom Const"
const.target = target

When I run this code in the default scene Cube jumps into the Lamp's position and gets Lamp's orientation (just as expected). Now I have to set inverse for the Cube. I could use something like:

C = bpy.context.copy()
C["constraint"] = const
bpy.ops.constraint.childof_set_inverse(C, constraint=const.name, owner='OBJECT')

But it looks hackish and not always works for multiple objects (at least for me). E.g.:

import bpy

objects = [bpy.data.objects["Cube"], bpy.data.objects["Camera"]]
target = bpy.data.objects["Lamp"]

for obj in objects:
    const = obj.constraints.new(type='CHILD_OF')
    const.name = "Custom Const"
    const.target = target
    C = bpy.context.copy()
    C["constraint"] = const
    bpy.ops.constraint.childof_set_inverse(C, constraint=const.name, owner='OBJECT')

So the main question is how to set inverse for a Child Of constraint without using bpy.ops? I understand that I've to do something with object's matrices but I've no idea what.

Try:

const.inverse_matrix = target.matrix_world.inverted()
obj.update_tag({'OBJECT'})
bpy.context.scene.update()

This does not show up immediatly. You have to update the view / tag the region for redraw.


Problem with transmission of a material that uses principled shader I'm having an issue with transmission in the principled shader. As you can see my material's base colour is blue, but when I add transmission to it goes dark?
EDIT: Also just realized that I left transmission roughness on 1, I was just trying to see if anything's gonna change with that, but no. It remained the same. So on transmission roughness any value from 0 to 1... no difference at all.
EDIT2: Using Eevee

Go to the Material Tab. Scroll down to "Settings" and Check "Screen Space Refraction"

You also need to enable "Refraction" in the "Screen Space Reflections" panel of the render properties. Render engine must be set to Eevee beforehand.

Also make sure the roughness value is not too high, above 0.5 it will gradually prevent refraction.


Scaling bone multiplies texture I followed this tutorial:
https://youtu.be/kB9cJ3wOoPk?t=1039

When I try to scale the bone to make the eye smaller the texture multiplies as shown here:

Your eye mesh has a UVWarp modifier. I don't know how to fix your problem with the current image, but another way around is to rework this image so that you have enough margin of white.


How to place a vehicle on a sculpted landscape? As the heading already says, i want to place a vehicle on a landscape which was made using the Sculpt-Mode. My current vehicle has 4 wheels, but as a next step i also need to place a vehicle with 6 or 8 wheels on the ground.

I googled a while and the only solution i found was to use an active rigid body for the vehicle and a passiv rigid body for the ground from the physics tab. The problem with that is that the vehicle is jumping around like a ball (even if i use the sliders to adjust friction and bouncine). I'm looking for a solution which helps me to position the vehicle with all wheels as good as possible on top of the ground.

My first vehicle only needs to be placed on the ground, but the other vehicle(s) with 6 or 8 wheels should be animated to drive on top of the ground. For the driving part i found a tutorial on youtube which explains it on top of a plane link, but the positioning part is still open.

The result should be rendered as a part of a movie (it's not intended to use a game engine).

I hope i could explain my problem as good as possible and hope you can help me!

Thanks in advance
nioerd

In my driving games, I use a python script that's supplied with the Blender docs for controlling my vehicles. The link to that script (and example) is here. This script makes everything a lot easier and offers greater control of your vehicle than with logic bricks.

In studying the script, you'll see that the body of the vehicle is a rigid body with Collision Bounds turned on, and it's suspended on the wheels by constraints. The wheels are set to No Collision with Collision Bounds turned on. This keeps the vehicle body off the ground plane while still letting the wheels rest on it without that jumpiness, which is normally caused by the collision between rigid bodies and static objects.


Why is object mode slow but sculpt mode fast? I am currently sculpting a mesh with 500,000 triangles; the object mode has very noticeable lag but sculpt mode is a silky smooth 60 fps. This is very unusual and I don't know why it is doing this. Fast navigate doesn't make any difference to object mode's frame rate.

I thought changing the view clip end to 50 and removing both the camera and lamp from the scene would speed things up but, while it did temporarily get me 60fps, when I clicked on the character the lag starts up again. When I click on an object such as a cube I get full frames but clicking back on the character slows things down.

Why is this happening and how can I speed up the FPS?

Two possibilities:

If you have hidden most parts of the mesh in sculpt mode (H), these faces will be visible in object mode.

If you are using a multiresolution modifier, you can set the preview subdivisions higher than sculpt mode.


When using Blender to modify the Pharah model, how do you make simple bodymorph changes using Shapekeys? I'm new to Blender, but hopefully this question won't require complex program functions. The model's creator says I can alter her body using shapekeys, but I don't know how.
Can someone point me to the right tutorial or explain in simplest terms how to, say, make her thigh less thick or her chest larger. I know this might mess us up her clothing, but I'd just like to make simple/small edits to this fantastic model.

Go to the object data properties (the green triangle) and find the shape keys menu. You can click a shape key, and then drag its Value bar to use it.


Audaspace Game Property in Python script doesn't work as expected So I made a little test using Audaspace lowpass filter in a python script template, modified a little by myself (I'm new in python, so it is very possible that I made a mistake). Everything are working well, except when I try to change the Lowpass filter value using a Game Propertie modified in game with logic bricks. The idea is to change the lowpass filter for an effect in a videogame (e.g. underwater, behind wall).

Does anybody have a solution, it would be really helpfull.

import bge
from bge import logic

import aud

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

logic.device = aud.device()
soundpath = logic.expandPath('//Sounds/Engine.wav')
sound = aud.Factory.file(soundpath)

handle = logic.device.play(sound.lowpass(own["Amount"]))
handle.volume = 1

Your mistake is in logic.device.play(sound.lowpass(own["Amount"])) you are missing the frequency value and the amount go from 0.0 to 1.0 (step=0.1)

From the Blender aud API:

  lowpass(frequency, Q=0.5)

  Creates a second order lowpass filter based on the transfer function H(s) = 1 / (s^2 + s/Q + 1)

  Parameters:

  frequency (float) – The cut off trequency of the lowpass.

  Q (float) – Q factor of the lowpass.

  Returns: The created Factory object.

  Return type: Factory

Test this (i haven`t test it):

import bge
from bge import logic
import aud

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

logic.device = aud.device()
soundpath = logic.expandPath('//Sounds/Engine.wav')
sound = aud.Factory.file(soundpath)
fequency = 100.0 #Hz i assume
amnt = own["Amount"] * 0.1
sound = sound.lowpass(frequency,amnt)
handle = logic.device.play(sound)
handle.volume = 1


Mix normal texture with noise texture to create flat patches I'm trying to achieve this result where the house is white, and the bricks show through the plaster in some places:

I have an image texture as a normal map, and I want to use a noise texture to "flatten out" the bumpiness of it, where the noise is white, and make it stick out where it's black.

I tried using a Bright/Contrast node, but it only gives a very slight effect. I want to be able to make it completely flat in some spots.

Here's my node setup:

Here's my current result:

You could use the following material set up to achieve the desired effect :

This is using a Bump node instead of the Displacement socket as it is more easily configurable. Using Displacement (True Displacement) can result in gaps in your surface - especially if there are hard edges in the texture (such as where the surface transitions between brick and plaster). The Color Ramp allows the noise texture to be modified to produce the desired patches and this passes on to a Maximum node so that the flat plaster gives way to brick as the noise texture drops low. This will mean that the White areas will be the plaster rather than the Black in your example.

The Bump node is used to apply the texture to the surface Normal and this gives the impression of displacement rather than actually displacing the surface.

The Invert node is there simply to invert the brick texture I am using as my particular texture has light mortar and dark bricks. I am using the raw colour data to determine the depth and this is not ideal (it's under the assumption that lighter colours (the mortal) are set back more than the bricks). The inversion ensures that the mortar is inset rather than protruding.

You can adjust the plaster by varying the Color Ramp - this can adjust the amount of plaster/holes as well as changing the hardness of the edges by making the transition between Black and While sharper or softer. The thickness of the plaster can be varied by reducing the brightness of the White.

The Bump node can be amended to change the height/strength of the bump effect and this will affect the thickness of the plaster as well as the strength of the brick texture. The Normal from the Bump node feeds into the shader Normal.

Here's the brick texture I used. It isn't ideal as it has dark shadows which affect the bump mapping :

Tweaking the Noise distortion and adding colour based on the presence of plaster can produce the following result :

Or adjust it for a more subtle effect :


How to output a color ramp node in a material to it's own compositor pass? (2.79b) Is it possible to output a color ramp node in a material to it's own compositor pass?

I need to mask out part of a material which is controlled by a colour ramp, so I can add filters to that specific part of the material only.

You could try duplicating the entire scene. (Full copy) Then in the new scene change the material duplicate to an emission type, with the output being the grayscale of the color ramp. The new scene is also set to only render an emission pass.

Then in compositing output you can use the main scene for the render, and the duplicate scene's emission output as the masking pass. Not exactly what it's intended for (likely to need some adjustment), but I think this may be workable.

Also on the new scene, you can turn samples way down to speed it up a bit, since it's only being used as a mask.


Reflections are pixelated in eevee, any idea how to solve the issue? I am adding the pic for reference Using color ramp, noise texture, bump to create the mud texture, but what's the reason I am getting the pixelated reflections.
Your help will be really appreciated.

Eevee reflections are a bit fickle because of the type of rendering it uses. There are a lot of workarounds. You may need to play around with some of the settings, bake a reflection map, use a reflection plane, etc. to achieve the look you desire. You can also opt to use Cycles.


Getting the location of rigid body object at current keyframe I would like to print out the location of an object with this script:

import bpy

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

It prints it out correctly, but when I animate this object (it's a rigid body) and then at a particular keyframe I run this script again, it just prints out the same location.

I tried to set the frame with:

bpy.context.scene.frame_set(fr)

Like it is mentioned in these two questions:

How can I get the location of an object at each keyframe?
Location of an object at a specific frame

But the location just stays the same. How can I get the correct location of the cube?

Use:

import bpy

obj = bpy.data.objects["Cube"]
print(obj.matrix_world.translation)

This gives you the location from object's matrix which changes each frame for rigid bodies


capturing a frame simulation of cloth, particle as initial state I want to be able to simulate a cloth or fluid for a while and then capture a frame and set it as an initial state/frame to a future simulation.   Example use cases:

winding a cloth thread on a spool, to render the UN-spooling of the thread
priming a water fountain, to render frames starting with a steady state of the fountain.

While I could include the first N frames to simulate to the desired initial rendering state in the file, or set up a negative timeline that eventually gets to the desired state by frame #1, I would like to clean up all the setup baggage to reduce file size or disk cache clutter, but to allow for many changes in the simulation from the captured state.
3ds Max gives a simple property-based panel "Capture States" to accomplish this snap and cleanup productively:

Is there a similar, convenient technique in blender?
I have tried "apply modifier", but it resets the simulation if I first SaveAs a renamed file (it doesn't copy all of the cache to the new copy).   And if I go behind blender and copy all cache files to the SaveAs cache, the Apply doesn't clean up the many cache file.  I'm also left with re-applying the (cloth/fluid) modifier and recreating all of the parameters to continue the simulation.
If I try "Mesh Cache Modifier" or Import mdd, I seem to have scaling problems,

and the exp/imp creates for every frame so I'd have to delete most frames and shift the last to frame #1.  Inconvienent.  If I import with start=end=FrameOfInterest, I get a weird decrease only in frame_0000 Shape Key as I progress along the timeline:

I get nothing better from the Mesh Cache modifier
It seems that in blender I could hunt with blender-external tools to find and clean up, but might then have to redo the initial state simulation if I want to change some parameters (like add a wind force) on the rendering part of the simulation.  So "tricking blender" techniques could backfire.

Ah, how-to-extract-a-particular-frame-of-cloth-simulation seems to answer this question.
Apply as Shape at whatever frame you want to extract, then at the initial frame dial up the shape.


Import CAD with all layers into Blender I'm trying to figure out how to import an engineering drawing from AutoCAD into Blender while retaining all layers and fills... is this possible? I also use Carrara and it opens files from CAD in this way... I want to switch fully to Blender but, if this feature doesn't exist, I just cannot make the leap.

Any info would be fantastic.

There is a built-in importer for DXF file format, if you can save or export your drawing as text-based DXF file. It works fairly well in most cases and should import without major hiccups, though some minor bugs are expected.

Fills and stroke widths will not for the most part be preserved, as there is no such structure in Blender. Blender being a 3D modelling tool has no concepts of fills, hatches or line widths.

Layers get translated into groups since blender's current 20 layer system is too limited to accommodate the potentially unlimited number of CAD layers.

You can activate it from settings under User preferences >Addons search for DXF.

Make sure your drawing has no X-lines or Ray objects since those cause import to fail. Also dynamic blocks and other complex structures will likely fail.


API access for workbench render settings In Blender 2.8 how do I change the settings for the workbench render properties via python? The settings for the workbench render, not a viewport.
For example if I manually change the lighting to FLAT, then the info panel reflects the command

bpy.context.scene.shading.light = 'FLAT'

but when running this myself it says that 'Scene' doesn't contain the attribute 'shading'. Same result if I directly access the scene object through bpy.data.

In the same render settings panel, in the 'Film' dropdown I can successfully change the Alpha Mode with bpy.context.scene.render.alpha_mode = "TRANSPARENT", but the settings related to the render engine have no such access that I can find.

You could try

bpy.data.scenes['Scene'].display.shading.light = 'FLAT'

(thanks to @nicklamer on #blenderpython)


I see a lot of noise and fireflies with Glass BSDF Shader I made a cube in Blender. The cube has BSDF Glass shader. When I render it there is a lot of noise and fireflies.

I tried everything: Change clamp, change light bounce, denoising, glossy filter, more samples... just everything. I don't know what to do now. When I removed the cube there wasn't noise. The light is point light and in the center of the cube. Blender 2.81 Beta, Cycles.

https://imgur.com/a/BQhwXDL

Glass is something that causes a lot of noise in a cycles. While the proper solution is lots of samples, there are some options to get quicker acceptable results.

The first option added to 2.79 is Denoising

2.81 adds a new denoise composite node that uses Intels Open Image Denoise. CGCookie has a look and comparison.

There are also third party addons such as D-Noise.


How to place a bone on top of a face with same direction? How do i place a bone on top of a face like on the picture?

Enable "Copy Attributes menu" addon it comes with blender.

Offset the bone as needed.
Select the bone and then the plane, then Ctrl+C and copy location and rotation

Also you can do the snapping on a face with rotation enabled:


How can I subdivide a Surface NURB without affecting the shape? Say, I lay down a Surface NURB Circle in Blender.  It has 4 control points, and it is circular.  Now, if I Subdivide it to add more control points, it starts to become a square.  The more I subdivide the more square it becomes:

What I'd like to know is if there is a way to subdivide the original circle and have Blender add new control points such that the original circular shape is preserved.  Same goes for any Surface NURB.  I'd like to be able to add new control points without destroying the shape of the curve.

I am afraid that's not how nurbs are design to work. The way nurbs are suppose to function is to use the least amount of point to describe a curve. Every quarter of a circle is a simple arc and would be suffice to have 3 points in order to describe it.

Is there a reason behind your question that you would care to elaborate? So we may figure out a better way to do if ... if any.


Tried everything. Can't select bones in weight painting mode I've tried doing the select armature in pose mode switch to object mode then weight paint thing but it still doesn't allow me to select bones among a plethora of other solutions and I'm not sure why but for some reason it just doesn't work for me. Can anyone help me figure out what I'm doing wrong?
https://drive.google.com/file/d/1neePPk9PlKjhpp8AIbUOF94m1KHws7hX/view?usp=sharing

top menu Edit > Lock Object Modes > uncheck

Then you can select multiple items when in edit mode.
Set your mesh to weight paint while your rig is in pose mode.


Problem with rotating objects by script I have script (operator) which should align align all selected objects somewhat.

import bpy
from mathutils import Vector

class VCUTILS_OT_alignToLongest(bpy.types.Operator):
    bl_idname = "object.align_to_longest"
    bl_label = "Align Objects along their Longest Axis"
    bl_description = "Create average vector from the longest edges and align object to have x axis along this vector"
    bl_options = {'UNDO'}

    shortestEdgeEvaluated = 0.8

    def execute(self, context):
        for obj in bpy.context.selected_objects:
            if getattr(obj, 'type') in ['MESH']:
                self.alignObject(obj)

        return {'FINISHED'}

    def alignObject(self, obj):
        mesh = obj.data

        # Apply object rotation
        bpy.context.view_layer.objects.active = obj
        bpy.ops.object.transform_apply(location=False, rotation=True, scale=False)

        # Find longest edge length
        longestD = 0.0
        for edge in mesh.edges:
            v1 = Vector(mesh.vertices[edge.vertices[0]].co)
            v2 = Vector(mesh.vertices[edge.vertices[1]].co)

            longestD = max(longestD, (v2 - v1).length)

        # Find direction as an average of longest edges
        axis = None
        for edge in mesh.edges:
            v1 = Vector(mesh.vertices[edge.vertices[0]].co)
            v2 = Vector(mesh.vertices[edge.vertices[1]].co)
            eVect = v2 - v1

            if eVect.length >= longestD * VCUTILS_OT_alignToLongest.shortestEdgeEvaluated:
                eVect.normalize()

                if axis is None:
                    axis = eVect
                else:
                    if axis.dot(eVect) > 0:
                        axis += eVect
                    else:
                        axis -= eVect

                    axis.normalize()

        # Align the object according to major axis found
        rotQuat = axis.to_track_quat('X', 'Z')
        rotEuler = rotQuat.to_euler()
#        rotEuler = ( 0, 0, 0.785 )
        print("Euler: " + str(rotEuler))
        obj.rotation_euler = rotEuler

        # Rotate the mesh back
        for v in mesh.vertices:
            v.co = Vector(v.co) @ rotQuat.to_matrix()

        print("Obj " + str(obj) + " done")

If I try it with that "proper rotation" it rotates the first selected object and ignores all others. It prints correct rotations for all objects to stdout, however. If I uncomment that line with "Rotation for debug" it rotates all selected objects to that fixed rotation.

I'am screwed now, I cannot imagine, where may be the problem ...

EDIT> Images before  and after . The leftmost selected is properly aligned. Other two selected not.

EDIT2> Added full script, python init and testfile

bl_info = {
    "name": "VCUtils",
    "author": "Vaclav Cermak <disnel@disnel.com>",
    "description": "Various my utilities",
    "version": (0, 9),
    "blender": (2, 80, 0),
    "location": "View3D",
    "warning": "",
    "category": "Generic"
    }

import bpy

from . alignToLongest_op import VCUTILS_OT_alignToLongest

classes = (
    VCUTILS_OT_alignToLongest,
)

def register():
    for cls in classes:
        bpy.utils.register_class(cls)

def unregister():
    for cls in classes:
        bpy.utils.unregister_class(cls)

My take on this

  the aim is to reorient all selected mesh objects to have their local x
  axis along their longest edges. Every object receives different
  rotation

Get all the meshes of selected objects, could be anything from 1 (all
share same mesh) to having a mesh each.
Find the longest edge of each, rotate mesh about origin such that x
axis aligns.  Keep the inverse transform of this rotation.
For each selected object transform by inverse. (ie rotate back to orginal global orientation with new local axis)
Used rotation difference of two vectors. Using rotation difference of
two tracking quats would help with aligning up axis too.
Assumes all meshes have at least one edge, used bmesh purely for
BMEdge.calc_length() could use mesh data directly.

Test script.

import bpy
import bmesh
from mathutils import Vector

context = bpy.context
ob = context.object
meshes = set(o.data for o in context.selected_objects if o.type == 'MESH')

bm = bmesh.new()
lut = {}
for me in meshes:
    bm.from_mesh(me)
    le = sorted(bm.edges, key=lambda e: e.calc_length()).pop()
    axis = (le.verts[1].co - le.verts[0].co).normalized()
    q = axis.rotation_difference(Vector((1, 0, 0)))
    R =  q.to_matrix()
    me.transform(R.to_4x4())
    lut[me] = R.inverted().to_4x4()
    bm.clear()

for o in (o for o in context.selected_objects if o.type == 'MESH'):
    o.matrix_world @= lut[o.data]


Subdivide surface based on intersection I have a question. The situation is as follows:

So there is a sphere and a prism going straight through the sphere.
Now I would like to:

Add vertices and edges to the sphere mesh along the line of
intersection
Select all the surface-faces within the region of
intersection to work with them e.g. apply a specific material

I feel like there has to be a way to do it without scripting, but I really don't know how...
Thanks for any help in advance:D

Actually I recalled another option called Knife Project.
In Edit mode of the cube remove the top face like this:

In Object mode select cube first and sphere second.

Then go to edit mode. Select all. Make top orthographic view and use Knife project operation from Mesh menu.

Check Cut trough box

Now you can delete your cube and when you go to edit mode with your sphere you can see faces were intersected. So you can select them separately and assign another material.

Hope it helps!


2.8 : Trouble with materials when joining two meshes Blender novice here, using 2.8; I've got this .blend file holding a multitude of shapes; the resulting object will be imported in Unreal Engine.

Topics are convering this already, but I'm so unfamiliar with Blender that "add an input > UV map node" isn't helping much; I'd be very gratefull to have a more detailed, step-by-step approach. Keywords, bullet points and I can google the rest. Learning with Udemy at my own pace doesn't help you to identify the solution "the clean way" myself.

Attached is a cleaned-up version of the file, with only two meshes and their own material plus the texture they share:
joining-example.zip

First step was to join the two meshes. Ok.
Next, I must find how to "make them render properly".

There's where my language gets crude. I understand it has to do with UV maps, but can't find what's wrong. See below.

Before joining
Each mesh is properly rendered.

After joining
Only one mesh will be properly rendered (the last selected)

By default, the texture node uses the first UV map in the list. When you join the two objects the two materials find two different UV maps in the new object, but both are using the first one, which is good for one material but bad for the other. So simply tell the second material to use the correct UV map, using an input UV node.

Don't forget to apply (Ctrl A) rotation and scale to both meshes in object mode, before joining.


What's the best way to export from Lego Digital designer to Blender The Question pretty much says it.  My purpose is animation. I want the ldd model to be exported as individual pieces.  I've exported from mlcad before, and it exported as several objects for each lego piece.  that's a mess for animation.  I think I will probably need a 3rd party program for it as ldd doesn't export to obj, fbx, or any other format.  Which program should I use?

I found that exporting a Ldraw file from ldd, and importing the ldraw file into blender using TobyLobster's LDrawImport addon worked really well.  The addon can add the word Lego on every stud, and it adds a bevel modifier to the object among all the other things.


Rendering same scene multiple times? (changed by frame change handler) This is a follow-up question to my previous post.

After a certain learning period I was able to produce the generated scenes I wanted. It looks similar to this gif (credit to @batFINGER):

In short: I wanted to generate a short video of a camera following a license plate, the important part is to produce thousands of videos like this with randomized license number and camera angles.

I generated it (as suggested by @batFINGER) by using a frame change handler, on every first frame of the scene the handler changes the license plate and randomize the camera angles. Because the scene loops, each loop I get different results.

Now I have a scene that when I press play it shows something similar to the gif above.

My question is how I render from this scene multiple videos with different parameters in each?

I tried searching by my own but I probably don't know the correct terminology and couldn't find anything useful.

Additionally, it would be really helpful if someone could tell me if the rendering speed can be faster than the framerate? I plan on generating low resolution videos so my workstation will be able to render the videos much faster than the framerate.

Thanks in advance.

So after a bit of searching with different keywords I found two very useful resources:

A post in this forum with very similar request (I'm surprised I didn't find it in the first search).

Also, a nice tutorial with some basic explanation that helped me.


How to properly set up physics with door hinge? I am a newbie with blender trying to create a simple animation where a safe falls on the floor, making its door open when it lands. I tried to set this up by making the cube and the door active rigid and the small rectangle that should serve as a hinge, passive. Then i connected the "hinge" with the "door" and gave a Hinge type body constraint to the rectangle. When i play the animation the objects will not fall, only move away from each other as seen on the picture. What did i do wrong? (i also changed their shapes to "mesh") Thank you all for your answers!

How to do it:

add an empty where you want the hinge to be. Important is the z direction. This has to be right, else the hinge won't work.

enter the parameters for the Rigid body constraint for the empty from 1:

object 1: safe
object 2: door
you can limit the z-angle, if you want to.

give the safe and the door a rigid body

i gave my safe a weight of 4000 kg because it has such a treasure in it - should be safe enough for suzanne.
Shape: mesh
Friction should be high - you don't want the safe to slip on the floor, right?
Bounciness should be very low - else the safe jumps around. Would look weird.

give the door a lower mass.

add a plane, give it rigid body passive.

move the safe up in the air, rotate it a bit, and start the animation and enjoy the fun you will have! ;)

Here is the blend file:

Here is the result:

https://youtu.be/s-ZfOSBvxZM


how can i make uneven distribution of lattice without changing the shape of object in the beginning I want my lattice to the shape as i showed in the beginning. the edge inside lattice is not not evenly distributed, becuz i want my plane to bend along those lines. How can i manipulate the lattice to that shape without changing the shape of my plane immediately?

I don't know if you could have something very accurate with a lattice. Maybe you should try shapekeys or, if you have a reason to prefer a modifier, the Mesh Deform modifier or even the Surface Deform, as your object is a simple plane:

Create the object A, the one you want to deform.
Create the object B, a subdivided plane, it's the object that you'll use as the Surface Deform target.
Align its edge loops with the object A vertices.
Give your object A a Surface Deform modifier, choose object B as the target, click on the Bind button.
Select the object B, go in the Properties panel > Data > Shape Keys and create the shapekeys.
Now your object A will deform rather well.


UV textures appear scrambled or missing UV textures appear scrambled or missing when rendered, but are fine in the 3D view. I've spent the entire day googling and looking at other people's problems and I am still at a loss. I want to render now but I can't seem to figure out what I'm doing wrong.

Blendfile

Am I missing something obvious? I have more than one UV on a character and want to know if it's possible to assign different materials to different parts.

Sorry if I'm not providing enough details. If you have questions, I'll try to answer right away.

You have only 1 UV on each character and your UVs intersect.


Assigning HotKeys Using Python Commands This question is an extension of this:
What identifier of operator must be entered for assign shortcuts

I did not understand how have copied Python command or Data Path
 available I could to determine that it is the context is wm.context_toggle
and attribute is space_data.use_occlude_geometry.

Could someone explain in more detail the thing about where the operators came from?

I found on the official website section initiated to the python, but I can not be guided in it

Since i don't want to add another comment:

You can list all available operators via Info Menu -> Help -> Operator Cheat Sheet and look at the Text Block generated in the Text Editor

The operators are listed by category in this section (at the bottom of the page) of the API documentation.

If you drag down the Info Area you can see a history of recently used (registered) operators

You can hover over buttons with python tooltips enabled.

The context data is listed in this section (available members depend on the area/mode)

The different spaces used by the corresponding editors/areas are listed in this section (subclasses - top of the page)

See also Screen Elements


Where is the collapse edges option in 2.70? I can't find the collapse edges button for dynamic topology sculpting in the new 2.70 blender update. Where is it?

Dynamic topology behavior was updated in this commit:

  This allows you to choose between subdivide edges, collapse and both. Being able to
  only collapse edges can be useful to simplify meshes with accidentally introducing
  more detail.

The collapse short edges option was renamed to collapse edges.

Is this what you are looking for?


Wall texturing without slides My problem is the following:
I have a wall wich I textured with a Uv Map. Because I dont wanna have N-gons in it, I made a triangle. But do you know any other way to texture the wall without any extra slides (in UV map) and without n-gons?

Thanks for your help - this forum helps a lot! :)

I would approach it this way. There is only one additional vertex than the original and it's quad based modeling which has a lot of advantages.

Because it is flat unwrap it using "Project From View".


How to export object as multiple meshes? I made a character with a skeleton that needs to be exported as an .FBX to Unreal Engine 4. There are multiple objects in the hierarchy that make up the full object. I need these objects to export in one file, but as seperate objects so I can texture each on individually. I could texture the objects in blender, but the materials are already premade and cannot be exported from UE4. How could I export them as one file, but able to edit each individual object in the engine?

Use Batex plugin. which can be obtained here:

https://www.blendernation.com/2019/08/15/blender-2-8-free-batch-export-addon/


Can't add nodes from custom nodes template When I load the Cusom Node template into the text editor and run it in blender I can't add the created nodes in the newly created node tree. I see them but they are grayed out. Is the code somehow deprecated?!

It's not deprecated, it also isn't documented very well yet, expect some trial and error to learn pynodes.

Running the included pynodes template works for me, of note is that switching between nodetree types actually de-selects the active custom nodetree. (Probably worth reporting as a bug)

While I cannot create nodes here, you will notice the new button in place of the node tree name, this may show even if a nodetree exists, it just isn't active.

After making the nodetree active I can add nodes.


How to set up Blender for Multicore Animation I use Blender as a video editor.

After setting up the video I want to process including correct Start and End frames I click "Properties->Render->Animation".

My CPU usage climbs to a range from 20% to 25%. I am running an i7-3770K @ 3.50 GHz with 32 GB Ram. Blender is working on a physical drive, not an ssd. The i7 has 4 cores. With hyper threading that is 8 Hyper threads. I think Blender is running animation on only one core.

When I try to research this topic I get a mixed message.

I can find performance analysis multi core vs single core. I can find a Microsoft demo how the job queue can be executed parallel on a cloud service.

I can find entries that say the Renderer is multi core the rest is not.

But I can not find the settings to enable my animation to be multi core. I assume this is possible since it looks like it is part of the Renderer .

Is there something definitive like an official source on this?
How do I set up my Renderer so that It utilizes all (or most) of my machine?

It seems like the current VSE targets in the road map do not include multithreading. That may change in the future.

The underlying issue of slow rendering is solved in this thread.


Play audio file when scene starts but don't play it again if leaving scene and coming back This is what I want to accomplish: User starts the game and a scene shows up (a landscape).  An audio file plays telling the user a story about the fictional world my game is set on.  After that, the user might want to change to another scene showing information about an object (let's say a plant or animal) but when coming back to my previous scene (the landscape) I don't want the audio file with the story about my world to play once again.  My user might want to pick several objects in the first scene so I don't want the story to be replayed every time he/she picks an object.

I've tried through messages from one scene to another but found out that is not possible since messages only work with objects within one scene.

I decided to try Python scripting, adding a game property to my first scene and changing the property value through code but even though my variable value changes to "4" from its initial value of "2", it still keeps on playing the file, like shown in here:

As you can see my property value changes but the "Property Sensor" is still being triggered, causing the audio file to be played.

Do you have any suggestion on how to accomplish what I want?

Do not come back to the start scene. There is no reason to do so. The start is done, so the player should continue with the next steps. (Unless this is what your game flow is supposed to do.)


Transfer particle cache from one file to another As the title states, is it possible to transfer the particle cache of one file to another? I apologize if this is a duplicate, but I don't think I've found a relevant answer

I thought to use the blendcache folders created when saving to disk and using the External option to read from a folder, but it gives "No valid data to read!".

I was investigating this recently and had to resort to reading the source code to figure this out (blender/source/blender/blenkernel/intern/pointcache.c and ptcache_filename()).  I was never able to find any documentation for the various idiosyncrasies.

When you create a Disk cache the files end up being named in the pattern %s_%06d_%02d.bphys.  The %s is a prefix; the %06d is a frame number;  and the final %02d is the index number.  For example: 537068657265_000231_00.bphys .  It turns out that 537068657265 is what happens when you convert the ASCII for "Sphere" to hexadecimal.

However, if you double-click on the item in the list of caches and give it a name that will be used as the prefix on the filename instead.  The fact that this defaults to blank makes it easy to overlook the fact that you can give the cache a name instead of using the hex-encoded name of the object the particle system lives on.

It is possible to use these files as an External cache, but it takes an extra step.  You provide the directory containing the files as the File Path, then you have to rename the cache item in the list above it to match the prefix of the files (for example 537068657265) .  If you do not rename the cache item from the default blank then it will look for files named like _000231_00.bphys (a blank prefix) and since they do not exist you get the No valid data to read! error message.

Alternately, you can rename all the files to have a blank prefix using a shell script like

for i in *.bphys; do
    o=${i#537068657265}
    mv $i $o
done


Saving a rendered picture with selected Buffer? I was told that when you have a rendered picture and then save it, it would be saved the way it is shown in the uv/image editor. What i mean by that are the several buffers (color and alpha, color, alpha, z-buffer). Unfortunately when im saving my pictures the buffer i selected is not being respected and i always get the same picture no matter which buffer i used. Does anybody know what could be wrong?

Nope, saving the image from the Image Editor will save the "Color and Alpha" channel no matter what channel is selected.

If you want to save one of the other passes you will have to use the compositor.

The Render Layers node is the output of what blender rendered (there are lots of passes you have access to).
The Composite node will be what is displayed in the Image Editor as the Render Result.

With the two nodes connected like in the image above (Render Layers Image output to the Image input of the Composite node) you will get the exact same thing as what you could save before.

However taking the Alpha out of the Render Layers node will give you a grayscale image of just the alpha. (In most cases there is no reason to do this because if you are saving to an image that supports transparency then the alpha channel is the same as the output here.)

Now the last option in the image editor is Z depth. If you simply take the Z and plug it in to the Image output, you will get an image that looks all white. However all the values are there, they are just over 1. (If you save to an image format the supports full floats, exr is the most common, then you will have access to all the values.) But if you are saving to a png, or just want to visualize the Z data, add a Normalize node (like in the picture). That node will compress all the values to fit between 0 and 1, which is the range that your monitor can display, and a png can hold.

Now if you want to save multiple passes all at once, you can use the File Output node.

To add outputs to the file output node open up the properties region with N then click on the large "Add Input" button.


If I made a good armature, can I use it for another mesh as well? I made an armature for a man, can I use that same armature for a female, clearing the weights and add another mesh in the place or do I need to make a new one?

You can absolutely reuse armatures among meshes, and doing so allows you to bring over NLA actions and other animations associated with the armature. It's not trivial to do this, since both meshes must be weight painted to the needs of the armature and bones... but since you will probably accumulate a lot of animations over time, it is a good investment for important characters, or those that have a lot of actions.

I use common armatures for sea turtles, fish, mosasaurs, dinosaurs of a common body plan, etc, and the whole mixamo concept is based on the idea that yo will accumulate and use common armatures.

Additional information: how to copy a rig to another mesh

Mixamo: https://www.mixamo.com/#/ -- Thgis is not Blender specific, but a handy way to see how others have animated particular sequences and their files will work with Blender. You would be downloading an FBX, and importing into Blender via File | Import FBX.


adding surface (F) adds vertices, massing up subdivision surface I am totally new to blender, so please forgive me if it is a dumb question.
When I add a face by pressing 'F', I found out it adds an vertices to
where it seems to be middle position of selected points.
It doesn't show up in vertex select mode, but I can see it on Face select mode.
Because it doesn't show up in vertex select mode, I tried to delete it but I can't.
and it mess up subdivision surface.
I am so confused why it is happening, please help.
Thank you!

I select vertices to add face.

Pressed F and looks perfect.

But when I change to face select mode, yellow dot appears inside a circle with green and red arrows on it.

end up with weird shape because of that dot. :(

Unfortunately, using subdivision on a mesh like that one, wont usually work if you work off edges and vertices, blender doesn't like that.

start from the top and work to the base, that's the way I like to work, and it allows me to scale things better.
work off what you have though, perhaps don't subdivide, but use the cut tool in editor mode and smooth it yourself, to make it look more human.

also the dot is the center of the entire thing? if it's yellow and you've selected the mesh.

using F to make faces and subdivision aren't good friends!

( i'm not a pro, take what I say with a grain of salt, it might not work! )


Blender window type icon only changes header Simple question: When I change the window type using the window type icon at the upper left corner, the only thing that changes is the header. How do I actually change the window itself?

I am using Blender 2.75 on Windows 10.

You probably just using wrong thing:

If you use top-left button to change window type it will only change the header, so you should use the one at the bottom left (marked in green)


Update texture between render layers? Is it possible to have blender render one render layer, then before it renders the next, update textures in your materials?

I want to render my first layer, and then use the output of it as an image texture in the second render layer.

This is currently possible if I manually run each layer via the compositor, but I'm looking for a way to automate it.

I'm not 100% sure we can guarantee the order that layers are rendered in but it does appear to be the order they are listed in the scene layers list. With that the easiest way would be to use a file output node to save the first layers to file before the final layer is rendered.

The bpy.ops.render.render() operator accepts a parameter for the render layer, this is what is used by the node editor. A script could render one layer at a time, saving the layer to a file ready for the next layer. Note that you are walking into the chicken and egg problem, the render you do for the material will not have a material until you finish the render to give it a material. You should make sure that the camera used for each material does not contain an area that relies on any future materials to be generated.

scn = bpy.context.scene
objs = bpy.data.objects
scn.camera = objs['layer1_cam']
scn.render.filepath='//layer1.jpg'
bpy.ops.render.render(layer='layer1', write_still=True)
scn.camera = objs['layer2_cam']
scn.render.filepath='//layer2.jpg'
bpy.ops.render.render(layer='layer2', write_still=True)
scn.camera = objs['final_cam']
scn.render.filepath='//final_render.jpg'
bpy.ops.render.render(layer='final_layer', write_still=True)

If you are placing the renders as a flat plane on the final render, you can automate it without a script by using multiple scenes, each scene can use a different camera, so they aren't all rendering the same thing. You duplicate the scene with the link objects option so that any changes are seen in each scene and to keep each scene in sync when adding new objects be sure to use ⎈ CtrlL->Objects To Scene->Scene... to add them to each scene.

Once the scenes are setup, add a new render layer node for each scene, use scale and translate nodes to position the layer and alpha over to combine them. You can either use the pass index for an object to get a mask matching an entire object or the pass index of a material to get a mask matching a material, which allows you to apply the material to selected faces of an object. The ID Mask node is then used to get the mask. Enable the object or material index in the render passes to have it available in the compositor.

Now when you render the final scene, all the other scenes will get rendered and be composited onto the final image.


How to bevel in proportion? I have been doing this again and again and searched but cant fix it.
I think the bevel is not on the center of the edge

How to make better bevel?

there's a short cut on edit mode:
1 . select the edges you want to bevel. [works with faces too]

2 . press [ctrl]+[b].

3 . dragg the mouse to set the angle of the bevel.

4 . scroll the mouse weel to segment(loop) the arc.


Node properties panel missing in compositor In the compositor, there is the properties panel which allows us to change properties of the nodes added.
It is usually retracted and indicated by a small triangle on the top right, as indicated on the image below.  But it seems to be missing in this particular blend file ( I work with many blend files and this is the first case ive encountered)
How do I enable the panel? The blender version I use is 2.9

Try this:
Delete the Compositing tab up the top:

Add a new Compositing tab:

Fixed!

Bonus: You can shuffle tabs around with Reorder to Front to get them back to where they were:

Here's your .blend back again:


Weird vertices after sculpting, what caused this and how to fix? After sculpting for some time I noticed those weird duplicated faces had appeared and I don't know when this happened so I can't go back, there is a way to fix it?

If the faces are some kind of underlying duplicate mesh, in Edit Mode hover over your mesh and hit L to select linked faces and see if it is a seperate mesh that can be deleted.


Overlay video to active camera view I want to recreate a scene from a video. There is lots of camera movement which I want to recreate as accurately as possible. Is there a way to overlay my reference video to my active camera view (e.g. half-transparent) so that I can improve the accuracy of my process?

Until now, I've been trying to have a seperate window with the video sequencer, but this is not very accurate.

If you want accuracy you should track the scene, solve the camera and reconstruct the camera moves and 3d environment. Watch the "match track blend" series of videos by Sebastian Keoenig to understand the process https://www.youtube.com/watch?v=U7AjIL_fDtU

Then there is fspy (https://fspy.io/), a piece of software and a blender addon to estimate camera placement and lens based on the vanising points in an image. worth trying that too.

Manually placing the camera is not only tedious, but very hard to do accurately just "by-eye', as it involves matching field of view, distortion, camera rotation and placement on top of estimating the scale and distance to the 3d objects. The camera placement, rotation and field of view is only valid for a single point in space and not others. That is a highly complex task.

If you still want to painfully guesstimate it yourself use the camera background image feature.

It will display an image (or video frames) as background in the camera view only.

To match it with your scene lock the camera to view as explained in the following post:

https://blender.stackexchange.com/a/135150/97988


Smooth shading not smoothing everything as expected I have a mesh that is not behaving the way I expect when it comes to smooth shading. For example, here is the mesh (it is all one piece) shaded smooth (as compared to a Blender Cylinder to highlight the differences):

And here it is shaded flat (again, as compared to the cylinder)

I expect the handle area to be smooth just like the cylinder (you can notice the purple structures smoothing some edges, but not all).

I already:

Made sure there is no edge split modifier on the mesh
Selected all edges and did a Clear Sharp operation
Selected all vertices and removed doubles in case there are un-merged vertices

Here's the file for reference:


Animation Nodes - Have Text Appear Word By Word Instead Of Letter By Letter Using setup with a text object

Typewriter text displays letter by letter

Can this be altered to display word by word?

Split text into words. then slice text list based on frame and combine back to single text.


Grease pencil fill appears infront of glass, while in 3d space it is behind Trying to put a grease pencil layer behind and infront of a glass jar in Blender 2.8. But the part behind the jar appears to be infront of the jar. Is there some kind of Blend mode in grease pencil I can change?

Is it the same after rendering ?
What do you mean by 2 grease pencil ? are those strokes in the same object ? layer ? if not, did you try to put them in the same object and arrange the layer priority or stroke placement ?
I just Tried with a normal object with and without glass or transparent shader and it worked normally..


Rendering problem on a procedural cloud I created a procedural cloud with this tutorial : https://youtu.be/lCvP917Z8uc, but when I duplicate it to create a "Clouds carpet" the invisible cube from which I created my cloud causes my rendering to bug.
I render with cycles.

The rendering from the camera gives that.

I have checked out the video, and I recommend moving one of the cubes a tiny bit so that faces are not directly overlapping. That has caused this kind of thing before.


How to have an asymmetrical texture on a mirror modifier model? I am making a low poly human model and i want to texture its face but it is always symmetrical and I don't want it to be.

If I understand correctly what you want, enable the Data > Mirror U and Mirror V of your Mirror modifier:


Blender 2.73 Objects do not respond to script, but do to Python console TLDR: I can change stuff with Python in the console, but not when lumped together in a script.  What gives?

I'm trying to command an object's location and orientation by running a script in the text editor (and then saving the resulting image).  I can use Python in the embedded console to change object properties (like position and orientation), but when running these commands as a script from the text editor they will change orientation, but not position.  I need to change an object's location and orientation.  What could be causing this?

These objects exist in a .blend file that has objects, lights, textures, keyframes defining position, etc.

These scripts used to work before I updated a texture, added more lights, and restarted my computer a few times.  Those are the only changes I can think of.  Now they render and save the rendered image but don't change the object's location or orientation (yes, after adding more junk, the object call is still to the right object).

However, if I run the script line by line in the embedded Python console, it executes flawlessly.

All thoughts appreciated!  I'm stumped.

Script:

rel_loc = input("\nPlease input relative location of object 1, separated by spaces: x y z:  ")
rel_att = input("Please input relative attitude of object 1, separated by spaces: w x y z: ")

#split out 'words' and convert to floats
rel_loc_p = rel_loc.split()
rel_loc = []

for n in range(0,len(rel_loc_p)):
    rel_loc = rel_loc + [float(rel_loc_p[n])]

rel_att_p = rel_att.split()
rel_att = []

for n in range(0,len(rel_att_p)):
    rel_att = rel_att + [float(rel_att_p[n])]

print("relative location " + str(rel_loc))
print("relative attitude " + str(rel_att))

#set position
bpy.data.objects[1].location = rel_loc

#set attitude
bpy.data.objects[1].rotation_quaternion = rel_att

#location, rotation, and scale
#bpy.data.objects[1].matrix_world.decompose()

file_nname = input("please enter name and extension for file: ")
file_ppath = input("please enter entire save file path, use '/' instead of '\': ")

#render and save image

full_name = file_ppath+file_nname
bpy.context.scene.render.filepath = full_name
bpy.ops.render.render(write_still=True)

All credit to @Chebhou.

From above:

"Anyway, the moral of the story is you can't command things which are defined with keyframes from scripts, but you can with the Python console."


Fluid inflow looks like a "shower" - How do I make the inflow more "cohesive"? I'm working on a fluid simulation in blender 2.78a. (screenshot of issue below)

Inside of my fluid domain, I have a couple obstacles, an inflow and an outflow. The issue I'm having is that the fluid from the inflow seems to be spraying all over the place. I want the fluid to come in a more "cohesive" fashion, so that it goes into the "cup" more or less. (still have to tweak the inflow velocity).

With the current inflow velocities (y 1, z 1), the some of the fluids enter the cup while the rest misses or splashes off when I have my baking resolution at 67 (or whatever the default is). At that resolution, the fluid inflow was acceptable and relatively "cohesive".

When I increased the baking resolution (to 300), the "showering affect" became to appear.

How do I remove the "showering effect" (as shown in the image below) to make the inflow more cohesive?

Thanks!

I can think of two reasons, either the inflow object is the wrong shape or its inverted inside out.

Try to recalculate the normal's or switch to a different shape like a cylinder.

If you upload your .blend, I can make one with your specific example
https://blend-exchange.giantcowfilms.com/


Duplicate rotate vertices around obect origin? I have redesigned a repeated part of a larger object, and as a result, had to delete several instances of the "same" vertices. now, I can use SHIFT+D to make a dupe of the corrected vertex group, but I only get translation control, scale control or rotational control. And in rotational control only Cursor, View, Gimbal, Normal, Local and Global are available, yet the obvious ones of Cursor, Global, and Local only rotate around the same axis of the part:

However, I need to rotate around the little "orange dot" demarking the item's origin point.

There are 2 aspects to the definition of the rotation: its Orientation (the direction of the axis of rotation), and its Pivot (the location of the axis of rotation).
In the illustrated Adjust Last Operation panel, you are being offered only the Orientation. If you set the working Pivot to '3D Cursor' in the header, and, in Object mode, with your object selected, ShiftS > Cursor to Selected, the pivot should be on the object origin ('the orange dot'), and you should be good to go.
(You can bring up the Pivot options by hitting keyboard  . (period).)
This assumes one of the Orientation options you are being offered is OK. If it isn't, you may have to create a Custom Orientation for the rotation by checking the little '+' in the Header > Transform Orientation dropdown.
And here, there seems to be a bug in my recent 2.91. The panel does not offer you your Custom Orientation, along with the others.
It still works.. supposing I set my orientation from a face, then  Shift D R Z, the orientation will still be normal to the face, and  Shift D R Z Z will still revert to Global orientation.


How to save a denoised image in composting How do I save my denoised render in Blender's Composting tab?
Here's how I arrived at my problem...

Rendered an Image
Opened Composting
Added Denoise Node
Node worked perfectly
Attempted to save the Image
A soul-crushing defeat

Further Information
I had just rendered an image and it came out noisy, I then saved the image to my computer, so that I would have the noisy image in case anything happened.
I then decided that I wanted to do what any self-respecting human being would do, and denoise the image in Blender's 'Composting' work area.
I then added the 'Denoise' node in between my rendered image and the viewer. The image then became clear, thankfully.
However, I then searched around in vain for the 'Save Image' button.
This is where I ask you, as clear as I possibly can, "How on God's green earth do I save my now denoised image?"

Why is it so hard to just make things intuitive? Can we not have nice things? I love the software, but Christ.

Go to Image Editor ( The Paint Bucket icon )
Click on the Mountain Icon thingy ( See Below, far left ) and from the drop-down menu click on Viewer Node

Click on 'Image' then click Save As - it's near the Bucket Icon from before

Rejoice.


How to turn off viewport background When I change Viewport Shading to Rendered.
I got this background. How to turn it off?

Make sure "Scene World" is checked in the Viewport Shading options menu.


Armature not working correctly Hi how can I make this bone for each finger  move just that finger?

I used the old parenting method.

Your mesh appears to have backwards "normals". Flip the normals, then try the parenting method again with automatic weights. It should work!


Linux - Unable to set Blender to correct PULSEAUDIO Device I'm running Blender 2.76 on Mint Linux.
Normally when I output sound from a newly installed application, I am used to going into PulseAudio Control and selecting the correct audio device.
I am using Nvidia HMDI audio.  See the screenshot.  I have the option of selecting the correct audio device but when I click it, nothing happens.

I'm relatively new to Linux (1 month) and very excited to use Blender as a video editor, this issue is holding me back.

Any help would be greatly appreciated.

I resolved the issue by updating from 2.76 to 2.78 RC1 using the following 3 commands:
sudo add-apt-repository ppa:thomas-schiex/blender
sudo apt-get update
sudo apt-get install blender

This added SDL as an option under User Preferences > System > Audio.
I was then able to select the correct audio device in PulseAudio Volume Control (pavucontrol).

Cheers!


How to smooth shading on baked texture? I baked using full render setting since I have a few light sources. I have a rather low-poly arch, how do I smooth the shading on this WITHOUT increasing the # of polygons? I mean I could always just smooth it manually in photoshop but I assume there has to be a way in blender to do this?

As you can see the shading is very jagged and outlines each face.

I tried turning on smooth setting for shading via tools -> shading, however that removes ALL shadows, which is not what I want.

Here's what you can do:

Step o1: Set the shading to smooth.

Step o2: Add an Edge Split modifier and uncheck Edge Angle.

Step o3: Tab into Edit Mode, change selection mode to Edges, then select the edges you want to be sharp.

Step o4: Hit Ctrl + E to bring up the Edges menu and select Mark Sharp. [ The Edge Split modifier uses these marked edges ]

Step o5: And bake :]

Tip: You can add a Subdivision Surface modifier after the Edge Split modifier for added smoothness and disable it after the bake.


Order of buttons drawn not matching code order As you can see in the image Diffuse Color and Alpha are drawn before the material selector. But in the code the material selector is before Diffuse Color and Alpha.

What is the reason for that?

    if obj and obj.active_material:
        mat = obj.active_material

        if mat:
            layout.template_ID(obj, "active_material", new="material.new")
            row.prop(mat, "diffuse_color")
            row.prop(mat, "alpha")
        else:
            row.label('no active_material')
    else:
        layout.template_ID(obj, "active_material", new="material.new")

I actually like the result because after I add the material the added material options are drawn below the object options.

def draw(self, context):
    layout = self.layout

    obj = context.active_object

    if obj and obj.active_material:
        mat = obj.active_material
        if mat:
            layout.template_ID(obj, "active_material", new="material.new")
            row = layout.row()
            row.prop(mat, "diffuse_color")
            row.prop(mat, "alpha")
        else:
            row = layout.row()
            row.label('no active_material')
    else:
        layout.template_ID(obj, "active_material", new="material.new")

Sometimes you have to be a bit more accurate about where a row should be generated. In your case the row is declared ahead of the template_ID, so any further additions to row will be added to that location.

The take-away here is that the line number of the UI elements like props and operators is less important than the line numbers on which the layout elements like row, col and box are first instanced. As with all good programming, variable names are important because they allow you to organize your thoughts.

While this is possible, it's asking for confusion:

def draw(self, context):
    layout = self.layout

    obj = context.object

    row1 = layout.row()
    row2 = layout.row()
    row3 = layout.row()

    # will display at the bottom
    row3.operator("mesh.primitive_cube_add")

    # will display in the middle
    row2.label(text="Active object is: " + obj.name)

    # will display on top
    row1.label(text="Hello world!", icon='WORLD_DATA')

The UI cookbook shows a worthwhile convention to follow, use extra identifiable postfixing for layout element names, row1, row2, row3 . etc. While reusing the variable row over and over again is handy, it tends to cause unnecessary confusion with more complex UI definitions.


How to stretch a material without changing shape I am completely new to blender and I am trying to make a 3d brick wall. Ive tried various ways but I could not make it realistic(I tried uw wrapping method but still didnt look good). Finally I found a way, which was to put the material(I found online) on a plane and then joined it on the 3d object. My problem is that when I try to scale it sideways, the material stretches as well. How do I strech it without making it stretch the material as well?
This is how it is before stretching:
and This is how it is when I scale it sideways

Please tell me how to solve this, I have been stuck on this for a week. I apologise if I have made any mistake, I am new to blender, please go easy on me

-Go into edit mode
-Press GG to Edge Slide
-On bottom menu Toggle "Correct UVs"
-Resize using GG without breaking textures (hold alt to extend outside the borders)


Reset Normals after Data Transfer? I set all the normals on the leaves of the tree to point upward using Data Transfer. Unfortunately I forgot to deselect the trunk when I applied the Data Tranfer. There has to be some way to reset the normals on the trunk:

Edit: File upload. Not the original file because I can't give away hundreds of trees for free..

Recalculate Normals doesn't do the trick.

Seperate the trunk from the leaves as a new object. On the trunk clear Custom Split Normals Data under Mesh/geometry data. Join the meshes.

Custom normals are per-split-vertex normals and not face or vertex normals. Tools that deal with those will not work on per-split-vertex normals. Information about these normals are stored on a seperate data layer that usually doesn't exist on a mesh.

In Maya there is a possibility to "lock" normals. That is not possible to do in blender (yet?) but the current system seems to be solid and predictable in its behaviour.


How to know an edge length only in Top Orthographic? I want to know an edge length ONLY in Top Orthographic (like 2D), and, if it's possible I want to know how to change this length. Help me.

I don't want to know the length like this:

Script version

Would IMO be a bit OTT to dupe n scale just to get the ortho projection length of an edge.  Here is a little test script that projects the edge globally. ie taking into account object transform, onto the XY plane and returns its length

Select an edge in edit mode, run script, prints the edges global projected length to console. (Unmodified, undeformed)

Test run on default cone. Shows radial lengths as 1 as expected

import bpy
import bmesh
from mathutils import Vector

context = bpy.context
ob = context.edit_object
mw = ob.matrix_world
me = ob.data
bm = bmesh.from_edit_mesh(me)
# define plane
plane_no = Vector((0, 0, 1))  # plane normal
plane_co = Vector() # (0, 0, 0) point on plane

e = bm.select_history.active
if isinstance(e, bmesh.types.BMEdge):
    def proj(v):
        return v - (v - plane_co).dot(plane_no) * plane_no
    v1, v2 = [proj(mw @ v.co) for v in e.verts]
    print((v1 - v2).length)

Note could easily extend this to use the 3d view as defining the plane, and overlay the lengths over edges.


Problems with Paste X-flipped pose I'm trying to copy the first frame to the last frame by ctrl c and shift ctrl v but it doesn't work well.. how can I fix it?

Your LowerLeg.R IK Pole Angle is bad, it should be 0:

Also, move the knees a bit forwards so that Blender knows in what direction they are supposed to bend:

When you'll have done that you'll need to redo the poses.


Modifier Keys using multiple windows of the same file I have split my layout into two windows using Window > Duplicate Window.

I am working in window1, then want to pan the view in window2. I pan the view with the default Shift MMB. Just as window2 gets focus due to  MMB the Shift key doesn't register and I end up rotating the view.

How can I force modifier keys to be registered even if I just switched windows?Alternatively, is there a better way using Blender fullscreen on two monitors?

One way is to use a single Blender window stretched over both monitors. This way there is no need to deal with window focus and your OS can function the same as before. The only downside is when other people open the .blend on single monitor setup with Keep UI setting on.

The other way is to change how Windows give focus to windows. You need to give a window focus when a mouse enters it:

Win7 > Control Panel > Ease of Access > Change How Your Mouse Works (or just search for "mouse works" in search field)

Now the window will get focus when mouse enters it and ShiftMMB will work as it should.

One downside is that every window you enter with mouse will also be raised to the front, which I personally don't like. So this registry hack solves that:

Run regedit (Win+R, regedit, OK)
Open up the key HKEY_CURRENT_USER\Control Panel\Desktop
subtract 40 bits from the first hex value of the REG_BINARY UserPreferencesMask.  That is, if the current value is df 3e 03 80 12 00 00 00, change the df to 9f (df - 40 = 9f).

To make the focus a little slower, so that pop-up windows are useable, you also want to change the focus timing. Change the REG_DWORD ActiveWindTrkTimeout (also in HKEY_CURRENT_USER\Control Panel\Desktop) to the number of milliseconds to wait before focus shifts to the window under the mouse.  Value of 0x00000080 (128ms) is nice, you might like 200ms (c8), or some faster or slower value.

These registry hacks require a log off/on to take effect.

The other downside is that both mouse and keyboard get focus when you enter a window with cursor. So typing in a window won't work when your cursor gets out of that window. I didn't find a solution other than the next way below.

The ultimate way (if you are familiar with Linux x-mouse behaviour) is a 3rd party app to do all that you want: X-mouse Gizmo. There is no install necessary and it is open-source, should also work on Win 10.


Growing Grass from Color Ramp? I have added a plane with a color-ramp as texture and added a particle system (grass) as seen below.

what I need to do is make the grass grow from the green area, not the blue area and not from faces or vertex

Is there a way to do that?

thanks.

You need to bake a copy of the node in a grayscale (where the value correspondes to the density of your grass), and use it in your particles' textures with the option to influence the density.


Can't get boolean modifier to work? I'm trying to use the boolean modifier to "etch" the logo into a block, but it is giving the error "Cannot execute boolean operation".

The file can be found here http://www.pasteall.org/blend/43089

I would greatly appreciate any assistance as I'm practically brand new to blender.

Thank you in advance!

Select logo go to edit mode press W and Remove doubles.

Then set the Boolean modifier to Difference.


Rigify Button missing (v 2.77) Used Rigify to rig my model and like it a lot.  However, the Rigify Button/Generate does not appear in any mode, including Object mode so that's not the issue.

Rigify is an Add-on.

It has to be enabled. Open the system preferences

CtrlAltU

And enable Rigify

If you want the addon to be enabled permanently press on the Save User Settings.


Best way to modify this particular model What My Model Currently Is

Hello Everyone! I am an amateur blender user and I mistakenly added the legs to far forward on my model.

I need to reposition the legs further back, on the y axis of the body of my model.
I figured there are two ways to do this. Either I detach the legs and move them back or I cutt the butt off and make a new one.

The "Body" of the model is a sphere that has been extruded on the Y axis.
The "Legs" are a custom extrusion.

What would be the best way to approach this and what tools should I use to accomplish this?

Thank you for being an awesome community and helping on your free time,

Drew :)

What The Model Is Now

With help from the community I was able to produce this. A nice mesh with good topology. I realize this model is a little bit more square around the body, but Im starting to like it :)

I don't think your topology is good: too many edge loops, some weird ngons, a sphere to make the butt... you should probably try to make something simpler, it will help if you need to to make any modification,

As BatFinger said, start from a mirrored cube, add edge loops when needed, and extrude the different limbs

Here's a quick try:


How to make two armature actions into one action? I have 2 animations one for each arm and I can't go back because I made them separate from the beginning. Help?

Armatures can be joined together using Ctrl-J. You can also copy keyframes between actions using Key > Copy Keyframes. So you could copy the keyframes from one arm, join it to the other, and paste the keyframes to the other's action.


How to model a jagged cave? How I recreate/model a cave that looks exactly like this (?):

I have tried using particle systems but it ended up looking ugly as the particles overlapped way too much and could not be given an individual, unique offset as seen in the image.Am I missing something regarding the particles?
Also, I'm open to any other suggestion to go about this.

Since the question was on particles here's my take on it.

Start with a cylinder.

Subdivide it a number of times but make it somehow irregular with a fractal:

Then create some cuboid object (I put it on a different layer so that is out of the way...)

Then on the cylinder create a particle system.

Make the start and end frame 1 (so that all of particles are present on frame 1)

Use the cuboid object as the render object.

For rotation select the axis that makes sense depending on how your object is placed (in this case, the object X axis works for me), and set the random rotation to Zero.

Then give the render object some variation on size.

Optionally you can disable the emitter so that only the cuboids show on the render and not the original cylinder.

Giving the particles a bit of randomness might make them more interesting.


Need a way to do a "loop cut" on a triangle fan Need a way to do a loopcut- ish thingy on the blue line

One way is to use vertex bevel (⎈ Ctrl⇧ ShiftB):

Once the triangle fan is converted to quads you can add loopcuts. In the gif I converted the ngon resulting from the bevel to a triangle fan with Poke (⎇ AltP).

As an alternative to bevel, you might also try Inset (I):


Is it possible to make a plane out of meta objects? Yes, I know, Add > Metaball > Plane.

But how can I make a large plane?

Scaling it affects all meta objects in the scene.
I thought of connecting a bunch of meta planes together, however this isn't a perfect solution as it's a little bumpy (and if you need a really big plane it won't help your framerate)

How can I do this?

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

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


How to compile Blender from source on OSX? As it says on the can, How to compile Blender from source on OSX?

Jens Werwiebe from #blendercoders on the IRC channel kindly took me through the process, so I will post it up while it is still fresh in my memory.

The Blender documentation page https://wiki.blender.org/wiki/Building_Blender/Mac contains instructions on how you can compile Blender for a Mac machine. Note that the instructions below might not be as accurate anymore since lots of things might have changed.

But they don't quite work. When you get to the line "make", make fails, because the CLANG compiler that comes with XCode can't process "openMP" library.

Instead you need to use a specially built version of CLANG that DOES support openMP. (openMP pertains to threading on multiprocessor architectures, if you're curious. It is bad of Apple that their CLANG compilers behind with this.)

As you can see from that page, you pull the blender source code from git, and a bunch of already compiled binaries from SVN.

piBookAir:darwin-9.x.universal pi$ pwd
/Users/pi/Dev/Blender/blender-build/lib/darwin-9.x.universal

piBookAir:darwin-9.x.universal pi$ ls
README      freetype    opencollada osl     sdl
boost       gettext     opencolorio png     sndfile
clang-omp   jpeg        openexr     python      tiff
ffmpeg      llvm        openimageio release
fftw3       openal      openmp      samplerate

As you can see from the listing, it contains this special clang-omp

So you could probably make sure that that is getting found in your path before the existing CLANG, and it will work.

I haven't tried, because Jens showed me how to get it working using SCons.

SCons and CMake are two different ways of automating the process of setting up the build. if you're familiar with AutoTools, you can think of CMake as being AutoTools brought up to date in a way that works nicely on Windows systems also. And SCons does the same thing but using Python.

Now the big difference is that CMake is an actual program you have to download and install on your system, whereas SCons is just a Python script.

To me that makes SCons a clear winner, and it is indeed painless to do it this way.

So, create /pathto/blender-build/blender/user-config.py as follows:

CC = '../lib/darwin-9.x.universal/clang-omp/bin/clang'
CXX = '../lib/darwin-9.x.universal/clang-omp/bin/clang++'

And then run:

sysctl hw.logicalcpu

to find out how many CPUs new machine has (my MacBook Air has 4, a modern MacBook Pro has 12)

Now:

cd /pathto/blender-build/blender
python scons/scons.py -j4

And grab a cup of tea (or 4 if you forgot the -j4 parameter)

Now you should have:

/pathto/blender-build/install/darwin/blender.app


Is it possible to disable menu items in custom menus? I want to disable and enable menu items (layout.operator) in my custom menu, the disabled ones should be displayed greyed. I managed to disable the whole menu with layout.enabled = False, but I failed to disable a single menu item.

Something similar what I want to achieve can be seen in the "Ui Menu" Python template with the entry "Hello world!", but this is a layout.label and not a layout.operator. Before I use this approach as workaround I'd like to know if there is a more easy way to dis- or enable single menu items.

As already said by pink vertex and Jerryno, a poll() classmethod should be added to the operator you add to the custom menu. The disabling (graying out) will be managed by Blender automatically:

import bpy

class SimpleOperator(bpy.types.Operator):
    bl_label = "Simple Operator"
    bl_idname = "wm.simple_operator"

    @classmethod
    def poll(cls, context):
        return len(context.selected_objects) % 2 == 0

    def execute(self, context):
        self.report({'INFO'}, "Simple Operator executed.")
        return {'FINISHED'}

class SimpleOperator2(bpy.types.Operator):
    bl_label = "Simple Operator 2"
    bl_idname = "wm.simple_operator2"

    @classmethod
    def poll(cls, context):
        return (context.object is not None and
                context.object.type == 'CAMERA')

    def execute(self, context):
        self.report({'INFO'}, "Simple Operator 2 executed.")
        return {'FINISHED'}

class SimpleCustomMenu(bpy.types.Menu):
    bl_label = "Simple Custom Menu"
    bl_idname = "OBJECT_MT_simple_custom_menu"

    def draw(self, context):
        layout = self.layout

        layout.label("Enabled, if even number of objects selected", icon='INFO')
        layout.operator("wm.simple_operator")
        layout.separator()
        layout.label("Enabled, if active object is a camera", icon='INFO')
        layout.operator("wm.simple_operator2")

def register():
    bpy.utils.register_module(__name__)

def unregister():
    bpy.utils.unregister_module(__name__)

if __name__ == "__main__":
    register()

    # The menu can also be called from scripts
    bpy.ops.wm.call_menu(name=SimpleCustomMenu.bl_idname)


UV project from view: Can foreground items block projected image from proceeding? Imagine a scene with a camera facing a background plane, with suzanne in between partially obscuring some of the background plane. I'd like to do a 'project from view' from the perspective of the camera and see a suzanne shaped hole in whatever image was projected onto the background.
Both meshes are a single object.

As I have my scene set up at the moment, the image being projected hits both the monkey and background.

If I understand correctly, what you are looking for is to use an object as a mask. There are many ways to do it. Here are some:

In cycles, you can use holdout as a material on the monkey to get you what you want.

Rendered image

Also if you use a material index on the monkey's material you can substract the object from the background using the compositor.

The plane and the monkey have different materials.

On the monkey's material change the pass index to 1.

Enable material index on your render layers.

In the compositor use the IndexMA as alpha for your image.

To get this:

In Blender internal you can set the material of the monkey to be used as mask.


.png to .svg within blender I would like to convert a given image (say a binary image) into a .svg (or the outline into a path). I figured out that this could be accomplished with Inkscape. However, I need this to be a part of my new addon, meaning it should rely only on blender or python.
Any ideas?

Directly from Blender only using python can be done via pypotrace. This is a python package that binds to potrace. potrace is also used by InkScape for converting images to Paths. You will need to include potrace and pypotrace in your add-on.

The result of the trace is a path. You will need to develop to you likings how to convert this to an SVG. But as SVG is just an XML file that will not be that hard.


How to subtract cylinder from a cube, add bevel and make it all smooth So I have this kind of cube and I need to subtract half of the cylinder from it. The cylinder is centered in the z-axis. The boolean operation seems to work fine but on top of that I want to bevel all my edges of the cube and smooth the semi-hole I just carved before.
Eveything I try results in glitches in the mesh.
What am I doing wrong?
I'm using blender 2.91.0 beta

I'd recommend starting with autosmooth along with a weighted normals modifier to help the result after
a bevel modifier.
Here is my cube's modifier stack:

Here is the result:


How to keep UV set position while moving an object? I would like to keep a UVset position in the world coordinates while moving my object.

So the texture have to stay in place in the world while the model moves.

How do I make this?

Thank you
Chris

You can map your texture using another object. If you move the one with the material, the texture will stay still. If you move the 2nd object, the texture will move.


"Cannot execute boolean operation" As you can see from my image, I am trying to subtract the mesh "Subtract" from the mesh "Cube"

However blender is giving me the error "Cannot execute boolean operation"

What is causing this problem?

It looks like blender has trouble performing boolean operation on meshes with large ngons. There is a very easy workaround for this problem.

Select the face that will hold the window

This single polygon has 8 vertices, more than 4 vertices is considered an ngon

Triangulate it by pressing Ctrl + T, this will make many triangles out of the big ngon
(optional step) With the polygons still selected, you can reduce the number of triangles by converting tris to quads by pressing Alt + J.

Final Result


Wrap L-System/Fractals around a Sphere How would I take an L-System structure similar to this image

And wrap that structure seamlessly around a sphere like this:

It has to be a legitimate L-system, not faked or similar. Thank you.

This is an approach using Alessandro Zomparelli's Tissue Add-on, rather than Animation Nodes, roughly following his examples presented here and here.

Create a Unit Plane, with its own origin at its minimum XY, placed at the World 0.
Add a single vertex to the object at its center.
Place the 3D cursor at the center of the sphere you wish to cover, and set the transformation pivot to it.
Duplicate the plane & vertex, using only rotations about the 3D cursor to place it. (Planes will be the growth nodes) - E extrude the first central vertex and snap to other vertices in the now multi-plane object to create branches.
AltM merge vertices by proximity, and delete planes you do not wish to be growth nodes.
When done, this is your Base object.  Alt D make an instance of it to be the Component.

(The physical sphere is just there for illustration)

In the Tissue panel, hit 'Tessellate'
In the Tessalations Data region, 'Tissue' panel, you will be able to adjust the settings:

If the coordinates have been set correctly, you should wind up with something like the left example below. Delete faces and remove doubles again to get the one on the right.

Which gives you a spherical L-system topology to treat as you wish.


How to edit a shapekeys lerp? Made a shape key to make my character get taller, it has a negative value (so they can be shorter as well). The animations look fine when the shape key causes the body to get taller but not when they get shorter.

I just need to move a couple verts on the -1 value on the shape key but If I go into edit mode it only allows me to edit the +1.

Is there a way to edit the -1 shape key's verticals? I just need my armature bone to be at the correct level for the dudes elbow when it gets shorter.

This is a dupe question cause the first time it went unanswered

Shape keys, Relative or Absolute, may only be edited at 1. That is their fixed point of reference. In the case of Relative shape keys, what is stored is the difference between that fixed point of reference and whatever is in the 'Relative To' field of the key.

Relative interpolations are linear. Setting a value outside 0-1 is calling for a linear extrapolation, beyond 0-1, of the imaginary straight lines in object space down which vertices travel between value 0 and value 1.

Using 'New Shape from Mix' in the menu under the little down chevron on the right of the keys list, you can take your -1 extrapolation of the 'Tall' shape key and make it into a key in its own right; say.. 'Short'.

You can now edit the Short key.

How you deal with the keys after that is up to you.. if you want to return to just 2 keys, you could, for instance, delete the Basis, and have a single relative key from 0=Tall to 1=Short, but beware, the whole journey (the new straight line) will not pass through what was 'Basis'before.

You may go for Absolute keys, perhaps re-ordering them. In that case 'Tall', 'Basis'and 'Short' will be put in a single continuum, and you will have to alter only one 'Evaluation Time' value to pass through all three reference shapes, (with a choice of interpolation methods)


Shape appears different in Edit Mode and Object Mode So this is my first model. And the shape appears different in Edit Mode and Object Mode.

Can someone please explain me why it is piking out like that?

it looks like one misplaced vertex. Try to fix it or use bisect at the modifier.


add driver for a shapekey via python? how can i add a driver for a shapekey via python?

shape_keys.animation_data.driver_button_add(True)

or

obj=bpy.context.active_object
obj.driver_add('key_blocks["Eye_left"].value')

The Problem is that it can't find the shape key and shape keys are getting their driver with a different method; so I'm a bit confused how it can be added by python correctly.
Sorry I'm new to Python. Thanks for your help!

import bpy

obj = bpy.context.active_object
driver = obj.data.shape_keys.key_blocks['Key 1'].driver_add("value")


Problem with particle system in blender 2.9 I have water droplets raining down from my shower head and when I look at them in Viewport they start at the shower head, but when I render them it looks like that. Does anyone know what could be the problem here?

Are you using any kind of material based displacement on your emitter? If so, that could case the object to be rendert at a different position then in the viewport.


Wireframe and vertices have disappeared New to Blender, no idea what hotkey I've pushed. The wireframe/vertices in Edit Mode have all disappeared. Effectively, Object Mode and Edit Mode are now look identical. If I move to "Modelling", they're all available. Additionally, when I select an object in Object Mode, the orange border that appears is now no longer there.
I'm assuming there's some way to hide/unhide or a preference of some description but I've got no idea how to find it.

You probably turned off overlays. See below:


Why isn't 'Loop selection' working if object only has edges? Here are the steps:

Create a cube: SHIFT+A > Mesh > Cube
Enter Edit mode: TAB
Unselect All: A
Go into edge select mode : CTRL+TAB > Edge

At this stage, just a side note: I will not be able to select a loop if I ALT+RMB on any edge... For my understanding, the 4 edges of the top face of the cube are a loop. In the below screenshot, I couldn't select those 4 edges with ALT+RMB.

Add a loop cut: CTRL+R
Change to face selection: CTRL+TAB >Face
Select All : A
Delete all faces (only) : X > Only faces
Change to edge selection: CTRL+TAB > Edge
Try to select the previously inserted loop with ALT+RMB

=>It will not works... It will select all the edges

My question is: is it possible to select loop on object with no face?

For my understanding, the 4 edges of the top face of the cube are a loop.

Sure, they form a loop... but so do each of the other faces of the cube.

Each corner of the cube is a pole, where the edge flow can fork in either of three directions. So while it may be obvious to you which four edges you want to select, Blender has no way of knowing your intentions.


Transforming vertices, edges or faces affects surrounding areas I can't transform vertices, edges or faces without affecting the surrounding areas as well.

You have accidentally enabled proportional editing. It can be disabled by clicking on the button shown in the screenshot below or toggled by pressing the O shortcut when using the default keymap.