text:
How to snap the right edge of a strip to the playhead instead of the left in video editor
I am making a fade out on a shot. I am using a gamma cross from the shot to a color strip. I have positioned my playhead on the place I want the right edge of the color strip to be, but when I make it snap to the playhead, the left edge of the color strip snaps to it, not the right edge.
I am looking for a way to snap the right edge to the playhead. Maybe an add-on? Or a built-in method?

If you just want to snap instead of offset, you can select the right head then Shift S; If you want to offset the whole strip, you can press F6 right after Shift S, then substract the strip length from the value by manual typing (length is shown on the N panel). This works for single strip anyway. You do need a small script for multi strips snapping Imho.

I am looking to snap the right edge of the strip. I am trying to move the whole strip, but I want the right edge to snap to the playhead, not the left.

You can do the trick with if len(bpy.context.selected_sequences) > 0: bpy.ops.sequencer.snap(frame = bpy.context.scene.frame_current - bpy.context.selected_sequences[0].frame_final_duration).
Unfortunately you cannot write something specific like an expression into the Frame field fo the RNA SEQUENCER_OT_snap when you use sequencer.snap as the operator identifier for a new key map item in your Input Configuration.
But here's a workaround based on another answer here with the advantage that you can use any scripts saved in text data blocks via a hotkey:
Workaround [use this line of code via a Sequencer Hotkey]
Preparations

Save the following Script as a *.py file onto your Computer:
import bpy

bl_info = {
    # modified version of zeffiis quick script runner, see https://gist.github.com/zeffii/2b488961226ee1ecefcf
    "name": "Sequencer Script Runner",
    "author": "Samoth",
    "version": (0, 1, 0),
    "blender": (2, 7, 6),
    "location": "Sequencer, Properties Panel (right)",
    "category": "Sequencer"
}

class GlobalScriptRunner(bpy.types.Operator):
    bl_idname = "sequencer.script_runner"
    bl_label = "Sequencer Script Runner"

    def execute(self, context):
        # or put own script here...
        textblock_name = context.scene.global_script_to_run
        textblock = bpy.data.texts.get(textblock_name)
        if textblock:
            textblock_as_string = textblock.as_string()
            exec(textblock_as_string)
            return {'FINISHED'}
        else:
            return {'CANCELLED'}

class ScriptRunnerPanel(bpy.types.Panel):
    """Creates a Panel in the Sequencer Properties Panel"""
    bl_label = "Script Runner"
    bl_idname = "SCENE_PT_script_runner"
    bl_space_type = 'SEQUENCE_EDITOR'
    bl_region_type = 'UI'

    def draw(self, context):
        layout = self.layout
        layout.label('Script to run from Shortcut')
        layout.prop_search(context.scene, "global_script_to_run",  bpy.data, "texts")

def register():
    bpy.types.Scene.global_script_to_run = bpy.props.StringProperty()
    bpy.utils.register_class(GlobalScriptRunner)
    bpy.utils.register_class(ScriptRunnerPanel)

def unregister():
    bpy.utils.unregister_class(GlobalScriptRunner)
    bpy.utils.unregister_class(ScriptRunnerPanel)
    del bpy.types.Scene.global_script_to_run

Select it via Install from File... in the Blender User Preferences' (Ctrl Alt U) Add-ons tab and enable it.

Save the above Code line that does the trick into a new Text data block in a Text Editor view.

Usage

Assign a new Hotkey for the Add-on:

Select Sequencer and then Sequencer (Global) in the Input tab in Blenders User Preferences.
Scroll way down and Add New
Put sequencer.script_runner into the Operator Identifier Field
(You can see that it worked when the Key map events title will change to "Sequencer Script Runner" and the RNA changes to SEQUENCER_OT_script_runner)
Assign a Hotkey Combination, probably use Keyboard and Shift Alt S

Open a Properties Panel in the Video Sequence Editor
Select the above created Text data block via its name in the Script Runner panel
Just use the newly assigned Hotkey with some selected Strips (I tested it with a Color Strip) and enjoy ;-)

Explanation
You could put your Script lines directly into the Add-ons code into the def execute(self, context): block (where I placed the comment # or put own script here...) and omit the whole Panel creation stuff below. But this will reduce your abilities to this single usage example.
This way with the selectable Text data block you can save multiple ones, name them accordingly and run any selected one of them via the same Hotkey. And this has the huge advantage, that you can do context related stuff in there. You will notice that the above Script line won't work when you simply put it into a Text data block and hit Run Script (which already has a Hotkey assigned). That's due to your cursor not being above the VSE when you hit Run Script and therefore Blenders context is wrong for this to work properly. This isn't the case when you selected a Strip and then call the Script via this Add-on via the newly assigned Hotkey. Then you'd still be hovering over the VSE, so the context for the Script line is fine and it does what you asked for.

I don't know much about the python workings of Blender, as I'm a bit of a newbie. What does any of this mean?

When you post this line of code into a Python Console (You can change any View in Blender into one with the little Icon in the left corner of the Header bar) and hit Enter you'll get the result that you want. And this linked Answer shows you how to use a Hotkey to trigger this line of Python after you pasted it into a new Text Block in a Text Editor View so that you don't have to always press "Run Script".

I put the script in the text editor. But I can't figure out what to put in the hotkey setup. text.global_script_runner? I have no idea.

@XamuelDvorak I added a detailled explanation. Does this work for you?

Yes. But for some reason, it just doesn't work.

@XamuelDvorak It works for me... Are you able to reproduce each single step exactly as described or are you stuck somewhere?

When I put in the sequencer.script_runner the title changes to SEQUENCER_OT_script_runner. When I try to use my keyboard combination, nothing happens.

Did you try to follow each step without variation first? Because it works for me this way. Probably your hotkey combination is already in use? And your new hotkey title should change to something a bit different. Why does this happen?

I used ctrl-shift-alt-s, which I'm fairly certain is not already used.

Follow the description step by step - I just did (and added an error handling statement when no script is selected to the code line) and it worked just fine here with a Color Strip. Strictly use my suggested values first to prove it works and adapt them to your needs afterwards... one of my steps produces an error, please tell me.

@XamuelDvorak Save that first line of code as a .py file and use the Script Runner Add-on by goodspiritgraphics.

Great! It is all working now. Thank you for your help. The step I was missing was the enable step. But now it's all set up.

To position the right edge of a strip to the playhead I do the following:
Shift+S to position the left edge then G-25 (assuming 25 is the length of the clip I want to align).

Related: http://blender.stackexchange.com/a/47747/2843


text:
How to disable confirmation dialogs for simple operations
I have just started using Blender (for video editing), and I have run into one thing that just drives me crazy.
Whenever I try to do even the most trivial operation, there is a popup asking to confirm that I want to do it. There is no purpose for this, as there is an undo feature, and it is a constant annoyance.
Is it possible to disable this feature? If so, how?

what actions are you getting conformations for?

Save file, and delete strips, mainly.

About the save confirmation you could try this addon Simple Carnival Save File No Confirmation

source: Stack Exchange

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

sort: votes


text:
How can I delete a UV unwrapping to start again?
I unwrapped everything automatically and it endend up being really bad for painting. How can I delete the unwrapping and start again?

You can start again and re-do the UV unwrap just by doing the unwrap command again. In edit mode press U and select any of the methods. The UVs will be redone with the new method and the old UVs will be discarded. The mapping methods are explained here.
There is one exception to the above and that is UV pinning. If any of the UV vertices are pinned (they are red), you need to unpin them first with Alt+P. Pinning prevents UV vertices to be re-done.
Deleting the UVs is another thing. One mesh can have multiple UV unwraps and you will find them in Mesh Properties:

You can delete any UV map completely with the - button.
If there is no UV map awailable, the unwrap operator U does create one automatically when unwrapping.

The steps are as follow.

Enter Edit Mode.
Select all faces ( A )
Hit U select "reset"

That's all to it. Your UV should be reset to the default starting point.

This doesn't answer the question

This doesn't get rid of the uv map, it just kinda stretches all the uv area, making things even more annoying to work with than when I screwed things up before.

@Ram It is the question and the answer resets the UV. I think you guys were looking for a solution for a different problem ... OP wanted to "RESET" to starting point. That's all this step is about. It does not magically give you a nicely layout UV which is pure lazy on your end.

If you want to have a clean slate on your UV map window as opposed to doing a RESET and having a placeholder UV instead, press space and search for "Remove UV Map".

In 2.8 in properties  choose Object Data  scroll down to uv maps you can delete your uv maps there as well.

In version 2.93, click UV Editing and in Object Mode, select Material Properties and remove the material by clicking the minus sign -.

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

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


text:
Deforming a modified Mesh to Match a sculpted Mesh with an extra Subdivision applied
I want to add some detail to my model using the Multires modifier, sculpting and then baking it to a normal map and applying it to my simpler mesh.  Before I did this, I stupidly applied the basic subsurface modifier (with a factor of two) that I had already added to my mesh, so now it had all these extra vertices.
Of course my thinking was, "I'm just going to create a multires mesh and bake the normals back to the original model, so it doesn't matter if I apply my subsurf modifier and add a hard 2 extra layers of subdivision."
I haven't worked a ton with sculpting and multires, and I'm much better for the experience, but I figured out as I went along the reason this turned out to be dumb.
I ended up making a few significant tweaks to my character through the sculpting process, pushing them outside of a reasonable change to be recorded in a normal map.  It was only when I went to apply the changes to the base mesh that I remembered that I had applied the two extra layers of subdivision, so my base mesh was still higher res by a power of 4.
I of course still have a copy of my base mesh without the subsurface levels applied, but I cannot use the "Reshape" option by adding a multires to the original mesh because the two meshes have a different number of vertices.
Right now my compromise will have to be to bake the normals, edit the normal map to remove the areas that are significantly different, and re sculpt those changes the proper way.
However, I'm hoping that there might still be some way to displace the original mesh to align with the vertices of the modified mesh, as they are 90% the same.  I thought maybe the skin modifier?  I'm going to toy around with some ideas now, but hoping maybe someone will have a quick and easy solution in the meantime, or in case I can't figure it out.
Thanks a bunch!

Is there any factor that stops you from modifying your base mesh using the sculpting tools or edit mode to fit it to the new mesh?

Nope, and this is what I ended up doing.  I was just trying to learn if there was a way, in case I come across a similar situation, to save an hour of resculpting.  Hopefully now that I've had more experience with multi res sculpting, I won't make that same mistake again, but if nothing else, it did give me a fun reason to play with the shrinkwrap modifier which I hadn't really done.

Shrink Wrap Modifier
Hi Blazer, sounds like you have a good workflow going for your project, and it sounds like you're currently looking for the shrink wrap modifier. You can add the shrink wrap modifier to the lower res object, and then in the target field, add the name of the multires object. Before you add the shrinkwrap modifier, you may also want to put both objects in the same xyz space on different layers, and enable the xray option on the lower res object. In a sculpting/retopology/baking workflow, the shrinkwrap modifier is great tool.

Thank you!  I did stumble across this as I was poking around for an answer but unfortunately it loses a lot of detail.  I surmise that the reason for this is that when the mesh is subsurfed, it naturally smooths out the peaks and valleys. so when it then conforms the less detailed mesh (with larger peaks and valleys in order to achieve the correct geometry once subsurfaced) to the subsurfaced mesh it then brings those peaks and valleys on the base mesh down and up respectively.  Then when you throw on another subsurf modifier, your peaks and valleys are double smoothed/subsurfaced so to speak.


text:
Python Code In Work Area
I have what most experienced Blender users would most likely consider to a minor problem, but to me, a nearly blind old man with numerous health issues who knows almost nothing about Blender, this is a real show stopper. All I about it is how to set up an Add-on named Blender2SCS, which sets up the program to allow importing, editing and exporting of SCS Software models from Euro Truck Simulator 2. In the game are various companies where the player gets jobs, picking up and delivering cargo in semi trailers. Once properly set up, the extent of my ability is to import company sign models and export them for use as other company signs.
Here's the problem I have. I'm getting very twitchy in my old age. I had just opened a sign model and I twitched, a particularly big one, and I hit the keyboard and the sign model I was preparing to export disappeared. I thought I must have closed it and went to re-open it. Everything seems normal when I open the program, select my Operator Preset, etc. But no matter what model I open, the work area in Blender is all text, which is so small I can't read it. Normally, I would copy it and put it in my text editor and see what it says, but it won't let me copy it. Looking at a zoomed in screenshot of it, I can see it is Python code.
I have no idea what changed or how to set it back to displaying models again. If anyone knows about whatever mode this is and could tell me how to set back the way it was before, I would greatly appreciate it. I know I could install the latest version and start over, but it's possible that Blender2SCS won't be supported in it (it's no longer in development) and I would have to revert back to 2.78c again, so I wanted to see if anyone could tell me what happened and how to undo it first.
Thank you!
James
PS; I did not know what kind of tag this required, and your page for listing them isn't available. So I chose "modeling", even though it may not apply. It wouldn't let me use "settings".

Please add images to your post to show the issue. See: https://meta.stackexchange.com/questions/75491/how-to-upload-an-image-to-a-post

Well... Now I am really showing my ignorance about Blender. Last night I tried everything I could think of. I clicked on anything and everything that looked like it might be the right thing to change it back, and found nothing. But as I was making a screenshot, I saw a button I didn't see last night (my vision is clearer this morning) and I don't remember what the label said exactly, but "previous" was part of it, so I clicked on it and it changed it back to the model I had been trying to export last night.
But it's Murphy's Law of Seeking Help... As soon as you ask for help, you figure it out yourself!
Thanks anyway...

What button exactly?

It sounds like the 'Back to Previous' button as found in the top header when you set a view to full screen, by, for example, opening a file browser.

It's likely you maximised the area for the Info pane, otherwise known as the error report window... Which tends to make for horrific reading.
Hidden under the topmost menu bar is the Info pane.

For a casual view of it, position your mouse on the menubar border (orange) and left-click-drag the border down. And drag it back up when sufficiently appalled.
It's likely you accidentally RMB-ed the Menu bar slightly off-target (or, hit CTRL-Up Arrow on the keyboard). The RMB pops up a short menu, inviting you to 'Maximize Area' (of the Info pane). CNTL-UpArrow does the same thing without the pop-up Either way, Bam: a screen full of Python Hell.
To Fix: Put the mouse in the window and hit CNTL-Up Arrow again. Or CNTL-Down Arrow. Or if you've just revealed a part of it, as you see in the image, drag the pane back up (but this is fiddly: I'd recommend the Arrow keys.)
Best way to think about the UI is like this: All windows have a menu bar UNDER it. So that top menu bar must have a window associated with it... We just can't see it.

Whatever the cause, using the "Back to Previous" button was useful, but the problem persisted. As it turned out, my solution was the best idea I've had since I started using Blender, which was to update to 2.79b. The first thing I always do when I update is increase the font since so I can see things better. That did not always work very well, as even though the text would get larger, the space for the text did not. But even though that put a limit on how large I can make the text before it became unreadable, I did what I could out of necessity.
When I went to do this time, I saw there is a new field under "Display" labeled "Scale". I set the Scale to 3.5 and for the first time, I can actually read all the labels and text in the program. To the developers, I say a great big Thank You for that! I might actually be able to learn something about Blender now, other than the few things I know how to do. I saw a video of a guy making a tire for an off road truck last night and I have to say it was very impressive. Now I need to find some tutorials for the Blender2SCS addon, as I can't figure out how to save a model if I modify it, such as moving or adding something to a model before I export it.
Thank you all for your kind assistance and suggestions.

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


text:
blending two textures terrain
I am working on a terrain and want to blend two or three textures. Rocky texture for the top of the mountains and then more or a desert texture for the bottom land. Someone asked this similar question sometime back.
Blending two textures together
While someone answered it was not really helpful for me. I get around in the nodes editor just enough to be dangerous. I know I need some mix nodes and texture generator but and maybe a Texture coordinator but not sure how to hook everything up. Any Ideas?


text:
imported object loses Textures when I change to Cycles
Well I read the other topics similar to this but would like a fuller explanation on how to fix this problem if there is one. I have figured out how to load static Daz objects into Blender with the texture maps applied. Now that is good news.  But when I change from Blender Render to Cycles some of my excitement is gone as the textures disappear and the object turns white. With the new Blender 7.9 is there an easy way to fix this. I really don't want to unwrap ever model I bring into Blender so I can re-texture it.  How can I keep my materials from the Blender Render to Cycles?

There is no version 7.9, we are currently at 2.79? You can't just import models and expect textures to work, and you certainly can't switch render engines and expect materials to keep working. Remake your materials for the target render engine, no need to unwrap

Well you are correct on the version that was a goof on my part. I did mean 2.79. How does a person remake the materials for the target render engine? This is the part I am unclear about. I did some checking on the internet and some say  you can fix it in the node editor but don't say how to fix it. The model I have is a low poly man and I tried to put the face texture on his face but it did not go well ha because I was experimenting. So any help would be appreciated.


text:
How to make image texture transparent
I am making a white curtain and want it to be somewhat see through. I am using and image texture that is jpeg and not png. and wonder if this makes a difference. I have seen others make objects transparent but I just can't get the nodes to work with this white curtain. Thanks
I should mention that I am using Cycles and Blender 2.79a

JPEG does not support alpha channels. This will mean that the Alpha returned by the Image Texture node will be a constant 1.0.
The only simple solutions will be to either convert your image to a PNG or similar and add an alpha channel or to use the properties of the image to simulate alpha - for example, if the ‘background’ is pure black and the curtain doesn’t contain any black then simply use a Greater Than node set to 0.0 to generate “alpha” directly from your color data (ie, wherever Color is not 0.0 you’ll get 1.0 for alpha).


text:
Curve Modifier and Texts
I have watched a couple of tutorials on wrapping text on a circle but I want to wrap a text on a square and came up with some strange results. I came up with the idea of using the Symbol text that was extruded to make a decorative boarder. But what happens is the symbols stretch more on the short ends of the rectangle. I tried using thew word spacing in the fonts with no success. Is there any way to accomplish what I am trying to do without the ends stretching or am I missing something?
What I did was select the lines going around my object and duplicated them and turned them into curve from mesh and then centered everything and then applied curve modifier and this was the result. Any Ideas?

Make sure you apply the scale on both the text object and deforming curve, also make sure you curve has uniform scale and is set to 2D. Text and curve objects are generally not very suitable for deforming directly due to their bad topology

Thanks for the suggestions. The 2D option took my rectangle path  object and made it into one line so did not use it.  I  was able to get it to work but not sure what I did. But then their is still the trick of getting my border objects even around the curve object.  This would be nice way to create borders for square objects. This time I also used a nice decor object  instead of text. But was also able to get the text to work but as stated need to figure out how to get the objects even around the rectangle path.


text:
Smoke Domain and Divisions
I am using Blender 2.79c with Cycles Render.  I opened a new scene and then added under the objects tab. “Quick Smoke” using the Cycles Render. I worked just fine when played in the timeline.  I then opened the Physics Tab and under Smoke Modifier I use the Domain tab and set my Resolution to 90. Then if I use or click on the Flow Tab and go back to the Domain Tab all my setting changes back to the default. I tired it about six times and it does the same thing every time. Is this suppose to happen?  Does changing from Domain to Flow and back to Domain suppose to change the settings back to the default settings?
Seems very strange to me but then I am still in the learning stage. Any ideas?
Thanks

Good to know thanks for taking the time to answer.


text:
What programs make a roughness map?
It seems with the PBR materials that some tutorials are using a roughness map. Some say this is an inverted spectacular map but I don't really know that much about it. While is seems that people are using roughness maps I don't know how they are generating them or what programs they are using aside from  Substance B2M. If the roughness map seems to be used in Blender then what other programs create a roughness maps?
I don't own Photoshop so that option is out for me.
Thanks

For Specular based shader system you need:

specular texture (effects the reflection color)
glossiness texture (effects the reflection sharpness)

In Cycles is used roughness, which is inverse of glossiness
In Blender Internal it is called hardness

For Metalness based shader system you need:

roughness texture (effects the reflection sharpness, inverse of glossiness)
metalness texture (effects how much is surface dielectric or metal)

You can make PBR shaders with both systems and you can convert between them too. A good article about this all is on Marmoset's site.
You can create these textures in multiple ways:

directly paint them with any 2D capable application (Photoshop, Krita, Gimp, Blender, Zbrush, Substance Painter, just about almost everything.. MsPaint, ..)
generate them from photographs (N Render, Substance B2M, Quixel, etc.)
generate them from (procedural) material by baking (Substance Designer, Blender, 3DMax, Maya, ..)

Thanks for the reply. I did read Marmoset's comments before but need to read it again. This world textures maps has a language all of its own. I am sure I don't get as much out of these articles as someone who is more familiar with the terms. I do have Photoshop 8X but don't have a clue what you mean when you say "paint them". I tried to find some tutorials online for making roughness maps via Paintshop pro and could not find anything.  Thanks again for you comments.

@Allen by paint I mean create from scratch. Either hand paint them, or use bitmap editing tools to create the desired black&white image. It is good to have some experience to know what values for different materials works well. What input for creating the textures do you have? This might help me figure out what you need better.

Thanks again Jerryno,  I will keep working on this. I created some seamless textures via PixPlant but this program along with many others at this time do not create a roughness maps. It will in the future but no time was given. I understand what you are saying and yes it would take some skill as bump maps are also black and white images. I will continue to research this out.


text:
Blender VFX Leaves Shadow Question
Hello I am currently working on a VFX series and in the scene I am working on I have a CGI Croagunk (a Pokemon) and he is in a forest I guess you could say so for the leaves casting shadows I rendered a musgrave texture rotating (I am also open to suggestions on another way I could do the leaves) I then imported the images into my scene to cast shadows onto croagunk as well as the shadow catcher. I am wondering how do I composite it so that croagunk remains in the scene and the leaves are not but their shadows are because when I render it the shadows that the leaves cast are there but the shadows on the plane appear in the scene. How do I get rid of those? Unfortunately I cant upload a picture on this but if you need one I can link you to my twitter.

So I feel very stupid but unchecking camera in the object info tab did it.


text:
Do not rotate when linking objects
I imported a file that was created by another program. At one point, It has a large group of identical components, but they are not linked together. I know I can press Ctrl-L to link them, but when I select object data, they are all rotated to align with each other (not preserving current rotation). How might I fix it so that they do that.
Re-linking mesh data while adjusting object transform to undo minor edit-mode tweaks seems to have a simmilar issue, but his fix did not work for me.

There is really no easy way to fix it other than manually one-by-one, or re-importing with different settings- Where was this imported from, a CAD file? Try using blocks for each object instead

No can do. It is a dae I pulled from the sketchup warehouse. Oh well.


text:
Putting glowing, debossed text on an uneven surface
I want to put glowing, inset text on an uneven rock surface, as though it had been carved there.

This is best done using a normal map and color texture that are applied to the rock.

you could use the Knife Project tool to draw the letters on the rock, then extrude inwards and bevel, but as Rjg says, it's certainly easier to use a Normal map


text:
Putting a greenscreened actor over a 3D model
I already have all of the tracking and keyframing and stuff done using the tools in blender, and I know you can add a 3D object into your video by clicking the "Set as Background" button in the movie clip editor. However, I want to add my now keyframed video over a 3D object. I initially thought I could just route the information from the tracked blender camera to the vse and layer it there, but I couldn't see an obvious way to do this, and I wan't able to find anything like this online. I also tried rendering the video and then importing the render to the vse or some other program, but the rendered video is just the original real video with the green screen a not-so-green color due to the keying.

Keying is done in the compositor as well as alpha over operations.

I've done my keying in the compositor, my question is how to get the composite output from the compositor into the vse.

Add a 'scene' strip with overdrop and convert the alpha in the compositor to premultiplied


text:
Edges between flat faces and smooth faces are weird
I have a problem where the edges between flat faces and smooth faces are weird, but I can't figure out how to solve this. It shows up in render and makes the model look pretty bad. Any help would be appreciated. Thanks in advance!

Could you please post an Edit Mode wireframe screenshot of your model also? It may be helpful to solve your issue.

It's probalby a similar issue to the one shown in this post: https://blender.stackexchange.com/questions/734/how-to-smooth-shade-an-object-while-retaining-hard-edges?noredirect=1&lq=1

@Paul Gonet It dosn't let me add another link because I don't have enough reputation

@tacofisher I can't really figure out what's going on there :/

Go to the link I posted and search for the answer on the very bottom, you have to enable autosmooth , this will keep the smoothness everywhere except the faces that form an angle greater than a specified value (30 by default). All you need to do is check the box that says Auto smooth

@tacofisher soooo.... I can't mark a comment as an answer, if you'd like to post that as an answer then that'd be nice.


text:
How to create a totally black material?
I am trying to create something that is TOTALLY black. I don't mean something like diffuse, or glossy, where things will reflect off it and lights will light it up.
I mean something that is totally black.
Is this possible to do?

imho, in theory, you can't see any detail of a "totally black" object. Is this what you wish, a rendered black hole?

What renderer do you want to use? In Blender Render, you can try to enable Shading -> Shadeless in the material option, if you use Cycles, you can try this material setup:
https://blender.stackexchange.com/a/21535/13643

Well that is what a totally black diffuse shader will do in Cycles, in theory

Unless I am misunderstanding you. In cycles this is just a black diffuse shader.
This picture the sun is set to 1.

This picture the sun is set to 1000.

The material doesn't reflect or anything if you don't add fresnel or gloss to it.

Oh right, thankyou :) I tried that originally, and it didn't seem to work. I don't know what i did, but it wasn't diffuse, so I tried it again and it worked :D. Thanks so much!

Greetings from the future (10/31/2019). I do not know if this has always been the case, but simply creating any kind of material and deleting every node but the "Material Output Node" will have the same effect as a pure black material that ignores all light interaction. I tested this in Blender 2.80.


text:
Cloth vibrating with object collision turned on?
On the character rig I'm creating for an animation, I have a cape, which is a piece of cloth which is solidified to give it thickness. However, I want it to collide with the torso, head, and arms of the character. As soon as I turn object collision on, though, the cloth begins to vibrate, looking unrealistic and unusable.
There was someone else with a similar problem to mine, but nobody had solved it, so I'm asking again.
Here are a couple images, and the blend file is also attached.

First, above ^ is the rig, which shows the character, the cape / cloth deforming (vibrating) weirdly. You ought to be able to tell what the arms, torso, and head of the rig are.

Second is the settings for the cloth (I think that's all of them).
Also, Here is the blend file.
I hope this has been written clear enough, as I tend to ramble a bit.
Any and all help is appreciated!

I've had to get into soft cloth for another query in BSE and encountered this problem.  My solution was to 'freeze' the cloth physics, duplicate the cloth, remove the duplicate's physics and animation, and swap the original with that.  It's not a perfect solution but it's a lot better than watching it wriggling constantly. :)  Wait for someone to come up with a settings or driver answer.  If none, leave a comment and I'll pass on the procedure.

So, a few things. What do you mean by 'freeze'? Also, by doing that, I assume it won't be animated (which is kind of the point). Anyway, I'll have a go at this :).

Also, one fix I found (that didn't really go the way I wanted) was to increase the mass of the object. And once it got to around 0.6kg (which is too much for a cape, I think), it stopped vibrating, but acted like a REALLY heavy bit of cloth, not exactly what I wanted. Also I think I may have just possibly put that amount in the .blend file? If so, just change it to 0.01kg.

Freezing any constraint is to, as you mentioned, effectively remove the very engine you're needing to use.  If more physics are required. the engine needs to be used again.  It's a crude workaround but I use it constantly when objects have to be disconnected from constraints because of hang-over issues, or swapping parents, paths etc.. Animation and shapekeys are returned cleanly.


text:
Can you view two Render-Slots at the same time in blender?

I know you can save them and use an external viewer; not an eloquent solution however.
When I open up another window, it won't let me view two different
slots.  Each time I change one, the other sync's up.
They appear to be linked somehow.  How do you un-link them?

It doesn't seem to be possible to unlink them, however I think you can use render layers for that.

You cannot view different render slots simultaneously within Blender :-( There are some ways you could "hack" it, like saving it out and loading it into the image editor. But it'd just be a hack.


text:
Where can I control the length of the dashed line indicating the rotation of a sun lamp
Pretty much what it says in the title. I can't find the setting to control the lenght of the dashed line showing the direction in wich the sun lamp points. I'm working with large geometries at times and the dashed line can become so short that it is inconvenient to orient.

You can scale the lamp actually, all though it also moves the offset of the start of the lamp.

That the offset moves is a bit of a bummer - still: thanks! Note to self: sun scale =/= sun size.

You could always parent the Sun lamp to say, a single-arrow Empty, aligning the lamp to the direction of the arrow.
Bearing in mind the position and scale of the lamp will have no influence on its effect, (only its rotation,) it should be easy to find a convenient scale and location for the arrow for adjustment, and you can hide the arrow, too, without switching the light off.


text:
How can I cast a text element to float in animation-nodes?
I read some data from an external csv file into animation nodes, split the lines into individual parts (data columns) containing floating point numbers and want to use these floating point numbers in an object transformation.
However, the split lines are of type text, while the transformation expects float. How can I transform text to float? In the image the current value is 7.5 as can be seen in the debug node, I'd like to use this as input to the combine vector node.

In python this is easy enough >>float() so I tried to do this, using the script animation node, but could not figure out how to deal with input/output values within the script node.

Search in the menu (Shift+A) for Convert
It's a generic node that converts all to all.
There are other nodes that are not in the menu yet.

Sometimes it is added automatically.
In this case it is not cause you have to be a bit careful about the input, not to get a None. None is not taken well by some types of data/sockets and will give errors for vectors and others. So don't jump in using it all around :)


text:
Controlling 2.8 startup behaviour
The 2.8 manual states:

For locally extracted Blender distributions, the user configuration and run-time data are kept in the same subdirectory, allowing multiple Blender versions to run without conflict, ignoring the USER and SYSTEM files.

How exactly can I control this behaviour for "locally extracted" versions of blender?
Currently (2019-06-25) when I download the blender 2.8 development package and extract it on my harddisk, a change in the preferences will affect not only this specific version, but all parallel installations of blender. This behaviour is the same on windows and linux.
I'd like blender to ignore the USER and SYSTEM settings. How do I do this?

Apparently there needs to be a "config" folder with the appropriate files inside the version folder of a locally extracted blender version (e.g. C:\BlenderTest\blender-2.80.0-git.c0c1b4542f39-windows64/2.80/) for it to ignore USER and SYSTEM settings.
Creating this folder and copying over the appropriate files "userpref.blend" and optionally "bookmarks.txt" and "recent-files.txt" isolates the respective blender.exe from the user and system settings. Any changes made from this executable are saved in the local userpref file.
See this answer for file paths under common operating systems.


text:
How to add a datetime object as custom property to a blender object
I'm trying to add a datetime as property to an object like so:
from datetime import datetime
obj = bpy.context.active_object
obj['somedate'] = datetime.strptime('1900-01-01', '%Y-%m-%d')

...and get an runtime TypError about datetime.datetime not being supported as id-property.
Is there a simple way to add this support? (...or is it easier to work with string properties and convert as needed with strptime/strftime?)

import bpy

from datetime import datetime
obj = bpy.context.active_object
obj['somedate'] = str(datetime.strptime('1900-01-01', '%Y-%m-%d'))


text:
bpy: Show a blender popup_menu that waits until an external function returns and shows a spinner until then
I'm trying to write a script that shows a text information to a user while waiting for another process to finish. Ideally this also shows some kind of spinner, to show that it's still alive. I need this in my application since some of my functions are accessing external data via network, which can potentially take quite some time. I do need the user to wait for this process to finish (fire&forget is not an option).
My approach is to use a popup_menu, the threading module and a modal operator. The idea is to start longexternalfunction in a separate thread and while waiting for it to return, keep the user in the modal operator. The operator starts a second thread that generates a simple ascii spinner text and shows that text in the popup menu. I would imagine such a ui element to be quite useful in a number of cases if blocking processes potentially take some time to complete.
I found some examples to show function progress with the mouse cursor - which is a valid alternative for me, if this does not work, and looked into modal operators in general to come up with the code below. While I came quite a way I still have some issues though, that defy my understanding of blender ui programming (see also 'FIXME' tags in the code; code is running in 2.82 but with issues):

Biggest issue: I don't know how to update the text in the popup menu with the textspinner output
The textspinner runs longer than longexternalprocess of course, and I don't know how to stop the thread properly. Currently I get an error when the operator exits, event though I try to use __del__ to stop the spinner thread with a signal.
I guess there are some other (minor?) issues in my code, e.g. declaring and using class variables is not obvious to me in this context (bpy.props.Property... becomes an instance var?)

import bpy
from bpy.app.handlers import persistent
import threading
import time

def sleeper():
    ''' a long external process '''
    duration = 5.0
    steps = 10
    for i in range(steps):
        slpstep = duration / float(steps)
        time.sleep(slpstep)
        print('sleeping for: {}'.format(slpstep*i))

class My_OT_Info_progress(bpy.types.Operator):
    ''' Display text information in a popup on the screen, wait until process is finished '''
    # See here:
    # https://docs.blender.org/api/current/bpy.types.Operator.html
    # https://blenderartists.org/t/showing-progress-of-your-script-running/647230/9

    bl_idname = "my.info_progress"
    bl_label = "Info window with progress"

    # define some vars...
    info_text : bpy.props.StringProperty(name="InfoText", description="Info text for popup")
    icon : bpy.props.StringProperty(name="INFO", description="Icon for popup Info")
    stop_spinner : bpy.props.BoolProperty(name="stop_spinner")

    def __init__(self):
        self.spin = threading.Thread(target=self.textspinner)
        self.stop_spinner = False
        print("Init Start")

    def __del__(self):
        self.stop_spinner = True # stop spinner before we exit
        self.spin.join() # FIXME: throws after first run: AttributeError: 'My_OT_Info_progress' object has no attribute 'spin'??
        print("Clean up - End")

    def textspinner(self):
        ''' simple text spinner'''
        wait = 0.1 # duration between updates s
        timeout = 30 # max duration s
        for i in range (int(timeout/wait)):
            if self.stop_spinner: break # FIXME: throws on exit: ReferenceError: StructRNA of type My_OT_Info_progress has been removed
            self.info_text = 'Text{}'.format('.' * int(i%5))
            print(self.info_text)
            time.sleep(0.1)

    def execute(self, context):
        # FIXME: where should the code for the popup live? How do I update the info_text attribute of the draw function?
        #self.report({'INFO'}, info_text)
        info_text=self.info_text

        def draw(self,context):
            self.layout.label(text=info_text)

        bpy.context.window_manager.popup_menu(draw, title="Info", icon='ERROR')
        print('exec')
        return {'FINISHED'}

    def modal(self, context, event):
        print('modal start')
        while self.func.is_alive(): # while the long external process is running
            return{'RUNNING_MODAL'}
        return {'FINISHED'}

    def invoke(self, context, event):
        ''' this is executed when called by a user of with 'INVOKE_DEFAULT' '''

        # start a long external process as separate thread
        self.func = threading.Thread(target=sleeper)
        self.func.start()

        # start a spinner as separate thread
        self.spin.start()

        self.execute(context)
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

bpy.utils.register_class(My_OT_Info_progress)

Thanks in advance for any help with this! Appreciate pointers in the right direction - even if its only to tell me this is not the way to go about it ;)


text:
Is there a way to animate a camera along a curve at specific speed?
There are two ways to animate a camera along a path:
1) Follow path Constraint and 2) Parent (follow path) command
But they both have the same problem: The speed of the camera depends on the length of the curve. I want to have constant speed between different shots and scenes.
The way around is of course to calculate the length of the curve and determine the speed that way but it would be annoying and extra work since I have multiple separate shots.
Best regards, Eetu L

What specific speed?

I'm not sure how you can do it with the standard tools, but I figured out a way using animation nodes that seems to work (someone might need to check my math). I basically created a subprogram that takes a Spline input and an object input(what will move along the spline). Then using some math, it takes the spline length, number of frames in the scene and a speed number and moves all the objects along their respective curves at that speed.
Maybe this will help you out, here's an example file.

edit: Thinking through this, you can probably replace the end frame value with just a float number set to some high number. That way this would keep the speed the same regardless of how long the scene is.

Seems very practical! I have only one newbie problem: Why the 3d-view is not updating continuously? I see the movement only when I execute Node tree manually. I have Auto Execution set to always.

Do you have the animation playing? Mine works when I scrub the playhead, don't need to click "Execute Node Tree". Are you on the latest build of Animation Nodes (I'm on version 2.1.5, and blender version 2.82 built on 2020-02-04)?

You were right. With the newest setup it works! I was using the latest official 2.8 build and Animation Nodes 2.1. Thanks for the solution and support!

I came a cross the new problem about smoothness of animation. The question can be found from here:
https://blender.stackexchange.com/questions/167586

You could try adjusting the origin point of the camera such that it will curve at the point you want it to. Note: This only works if the camera doesn't need to be moved along another curve-path.

mmm... I think I didn´t get you. How the origin point of the camera effects the speed?


text:
Can we smooth selected faces to make curved surface more precise?
Is there a way to smooth selected faces to make curved surface more precise?
This kind of mathematical accuracy is of course easier achieved by using nurbs oriented workflow, but it could be handy to have in mesh modeling workflow too.
There are commands like flatten and smooth vertices, but those commands try to make the surface more flat or planar and don¨t take into account the basic shape or geometry. So this wanted feature could set points to approximated curve and use that as reference to move the faces.
Subdivision-surface workflow could be a one option, but is not usable in this modeling scenario.
Thanks!
Original mesh. The selected faces shows the curved surface, of which I am talking about

Same mesh from above. Red curve indicates the wanted curvature of faces.

One idea would be generating a super-smooth geometry using nurbs or splines.
Then using vertex groups and shrinkwrap modifier you could force vertices from one geometry to mimic the other.

Good idea and could definitely work! But it sounds far too tedious to make when these situations comes a head quite often.

Using the built-in smooth tool on two axes
Applicable to few cases

Temporarily rotate your model so that one axis is close to parallel to the edge loop.
Temporarily remove edges adjacent to the edge loops, so the edgeloop which needs smoothing are selected and not connected to anything else.
Execute the smooth operation W < Smooth and set the Smoothing parameter to 0.5. Increase the iterations as desired.
Reconnected the edges with the bridge edgeloop tool.
Realign your model.

To script the functionality, start with a bmesh and the get the edge loop. Then implement your custom smoothing function.
I have hacked a short script together. This also works on curved surfaces.

Select the starting edge of an edge loop.
Select the ending edge of the edge loop. (They don't have to cover all of the edge loop.)
Edit the smoothing and iterations variables and execute the script.

This also works with multiple edge loop simultaneously.

Another application example.

import bpy
import bmesh

def bm_from_me(me):
    if me.is_editmode:
        bm = bmesh.from_edit_mesh(me)
    else:
        bm = bmesh.new()
        bm.from_mesh(me)
    return bm
def bm_to_me(bm, me):
    if bm.is_wrapped:
        bmesh.update_edit_mesh(me, False, False)
    else:
        bm.to_mesh(me)
        me.update()

def get_loop_untill_selection(loop):
    verts = []
    while len(loop.vert.link_edges) == 4:
        loop = loop.link_loop_prev.link_loop_radial_prev.link_loop_prev
        verts.append(loop.vert)
        if loop.edge.select == True:
            loop.edge.select = False
            print(loop.edge.select)
            return verts, loop.edge
    return [], None

def smooth_coordinates(coords, smoothing, iterations):
    for i in range(1, len(coords) - 1):
        med = (coords[i - 1] + coords[i + 1]) / 2

        coords[i] *= 1 - smoothing
        coords[i] += med * smoothing

    if iterations > 1:
        smooth_coordinates(coords, smoothing, iterations - 1)

def smooth_loop(e, smoothing = 0.5, iterations = 1):
    edges = []
    for edge in bm.edges:
        if edge.select:
            e = edge

            for start_loop in e.link_loops:
                verts, end_edge = get_loop_untill_selection(start_loop)
                if end_edge is not None:
                    verts.insert(0, start_loop.vert)
                    if (start_loop.vert == e.verts[0]):
                        verts.insert(0, e.verts[1])
                    else:
                        verts.insert(0, e.verts[0])
                    for medge in [edge, end_edge]:
                        edges.append(medge)
                        medge.select = False

                    if len(verts) > 2:
                        co = [v.co for v in verts]
                        smooth_coordinates(co, smoothing, iterations)
    for e in edges:
        e.select = True

me = bpy.context.object.data
bm = bm_from_me(me)
smoothing = 0.5
iterations = 2
smooth_loop(bm, smoothing, iterations)
bm_to_me(bm, me)

Wow, I am really impressed! Your first workaround is handy, but your script is something more awesome. Actually, in the last few days, I have learned a little bit of Blenders Python scripting and I was curious to know that does bmesh-libary has this kind of functionality. Or is it possible to make as you did.
I think that you should turn this to addon ;)
Thanks! Blender and its community really showed its power again.

@Daniel Sounds great, feel free to experiment with the script, modify it and turn it into an addon yourself, once you are more proficient with python and the bpy module. Writing a quick example is fairly quick, but creating a tested, bugfree and versatile addon is much more time consuming, even if the quantity of the script remains the same. When I got some time, I'll add comments to document the functionality.

I am not sure I understand correctly. Are you trying to make the edge curve more smoothly?
I suggest selecting the edge. Make it straight first: Scale-Axis-0 (S x 0 for example).
Then hide everything else (Shift-H). Then turn on proportional editing, select the center vertex and move it the way you want, use mousewheel to affect the other vertices by the necessary amount to make the edge curve nicely.
Then make everything visible again (Alt-H).
If you do not hide the rest first the proportional editing will probably affect parts you do not want to move.

Nice, It worked well. But It was possible because in this example the amount of curvature is small. So if we come closer to sphere like object, this technique turns quite awkward.
I hope that there cold be something faster. This kind of feature could improve mesh modeling for sure. And it doesn´t sound too hard to make what comes to coding.

I accidentally found addon (not released yet) which is direct answer to my question:
https://www.youtube.com/watch?v=F1zdnbsyJbA


text:
Blending videos togateher
Absolute novice here.
I am a professional drone pilot, who is specialising in time lapse videos.
I have 10-15 sometimes more videos, filmed by flying same flight path at different time.
I would like to ask how can I stitch and mainly align the clips with Blender in a smooth Time lapse video. Perhaps aligning few points from each video matching same points from the next one?
I can not align by frames as every clip starts at different time depending on wind conditions.
I used to use Filmora, but that is so basic and I can not align clips there.
Thanks


text:
detect key pressed without bge
I managed to determine, if a specific key is pressed.
Is there a way how to determine if any key is pressed?
 if event.type == 'A':

I tried with
  if event.type == 'NOTHING':

, but unfortunately in vain.
Is it possible?

Writing the question has already helped.
if event.value = 'PRESS':


text:
Manipulate the 3D Axis Locally
How can I change or manipulate the Global 3D Space?..  I know if I click on Local it will change and I can move parts on the axis I need to but I can't rotate. Lever's, Hoses.. all in different areas around the part I need to animate to show functionality. Earlier I just rotated the machine to where I needed to animate a part on a particular axis. Trying to avoid that.

In the Properties Shelf (N Key) in the 3D view there s a panel called Transform Orientations. There you can create any custom coordinate systems that you desire and use them freely.

Right, and you can just choose from the choices in red-circled dialog box.. and there's an option to Create Orientation that pops-up on the opposite side of screen (T Key).  So I create one called "Jerry Rigged", and I can check on "Use View" "Use after Creation" or "Overwrite Previous".


text:
Material not showing up in Material (or Rendered) View Mode
First off, I read the Questions that may have my answer First.. but still no resolution.  Details are that I can't seem to understand why a mesh that I had to separate apart just so I could color the rubberized handle blue, around the chrome handle (which will animate 45 degrees and I have the key ring and tag set to Ridgid Body Physics).  I took a screenshot of the Red Handled Lever colored just fine, and the attempted Blue Handled Lever.  The main thing I can see with everything I've successfully colored (placed a Material On) is the list of materials at the very top. With the Red (and all other colors that show up successfully) there's just one material in the list, with no toggle up/down window to show the collection of materials.  But when I click on the attempted blue one, you can see the list, along with the toggle up/down feature present.

Please use proper spacing and paragraphs in your questions, that is awful to read

In edit mode select the part of the mesh you want to use a certain material, then select that material from the list and press the Assign button.


text:
Bezier Curve - Evenly space a bezier curve, without losing the curvy-ness
I am currently working on a project, in which I need a bezier curve to act as a path. The path needs to be as smooth as possible, and I cant affort to lose any of it.
I also need to space out the bezier curve, so that its evenly spaced everywhere ( cause of speed inside the other application ). I used looptools for this before, however this requires your curve to be mesh, which results in losing curvy-ness.
Might someone have a solution for this? Either by a feature of blender, a simple tutorial or a python script? Please let me know. Have been looking for a good solution for half a year already, so Thought it might be time to ask some questions haha.
Thanks in advance!

Duplicate of https://blender.stackexchange.com/questions/47359/how-to-evenly-space-vertices-along-several-segments-bezier-curve ?

Since its an old topic, and hasnt included any python scripting into it, I guess this topic can stay? As the old one isnt used I suppose


text:
Screw Modifier with varying Offset
I have a long spring modelled using a circle and screw modifier. But I do not want every iteration of the spring to be evenly placed. I want to be able to control where the iterations are dense and where sparse. How could this be easily done?

I don't know how to achieve this with the screw modifier, but this can be done with a modified helix curve and a circle as bevel object.
Method 1: Lattice
For this methods you will have to create a helix screw curve. This can be either done by creating a mesh with a single vertex, using the screw modifier and converting the mesh to a curve, or by using the included add-on Add Curve: Extra Objects which allows you to add a helix spiral by selecting Add > Curve > Profiles > Helix (3D).
Now add a Lattice object and (in object mode) place it so that it surrounds the spring. In the Data tab of the Properties area set a sufficient number of subdivisions.

Add the Lattice modifier to the helix curve and make sure to turn on Apply on splines' points.

With the Lattice selected, go into edit mode and move the vertices to create the desired spacing.

Method 2: Calculate control points' position
Another approach would be to move the curve's control points to the final position, with either a script or with some add-on. The add-on Animation Nodes provides an interface to enter custom interpolation curves which makes it very convenient to change certain parameters of the spring. But of course it's also possible to use a more simple for loop instead.
The following Animation Nodes node setup will allow you to modify both the spring's spacing as well as the radius:

Link to .blend file with the node tree

I like the second method very much! But as someone, who has never used Animation Nodes, I find the flow a bit difficult to understand. Especially because I cannot properly ascertain the connection between the three subtrees. A tiny bit of explanation would be deeply appreciated!

@SubhamoySengupta The three subtrees are “connected” through the Invoke Subprogam nodes. This is equivalent to defining some function in Python, e.g. def screw(resolution, turns, …) and calling this function somewhere else in the code. I've also added additional annotations to the node tree. If there's still something unclear, whether it may be with AN's workflow or this particular tree, please say so.


text:
Error message when saving file
When saving a file I get this error message:

unable to pack file,source
path'/users/JL/desktop/floor_tiles_02.blend/textures/floor_tiles_02_disp.png'
not found.

It's a texture I toyed with but did not use and I subsequently deleted the Blender file from my desktop.
How can I tell Blender it's no longer there and stop looking for it.
I' using Blender 3.4.0

Try saving your blend file with File > External Data > Automatically Pack Resources unchecked. Then reload the file and try again with the option checked. If that doesn't work you may have marked the texture with a Fake User so that it isn't automatically deleted when the file is saved.


text:
Can you find lost Nodes in the Node Editor?
Just for fun I moved the Nodes in the Compositing tab by a freaking high x-Value and y-Value and in two Groups. Now I can't recover it!
When I press A (to select everything) and then G X It shows that their value is infinite. I tried using the three auto recovers that Blender always makes in hopes of it being an older version so I can restore it. No success..
I tried to move it back with the negative value that I originally set, but I cant figure out the value (And it doesn't seem to move when I press S to see their position! [An arrow points at the Nodes]!
I tried copy pasting, I tried to turn it into to a group, but you cant put Render Layer0. I tried to press Ctrl+F to find specific Nodes. I tried to press the . on the Numpad to go there but Blender always crashed, just like with the Ctrl+F thingy.
Now I cant access to my nodes in the Node Editor again, I cant change them etc. I just need to connect the last node to the "Composite" Node and then everything is done. The Only thing I know is that the Mix Node has 2 Keyframes at the beginning of the Animation, so it's the so called "fade". I also tried selecting everything and then pressing F, but then a whitescreen just appears.
Does anybody know how I can set the Location of them to 0 or how I can connect the last node to the Composite node?? Please, you would tremendously help me, because I do not want to reexperience the hours of work that I put into this!
EDIT: I don't know how to program in Python, so please if someone can, help would greatly be appreciated!
And before you try, make sure to press A so everything is selected!
The file: http://www.mediafire.com/file/pcw2gcdcufpd9qv/Template+by+Khovinc+and+Torulus.blend

with all the nodes selected press NumPad . (period)

Please use proper spacing and paragraphs, your wall of text is very hard to read

If Blender crashes while centering the Node editor on the selected node then they are indeed moved to infinity and it's some sort of a bug so at least compositing might be better to be redone.
Still there's a way to move one node from somewhere you don't see to another one you can actially see with snapping in the Node Editor (just like in 3d viewport) with Shift+Tab and then choosing element to snap to.
With the node somewhere far away selected, choose Snap To X/Y to snap selected node to any border of the node to snap to. Then press G to move selected node and hover mouse over the node which is seen in the editor.

With this way the node from somewhere away will be moved to the current 2d viewport position.
It's also possible to select all the nodes, press S to scale and enter 0 to move them all to the same place (like written in your question), but the pivot point will be somewhere between the selected nodes so that's where they will be moved to (actually it might be not really important). Hence after scaling with nodes still selected press Numpad . (period) and you should see the nodes in the center of the editor.


text:
blender crashes when i run a script
I want to use blender's import-export PDB addon to generate nice images of a bunch of proteins. There are way too many PDB files to do by hand so this requires a script. Unfortunately when I run my script, blender immediately locks up and crashes, so I'm not sure what the problem is.
How do you think this issue can be solved?
Here is the script:
# render-pdb.py
# bion howard - 6 june 2018

# to run:
# open blender console with shift-f4
# filePath = "C:\\Users\\bion\\Desktop\\hack\\scrapers\\render-pdb.py"
# exec(compile(open(filePath).read(), filePath, 'exec'))

# imports
import bpy, os

proteinsPath = "C:\\Users\\bion\\Desktop\\hack\\scrapers\\protein"

def clear():
    bpy.ops.object.mode_set(mode='OBJECT')
    bpy.ops.object.select_by_type(type='MESH')
    bpy.ops.object.delete(use_global=False)

    for item in bpy.data.meshes:
        bpy.data.meshes.remove(item)

# loop thru folders
for dir in os.walk(proteinsPath):
    proteinPath = dir[0]

    # loop thru pdbs
    for file in os.listdir(proteinPath):
        if file.endswith('.pdb'):

            # set background transparent
            C.scene.render.image_settings.color_mode = "RGBA"
            C.scene.render.alpha_mode = "TRANSPARENT"

            # get the path to the pdb file
            pdbId = file[:-3]
            pdbPath = os.path.join(proteinPath, file)

            # import the pdb file to blender
            pdb = bpy.ops.import_mesh.pdb(filepath=pdbPath,filter_glob="*.pdb",use_center=True, use_camera=False,  use_lamp=True, ball='0', mesh_azimuth=32, mesh_zenith=32, scale_ballradius=1, scale_distances=1, atomradius='0', use_sticks=True, use_sticks_type='0', sticks_subdiv_view=2, sticks_subdiv_render=2, sticks_sectors=20, sticks_radius=0.2, sticks_unit_length=0.05, use_sticks_color=True, use_sticks_smooth=True, use_sticks_bonds=True, sticks_dist=1.1, use_sticks_one_object=True, use_sticks_one_object_nr=200, datafile="")

            # make media folder
            mediaPath = os.path.join(proteinPath, "media")
            if not os.path.exists(mediaPath):
                os.makedirs(mediaPath)

            # take a screenshot
            screenshotFileName = pdbId + ".png"
            screenshotPath = os.path.join(mediaPath, screenshotFileName)
            bpy.ops.screen.screenshot(filepath=screenshotPath, full=False)

            # clear everything
            clear()

thanks in advance,
Bion @ Bit Pharma

Which line is causing the crash? You can easily comment out bits of code and see what does/does not crash. Also make sure your script works as you post it here. Now C is undefined.


text:
How to fix black edge lines on blender Editor?

I have this simple stairs model (it is a flat model, no smooth) if you see it has a black edge, how to fix it?

Without knowing more about your model it will be hard to tell how to fix it.

Hi again, yes here more info: my model is a simple stairs in fact it is a cube with array modifier for steps, I removed doubles, but when I move slowly into Blender editor viewport I can see edges with black lines as image top, my question is how fix it? It is flat, no smooth one material purple color in this case...


text:
v2.8 support for 3DConnexion ndof devices
I have a wired 3DConnexion SpaceMouse which worked very well with v2.7.  However, it has lost its built-in functionality in Blender v2.8.
In 2.7, Blender worked well with the device with smooth pan, zoom, and rotation.
The 2.8 manual makes mention specifically of support for 3DConnexion devices: NDOF Configuration.  However, the functionality apparently isn't turned on by default.
I have tried resetting my preferences to factory settings and I've tried adjusting the keymaps in User Preferences, but I'm not entirely familiar with doing that.
Has anyone found the right settings to restore SpaceMouse functionality in Blender 2.8?
Tech details:
MacOS 10.14.6, MacBook Pro (15", 2018) and iMac (27", 2019)
3DConnexion SpaceMouse and SpaceMouse Enterprise

I have a 3dconnexion space mouse wireless and in my personal experience, all the basic functions do work without changing the factory settings. However blender still lacks "the what" is built in Fusion 360. In Fusion 360 the space mouse's focus is automatically "locked" to the object you are working on, so you can effortlessly fly around it like an angel. I haven't found the option how to do that in blender with the mouse which makes it more difficult to control.
HP Zbook G3 17" with Windows 10 PRO, 3dconnexion space mouse wireless and latest drivers.
Kody

I found the solution. In preferences, it's the "Deadszone" setting. By default, it's set to ignore movements unless the pressure is high enough which IMO, is too high. I dropped it down to almost 0 and now it's AWESOME!!!


text:
Does Simplify affect Adaptive Subdivision?
Pretty much what the above title says, I'm just using both, but wondering how much effect (if any) it has, and if so, how it works.


text:
Rigid Body Box Flaps
So... I have a cube I am making into a cardboard box, and i have 2 flaps on the sides.
Well, how would I get the flaps to bounce around/move when the object hits the ground?
EDIT: would I have to use different objects and parent them, or could I keep it as one object?

You can achieve this using Rigid Body Physics and Rigid Body Constraints to form a hinge between the box and each of the flaps.
Create the box and flaps as separate objects and enable 'Active' Rigid Body Physics to each. For more realistic physics you should also set the Mass on each of the objects appropriately (in the Physics tab in the Tool panel (T) select 'Calculate Mass' and then select Cardboard).

Create Empties to act as the hinges. It's a good idea to use the 'Single Arrow' form of empty as the 'hinge' will act around the Z axis of the empty and the single arrow points along the Z axis (so the arrow will lay along the length of the hinge). Position the empties pointing along the edge between the flap and box where you require the hinge.

Parent each of the flaps and each of the empties to the box. This way, when you move the box around in the scene the hinges and flaps will follow.
Select each hinge empty in turn and in the Physics properties window enable Rigid Body Constraint. Set the Type to 'Hinge', Object 1 to the box, Object 2 to the flap, enable Z Angle limits and set the Lower and Upper limits appropriate to that flap (the angle it's allowed to bend from its initial 'at rest' position. Since the flap is already in the 'closed' position, one of the limits should be 0 degrees to prevent the flap from closing inside the box. The other limit should be a suitable angle to prevent the flap bending too far outside the box (I chose +/-250 degrees (so limits -250,0 for one and 0,250 for the other) so that it would stop at 20 degrees off the side of the box).

Running the rigid body simulation should now produce something like this :

There are multiple ways: you can rig it with bones, deform it with shapekeys (although that won't behave as expected when trying to rotate the flaps), or use separate objects and either parent them (for animating) or use object constraints (for physics).
The "best" way (least problematic) would be to rig a simple armature, but using separate objects might be easier.


text:
Blender Game Character Jumping Issues
So...
I am making a simplish maze game.
My Issue at the moment is with making the character jump. I have a keyboard sensor for SPACEBAR that when the player presses it, it gives them 0.05 motion upwards.
Well, you keep going upwards until you let go of SPACEBAR, and when you do, you go slamming back down to the ground.
Another thing, you can jump 1. when your in the middle of a jump, or when you have fallen off the edge...

The blender game engine has a special function for jumping: first, make sure the Physics Type for your character is set to "Character". Then, in the Motion actuator, set Motion Type to "Character Motion", leave all the numbers at zero and set the "Jump" button. As the tooltip says, the settings for that are in the Properties panel, Physics tab (right underneath the Physics Type).
If you can't use the Character type for whatever reason, another way to make it work (the old way) is to add a collision sensor that references the ground, then "and" that with your keyboard sensor.
FYI: this seems to be a duplicate of How to create a realistic jump in bge, but since I don't have enough rep to flag it as such, I answered instead.

This would also provide the possibility of multijump, like jumping a secound time before reaching the ground.


text:
How to keep particles moving around inside an invisible box
I'm trying to create a kind of mystical shadow thing, made from black particles of varying size. Essentially, I'm using a shape (I've tried it with several things: A cube, a custom shape I made, a cylinder, a sphere, etc) as the outline, and trying to have a bunch of particles surrounding the edge of the shape, or else filling in the inside without going out, or much out.
I can get it to work for a still image by just having the start and end frames set to 1, but for an animation, how would I get them to constantly move around (not just bounce off the walls like when I tried having an invisible collision shape) inside the volume of the object?

For a solution less based on "particles" that might be more manageable with complex moving meshes, you could try a volumetric shader in which the density is animated using some sort of noise texture.

The general node setup is as follows:

In this case, just as an example, I animated the texture's location (via the Mapping node) and the Scale of a noise texture.  Both were done with keyframes, you could play around with these and other parameters to find something that looks pleasing to your eye.
Failing that, if you want something more "particle-y" but with sharper edges, another concept you might try to play with is an animated surface texture using shapes such as small spots.

Again, there's quite a bit you could do to tweak this concept.

Both of these methods work awesomely, thanks!

happy to help, glad you've got it working!

I think "brownian motion" is probably what you're looking for.

The setup for this example includes two cubes: one as the emitter, and one (slightly larger) as a collision object, so that the particles don't wander too far.  These particles are emitted from the volume and I gave them a very slight starting velocity from the normals, but most of the motion comes from the Brownian force  under "Physics".  It is important to give the particles a small amount of drag and/or damp, otherwise the Brownian motion will keep adding up and the particles will increase in velocity over time.

This works with a shape that doesn't move, but how would I do this with a character (an armature, or rig, whatever)?

If you are not wedded to "particles" perhaps an animated volumetric shader would be a better bet for this type of thing.  I can show you an example in a bit.


text:
Restart image sequence for each new particle?
I have a plane, with an animated image sequence as a material. I then have the object (below) as an emitter, emitting these planes as particles. The image sequence is a cyclic texture, so that it repeats again and again.
In short, rather than having the texture the same for every single plane, as it is below, how can I have it start again for every new particle as it appears?

What is your experience with Python?  Answers might be ... experience .. 1 month .. 2 months ... 4 months

Which version of Blender?  Which renderer Blender, Cycles, or other?

I'm afraid I have little or no experience with Python :(. I'm using Cycles. And also, I can't just use a group. The particular image sequence begins as a swirl (in the pic above) and then rotates, and then fades out, but it's all done in the image. I don't want a separate object for each different kind of particle, unless I can change the object, while keeping the rotation / location bla bla bla...

Have you ever used a group?  Have you tested with a group?

What you wrote in the comment is not clear to me and has a bit of sluggish flavor. My experiences would tell me you would improve your variety by the proposed answer below. The particular image sequence importance is not clear. Your wrote [location bla bla bla] which does not sound of clarity or energy. Maybe some rest will restore your ThunderBolt832.

Sorry, I had another look at your answer, and it suits what I wanted. Sorry for not being clear. Thanks!

Blender Particles has both an object and group feature.  You appear to already be using the object feature. With a bit of practice new particles can be added in 88 seconds or less.  We happen to show Materials and Texture for Blender Internal Render.  Cycles has a similar settings in the nodes.

Particle System panel showing location of group information.  Also showing some groups in the outliner window. Image above.

Material/Texture/Image Sequence/Offset and Start. Image Above.
Here is a video tutorial for creating a group.  It may or may not be the same version of Blender you are using.  You may choose a different tutorial on the topic of [groups]. I just did a quick search.
https://www.youtube.com/watch?v=R2Q6KcSho48
or the manual
https://docs.blender.org/manual/en/latest/editors/3dview/object/properties/relations/groups.html
One way to achieve your goal is to create a [group] of particles.

Each plane in the group can be different. Blender can use any of the planes in the group. This feature is in the particle settings use group. See image above.  I suggest you put at least 9 image planes in your group for variety.
This proposed answer does not use Python. If the OP has Python experience then the OP can do some of these tasks with Python.
The planes in the group will be different because you will take the steps to have different [start and offset and image selection quantity] values for them into the image sequence.
A suggestion is to create another plane as a duplicate of what you already have, then change the [start and offset].  The offset is within the image texture settings.  See image above.  Change to suit your needs.
If the original plane is in the group, then all duplicates will also be in the group.
Please verify and improve these suggestions and suit to your needs.


text:
How to make soft-body sphere stay inside concave object?
So, I have a soft body sphere inside a 'maze', (this is just the beginning of it) like this...
The sphere has soft body settings of:

The maze had settings of:

However, as soon as I played the animation, the sphere squished and jumped out the back part of the maze... What I wanted it to do was roll down the ledge.
NOTE: This may be a duplicate, but I've looked up around the place and nobody has had the same problem as me (that I've seen).

"Jumped out the back" indicates the sphere was over lapping with the back of the maze. If it is is not then the simulation resolution is not fine enough and the simulation thinks the tolerances do place the sphere to close to the maze back.

How would I update (increase) the resolution?

On the Scene tab under Rigid body settings there is "Steps per second" and "Solver iterations" But be wary, increasing them too much will slow the simulation time significantly.

The physics solver tries to minimise the work it does by making approximations. You can increase the number of steps the solver will calculate and the number of iterations attempted to improve the detail of collisions.
On the Scene tab under Rigid body settings there is "Steps per second" and "Solver iterations"
But be wary, increasing them too much will slow the simulation time significantly.

Why didn't you make the sphere active rigid body? I would have done it. And below is my way of doing the whole anim.
Add a cube; create the maze; give the maze's sides a different material and make it 100% transparent; put the ball inside; play the animation.

I believe that having a soft-body ball is a requirement of who asked the question (note the title!)

It wasn't made specific. If it's not, alternative ways CAN be presented and nobody must downvote it.


text:
Best way to rig so leg movements doesn't affect the body mesh
I'm making a cartoon character I'd like to animate. The body is spheroid with two legs coming out of the bottom half. When the legs move, I don't want the sphere portion to deform.
My model currently is comprised of about 10 separate meshes.  Should I

join them all into one mesh and then layout the bones in one armature and use weights to exclude the body from the leg bones?

or

keep the legs and body as separate meshes with an armature for each one? Is this method even possible? It seems I can still place bone constraints between separate armatures.

Most examples online go for one mesh, one armature. Are there things that cannot be done if I keep the meshes separate and use multiple armatures?
I have a preference to keep the meshes separate because I want to be able to change the meshes in the future without redoing all that weight assignment.

Your question is likely to be closed for the "calls for an opinion" reasons; but yes, it's possible to do it with multiple armatures. But it will make your animator's life easier if you rig it with a single armature and weight painting though since they won't have to switch between armatures when animating the character.
You don't have to use weight paint to get the right weights in this case.  Because each leg is a separate mesh, you can island select the leg in edit mode and place all of its vertices into the vertex group for the relevant leg bone.


text:
Does it matter if my planar quads are convex or concave?
I'm modeling static buildings for use in Unity. My quads are all planar (within one degree). With respect to efficiency and later material application, does it matter if they are convex or concave?

https://blender.stackexchange.com/questions/56755/flat-quads-or-why-is-my-mesh-so-funky

If you worry about how your mesh might be triangularized when exporting to Unity, the best option remains to triangularize yourself.

Add a Triangulate modifier
Check if your surface is preserved as you wanted
In the places where it isn't:

switch to edit mode and select a faulty quad
press Ctrl T to destructively triangularize it
use the menu Edge > Rotate Edge if needed

Export with the Apply Modifiers option enabled

You are doing this for static meshes, but for anyone else wanting to do this for animated meshes: do this only on parts that do not bend. Otherwise, either you can predict all possible bends and put the triangles manually as they need to be, or you need to change the topology in that area to avoid the wrong triangles.
Do understand that meshes get triangularized at the end of the day for rendering, so don't stress about avoiding triangles and putting quads everywhere, think instead about having the right edge flow and placing poles and triangles where needed.


text:
Drawing Texture With Different UVMap
I am trying n' to UV remapping a model
after remapping that I realize the position of the UV isn't same anymore...
so I wonder if I need to redraw the texture...
I suck at drawing...
so is it possible to get the older model texture to fit the new one with new UV Map?

If the mesh has that old UV map used when creating original texture then yes, see https://blender.stackexchange.com/questions/15510/possible-to-bake-texture-to-new-uv-map

Owh my...,  i create the new uvmap to another mesh...,  thanks for the answer :D


text:
Find Blender PNG (or other format) Metadata in Adobe
Has anyone had luck reading metadata saved in Blender PNGs in Adobe products, or for that matter, any other products?
Reason: I rendered an animation on 5 computers using the non overwrite/placeholder method, but unfortunately on one computer I loaded the wrong version of the file (doh!).  So every 5th frame or so is slightly inconsistent from the rest (different lighting, different hair particle configuration).  Not pretty in an animation.
Luckily (or so I thought) I edited the metadata fields within Blender on each computer to put the name of that computer in the metadata, specifically in the note field for each PNG.  However, in every application I've tried, from Windows, to Photoshop to Premiere to Adobe Bridge, nothing can find that metadata.  I've searched for the computer name, for a note field, and tried to create a not field in Premiere.  Nothing, anywhere seems to see it, but documentation says that PNGs support metadata within Blender.
I realize I'm using mostly Adobe products and while I'd love to be able to use them for this task, I'm open to other software suggestions for sure.  Even within Blender if it is possible.
Can anyone give me a tip on finding this data and filtering it so ultimately I can delete all files created by one computer so I can rerender just those files?
Thanks heaps and bunches!

imagemagick's identify command with the -verbose option usually spits out everything there is to know about a file for me (including blender-added metadata). May not be the most convenient solution on windows however.

Did you consider reporting a bug to Adobe?

I just tried XNViewMP and it seems to be able to read Blender's metadata on both JPG and PNG Files.
JPEG seems to be using several comment fields, as opposed to PNG which uses dedicated ones for each information. It does save a File field with the name of the original Blend file it was rendered from, so if you had them saved under different locations while rendering from different computers you should be able to identify which files were from the wrong file from there I think.
XNViewMP has some search functionalities, maybe it can search EXIF info, not sure. Anyway it uses EXIFTool to extract this information, so if that fails maybe you could go there directly if XNView doesn't work for you.
Edit: Just to be clear, in XNView, open your image view and under view mode while previewing the image file right click on the image and select Properties then check the ExifTool tab

Unfortunately (I forgot to include this in the original) the placeholder, non overwrite function renders all frames to a shared network directory, so no differentiation on which computer they came from there, at least that I can see.  I'll try the other tools you listed, and as I get a better grip on the problem, send a report to Adobe.

What matters is not where the rendered image was saved, but what blend file it was rendered from. Even if they were saved to the same network share, if the original file was named differently you can still identify where it came from.

Oh, duh!  I was looking at it backwards.  Thanks Duarte.

Hope it helps, added some more detail to the answer


text:
How to constrain two objects to face each other without a dependency cycle
Logically, to me, a Track To constraint affects and objects rotation to point it to a location.  So if two objects are always trying to face each other, this shouldn't create a dependency cycle issue.  Neither object really cares which way the other is pointing, only where the other is location.  Alas, Blender warns me of a dependency cycle as I try to set this up a scenario where two objects have track to constraints to face each other.  In a simple setup, it sort of works, but there are little glitches as you move the objects around at times, and if I add some other parenting and/or constraints to the equation, you start getting weird results indeed.  Here is a link to a simple blend file showing the basic setup and the issue.

So, since this constraint loop is causing issues, my question is if there is any way to make this scenario work.  It seems like it should be an easy thing to do, but in practice, not so easy.  Thanks!

Just parent one empties to each cone, and track each others empties instead of the cone directly.

Unfortunately this also creates a dependency cycle, according to Blender.  Like the basic method above, it mostly works, but in your video, I believe that right before you grab the second cone and move it, you can see that it is not aligned.  This is a symptom of the cycle, and in the console it warns you of the dependency cycle.  I did, however find a similar solution to this that works, which I will post below.

So, thank you to @Duarte Farrajota, because it got me on the right track.  I

Created an empty for each cone, and
parented the cones to their respective empties (I tried both a basic Blender parent and a "child of" constraint and both worked.)
I added the "track to" constraint to each cone and targeted it toward the opposite empty.

This method resulted in no dependency cycle detected, no weird issues.

I'd recommend suggest an edit to Duartes post instead... Both answers are nearly identical.

Use an empty controller or other non renderable object .. the two other objects can track to this empty controller.  The can both be parented to the empty.  That choice is yours.

You might also place the two objects on the ends of two separate 2-D non renderable spacer boxes(scaled plane) which can be scaled independently by distance if the two objects have some distance between them.  Blender has a constraint for this. Copy Location and Copy Rotation Constraints.  The two spacer objects can have a common parent.  The two origins of the cones have been moved for convenience.  The Two spacer cubes have a vertex group used in the constraints ... distant from the middle of the complex. The controlling empty can provide rotation.  The spacers provide distance.  The spacer can have different lengths. Please click on the image to see a larger image.

Loosely related
How to rig a shirt with buttons so that the buttons follow the mesh of the shirt


text:
Particles Emit from Collection instead of particle emitter
Here's a short video describing the problem: https://youtu.be/qrjjohJGhfg
I have set up a particle system where a face emits a couple of particles (this is actually a laser gun.)
As long as I have it set to render as an object, things work fine.  Particle shoots out from the face, and is rendered as my laser object.
But, because I'm rendering in Eevee, I also parented some area lights to the laser so that it would actually eminate light onto surrounding geometry (emission node currently doesn't do this in Eevee.)
So I created a new collection with the laser and its lamps, and place it into the particle system just as I did with the laser object, except now I choose "whole collection."
The odd thing is that now the particles are being emitted directly from the collection location instead of the particle emitter.  Bug, or feature?  Thanks!

Please Move your objects closer to the World origin for comparison.

Please [Exclude from View Layer ]. Try turning off the collection in the outliner and moving your collection to the world origin. This may allow an unblocked view and a visible render. –

As commented by atomicbezierslinger, this was a problem with the origin of the collection, when it is created, being the center of the scene.  This is as opposed to the object being used with its local origin when being emitted as a particle.
Moving the collection to the world origin emits it correctly.  This does, however, lead to the problem of having your original object right in the middle of the scene and causing you to move everything else away from that point in order to not see the original object.


text:
How do I create a custom panel that will append/import mesh files from blend files with custom preview icons?
I want to create something similar to this where I can have custom thumbnails for the mesh file that will be appended/imported from another blend file.

    import os
import re
import bpy
from bpy.props import *
import bpy.utils.previews
from bpy.types import WindowManager

# Append
class OBJECT_OT_AddButton(bpy.types.Operator):
    bl_idname = "add.object"
    bl_label = "Add Object"

    def execute(self, context):
        selected_preview = bpy.data.window_managers["WinMan"].my_previews
        category = context.scene.grass.cat

        # Append Particle System
        bpy.ops.wm.append (directory = os.path.join(os.path.dirname(__file__), "Blends" + os.sep + category + ".blend" + os.sep + "ParticleSettings/"), filepath=category + ".blend", filename=selected_preview)

        return{'FINISHED'}

# Update
def update_category(self, context):
    enum_previews_from_directory_items(self, context)

# Drop Down Menu
class Categories(bpy.types.PropertyGroup):
    mode_options = [
        ("Grass", "Grass", '', 0),
        ("Weeds", "Weeds", '', 1)
        ]

    cat = bpy.props.EnumProperty(
        items=mode_options,
        description="Select a Category",
        default="Grass",
        update=update_category
    )

# Generate Previews
def enum_previews_from_directory_items(self, context):

    category = context.scene.grass.cat

    # Icons Directory
    directory = os.path.join(os.path.dirname(__file__), "Icons" + os.sep + category)

    # EnumProperty Callback
    enum_items = []

    if context is None:
        return enum_items

    wm = context.window_manager

    # Get the Preview Collection (defined in register func)
    pcoll = preview_collections["main"]

    if directory == pcoll.my_previews_dir:
        return pcoll.my_previews

    print("Scanning directory: %s" % directory)

    if directory and os.path.exists(directory):
        # Scan the Directory for PNG Files
        image_paths = []
        for fn in os.listdir(directory):
            if fn.lower().endswith(""):
                image_paths.append(fn)

        # For each image in the directory, load the thumb unless it has already been loaded
        for i, name in enumerate(image_paths):
            # Generate a Thumbnail Preview for a File.
            filepath = os.path.join(directory, name)

            if filepath in pcoll:
                enum_items.append((name, name, "", pcoll[filepath].icon_id, i))
            else:
                thumb = pcoll.load(filepath, filepath, 'IMAGE')
                enum_items.append((name, name, "", thumb.icon_id, i))

    pcoll.my_previews = enum_items
    pcoll.my_previews_dir = directory
    return pcoll.my_previews

# Panel
class PreviewsPanel(bpy.types.Panel):
    # Create a Panel in the Tool Shelf
    bl_category = "Edger"
    bl_label = "Grass Free"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'

    # Draw
    def draw(self, context):
        layout = self.layout
        wm = context.window_manager

        # Drop Down Menu
        col = layout.column()
        col.prop(context.scene.grass, "cat", text="Category")

        # Previews
        row = layout.row()
        row.template_icon_view(wm, "my_previews", show_labels=True)

        # Add Button
        row = layout.row()
        row.operator("add.object", icon="ZOOMIN", text="Add")

preview_collections = {}

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

# Register
def register():

    bpy.utils.register_module(__name__)

    WindowManager.my_previews_dir = StringProperty(
            name = "Folder Path",
            subtype = 'DIR_PATH',
            default = "")

    WindowManager.my_previews = EnumProperty(
            items = enum_previews_from_directory_items)

    pcoll = bpy.utils.previews.new()
    pcoll.my_previews_dir = ""
    pcoll.my_previews = ()

    preview_collections["main"] = pcoll
    bpy.types.Scene.grass = bpy.props.PointerProperty(type=Categories)

# Unregister
def unregister():

    del WindowManager.my_previews

    for pcoll in preview_collections.values():
        bpy.utils.previews.remove(pcoll)
    preview_collections.clear()

    bpy.utils.unregister_module(__name__)

    del bpy.types.Scene.grass

if __name__ == "__main__":
    register()

What have you got so far, what have you tried and where did it fail? Could you post some example code snippets?

http://www.3d-wolf.com/uploads/2/9/9/4/29944523/grass_free.zip

It's a free addon by "Wolf" that utilizes blender files for libraries for some grass objects, I just can figure out about how he did that, you can download the script and check it out.

Is that code that you wrote or is that from the mentioned addon?

It is from the addon, I can't get it into my grips, there are two blend files from which the addon imports stuff, I can understand what he meant by context.scene.grass.cat, please can you check out the file and maybe give me some answers.

It is not clear what you are asking, your question is either too broad or you seem to be biting more than you can chew. How is it different from the addon you show us? Could you please edit your question and rephrase it to focus on what you don't understand or what you want want to achieve, perhaps show us code that you wrote instead?


text:
Why is viewport scene violet?
I've switched from C4D (getting too costly for a retiree) to Blender 2.8. I've created a simple scene consisting of the monkey atop a plane.  Why is everything in the viewport and eevee shaded in violet (see attached screenprint)?

You say "see attached screenprint", but there is no image attached.

this is not a duplicate to, "Why are all the textures in my file pink?."  That is not the problem he is having.

Would you mid sharing your .blend so we can see what's going on?

@Millard Could be if the environment texture isn't loaded.

I think your right, rjg, I didn't think of that,  @Dan Kuras, is there an environment texture?

I didn't know I had to use on.  It now works correctly.  Thanks


text:
Physics Colliders Explode Array of Blocks Prematurely
I'm starting to play with collision physics in Blender 2.82 and have created the test array of blocks that can be downloaded from
https://drive.google.com/file/d/1yMamDjInBclLC0ebdKVlnSzI_K7b8Wqq
Problem is that the array explodes immediately after Blender calculates the first frame. I've tried several different physics settings and have researched the net - both to no avail.
I suspect this has something to do with the Array modifier. Can someone tell me how fix this?

please share the blend file via stack exchange or make sure the link you send is available publicly.
Also try to include the screenshots of the issue.
As for as I know the collision doesn't work on array.
You should apply the modifier and make the block as separate objects.
and also has to make sure the origin is center of each object.

I did not allow enough space between blocs.