text:
how to playblast camera in Blender?
Hello I need to know how to make a "playblast" in Blender, (I.E.: for review by my director). I'm almost sure it will be named differently in Blender, something more sensible like "preview render" or "quickest basic render" or "screen based capture" or something.
  In any case I need a way to preview my animation and camera work in it's proper timing before going through to the final render. And I'd also like a way that can render a video with the skeleton visible etc. that can be sent to my director elsewhere


text:
Coverting an appended object into a linked object?
"Is it possible to convert a previously appended object into a linked object. So as to retain the animation on the appended object after converting or replacing it with the linked proxy version?"

I'd say it's much easier to append this object into another file, save it, delete it in the main scene and link it from that saved file.

That would make sense as a pure method to convert an appended rig etc. into a linked version of the rig etc.. However I'm dealing with a scenario what I desire to link the appended object to it's original which it is currently only appended from, This way I can update the rig with the weight painted mesh etc.. Will answer one achieve this?

source: Stack Exchange

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/

sort: votes


text:
Is There any way to convert a completed rig into a re-generatable python file?
Currently Rigify allows for the regeneration of custom designed metarigs (Encode Metarig (or Sample) to Python). This is a GREAT time saver, but There seems to be no way as of yet to do the same with all the constraints to make the newly added metarigs/samples to work.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/3.0/


text:
Can anyone tell me why my Blender Python classes are not registering?
I feel this is more of a personal question but I don't understand why Blender is not registering my class as an operation, after I corrected some spelling and syntax errors. My code follows. I only just realized my custom operations needed to be suffixed with brackets () . Once I corrected this then Blender started throwing me errors as it finally registered it needed to do something with the operations, I suppose. I corrected what I can but am unclear on what I'm missing for the classes which are not registering.  It's worth noting I'm coding this in Blender 2.79, for now but may eventually port this over to Blender 2.9. If there are any errors you can anticipate from that porting at a later date I'd appreciate the heads up. Thank You.
import bpy
import math

from bpy import data as D
from bpy import context as C
from mathutils import *
from math import *

from bpy.props import StringProperty

import imp

# This script is designed to encorporate all the basic classes created by/via James Joseph Green of GreenStreamsStudio into a single importable script making the classes callable in other scripts.

class GreenDampedTrackPreCorrection_Nose(bpy.types.Operator):
    bl_idname= "rig.green_prest_damptr_nosecor"
    bl_label = "PreStr_DampNoseCor_Green"
    # Okay I forgot to go through correcting the "Damped Track" Constraints Prior to resetting the "Stretch To" Constraints.
    # To correct this without resetting ALL the code line #s create the Damp Track corrective proceedures in a seperate peice of code to be imported and called by it's classes.
    # These class proceedures MUST be run prior to the "Stretch To"'Resets'.
    # Place Damp Track Corrective Classes' call codes in the "extra code insertion lines" provided (#s 41-46)
    #
    def execute(self, context):
        #
        #Correcting Damped Track proceedures for nose.
        bpy.context.object.pose.bones['DEF-nose'].constraints['Damped Track'].target = bpy.data.objects['rig']
        bpy.context.object.pose.bones['DEF-nose'].constraints['Damped Track'].subtarget = "nose.008"
        # Okay from here on out let it be understood that the main "target" of any of the "Automatically" created constraints which need to be adjusted unless otherwise stated are all already targeted to "rig".
        bpy.context.object.pose.bones['DEF-nose.007'].constraints['Damped Track'].subtarget = "nose.007"
        bpy.context.object.pose.bones['DEF-nose.006'].constraints['Damped Track'].subtarget = 'nose.006'
        bpy.context.object.pose.bones['DEF-nose.005'].constraints['Damped Track'].subtarget = 'nose.001'
        return {'FINISHED'}

class GreenArmatureStretchToReset(bpy.types.Operator):
    bl_idname = "rig.green_constraint_reset_stretchto"
    bl_label = "ResetStretchGreen"
    #cow = green_constraint_reset_stretchto
    # note: the above line is a new custom convinience variable, added to the dictionary. It will be used extensively to save page space, and to remind us to have fun. :)
    #
    def execute (self, context):
        bpy.ops.object.mode_set(mode='POSE')
        c=bpy.context.copy()  # copy the context returns dic.
        # add constraint to the context dictionary
        c["constraint"] = bpy.context.active_pose_bone.constraints['Stretch To']
        # override context by passing dic as first argument
        bpy.ops.constraint.stretchto_reset(c, constraint="Stretch To", owner='BONE')
        return {'FINISHED'}
        # Execute in Pose Mode on desired rig.

class GreenCowConvenienceReset(bpy.types.Operator):
    bl_idname = "rig.cow"
    bl_label = "ResetStretchGreenDuplicate"
    #cow = green_constraint_reset_stretchto
    # note: this class is a duplicate of the above class GreenArmatureStretchToReset in leu of a working custom convenience variable. It will be used extensively to save page space, and to remind us to have fun. :)
    #
    def execute (self, context):
        bpy.ops.object.mode_set(mode='POSE')
        c = bpy.context.copy()
        c["constraint"] = bpy.context.active_pose_bone.constraints['Stretch To']
        bpy.ops.constraint.stretchto_reset(c, constraint="Stretch To", owner='BONE')
        return{'FINISHED'}

class GreenConfirmMode(bpy.types.Operator):
    bl_idname = "rig.green_confirm_mode"
    bl_label = "ConfirmModeGreen"
    #
    def execute (self, context):
        # Confirming Operating Mode + ProperRig # shunt lines 103 - 109 into a class with call bpy.ops.rig.green_confirm_mode
        bpy.ops.object.mode_set(mode='OBJECT')
        bpy.ops.object.select_all(action='DESELECT')
        bpy.context.scene.objects.active = bpy.data.objects['rig']
        bpy.data.objects['rig'].select = True
        bpy.ops.object.mode_set(mode='POSE')
        bpy.ops.pose.select_all(action='DESELECT')
        return {'FINISHED'}

class GreenTakRigMirrorConstraints(bpy.types.Operator):
    bl_idname = "rig.greentak_constraint_mirror_universal"
    bl_label = "MirrorConstraintsTakGreen"
    #
    def execute (self, context):
        #import bpy
        context = bpy.context
        scene = context.scene
        MyArmature = bpy.data.objects["rig"]
        bpy.ops.object.mode_set(mode='OBJECT')
        bpy.ops.object.select_all(action='DESELECT')
        MyArmature.select = True
        bpy.context.scene.objects.active = MyArmature
        bpy.ops.object.posemode_toggle()
        bpy.ops.pose.select_all(action='SELECT')
        all_bones = bpy.context.selected_pose_bones
        for bone in all_bones:
            bpy.ops.pose.select_all(action='DESELECT')
            if ".L" in bone.name:
                boneL = MyArmature.data.bones[bone.name]
                boneR = MyArmature.data.bones[bone.name.replace('.L','.R')]
                boneR.select = True
                boneL.select = True
                MyArmature.data.bones.active = boneL
                if len(MyArmature.pose.bones[boneL.name].constraints) !=0:
                    bpy.ops.object.constraints_copy()
                    bpy.ops.pose.constraints_copy()
                    for con in MyArmature.pose.bones[boneR.name].constraints:
                        con.subtarget = con.subtarget.replace('.L','.R')

class CarrieStyleFaceConstraints(bpy.types.Operator):
    bl_idname = "rig.carrie_style_face_constraint_fix"
    bl_label = "Carrie Face Constraints"
    bpy.ops.object.mode_set(mode='POSE')
    #bpy.ops.rig.green_confirm_mode()# This line is commented out as functions need to be placed AFTER the def[inition] of a class. Otherwise this custom operator causes issues, especially if it's not working.
    #
    def execute (self, context):
        # Execute in PoseMode on desired rig
        # Actual Code Version 1
        ''' Dealing with original bones and subdivided facial only (light purple, red, dark green, and indirectly light green)'''
        # Face
        # Nose
        # Note colours of text will differ in the console.
        bpy.ops.rig.green_confirm_mode# For all intensive purposes please make sure this Operator class GreenConfirmMode has been created prior to running the full script here.
        bpy.data.armatures['rig'].bones.active = bpy.data.armatures['rig'].bones['DEF-nose']
        # Correct Pre-assigned Constraints, Reset Stretch lines
        # In General Concept (Pre Psuado Code)# Page 2 begins.
        # Due to the loose default 'aim to' controler "nose.005"
        # For each new "DEF-nose.0&&" starting @ DEF-nose.005
        # reparent the "DEF-nose." bones the "nose.0&&" bones numbered 1 higher than the given bone,
        # while constraining the given bone to the nose.0&& bone corresponding to it's now .0&& # .
        # Exceptions present in "DEF-nose" to "nose.008" and in "DEF-nose.005" to "nose.001".
        #
        # Changing Modes
        bpy.ops.object.mode_set(mode='POSE')
        # ReParenting
        bpy.ops.pose.select_all(action="DESELECT")
        ## Select the "child to be" first.
        bpy.data.armatures['rig'].bones['DEF-nose.007'].select = True
        bpy.data.armatures['rig'].bones.active = bpy.data.armatures['rig'].bones['nose.008']
        bpy.ops.object.posemode_toggle()
        bpy.ops.object.editmode_toggle()
        bpy.ops.armature.parent_set(type='OFFSET')# Page 3 begins.
        bpy.ops.object.editmode_toggle()
        bpy.ops.object.posemode_toggle()
        # Continued same task alternate approach #1
        """ Etc. Etc.. The rest of the actual script functions
            are not needed for the sake of troubleshooting.
            It is enough to know that the prior classes
            are used within THIS class.
        """
        return{'FINISHED'}

####

def register():
    bpy.utils.register_class(GreenDampedTrackPreCorrection_Nose)
    bpy.utils.register_class(GreenArmatureStretchToReset)
    bpy.utils.register_class(GreenCowConvenienceReset)
    bpy.utils.register_class(GreenConfirmMode)
    bpy.utils.register_class(GreenTakRigMirrorConstraints)

def unregister():
    bpy.utils.unregister_class(GreenDampedTrackPreCorrection_Nose)
    bpy.utils.unregister_class(GreenArmatureStretchToReset)
    bpy.utils.unregister_class(GreenCowConvenienceReset)
    bpy.utils.unregister_class(GreenConfirmMode)
    bpy.utils.unregister_class(GreenTakRigMirrorConstraints)

def register():
    bpy.utils.register_class(GreenArmatureStretchToReset)
    bpy.utils.register_class(GreenCowConvenienceReset)
    bpy.utils.register_class(CarrieStyleFaceConstraints)

def unregister():
    bpy.utils.unregister_class(CarrieStyleFaceConstraints)
    bpy.utils.unregister_class(GreenCowConvenienceReset)
    bpy.utils.unregister_class(GreenArmatureStretchToReset)

if __name__ == "__main__":
    register()

You realize you define register twice, the second one overwrites the first, and the three classes you see are the three in the second register function?

@scurest        No, I had not realized that the 2nd register instance (defining register twice) would erase classes it had already defined. I Just thought I could group similar classes together this way. Deliberately defined register the 2nd time so as to achieve this "grouping" thought the 2nd register defining would only effect classes already in the 1st definition. Thank You for your comment, as I had not realized the consequences of "sequences", I have now corrected the issue as per your comment and the code works fine now. If you post your comment as an answer I will accept your answer.

Here is what the corrected code looks like: https://www.dropbox.com/s/o0i04tg6wty2ca9/Scripted%20Proceedures%20Carried-Out.txt?dl=0     And here is the results confirmed to work in Blender:      https://www.dropbox.com/s/oc6pfbuxru079o5/ClassRegistryIssuesRepaired_JJGreen_scurest.PNG?dl=0     Again Thanks.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Creating custom dictionary for use within an addon when dictionary items are created from actions within 1 class, so they can be used in another class
I've been working on an addon for my own personal use to streamline my work possesses while augmenting rigs etc..
My general work process is to create a menu with buttons to breakup larger tasks into steps, such as selecting and duplicating large selections of a rig for renaming later on, so as to allow for check points.
The problem I'm running into is that in my understanding if I create a custom variable within a class that said custom variable only remains valid for use within the given class and needs to be recreated in any other parent or sibling level class the variable is to be used. How do I shunt my created variables into a "public access" dictionary at the parent or sibling level so I can use the same custom variables created in one class (ClassB) within another class (ClassC) without re-contextualizing the initially created variable?
For instance:
One of my classes selects all the main finger control bones and the main thumb control bones on both sides of the body (button A runs ClassA).  ---  I break the code there to allow for any needed manual correction to the selection due to any unforeseen changes, such as added or removed fingers or feathers in future rigs.
Then I use another class (ClassB) to create a custom variable for the selected bones (I.E.: bpy.obj.pose.bones.selected_bones = nameOriginals)
Now that only the original desired bones have been added to the variable, I press the next button in my menu (ClassC) and toggle into edit mode and duplicate the selected bones. Since the creation of the duplicates automatically deselects the original bones while having all the duplicated bones selected in isolation, I now toggle to pose mode & create a custom variable to select only these bones again later. (I.E.: bpy.obj.pose.bones.selected_bones = nameDupliMCH) Using this custom variable I rename the duplicated bones removing the .001 etc. and replacing it with my desired suffix. and move nameDulpiMCH to the MCH bone layer.
Finally after confirming that all worked, I need to re-parent the Duplicate bones to their corresponding Originals (ClassD). To do that I need to be able to select "nameOriginals" as active. However, with nameOriginals being only named/available in ClassB and re-selection to recreate the variable now too complicated due to the duplicates, I don't know how to proceed.

can you keep an instance of ClassB around so it's still reachable from ClassD?  Then you could create a list of "nameOriginals" in the ClassB instance and then query it in ClassD.  Worst case you could make "nameOriginals" a class attribute I suppose.

It sounds like you could be onto something @MartyFouts, However at the moment with my limited Blender Python coding knowledge, this is the 1st I'm hearing of instancing a code. And If I knew how running the query would seem to work. I've seen class attributes before but I didn't really know how to use them. For the record, my biggest problem in bpy is not with problem solving, but rather with the syntax and proper methods/names for methods. Any help on that front is appreciated, as without it I don't even know where to look.

all_licenses: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/


text:
Making own layout, Toggling through multiple cameras in a scene
I need to make a layout so I can see individual parts of my scene all at once for editing purposes.
Sort of like my own quad-view; therefore it's not animated and is unlike the solution in  "https://blender.stackexchange.com/questions/3502/how-can-i-make-a-camera-the-active-one" ).
I could manually move my viewing angle in each viewport into place. However, I discovered the angle in veiwports may all reset when the active camera is changed. So I've placed a new camera objects in the locations I want them (one for editing with, one as the render camera, and one aimed at my custom facial rig and IK/FK UI).
If I add more cameras how can I temporarily toggle through the cameras for quick referance? You know, rotate through the view from each camera but only in one specific "layout window" without changing the active camera in all viewports?
Note: I work in both Blender 2.79 and 2.9 series and would like the answer for both versions please.

Does this answer your question? What is the sense of utilising Local Camera

Use Local Camera
Ther's a feature called Local Camera that allows you to specify a camera per viewport.
You can find it in the N bar under view. Just specify the camera for each viewport.

To enable the feature in 2.79 you must disable the  lock local camera and layers toggle in the header (see cursor position below).

Great, I knew that at one point but had long since forgotten. Thank you. Since you doe seem to know what you are doing I wonder if you have a solution to the latter half of my question as well. i.e.: Is there a way of rotating through existing camera angles for view purposes only, not resetting the active camera? I was able to do this once using a keyboard shortcut, but can't remember what it was. Thanks

I usually set up some markers (frame 1, 2, 3....) in the timeline and bound cameras to them, so by simply pressing the left and right arrow keys you can go through each camera. Did you trid that?


text:
Camera Changes Its Position After Rendering
I have set up a scene and the camera is in place but when I render the scene, rendered image is in a completely different place.
Here is a video: https://drive.google.com/open?id=0B4S33z5XcMIsc3M0UmZzQlZhb3M

In the 3dviewport press numpad 0 to see the scene from the camera, does that match what you render? Check the location/rotation properties of the camera to see if there are any keyframes (the location will be shaded green or yellow) that will move the camera.

Yup, the camera has a keyframe, indicated by the yellow line (here inside the green line) in the timeline. Go to the first frame, select your camera and press Alt+I to remove the keyframe.

I just applied a Displacement modifier over the modifier tab. The modifier was off for the real time viewport so the displacement was only visible in the final render.
That could also be a solution, if someone also forgot about a Displacement modifier, because in the viewport shading with the activated render mode the Displacement modifier would also be invisible.


text:
Cycles render in background exits with error in Blender 2.91.0, on Linuxmint
I have now a recurring new problem: when I want do render a simple animation the program stops with following errors:
  File "/usr/local/blender-2.91.0-linux64/2.91/scripts/modules/addon_utils.py", line 434, in disable
    mod.unregister()
  File "/usr/local/blender-2.91.0-linux64/2.91/scripts/addons/materials_utils/__init__.py", line 193, in unregister
    bpy.utils.unregister_manual_map(materialutilities_manual_map)
  File "/usr/local/blender-2.91.0-linux64/2.91/scripts/modules/bpy/utils/__init__.py", line 994, in unregister_manual_map
    _manual_map.remove(manual_hook)
ValueError: list.remove(x): x not in list

I have disabled the material addon but to no avail. In GUI everything is ok,

Does this also happen when starting with --factory-startup from the terminal?

Yes, I have just tried it, - when start with:blender --factory-startup -b xxx.blend the GUI is started with default menu point VFX


text:
I need an older version of blender to run this code
FREECADPATH = '/home/nilemm/freecad-code/lib' # path to your FreeCAD.so or FreeCAD.dll file
import Blender, sys
sys.path.append(FREECADPATH)

def import_fcstd(filename):
   try:
       import FreeCAD
   except ValueError:
       Blender.Draw.PupMenu('Error%t|FreeCAD library not found. Please check the FREECADPATH variable in the import script is correct')
   else:
       scene = Blender.Scene.GetCurrent()
       import Part
       doc = FreeCAD.open(filename)
       objects = doc.Objects
       for ob in objects:
           if ob.Type[:4] == 'Part':
               shape = ob.Shape
               if shape.Faces:
                   mesh = Blender.Mesh.New()
                   rawdata = shape.tessellate(1)
                   for v in rawdata[0]:
                       mesh.verts.append((v.x,v.y,v.z))
                   for f in rawdata[1]:
                       mesh.faces.append.append(f)
                   scene.objects.new(mesh,ob.Name)
       Blender.Redraw()

def main():
   Blender.Window.FileSelector(import_fcstd, 'IMPORT FCSTD',
                        Blender.sys.makename(ext='.fcstd'))

# This lets you import the script without running it
if __name__=='__main__':
   main()

what version are you using?

i am using version 2.79 and also have  v2.5
the problem is that blender module is deprecated and replaces with a "bpy" module which i couldn't use so far

All Previous version list
Click on the link and select the version and the os


text:
How to display VSE image-strip filename as overlay?
Is it possible to show the Filename of the current frame of a Image-Strip in the VSE as overlay text?

concept based on How can I make dynamic text in an animation?
i came along with this script:
# based on https://blender.stackexchange.com/a/8087/16634

import bpy

#debug helper
print("all vse strips:", end="\n  ")
print(*bpy.context.scene.sequence_editor.sequences, sep="\n  ")

# output VSE Text strip:
text_overlay = bpy.context.scene.sequence_editor.sequences["Text"]

def get_combined_speed_factor(strip):
    # this does not handle all possible configuration options!
    # only
    # - Stretch to input strip length
    # - Speed factor
    # - Multiply Speed
    # are handled.
    combined_speed_factor = 1.0
    if strip.use_default_fade:
        # update / overwrite not used speed_factor value.
        orig = strip.input_1
        strip.speed_factor = orig.frame_duration / orig.frame_final_duration
    # calculate
    combined_speed_factor = strip.speed_factor
    combined_speed_factor *= strip.multiply_speed
    return combined_speed_factor

def get_speed_factor_for_strip(scene, strip):
    strips_all = scene.sequence_editor.sequences
    strips_speed = (i for i in strips_all if i.type == 'SPEED')
    effects_for_strip = (i for i in strips_speed if i.input_1 == strip)
    combined_speed_factor = 1.0
    # this should calculate the overall speed for this input strip
    for effect_strip in effects_for_strip:
        combined_speed_factor *= get_combined_speed_factor(effect_strip)
    return combined_speed_factor

def find_current_img_filename(scene):
    frame_current = scene.frame_current
    file_name = None
    strips_all_sorted = list(sorted(scene.sequence_editor.sequences,
        key=lambda x: x.frame_final_start))
    strips_image = (i for i in strips_all_sorted if i.type == 'IMAGE')
    strips_speed = (i for i in strips_all_sorted if i.type == 'SPEED')
    for strip in strips_image:
        strip_speed_factor = get_speed_factor_for_strip(scene, strip)
        if strip.frame_final_start <= frame_current < strip.frame_final_end:
            strip_frame = (
                (frame_current - strip.frame_final_start)
                * strip_speed_factor
            ) + strip.frame_final_start
            file_name = strip.strip_elem_from_frame(strip_frame).filename
    return file_name

def recalculate_text(scene):
    filename = find_current_img_filename(scene)
    #print("filename", filename)
    text_new = "-"
    if (filename):
        text_new = filename.replace(".png", "")
    text_overlay.text = text_new

bpy.app.handlers.frame_change_pre.clear()
bpy.app.handlers.frame_change_pre.append(recalculate_text)
bpy.app.handlers.render_pre.clear()
bpy.app.handlers.render_pre.append(recalculate_text)

now this also works with Speed-Control Effects applied:

if you experiment with the script use bpy.app.handlers.***.clear() to remove the old handler functions. (be careful - if you have other scripts or addons that use this callback they also get removed..)

if you answer your own question please mark the question as answered so that it show that it has already been answered.

done. (it was not allowed to do this for the first ~n days...)


text:
Is it possible to Show FPS debug information in 3D-View like in BGE?
I have a simple scene with multiply lights that i want to view in Viewport texturing: 'Material' mode.
with this the Blender-UI gets slowed down drastically with some blend-files/setups. i like to know what is causing this - in the Blender Game Engine (BGE) there is a option to show 'Framerate and Profile' information:

is it possible to show same/similar information for/in normal 3D-View?

As far as I know there is no profiler on the Blender Preview window. But I might be wrong.

Yes just use:
bge.logic.getAverageFrameRate()


text:
I can't make nonmanifold wings mesh manifold for 3d print
I pulled all of oldschool runescape's meshes so I can 3d print them. They made models with just faces so it's required a lot of work to get some to print but this one eludes me.
Currently I'm working on one of the bosses in the game and got the rest to print flawlessly but separated the wings because it messed the whole print up.
file in question --heads up, it opens quite large on the x&y in blender>>> https://drive.google.com/open?id=1Hk_TxdC7_Nh3enrIli80tvHG0e4WpoFb
I've used the 3d-print plugin to search for manifolds and 'make manifold' either deletes everything but the flaps of the wings or the spine structure depending on if I've used mesh>normals>recalculate inside/outside or merge by distance.
Any tips would be appreciated though I fear ill have to model from scratch.

I presume you already understand what non-manifold geometry is, but if anyone reading this doesn't, there's a good explanation here.
I opened up your model, entered edit mode, pressed 2 to enter edge select mode, then went to Select > Select All By Trait > Non-manifold. This is what Blender highlighted (its the same for both wings).

I presume that the complexity of this mesh and the awkwardly placed non-manifold geometry is what is tripping up Blender's algorithm for eliminating that geometry. Let's take a closer look at what exactly going on.
The faces that are highlighted are purely flat planes. Notice how the same face is highlighted when viewing from both sides? You'll need to add thickness to those.

You'll notice that there are a couple of edges that are highlighted in the center of the wing. In these areas, the faces are coming together down to an edge, a flat edge. Once again, notice how individual edges can be viewed from both sides of the mesh. I've forgotten to deselect a couple edges that are just on the perimeter of your object, but I think you get the point.

I don't see any quick one press fixes for this... there are multiple non-manifold faces that Blender didn't even highlight, particularly at the base of the wing.
Edit:
Alright, I've managed to waterproof the mesh up to the part where it needs to connect to the rest of the body. Waterproofing the mesh was simply a nightmare...Let's just say I had to take apart the mesh and reassemble it, adding in extra edges and faces where necessary.
I wasn't sure how its meant to connect to the rest of the figure (and thus how the mesh should be shaped) so I just left it open there. The bulk of the work is done though, the only open parts of the wings are shown below.

I'm currently trying to help fix it, but I wanted to post that bit first.

i've only about a weeks of experience on blender but spent 10 hours on this whole model yesterday. I'll be super stoked if you can figure any way around it. Here's a link to the full model i printed after posing and fixing all of its nonmanifold issues
https://drive.google.com/open?id=1WDAUwHNMLyGyiXIV6-jnNMu3iurGyl-f

@thedwick Alright, more or less fixed up the wing mesh. The process was rather long and convoluted, but the general gist of it was to add extra edges and reconnect the faces to the new edges wherever both sides of the wing came down to a single edge.

dude thank you so much for the tip!. 3/4 of the bosses in this set have wings with the same problems so now I know what to do with em. Sounds like ill have to figure out a bit more with blender. Thanks again so much!

@thedwick Oh and here's another tip you ought to hear: There's a difference between the "F" key to fill in gaps, and the "J" key to join vertices. If you took a square plane, selected the two opposite corners and pressed "F", you'd get an extra line that isn't related to the plane at all, but using "J" would split the plane into two. I was looking at the full model and noticed a couple of areas where you had overlapping faces/edges, and I reckon that this is where those came from. Even though those didn't cause any trouble, just somehting to look out for in the future.

PS: you can download the blend file to see the changes


text:
2.82 Liquid cache not reseting
I've built an effector, domain, and inflow, baked it and it worked as it should. Then I added to the effector, cleared data, and rebaked, but the fluid acted as though there was no add-on to the effector. Tried clearing all the simulations, and re-adding them, and an number of other things, such as final bake, and replay bake, but nothing seems to work.

I moved the extended effector a bit, rebaked and it works....

I go to the cache and remove all the files.  I shouldn't have to do this.


text:
EXCEPTION_ACCESS_VIOLATION when trying to bpy.ops.scene.new(type='LINK_COPY')
I am actually trying to open a blend file from a script and I have to make a copy of the scene so that I can make some modifications in the new scene. However, after I run
bpy.ops.wm.open_mainfile(filepath = 'a saved .blend file path')
bpy.ops.scene.new.(type = 'LINK_COPY')

blender crashes and leaves an error of 'EXCEPTION_ACCESS_VIOLATION'. I believe that the context could not have been set and this problem is showing up but I have not been able to figure out how to get rid of this error. My script is actually long but these two line of code is sufficient to reproduce this problem for anybody.
What would I need to do before trying to make a copy of the scene?

The problem can be solved by using a persistent application handler that is executed once the project file has been fully loaded. bpy.app.handler.load_post allows you to append functions that shall be executed once the loading is completed. The annotation @persistent is required in order to keep the application handler registered even though a different project is loaded. This is required since normally application handlers are freed once a new project is loaded.
import bpy
from bpy.app.handlers import persistent

@persistent
def load_post(dummy):
    bpy.ops.scene.new(type="LINK_COPY")
    bpy.app.handlers.load_post.remove(load_post)

bpy.app.handlers.load_post.append(load_post)
bpy.ops.wm.open_mainfile(filepath="/path/to/your/file.blend")


text:
How to add shape keys to dimension of an object
I am scaling one mesh plane using key frame but i am not able to see any effect in values of scaling of an object but yaa dimension of an object is changing.
So, i want to know that how to add shapekeys to affect the dimension of an object or how to scale object using shape key without affecting dimension of an object

Dimensions is just consequence of outside vertices rotated and scaled in object space. It could be modified only manually or by a script.

So, if i want to scale a mesh plane with the help of shape keys, how i will do it? , because after scaling i am getting the change in values in dimension panel not in scale panel. Due to which i am not able to add shape keys in timeline

You can scale, rotate or move vertices in edit mode and store in shape keys - those actions only affect it location inside mesh data.
Object location, rotation and scale transform mesh data depending on it origin.

Thanks a lot Sir, it really helps me a lot.

One more thing i have to ask is that how can we use shape key data to add keyframe using set keyframe nodes?....I will be very thankful if you will let me know

as most of other values, just use "insert keyframe" on it: create basis, add key and set it value to one, edit mesh data with it, now change keyframe and insert keyframe of shapekey - you can use fraction of one.


text:
How can a force be applied not to the center of a rigid body object, but to one specific vertex of the object?
Scenario: a stationary bar-shaped (rigid body) mesh floating in space (i.e., neither gravity nor friction/drag), that gets a short-lived force vector applied to one of its corner vertices, where the objective is to do a physics simulation/animation of the bar's movement in response to that force.
Problem: Force Fields seem to only work on the center of the object. Obviously, the somewhat complex rotational motion that would be expected in reality is not simulated at all. I guess the solution might be to use Particle Physics instead, but I haven't been able to find out yet how exactly. Can you help me?

I'm not sure if blender has any way to do this besides whacking the vertex in question with another rigidbody..

Simulations which include moments of inertia (https://en.wikipedia.org/wiki/Moment_of_inertia)  and off-center forces can be created by combining objects though rigid-constraints, and applying forces through empties near each object. This animation shows the results that can be obtained. This simulates an object in space, without gravity, affected by forces applied at the corners.

In blender, objects behaves like point masses (https://en.wikipedia.org/wiki/Point_particle#Point_mass) located at the object origin.  To simulate moments of inertia, several object must be combined using rigid constraints. This screencast illustrates two cubes affected by forces and moving based on moment of inertia.

Note: There may be simpler ways to do this...

Procedure to replicate this animation (Blender 2.76)

Turn off gravity.

Create a slab for the object which moves.
Create 4 spheres. Place one at each corner of the slab.
Enable rigid-body physics for each sphere.

Enable rigid-body, fixed constraints to connect the spheres together.

Parent the slab to one of the spheres. At this point, all of these parts will move together.
To apply forces to a corner, do the following. Add an empty. Place it just below the origin of the sphere where the force will be applied. Parent the empty to the sphere. Enable forces for the empty. Set the forces to behave like a plane. Set the forces to a tube shape. Set the maximum distance and maximum radius for the forces to keep the effect local to the sphere. This can be done at each sphere. If forces are wanted in other axes, then rotate and empty and adjust its placement.

Use keyframes to animate the forces and drive the movement of the sphere.
It may be necessary to adjust the physics solver settings to ensure the rigid-body constraints behave properly.

The blend file for the animation is at:

Thank you for this great explanation! I am working with soft bodies (you may take a look at my question here) and I wonder if it is possible to apply forces to soft body shapes in a similar manner?


text:
Can a glass object be made to act completely transparent to only the object contained inside of it?
Say I put Blender's iconic monkey inside a glass sphere (hollow, but solidified around its exterior). All lamps and camera(s) are outside the sphere. Using Cycles.
What I want to accomplish is for the sphere to get rendered as an "ordinary" glass object, whereas the monkey inside of it gets rendered identical to the way it would get rendered if the sphere around it did not exist at all. (Most of all, I want to avoid the dimming effect the glass would otherwise have on the monkey's (diffuse) surface brightness).
Is this doable? By using the Light Path input in the node editor perhaps? Or maybe by compositing two render actions into a single image?

Related: http://blender.stackexchange.com/q/2558/599

Yes, this is possible.
To do this, we can make a glass material which allows some light rays through without refracting them based on certain conditions.
To get a good idea of which rays we want to let through, it's a good idea to try and visualize the possible ways rays could bounce through your scene (at least up to a few bounces):

This diagram doesn't show all possible light paths for three bounces, this is just for demonstration purposes.
I've highlighted the ray which we want to ignore in order to illuminate Suzanne as if the glass sphere wasn't there in green. Keep in mind that rays travel from the camera.
So as a solution for this particular case, you could create a node setup that ignores rays which:

Have bounced a maximum of once
Are not transmission rays
Are colliding with the inside of the glass

Result (200 samples):

For comparison, here's the same scene rendered with just a glass shader (2000 samples):

Interesting node logic. Thank you very much! Would you mind sharing the blend file with which you rendered the above output (unless such requests are frowned upon here)? I tried to reproduce it myself, but some parameter(s) must be in the wrong ballpark somewhere ...I'm still a bit of a Blender noob to be honest.

A belated thank you for the .blend file. I think what I lacked was your use of a large emitting plane with no camera ray visibility, and turning on the subsurf modifier. Learning a lot here! :)


text:
How do I rotate a mesh object's vertices along an axis with a degree of rotation that increases along a linear gradient?
I want to rotate one end of the mesh object (the vertex a with the object's smallest x-coordinate value) 0 degrees around the x-axis, and the other end of the object (the vertex b with the largest x-coordinate) r degrees.
Any other vertex v of this object inbetween the aforementioned two should automatically be rotated around the x-axis by an angle of:
r * (x_v - x_a) / (x_b - x_a)
In other words, the extent of the rotation should be proportional to the position of the vertex on the axis of rotation. What's the most straightforward way to accomplish this?

How precise does this need to be? Are you looking for a way to do this using the UI? Or with python?

@gandalf3 No exact requirements for precision, but the straightforwardness/precision trade-off should be "decent" -- make of that what you want... If this is best achieved with a Python script, then that's perfectly acceptable to me.

Maybe you can use proportional editing, but if that's too imprecise perhaps the Simple Deform modifier set to Twist can work.

@gandalf3 Proportial editing did the job! (Selected an edge on one end, increased sphere of influence to encompass the entire object, and set the falloff type to linear.) If your comment was answer I'd accept it. Either way, thanks!

If you'll accept speed and on-the-fly adjustability in exchange for some precision, then perhaps proportional editing is what you are looking for:


text:
Duplicate object suffix (.nnn) to be put elsewhere (prefix maybe?)
The importer I do uses suffix names for import certain stuff; ie: object named "land-col" is an object with collider and "invisible_wall-colonly" is imported an invisible collider); now, my problem is when I do duplicate object blender rename them in land-col.001 and invisible_wall-colonly.001. and that .nnn broke the import feature.
So, I was wondering if I can force blender to name duplicate objects in a different way... ie; 001.wall-col or something alike?

can you describe a little bit more how you import stuff? are you importing in a loop from various sources with the opportunity to rename stuff inbetween sequential imports?

I do export from Blender to Collada format. Then I use the importer in a game engine called Godot. Godot uses object's suffix names to pick the correct way the object has to be imported from collada (ie: an object with -noimport will be simply ignored... so I don't need to erase some stuff, usually lamps, everytime I export from blender).

When duplicating Cube, it will create Cube.001, there is no feature that i'm aware of to allow you to specify the desired duplicate name or convention.
It is possible to rename using the reference to the object after  duplication, because the duplicate becomes the active_object
# with one object selected.
bpy.ops.object.duplicate(linked=False, mode='DUMMY')
obj = bpy.context.scene.active_object
obj.name = desired_name

or a mass rename if that makes sense
for obj in bpy.data.objects:
    if obj.type == 'MESH':
       if '.' in obj.name:
          # assuming it only has one period in the name.
          basename, postfix = obj.name.split('.')
          obj.name = postfix + '.' + basename

Well, since Blender don't offer this feature, this script is definitely a lot of time saver.


text:
Need help with sculpting a shield
So I'm very new to Blender, literally only days old. I never studied 3D modeling, I'm trying to learn by myself, I'm watching lots of tutorials to learn, my main use for Blender will be 3D printing my models. I have been trying to make a 3d model of this shield
so I initially made a thin cylinder for the base, and for the curved area I made a UV sphere and bumped it down until it seems right, and deleted the parts that stuck out under the bottom. My issue is trying to model the thorny branch and gem in the middle. I finally managed making the branch itself with a bezier curve, but the thorns have stumped me because I can't figure it out, the gem impossible to make (tried making a sort of pyramid and rounding off, tried sculpting a sphere, nothing has worked). My first attempts were to directly sculpt on the curved base, instead of making everything separate objects. But the program refuses to sculpt anything, the brushes may as well do nothing. I'm aware there may be a setting I've missed that will solve it, but I try things I find on here for the same problem (sculpt not working) and nothing has worked. I've tried subdividing, tried NOT subdividing, tried changing strength, radius, tried pressing control, I don't know what else I could do.
Can someone please give me some pointers on how to efficiently go about this? I've seen such intricate detailed models from Blender and I cannot figure out why a seemingly "simple" shape is causing me grief. I'm willing to hear any answer, if I still cannot make this work I'll just 3d print the bare shield and sculpt the rest with real life air clay as a last resort.
Thank you for your time reading this and if you try to help. I'm really trying but I understand that when you're self-learning a lot of the obvious things fly over your head.

For a base mesh I would use Sphere (12 segments), upper part scaled on Z in Edit mode. If you don't like curvature, scale Z to 0, select centre vertex and with enabled Proportional Editing O (and chosen desired curvature) move up on Z axis.

For spiral enable addon Extra Curve Objects. Add new object Spiral and tweek parametrs in properties. Add Shrinkwrapp modifier > Target your "base" mesh.

Add Plane, Scale it down into thickness os spiral shape, add Array > Fit Curve, Curve > Spiral, Shrinkwrap > Sphere, Solidify, alternatively Bevel modifiers (see screen).

Thorns - I choose hand modelling, just apply Array and Curve modifiers, disable Shrinkwrap and extrude a few vertices for thorns. In screen I used move vertices, dont do that :)

Tip: just by selecting inner side and Scale you can get wide of spiral thinner at centre and thicker on outer side of shield.

For 3D print you will need manifold object. Blender has an add-on 3D Print Tool that can help to show problems. To get it right seems to me better extend spiral ornament and cover whole shield with shrinkwrap - like retopology, so you get nice wire for print.
When I tried to Merge by Boolean or Remesh it comes with a lot of issues.

Another way
For 3D print would be ideal to start with Curve profile of shield. Add Screw modifier to create shield and use Simple Deform > Twist modifier to create spiral topo. Like that you will get shield shape with Spiral wire so simple extrude of one loop can does the job, but I wasnt able to create spiral in shape from your image. But you can try your luck with that.

Mesh is quite dense so I just pushed vertices up here. You can also create Shape Key before you start, like that you can create more designs on shield or you can any time to get back into clean surface.

It's for printing, so these parts will have to be merged into  a manifold surface.

thank you! I'm sorry for being late. I'm going to try these settings right now. It seems much more efficient than what I was trying to do.


text:
How do I get network render on RPi 4?
I'm looking to create a render farm at my house from Raspberry Pi 4s, but I'm checking on my 3 and there isn't a network render addon in the menu. Is it possible to bring the feature back somehow or is it dead forever for the raspberry pi?

I don't want to discourage you, I think it's a nice spare time project. However, one threadripper or one good gpu would beat even 50 of them.

If you want to render an animation (and not a still image), you don't need any addon, only a few options to check/uncheck. Let me now if you want me to elaborate.


text:
How do I make a curve with multiple parts, all connected parametrically?
I'm looking to model the nozzle for a rocket engine in Blender to use in an animation, and I want to be as accurate as I can. This means using math (and a lot of it) to make the model. My problem is, I can't find anything on this type of equation or on parametric curves in modeling.
The math for the nozzle uses 2 arcs and a quadratic bezier, connected at some very specific points. I have no idea where to start, but I'd prefer if I could just put in variables and use math (which I have ready) to define things like the centers of the arcs and the points of the bezier.
Point is, is it possible to do this in Blender, or do I have to pay for other software like Fusion360?

if you have the formula and you have python knowledge - you can do it. e.g. with Sverchok

This can be done in blender. Don’t worry. However, Bezier is an approximation, so use a path or mesh (plot the formula directly with Python), or a nurbs curve (know how nurbs math works and use it) instead.


text:
Fluid in moving glass simulation
I'm new to fluid simulations in blender.
I'm trying to make a simulation of chalice with a fluid dropped on the floor,
but fluid reacts weird with chalice it escapes mesh of the obstacle in resolution 220 and when the chalice starts to fall (frame 20) fluid do not follow the chalice. Also fluid fly over surface. Link to .blend file

The 'normals' i.e. the direction of the faces on your chalice are inverted, or pointing the wrong way. The darkened shading of the chalice is indicative of this. This means that he fluid simulation will have trouble telling what the inside and the outside of your mesh is. On the left is your model with incorrect normals, and on the right, correct normals:

Enter edit mode for the chalice, select everything and press Ctrl+N to 'Recalculate normals'.
As a side note, your fluid domain is very large. If you need it that large then that's fine, but if you don't, make sure your domain is as small as possible. Using a large domain will use a large amount of ram compared to a domain which is small and compact.
I would also recommend disabling 'Remove air bubbles' in the 'Fluid Boundary' panel for the domain object to stop the liquid appearing through the sides of the chalice.

Hello and thanks for answer this recalculate normals works and fluid behave way better but still it fly over surface and chalice.Fluid over floor Fluid over chalice  Also it is lagged when chalice starts to fall  Lagged fluid. Do you have some ideas how to fix it?

Is it possible you have made the domain too small now? Otherwise I'm afraid I don't know. It's very difficult to diagnose these issues as it takes a while to bake the fluid.


text:
Continuously renders a previous rendered version, not what is currently in the scene (Cycles Render)
Whenever I render my scene, it always renders a previous render which I had done for testing purposes a while ago. It's not an animation or anything, just a still shot of a car I modelled with some lights to make it shiny (putting that detail there just encase it's useful).
I've searched around online for an answer, where I found another person with a similar problem to mine, yet his was fixed by deleting a strip in the VSE (video sequence editor) and I don't have any strips in mine, so it was not helpful.
Here is the model: http://www.pasteall.org/blend/37866
(If you get the model, switch the top right viewport to the "viewport render" mode to see how it's suppose to look, and then do a proper (low sample) render just to see what I mean)

In your case the difference between the viewport and final render is caused by some emission objects which are hidden only in the final render.
In the Outliner there are eye and camera icons that control the visibility of a given object in the viewport and final render, respectively:

Objects with the camera icon disabled will not affect the final render.

Ah! Thank you, that was the problem! Something so simple yet causing much time of frustration... Thanks again for the solution!


text:
What is the simplest way of extracting the depth values of the scene?
I am totally new in the 3D-world, But I am really interested in having the depth values of the scene (in the raw floating point numbers format),
Unfortunately, I could not find an associated question (and also its answers) in the whole Blender beta society about that,
Any possible help is highly appreciated in advance, Thanks a lot.

I'm not sure I understood the request.
In case you intend to as depth values: values of the z-buffer of the camera
then the answer is easy.
you have to use this simple code:
#first import the libraries
import bpy
from bpy_extras.object_utils import world_to_camera_view

context = bpy.context
scene = bpy.context.scene

#create the def for take the z-buffer
def checkCameraView(cam, obj):
    for v in obj.data.vertices:
        x, y, z = world_to_camera_view(context.scene, cam, obj.matrix_world * v.co)
        print(z)

#select the camera
cam = scene.camera
#check every mesh type objects in the scene
for obj in scene.objects:
    if obj.type == 'MESH' :
        checkCameraView(cam, obj)

z is the depth of the vertex
x and y are the coordinates on the Cartesian coordinate plane (2D) of the chamber
x = horizontal
y = vertical
api link: world_to_camera_view
This was the question?

#Odino Thanks for your attention.Yes, that was my question, but when I want to run the script, I receive a "script fail" message (probably related to the last line). Should I modify anything in the code to run it correctly?

@Ali It was only part of a possible script.
now is complete ;)
P.S. It is a simple script that you can use as an example

Thank you very much, It works! Just one point. It seems that I have to run Blender from the Linux Terminal to see the results. I'll find a way to write them into a file. That should not be difficult! ;)

Your talking about the Z pass. It's activated by default but shows only white because the values are greater than 1 (0 is black, 1 is white, more than 1 is white). There's nothing to see unless you use a normalize node to make the values 0 to 1.

#Bithur Thanks, but in this situation, how can I save the generated depth values in blender units? Should I use another node to do so?

The Z pass gives the distance of each pixel to the camera in blender units. You can save it as a B&W image from the render (Change "combined" to "Depth" pass and save as image) or with a file output node in compositor.


text:
Blender Knife tool/ boolean

Hi guys,
I was wondering if anyone ever experienced this problem where by you cut either by using the knife project tool or Boolean and there's this squeezing/deform on the object you are cutting. It is really annoying as I just want a smooth cut on my mesh. How can I fix this problem?
Please see attached image.
Thank you for the anticipated help.

The distortions you are seeing are likely caused by non-quad geometry caused by your knife/boolean cuts. It's hard to tell what's going (with the geometry) from the photo because the object is shaded smooth. Turn off smooth shading and any subdivision modifiers and look for faces with more or less than 4 vertices.

Also, if you have an unapplied boolean in place, tick the box at the top of the modifier that lets you view it in edit mode, and see where the boolean is making cuts in your mesh to facilitate the boolean operation. Sometimes moving it around slightly helps it make better cuts.  Blender has to "choose" how to cut into your mesh to make the bool, but where it chooses can be also be guided by making cuts of your own.

Hi. Please make the title of your question specific to the problem you are having and not just the general topic. Thanks.


text:
I can't install any addons into Blender
I know this question has been asked before, but I can't really find a solution.
This was happening years ago too I think, so... I'm pretty stuck.
I've even re-installed my entire os since then, but I remember addons working at some point.
The two addons I need are these;
https://github.com/sugiany/blender_mmd_tools
https://github.com/ousttrue/pymeshio
I've tried to install them in a couple different ways - I tried using 'install addon' and using the zip, but nothing.
I tried to put the extracted folders into the addons folder of my Blender installation, still nothing.
When I click on the button to install an addon from user preferences, it just does nothing. It doesn't ever appear in the list, and I can't see any errors. This happens every single time I try to install the addons, just nothing happening.
I tried this with a portable install as well, there was no difference.
I realize I'm probably doing something very wrong like an idiot, but I would appreciate some help. Thank you.

Can you please specify your platform & the version of Blender you are using.

Both those addons seemt to be rather old - one is from 2015, made for 2.67, and the second one reportedly doesn't even work with Blender 2.79.

Both add-ons are just too old...

Windows 10, Blender 2.82 - 64 bit

Sorry, didn't see the new replies.
Should I try an older version of Blender?

Ask the original author to update the addon for 2.8x, otherwise you have to use an older version of blender @Ethan

Alright. Thank you all for your responses- I'll try an older version. Thanks again.

These might be the possible errors:-
1. Check if there is sufficient space in the drive your os is installed.
2. Check if the addon downloaded is of correct windows architecture I.e. 32 bit or 64 bit.
3. Check if the blender version you are using is same as mentioned for the addon.
4. Install a stable blender release instead of nightly build or alpha build.
5. Check that the python version you are using match the one on which the addon is scripted.
6. Check if the addon is complete and is not missing any command line.
If it still doesn't work you may have a error or bug report on the respective page.

Either way, you can't make them work with 2.8x. Also blender comes with python...


text:
incomplete view?
I can and am importing a variety of file formats into Blender (OBJ, STL, PLY), but the geometry/part always looks like it is cross sectioned or incomplete.  If I rotate the view, the sectioned/sliced or missing areas move around and I see other areas of the object during rotation, but never see the whole object.  The instruction videos on importing do not have this problem.  The object is a car, and the front view looks like it is sliced down the middle and half the car is missing.  As I rotate my view, I see more of the missing area while other areas disappear.  What should I do?

Most likely your object is too big. Does this answer your question? Where can the viewport clipping parameters be changed?

or  reset dimensions eg   https://blender.stackexchange.com/a/160978/15543

My guess is that your viewpoint is too close to the object causing the clipping feature to cut off the parts it considers too close to the viewpoint.

There are two ways to fix this:
The first would be to make the object larger and zooming the viewpoint out along with it so it's relative size to the view remains the same while increasing the distance from the viewpoint to the object.
The second solution is to open the sidebar go to view and change the Clip Start option to a smaller number. To open the sidebar you can either press the hotkey (N), drag the arrow

or go to the view menu and enable the tickbox in front of "sidebar".


text:
Flatten tool in Blender 2.8 is blurry
So I'm still working on the tutorial from Blenderguru with the anvil and another problem has occurred.
Now in sculpting mode I'm supposed to use the flatten tool on the edges of the anvil. In the video when he flattens, its perfect, crisp indents. When I try the flatten tool makes it look like its extruding and not recessing into it self.
This is what I want:

And this is what I have:

It looks super blurry. I've tried to put 0 on the location of the item. I've tried to scale the plane offset to a negativ. I've tried different Refined Method inside Dyntopo.
Please help
Thank you

Setting the location to 0 or scaling the plane offset should not influence the sculpting. Regarding what could help, i hope my answer does the trick.

i know that the tutorial says use the flatten brush, but he is using an older version of Blender and the newer versions got a lot updates especially regarding sculpting.
I tried the flatten brush myself and could not get the same results as shown in the tutorial. Me using the new 2.82.7 version.
BUT i managed to find a brush that surprisingly resulted in the same look, the scrape brush.
Here the little visual help:

Sorry about the dithering, the matcap is not very gif-friendly.
Also regarding the blurriness, i would guess it comes from either to low details (actually means to big value for the dynatopo details) and maybe even not smoothed surface which seems to be a bit buggy. With fine geometry and not smoothed surface you get a blurry effect.
It could help if you would show the setup of the dynatopo that resulted in the blurry effect. Something that really seems to be tripping up the sculpting is if your object has a UV Map or some modifiers, dyntopo tends to bother you as it did show in the tutorial as well. And undo can then easy deactivate dyntopo. If you sculpt then without dyntopo on, the result may also add to the blurry factor. Just a possibility, so if you try again and it becomes blurry, look if dyntopo is active.
Here a little visual to prove my point regarding the older version of Blender (here 2.79b) and sculpting brushes:

As it should be visible, the flatten and scrape brush did the same thing in 2.79b, while in the newer version 2.82.7 the flatten brush sure does it's own thing, means scrape it is.

I agree with @Xylvier. And the official document says alike:
Flatten, the vertices are pulled towards the plane which at the average height above/below the vertices within the brush area.
Scrape, works like the Flatten brush, but only brings vertices above the plane downwards.


text:
How do I connect vertices to edges?
I'm following a tutorial by Blenderguru, but I hit a problem with the mesh.
I need to connect a vertice to another, but there are several edges between them and I would like there to be vertices on all the edges all the way.

How do I connect vertices to an edge? Do you know, please let me know ^^,
Thank you =D

One option would be to select both vertices you want to connect and press J which will connect vertices and cut through edges along the way, BUT this option sometimes does not take the path you want.
You could also press Ctrl+R (loop cut) to cut through the edges you mentioned between the two vertices, this will though not go all the way to the 2 vertices. Then you can select the vertex you want to connect on one side and connect it with the closest one generated by the loop cut, same for the other side.
Lastly you can use the knife tool K and click on the first and then on the last vertex, in the view like in the picture it might be a bit hard to select the lower vertex though, for that you can start the cut and rotate the view to select the lower vertex.
Press Space or Enter to confirm the cut.
Visual version:

I fixed it right away with the first suggestion :D Aaaah, thank you sooo much Xylvier!! <3

Happy to help, could you be so kind and accept the answer then ;)

Of course Xylvier, but how do I that? Sorry, I´m new ^^,

I myself have yet to ask a question here so i had to check myself XD
Accept answer

Saw your from Norway, så ville bare si tusen hjertelig takk Xylvier! :D

Gjerne, håper du ha en god tid med Blender.


text:
How to import tga files texture information into Blender?
I just received a 3D model including one obj and two tga files that are generated in 3dx Max.
When I import the obj file into Blender, obviously I cannot see the texture details provided by tga files.
The obj file contains a line referring to an mtl file with the same name which does not exist.
How can I convert texture information of tga files such that I can import and see them in blender?
I've read somewhere that I should convert tga file into png or jpg format.
Then what?
Thanks,

Yes, TGA files are just fine on their own, your problem is that OBJ import doesn't necessarily create good materials for you automatically.


text:
issues with array modifier
i am trying to model a car rim in blender. i modelled it with using mirror modifier and array. When creating some edge loops for sharp edges it is not appearing same on both sides of the mirror modifier instead Edge loop automatically get snaps to nearest vertex at the end of loop. I tried reducing the distance in array modifier, but its not helping. and also blender crashes when i do so. pls help. Screenshot attached for your reference

Both the mirror and array modifiers have settings to automatically merge vertices from the generated parts with the real vertices. When adding or adjusting vertices near the edge you sometimes need to disable these options for a while. Sometimes you also need to adjust the merge limit so that you don't get excessive merges happening.

yes, but like you can see in the second screenshot im unable to merge the two vertices i tried adjusting the distance also. But even if i merge that two vertices in any way there will be same problem in the next two vertices.


text:
adding support edges
I am trying to model a headphone in blender. While we create support edges at the sharp areas by adding edge loops, it creates sharp edges in some other areas of the model where i don't want sharp edges. How can i avoid such thing while modelling.Also there are some edges that need to be sharper, but i am a little confused about creating edge loops without making any triangles in mesh. I know we can use edge split and other things like bevel edges, but not sure what to use in which situations. Screenshots attached for your reference.
thanx

Even if those shapes are part of one continuous object in the real-world, you don't have to keep them that way in a 3d model.

but if i break that edge at that point, would that make any issue while applying sub surf modifier???

it should be OK, the only thing is if you make the meshes disjoint, they will also be disjoint after applying the subsurf.  and the edge where they intersect will look a little weird (abrupt) without something to mask it out..or to carry the transition https://i.sstatic.net/gTGsR.png

Ok.then how can i create that sharp edge like in third picture attached??

Try adding an edge crease, with [Shift]+[E].

This is a place where it's probably okay to use a triangle to cut off some of those edge loops. You don't want them to continue going down, and adding a triangle probably won't add much distortion. You can read about some of their uses here.. You need to be wary when using them, but it's usually okay if you're careful.

In that images, I would merge the circled red edges over to the highlighted red edge, then I would merge the right green edge over to the left green edge.
Another method is to slide edges that are causing problems in one place but are needed in another down so that they aren't creasing that part of the mesh.
There are other options available like edge creasing, but I think it's better to stay away from those because they can take away control and cause distortions if used incorrectly. But like all tools, they have their uses in some instances.


text:
How can I calculate the pixel size for each direction of my rendered image?
I have rendered an image of size 150*120,
I think the amount of pixel size is related to the sensor size, isn't it?
But I have the sensor size just for the horizontal direction which is 32.
How can I calculate the pixel size for each direction of my rendered image?
Thanks.

What do you mean by "pixel size"? Not the image resolution, which you specified. Do you mean the size of 1 pixel? (Probably related to pixel density, PPI / DPI, which is probably 72)

Here is an illustrative code fragment to show how to compute the pixel sizes in each direction (u is horizontal, v is vertical):
scale = scene.render.resolution_percentage / 100
pixels_in_u_per_mm = resolution_x_in_px * scale / sensor_width_in_mm
pixels_in_v_per_mm = resolution_y_in_px * scale * aspect_ratio / sensor_height_in_mm
pixel_size_in_u_direction = 1/pixels_in_u_per_mm
pixel_size_in_v_direction = 1/pixels_in_v_per_mm

By experimenting with blender, I found out that by default (camera sensor fit set to "auto") the sensor width is fixed, the sensor height is effectively changed with the aspect ratio settings.
The current Blender GUI only specifies the sensor width by default, but there is a variable for sensor height in the internal camera data. It is used if the camera's sensor fit is set to something other than "Auto", which I don't currently cover in this answer (see next paragraph for another answer where I cover these).
The above code is based on the Python code in my answer to What is blender's camera projection matrix model?. You can find details on how to get the relevant parameters there, and also how to deal with other sensor fit settings.


text:
Translucency for shell material using the Principled Shader
I am looking to replicate this hermit character from the Pixar short, Piper:

I am currently working on the shell material and am struggling to get the translucency correct in order to replicate how light passes through it. I am using the new principled shader.
It looks to me that the material is a translucent milky white-yellow material covered with a more opaque glossy orange surface with all the colour and surface detail on it. This layer becomes thinner at the top and still lets some light through to be scattered for the backlit scenes. I have played around a little with the subsurface scattering and transmission to get the following results for the lighter layer:

However it doesn't seem to behave correctly, in particular, the backlit effect of looking almost illuminated from within seems very hard to achieve. I wonder if anyone has any pointers on how they would go about recreating this material?
Many thanks,
Ben

Im pretty sure you'd have to control most values via a texture map to achieve similar results, also maybe make the shell thinner on top.
It's a pretty broad question, if you want share your shell and I'll take a look and see if I can make progress.

Yes, i have uv unwrapped the shell and am currently making some textures for color, normals etc. and i presume a map to mask the top layer will also be needed but I was more curious about the settings that would accompany those textures

In addition to icYou520's answer, you need to consider lighting as well.  It looks like from the pictures, you have the light pointed almost straight down where as the Pixar scenes have angled sun-light.  The translucent pic is also backlit somewhat.

Also, the shell is hollow, not solid.

Ok, the trick here is to have a mask control the vertical falloff of your shader.
I dont have much time to work on this, but this should get you going in the right direction. I will also tell you what I would change.

Getting the top translucent part : Your 1st shader should have the transmission all the way to 1 (for glass), then put a slight roughness on it.
Have that mix in with another shader for the base of the shell, (we will get back to this)
Have those two shaders mix with the "Gradient Top" node* (You will have to create this, I attached a pic how to do it.)
The base of the shell will have 2 Principled SSS shaders, I believe I put the SSS radius to .1 for all of them, the higher the number the more transparent it becomes.
I found a wood texture that I used for the grooves that I plugged into the principled shader. (I should of plugged it into both, I messed up. )
I used a noise texture to have the yellow and orange broken up a little.
Then for the bands I just used a wave texture in the displacement socket. I would rather model this instead and not even use the displacement.

**** maybe instead of a glass Princepled shader I would try a translucent/glossy shader and see how that looks.
*** Dont copy my settings exactly I did them real quick. Play around with the gradient top settings.
*** I probably wouldn't go with a noise texture to mix the two princepled shaders. It would be better to paint those by hand, so you can follow the curves.
Hope this helps a little.


text:
Convert track data into a bezier curve or a path?
I want to do a simple motion trail that has the same path as my track, but different timing. For that I need to convert the track data into a bezier curve. Any idea on how to do that? The reconstruct options allows only to make an empty that follows a track, not a path. There is a 3d markers to mesh option but no matter what I do I get No usable tracks selected Warning. I could only find very old posts on similar topics but they were talking about f-curves which have unfinished documentation.
I just need a follow path instead of follow track with the same data...
Motion tracking data

Blender documentation on f-curves:

I'll write this as a comment, since you specified bezier, but I think f-curves should do what you want. There is actually extensive documentation on them in the Graph Editor section: https://docs.blender.org/manual/en/latest/editors/graph_editor/fcurves/introduction.html# including the similarities and differences to beziers.
To convert the track data to an f-curve, reconstruct the track to create an empty, select the empty and you will find "Constraint to F-Curve" in the Follow Track object constraint.


text:
object moves on axis that's not locked
I'm trying to move an object on one axis - which I thought was one of the simplest things - but when I hit g, and then x/y/z, it locks, but then for some reason it will jump in space as I'm moving it on that one axis. This only happens when it's overlapping with other objects in space, and if I've hidden the other objects from view it doesn't happen. I've tried moving the 3D cursor everywhere I can think of, changing from global to local to all the other options - nothing has worked.

It sounds like you have some form the the Snapping tool turned on. See if the icon which looks like a classic horseshoe magnet is turned on. It will either be center top or center bot depending on your set up. You can also try toggling it with Shift + Tab.


text:
objects joined but dont move together

I created a body and some clothing (just objects shaped into clothing) and I joined them together. I then created armatures and joined with automatic weights to the body. problem is the mesh does not move with the clothing

Try this piece of advice from https://blender.stackexchange.com/questions/77640/how-to-make-a-clothing-mesh-follow-an-arm-mesh Also, make sure you update the Blender version if you can, the 2.82 is better on many levels. I hope it helps!

Did you add the clothing after binding to the mesh? May need to rebind.


text:
Why is it not showing the correct measurement?
Newbie here learning Blender.
Could someone point out what i have done wrong? the measurement unit is not showing the correct measurement of the object, the width of the box is suppose to be 180mm but when i click on to show measurement its written there 500mm instead as you can see in the picture.

Because the object has some scale in object mode.


text:
Trouble with filling up faces, irregular shape
I have problem with filling up the face, of the vertices, the curved part has sorta wing look alike joined to the vertices, can anyone help with this problem?

This can be caused by irregular vertex order.
Fill operation works well in such cases.

Select all vertices, Select > All (A)
Go Face > Fill, (Alt + F)
Join triangles into one shape through Vertex > New face, (F)

There's one I didn't know about!

don't try to fill them at once, first the rect then the loop , dissolve the faces together


text:
Bundling python library with addon
I'm making an add-on that uses the websocket library from python. Is there a way to include it in the add-on .zip file? Or do I have to add it to the site packages folder in blenders included python folder?

Related: https://blender.stackexchange.com/questions/5287/using-3rd-party-python-modules, https://blender.stackexchange.com/questions/8509/including-3rd-party-modules-in-a-blender-addon

For recent versions of Blender (2.81 and later), you can install them through pip.

How would I make it install to the right place? It just installs to my user directory

You need to use subprocess and pass it the correct path to Blender's python interpreter. Unless somebody is faster I will write an answer later this evening.

Blender includes pip on Windows since version 2.81, but not on other operating systems. Therefore, pip has to be installed through ensurepip.bootstrap() on Linux and macOS. This function can also be called on Windows, when pip is already installed. It will detect the existing installation of pip and won't modify it. Installing pip and Python packages through a script or an add-on may require that Blender is started with elevated privileges, for instance if Blender is located in C:\Program Files. Please note that this is generally not recommended for security reasons.
Important: ensurepip.bootstrap() calls pip during for the installation. pip sets the environment variable PIP_REQ_TRACKER which is used as a temporary directory. This directory doesn't exist anymore once ensurepip.bootstrap() finishes execution, but the environment variable PIP_REQ_TRACKER remains. This is a problem, because subsequent calls to pip will attempt to use the directory in PIP_REQ_TRACKER. It is necessary to remove PIP_REQ_TRACKER from the environment variables after calling ensurepip.bootstrap():
ensurepip.bootstrap()
os.environ.pop("PIP_REQ_TRACKER", None)

Once pip is installed, subprocess can be used to to install the required packages. The path to Blender's Python interpreter is bpy.app.binary_path_python. Installing a package, for example matplotlib*, would therefore be done in the following way:
subprocess.check_output([bpy.app.binary_path_python, '-m', 'pip', 'install', 'matplotlib'])

*matplotlib is used as an example, since I wasn't sure which websocket package you were referring to.

Important: It's common courtesy to not connect to the internet or install packages without the explicit consent of the user.
The following add-on has a button in the preferences that allows the user to install the required Python packages. If the dependencies aren't installed, a panel with instructions is displayed in place of the add-on's operators. This approach respects the user's privacy and doesn't install packages without their permission.
User Preferences

Instructions

After successful installation of dependencies

The import_module(module_name, global_name=None) functions allows to programmatically import modules based on their name and optionally specify a global_name under which the module can be accessed. For your own implementation it may not be necessary to use importlib and globals(), but it significantly reduces code redundancy if you need to import or install multiple modules. The installation of Python packages, as described above, is implemented in install_pip() and install_and_import_module(module_name, package_name=None, global_name=None).
Please check GitHub for the updated version of this example add-on.
#    Copyright (C) 2020  Robert Guetzkow
#
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <https://www.gnu.org/licenses/>

bl_info = {
    "name": "Install Dependencies Example",
    "author": "Robert Guetzkow",
    "version": (1, 0, 2),
    "blender": (2, 81, 0),
    "location": "View3D > Sidebar > Example Tab",
    "description": "Example add-on that installs a Python package",
    "warning": "Requires installation of dependencies",
    "wiki_url": "https://github.com/robertguetzkow/blender-python-examples/add-ons/install-dependencies",
    "tracker_url": "https://github.com/robertguetzkow/blender-python-examples/issues",
    "support": "COMMUNITY",
    "category": "3D View"}

import bpy
import subprocess
from collections import namedtuple

Dependency = namedtuple("Dependency", ["module", "package", "name"])

# Declare all modules that this add-on depends on. The package and (global) name can be set to None,
# if they are equal to the module name. See import_module and ensure_and_import_module for the
# explanation of the arguments.
dependencies = (Dependency(module="matplotlib", package=None, name=None),)

dependencies_installed = False

def import_module(module_name, global_name=None):
    """
    Import a module.
    :param module_name: Module to import.
    :param global_name: (Optional) Name under which the module is imported. If None the module_name will be used.
       This allows to import under a different name with the same effect as e.g. "import numpy as np" where "np" is
       the global_name under which the module can be accessed.
    :raises: ImportError and ModuleNotFoundError
    """
    import importlib

    if global_name is None:
        global_name = module_name

    # Attempt to import the module and assign it to globals dictionary. This allow to access the module under
    # the given name, just like the regular import would.
    globals()[global_name] = importlib.import_module(module_name)

def install_pip():
    """
    Installs pip if not already present. Please note that ensurepip.bootstrap() also calls pip, which adds the
    environment variable PIP_REQ_TRACKER. After ensurepip.bootstrap() finishes execution, the directory doesn't exist
    anymore. However, when subprocess is used to call pip, in order to install a package, the environment variables
    still contain PIP_REQ_TRACKER with the now nonexistent path. This is a problem since pip checks if PIP_REQ_TRACKER
    is set and if it is, attempts to use it as temp directory. This would result in an error because the
    directory can't be found. Therefore, PIP_REQ_TRACKER needs to be removed from environment variables.
    :return:
    """

    try:
        # Check if pip is already installed
        subprocess.run([bpy.app.binary_path_python, "-m", "pip", "--version"], check=True)
    except subprocess.CalledProcessError:
        import os
        import ensurepip

        ensurepip.bootstrap()
        os.environ.pop("PIP_REQ_TRACKER", None)

def install_and_import_module(module_name, package_name=None, global_name=None):
    """
    Installs the package through pip and attempts to import the installed module.
    :param module_name: Module to import.
    :param package_name: (Optional) Name of the package that needs to be installed. If None it is assumed to be equal
       to the module_name.
    :param global_name: (Optional) Name under which the module is imported. If None the module_name will be used.
       This allows to import under a different name with the same effect as e.g. "import numpy as np" where "np" is
       the global_name under which the module can be accessed.
    :raises: subprocess.CalledProcessError and ImportError
    """
    import importlib

    if package_name is None:
        package_name = module_name

    if global_name is None:
        global_name = module_name

    # Try to install the package. This may fail with subprocess.CalledProcessError
    subprocess.run([bpy.app.binary_path_python, "-m", "pip", "install", package_name], check=True)

    # The installation succeeded, attempt to import the module again
    import_module(module_name, global_name)

class EXAMPLE_OT_dummy_operator(bpy.types.Operator):
    bl_idname = "example.dummy_operator"
    bl_label = "Dummy Operator"
    bl_description = "This operator tries to use matplotlib."
    bl_options = {"REGISTER"}

    def execute(self, context):
        print(matplotlib.get_backend())
        return {"FINISHED"}

class EXAMPLE_PT_panel(bpy.types.Panel):
    bl_label = "Example Panel"
    bl_category = "Example Tab"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

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

        for dependency in dependencies:
            if dependency.name is None:
                layout.label(text=f"{dependency.module} {globals()[dependency.module].__version__}")
            else:
                layout.label(text=f"{dependency.module} {globals()[dependency.name].__version__}")

        layout.operator(EXAMPLE_OT_dummy_operator.bl_idname)

classes = (EXAMPLE_OT_dummy_operator,
           EXAMPLE_PT_panel)

class EXAMPLE_PT_warning_panel(bpy.types.Panel):
    bl_label = "Example Warning"
    bl_category = "Example Tab"
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"

    @classmethod
    def poll(self, context):
        return not dependencies_installed

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

        lines = [f"Please install the missing dependencies for the \"{bl_info.get('name')}\" add-on.",
                 f"1. Open the preferences (Edit > Preferences > Add-ons).",
                 f"2. Search for the \"{bl_info.get('name')}\" add-on.",
                 f"3. Open the details section of the add-on.",
                 f"4. Click on the \"{EXAMPLE_OT_install_dependencies.bl_label}\" button.",
                 f"   This will download and install the missing Python packages, if Blender has the required",
                 f"   permissions.",
                 f"If you're attempting to run the add-on from the text editor, you won't see the options described",
                 f"above. Please install the add-on properly through the preferences.",
                 f"1. Open the add-on preferences (Edit > Preferences > Add-ons).",
                 f"2. Press the \"Install\" button.",
                 f"3. Search for the add-on file.",
                 f"4. Confirm the selection by pressing the \"Install Add-on\" button in the file browser."]

        for line in lines:
            layout.label(text=line)

class EXAMPLE_OT_install_dependencies(bpy.types.Operator):
    bl_idname = "example.install_dependencies"
    bl_label = "Install dependencies"
    bl_description = ("Downloads and installs the required python packages for this add-on. "
                      "Internet connection is required. Blender may have to be started with "
                      "elevated permissions in order to install the package")
    bl_options = {"REGISTER", "INTERNAL"}

    @classmethod
    def poll(self, context):
        # Deactivate when dependencies have been installed
        return not dependencies_installed

    def execute(self, context):
        try:
            install_pip()
            for dependency in dependencies:
                install_and_import_module(module_name=dependency.module,
                                          package_name=dependency.package,
                                          global_name=dependency.name)
        except (subprocess.CalledProcessError, ImportError) as err:
            self.report({"ERROR"}, str(err))
            return {"CANCELLED"}

        global dependencies_installed
        dependencies_installed = True

        # Register the panels, operators, etc. since dependencies are installed
        for cls in classes:
            bpy.utils.register_class(cls)

        return {"FINISHED"}

class EXAMPLE_preferences(bpy.types.AddonPreferences):
    bl_idname = __name__

    def draw(self, context):
        layout = self.layout
        layout.operator(EXAMPLE_OT_install_dependencies.bl_idname, icon="CONSOLE")

preference_classes = (EXAMPLE_PT_warning_panel,
                      EXAMPLE_OT_install_dependencies,
                      EXAMPLE_preferences)

def register():
    global dependencies_installed
    dependencies_installed = False

    for cls in preference_classes:
        bpy.utils.register_class(cls)

    try:
        for dependency in dependencies:
            import_module(module_name=dependency.module, global_name=dependency.name)
        dependencies_installed = True
    except ModuleNotFoundError:
        # Don't register other panels, operators etc.
        return

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

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

    if dependencies_installed:
        for cls in classes:
            bpy.utils.unregister_class(cls)

if __name__ == "__main__":
    register()

I will probably update the example add-on soon so nobody copies this into their add-on without reading the note.

Suggest something like loader = importlib.util.find_spec(module_name) to check if install required.

@batFINGER Sounds good, will improve/update the answer this weekend.

Or  ModuleNotFoundError Look forward to it.  Been coming at this from a different direction re checking for dependencies. (a deps tuple in bl_info dict would be handy, since it appears blender greps this out for fake module) This looks very handy for the next step. Consider it stolen, lol.

@batFINGER Posted the updated version.

This is cool and I want to star it. Would you consider hosting it on your github?

@Leander Sure, why not. I will create a repository this evening.

@Leander https://github.com/robertguetzkow/blender-python-examples

The answer currently does not include the trick to install without elevated permissions through --user and appending the user site-packages to sys.path because loading of the user site-packages was intentionally disabled (see T76993 and D6962). It still works though, in case somebody needs this.

Thank you for this very detailed answer! Is it possible to specify the version of the dependent library to be installed? For instance matplotlib 3.1.0 instead matplotlib 3.2.1

@Alexis.Rolland Yes, that is possible. You would have to modify install_and_import_module to take another optional argument, the version number. If the value is different from the default, then you can run subprocess.run([sys.executable, "-m", "pip", "install", package_name_with_version], check=True, env=environ_copy) where package_name_with_version is the concatenation of package_name, == and the version number.

@Alexis.Rolland Please keep in mind that this will cause trouble when there is already a more recent matplotlib version installed by another add-on though. Since there is no isolation between add-ons they all share the same modules and dependencies. Uninstalling the newer version is not an option as then the other add-on will likely fail to work.

Thank you @RobertGützkow for your answers. I'm encountering another issue. I tried pip install with subprocess, with both sys.executable and bpy.app.binary_path_python and my dependencies are being installed in c:\users\my.user\appdata\roaming\python\python39\site-packages instead of c:\program files\blender foundation\blender 2.93\2.93\python\lib\site-packages. Blender is running as administrator... any idea why? :-/ Thanks again!

@Alexis.Rolland Could it be that the dependency was already installed in your user site-packages? You need to exclude the user site-packages otherwise pip will think the requirements are already satisfied (see https://github.com/robertguetzkow/blender-python-examples/tree/master/add_ons/install_dependencies#installing-the-package).

You're the best!

Just used this and I had to make 2 changes: (1) Replace "bpy.app.binary_path_python" with "sys.executable" and add "import sys" at the top (2) Restart Blender after installing the prerequisites.


text:
Why cant i texture paint blender 2.82
I have UV unwrapped. I have saved a new texture map. I have linked it all together with a new material on the model. Cant texture paint in texture paint mode.
It will however let me fill a whole new colour.
https://drive.google.com/file/d/1vXeXwqVf8ogOvbcXhoiZnARl7yz26xMk/view?usp=sharing

You're using a texture which is black: remove it.


text:
Mesh Object Output doesn't work with edges in Blender Animation Nodes
I am trying to use Combine Mesh to make a simple line. I have two Vertex Locations connected to the input, and the output connected to Mesh Object Output. This shows two points in the desired mesh, as expected. If I try to then feed it a list containing one edge index [0,1], the vertices disappear and no line is drawn.
I also can't get Line Mesh to work, for presumably the same reason.
What's going wrong?
Below works as expected, but connecting the Edges Indices List to Edges Indices doesn't work.


text:
Smoke option missing in physics properties
Im using Blender 2.8.2 and there is no Smoke option on Physics Properties. How to fix it? Here is the screenshot

Smoke is a fluid...

It is under Fluid >> Flow >> Smoke


text:
Having trouble with Boolean and fancy fonts
I'm trying to use the Boolean modifier to etch out (difference) words into an object. I've have converted the font into a mesh. If I use a simple font, there is no issue. But when I try to use a fancy cursive style font, it makes the object I'm trying to etch disappear or just doesn't do anything. I've even tried using a simple square object to etch out, same result. So I'm sure it's not the object, but the fancy font. And unfortunately, the customer's logo uses a fancy font.

What blender version do you use? Please provide scrinshot and blender file. You can use this link: https://blend-exchange.com/ for uploading blender file. Also, probably, it will be helpfull in your case if you provide a link to the font, or give a name of the font.

In general boolean operations oftenly give incorrect result, espetually if you try to boolean objects of dificult shape. Universal solution is to avoid boolean if it don't give good result at first try. Instead of boolean you can use modeling - it will take more time but topology always will be better. Also if you try to substract or union text with some surface, probably it will be better to extrude this text using displacement.

maybe try Knife Project?

remesh your font object before use boolean


text:
Why does my 3D model disappear after applying remesh modifier?
I want to apply the Remesh modifier to a 3D model but when doing so, the model disappears.
I have very limited experience using Blender and have been unable to find anyone describing a similar problem (except for 2D text).
A blender file which reproduces the problem: http://www.filedropper.com/remeshtest

Have you tried unchecking "Remove disconnected faces" ? By default the remesh modifier only keeps one island

@Gorgious Thanks for the suggestion. I have tried that but it did not resolve the issue.

You need to up the "Octree Depth" higher than 10 or 11 but you will end up with way more geometry than what you have now

@Gorgious You are right. Increasing Octree Depth fixes it. As you note, the number of mesh vertices is increased substantially which unfortunately defeats the purpose.

As pointed out in comments: the model disappears because the default "Octree Depth" is too small in this particular instance. Increasing the Octree Depth sufficiently solves the problem.

Remesh modifier needs mesh with volume to work properly .
Flat meshes gives blank output as it cant compute the volume and mesh with holes produce a result with the holes filled.
also try instantMesh app github link
might give usable results
If you want to remesh flat/surface/text objects then use solidify before remesh then delete the extra thickness after applying the modifiers

This is not the issue in this instance since the mesh is not flat