Equirectangular world-map UV layout - the sequel

Since you say you don't require any texturing, I've tried to accomplish what you want without any UV unwrapping, and I think I've got it working.

Add a plane, tab into Edit mode, make sure everything is selected (it should be, but if it's not, hit A once or twice until it is), scale by 2 on the X axis and add a loop cut like this (CtrlR, place the mouse near one of the longer edges, left click to make the cut, then right click to release without moving the newly created edge).

Select everything (A twice) and make some subdivisions (W > S). If you have the tool shelf visible, the settings for the subdivisions should be available at the bottom of it, otherwise hit T to show it, or F6 to open a dialogue with those settings.

Extrude the continents. Since you explained your own method of doing this quite well in this question, I'm not going to go into details about that. What I've done here is simply selecting some vertices by dragging the circle select tool around randomly, then extruding.

Make sure the bottom vertices of the continents are selected. With the way I extruded the continents, I simply hit CtrlNumpad +, but with your method, you may need some more elaborate way.

Select also the rim of the plane.
If none of the currently selected vertices are on the rim, hold Shift while selecting one corner vertex, then hold Ctrl while selecting the other three corners, then finally click the first corner again while still holding Ctrl.
If some of the currently selected vertices are on the rim, hold Shift while selecting a currently unselected vertex on the rim, which is next to a selected one, also on the rim, then, while holding Ctrl, select another vertex on the rim, next to a selected one, also on the rim, and make sure the distance between the last selected one and the one you're about to select is covered by a straight line of only unselected vertices. If the distance between them passes a corner, first select that corner vertex while holding Ctrl.

Invert the selection (CtrlI) and delete the vertices that are now selected (X > V).

Switch to face select mode (CtrlTabNumpad 3). Now you need to select all the faces that are connected to the rim of the plane. Select a face at one end of a continous string of faces, then, while holding Ctrl, select the face at the other end of the same string of faces. While holding Shift, select a face at one end of another string of faces, then, while holding Ctrl, select the face at the other end of the same string of faces. Repeat this until all the faces that are connected to the rim of the plane are selected.

Delete the faces that you just selected (X > F).

Zoom in and pan around to see if there are any edges like in the image below. If there are, switch to edge select mode (CtrlTabNumpad 2), select and delete them (X > E).

Tab back to object mode. Add another plane and repeat steps 1 and 2 above on the new plane, possibly with fewer subdivisions if you so desire. This plane will be the ocean. In the following I will refer to the first plane as "the continents" and the second plane as "the ocean".

If you do require UV unwrapping, now is the time to do it. In that case, tab into Edit mode, select the vertices highlighted in the image (make sure the corner vertices are not selected), add them to a new vertex group (CtrlG > A) and mark them as seam (CtrlE > A). Do this for both the planes before unwrapping.

Add an empty and set its rotation to -90° on both the X and Z axes. Select both planes (select one, then hold Shift while selecting the other). Add a Simple Deform modifier, set it to Bend, set the Origin to the empty and the angle to 180°. This will add the modifier only to the last selected of the planes, so move the mouse to the 3D view and hit CtrlL > I to copy the modifier to the other plane. Apply the modifier to both planes. A workaround to apply modifiers to several objects at once, is to press AltC > M with all objects selected.

Change the rotation of the empty to 0° on the Z axis (but keep it to -90° on the X axis). Once again select both planes and add a Simple Deform modifier, set it to Bend, set origin to the empty and this time set the angle to 360°. Copy the modifier as above, and apply it to both planes as above. Now you can safely delete the empty if you wish.

The next step depends on whether you UV unwrapped or not.

If you did not UV unwrap:
Select the ocean, tab into Edit mode, make sure everything is selected and remove doubles (CtrlV > D).
Tab back to Object mode and select the continents. Tab into Edit mode, make sure everything is selected and remove doubles (CtrlV > D). If you have any vertices and/or edges that aren't connected to any faces, select those and delete them.

If you did UV unwrap:
Select one of the planes and tab into Edit mode. Make sure everything is deselected (CtrlA to deselect if anything is selected). Go to the Object Data tab, select the group and click Select. Remove doubles. The group can now be deleted by clicking the - sign next to the vertex group list. Repeat this for the other plane. Then follow the steps to delete vertices and/or edges that aren't connected to any faces as explained above under "If you did not UV unwrap.

If you simply select everything and remove doubles after UV unwrapping, the UV map will look like this.

If you follow the steps above, the UV map will look like this.

Tab back to Object mode and select the ocean. Set the origin to geometry (Object > Transform > Origin to Geometry).Scale it up slightly, to make the continents slightly sunken into the ocean. Snap the cursor to selected (ShiftS > U). Select the continents and set origin to the 3D cursor (Object > Transform > Origin to 3D Cursor).

Hit Z to go into wireframe view mode. Add a bone (ShiftA > A > S). Tab into Edit mode and make sure the whole bone is selected. Rotate the bone to point roughly to the centre of one of the continents, and scale it down a little so it doesn't reach the surface. This will be the control bone for an entire continent. Extrude it a few times (with the bone selected hit E; you will need to select the first bone before every extrusion, or the extrusion will come out of the new bone). Point the extruded bones to the edge of the continent. These extruded bones will control the deformation as the continents collide. The more bones you add, the better control you will have. While still in Edit mode, add a control bone for another continent, and make some extrusions.

Once you have all the bones, tab into Object mode and make the armature the parent of the continents. Select the continents, then hold Shift while selecting the armature. Hit CtrlP and select a suitable option from the drop down menu. I used "With Automatic Weights" in my example, but I strongly suggest you use "With Empty Groups" and manually weight paint. I'm not going to go into details about that, but basically you'll need the groups affected by the control bones for whole continents to have that continent all red, while the groups affected by the extruded bones should be red around the tip of the corresponding bone and fade to blue further away. There are several questions about weight painting here on Blender.SE that will most likely be helpful if you don't know how to do it. You may want to rename the bones before parenting, to make it easier to know which bones controls what.

Hit Z to go back to solid view.

And the result:

At this point you can join the two objects into one. Make sure they do not have any UV maps and/or vertex groups with the same name. Rename the UV maps and/or vertex groups if necessary, but keep in mind that if you rename any vertex groups that are controlled by bones, you need to rename the corresponding bones as well. If the two objects have identically named UV maps and/or vertex groups, these will be merged into one map or group in the joined object. Once you made sure about this, select both objects in Object mode (first select one, then, while holding Shift, select the other one), then press CtrlJ. Don't use the Boolean modifier, as this is sure to mess up the rig.

I have two reasons for using a plane for the ocean, rather than adding a sphere directly. The planes are easily scalable to equal size, so no need to calculate the radius of a sphere, and they will have the same origin.

Credit should go to @LeonCheung for this answer, which I used to create spheres from planes.


how to parent a rigged grop of object using constraints to another object without messing up the constraint

close observation shows that your flaps control surface all are rigged and are parented to the box empty and it moves along with the rig and what you want is that the engine parts that you have made in another blend file that was imported to the current blend file needs to also follow along with the body . well parenting dosent hold good for these things since it just messes up everything be it the constraints etc .
you can use group instancing over here , heres how
so what you do is first select all the parts of the engine and press ctr g and the press shift a and select group instance you will see a replica of your engine parented to an empty axis use the empty to position the replica in the desired position . and with the  replica selected click on the main empty and parent it  to the empty using keep transform option . now you will see that along with the body the replica engine also moves when you move the empty . now you may notice that all the objects in the replica object look to be joined together to form a single object but you can edit every single object  it by editing the actual engine you can even scale the thrust controller empty and you will notice that even the replica will be able to do the trust vectoring , hope it worked , thanks and bye .


How I can distort image(movie clip) from rectangle to polar?

You can try using a texture node to perform a uv distort on the image by applying the blend texture radial.
otherwise you would have to distort the real uv unwrap or possibly use a modifier to distort a mapped mesh in 3d view.

EDIT:
So I imported this plane into Blender as Add > Mesh > Images As Planes
Then add an empty and clear the location of both "alt G"
Select the image plane and add 2 modifiers.
1. Subsurf, use simple, increase divisions to 6
2. Add a simple Deform modifier set to Bend.
3. Set Origin as Empty, then enter Deform Angle as 360 deg.
4. alter empty location if required.


UV Unwrap: Unwrap Mesh to fixed pixel per unit

David's comment was the answer I was looking for.
TexTools is perfect for that. While in UV Editing mode it allows you to calculate the actual Texel-per-Unit-Ratio. You can also set a specific texel density manually which scales the UV islands to that specific size.
It also offers many more options for UV editing.
A smaller version only to change the texel density ist the Texel Density Checker on Gumroad.
Both tools work together without interfering each other.


Scripting: How to correctly group objects

I finally realised I was the one making the mistake, called a blender guru and realised grouped objects didn't move together with the keyboard shortcut so it was just the selection I used to group the objects I was misinterpreting as the group behaviour after I moved the objects together afterwards.

After surfing the web I realised it was either the parenting property or I simply press a keyboard shortcut which brings a dropdown list to choose group and select all objects in it so I can translate at once.


When selecting the 3 diagonal lines, make sure your cursor is a cross hair and not arrows. you should see the screen turn gray and an arrow appear and that is when you should let go of the mouse.

To open the properties tab, make sure that your cursor is in the panel before pressing n.


I managed to access the energy property in game with this script

import bge
cont = bge.logic.getCurrentController()
obj = cont.owner
obj.energy = 1.0


Recommended way is to use low level API calls anyway. Create a new data block, create an object, link the data block and add the object to the collection in context:
import bpy

# Create light datablock
light_data = bpy.data.lights.new(name="my-light-data", type='POINT')
light_data.energy = 100

# Create new object, pass the light data
light_object = bpy.data.objects.new(name="my-light", object_data=light_data)

# Link object to collection in context
bpy.context.collection.objects.link(light_object)

# Change light position
light_object.location = (0, 0, 3)


Proportional editing excluding certain faces

In this case one can either edit the left or right side of the objects location. This is because X Mirror is active.

Disable it by pressing T to open the tools panel. Go to the options tab and uncheck X-Mirror.

For further reference, also make sure you're the "Apply shape in edit mode" option of shapekeys as that could change edit mode behaviour as well and you have chosen the correct proportional editing mode.


How to copy a rest pose between armatures?

You could use a Pose Library to store and reassign as many poses as you want.

A Pose Library  can also be shared among the rigs. Technically it is an Action, thus it can also be edited in the Action Editor mode of the Dope Sheet.


Particles appearing at different locations when rendering

you have set the visibility of your cube in trash  in viewport to "hidden", but not in render.
so press the filter button

tap on "disable in render"

and then mark your cube in trash as "disable in render" too...else it will be rendered.


How to focus on different windows across multi-monitors to hit a hotkey?

This is an issue with the window managers in Windows and MacOS. There's a chance that this might be addressable in Blender's source, but my guess is that it's a non-trivial problem. A work-around would be to try to force Windows or MacOS to use a behavior common in Linux window managers called "focus follows mouse", or "sloppy focus".

Unfortunately, this is not default behavior in either of those systems. In Windows, you can do it manually by tweaking the UserPreferenceMask in the registry. In Mac OS, it's complicated by the fact that you have the persistent menu bar at the top... but you should be able to get focus follows mouse using a utility like Zooom/2.


There are many ways to build games, and you have almost unlimited options, it's just up to you to pick.

Blender has it's own built-in game engine, but there are other free ones, which many people believe to have superior features, such as Unreal Engine and Unity 3D. You may consider trying one of these options, as they are more widely used.

However, the Blender Game Engine is quickly advancing, and it takes less knowledge of importing/exporting models, and complex graphic knowledge in general, than the other two. Because we are on a Blender forum, I will focus on Blender here.

A good way to get started, is by learning from some simple "project tutorials". Here are some good ones by Born CG.
If you don't know much about coding, and still think making games is for you, now is a good time to learn some code. I recommend Python, as it works well with many programs, including Blender.
Now that you know some code, you can learn how to integrate that code into Blender, or other software. Here's another tutorial.
Now that you know a little bit about it, you can join a project. This can help you to learn other skills, and get in the community. (before you do, you may want to consider how long you are willing to spend on it, so you don't get caught up. A good project that uses Unity and is going somewhere, is here.)

So consider it... and see what you come up with. :)


Is it possible to change frame rate by interpolation in blender?

For simple results the VSE has a speed control effect strip.

With your strip selected ⇧ ShiftA->Effect Strip->Speed Control, you can then adjust the rate in the properties region N. This will alter the playback speed of the specific strip in the VSE.

To adjust the entire video speed you also have the time remapping settings.


Is there a way to use a point other than the origin as the center for "edit object" "add object"?

Is there a way to use a point other than the origin as the center for “edit object” “add object”?

No, there is not. But yes there is (but not i the way you imply with your question).

Background

How would you tell where this point is?

Your expectation is that the projectile is inside the barrel and it moves out of it. This is correct in real live and the audience (player) should think it is this way.

But this is a game. It's purpose is entertainment. Therefore you do not care things that are not even visible to the audience (projectile in a barrel is not visible).

As you noticed having a projectile inside the barrel is not something the physics engine really want to deal with.

You correctly try to achieve you place the projectile right at the end of the barrel and let it travel from there. The physical effects from the time inside the barrel are just applied (the initial velocity).

Where is the end of the barrel?

Who cares! Just place an emitter (empty) at that location and let it emit the projectile.

When you parent the emitter to the barrel it will follow any turns and motions.

The whole secret is: the barrel is not the emitter.


Keep Refraction and Remove the background object

There are a few methods you could use to achieve this.

The most practical ones are:

Material with a light path node
Compositing

for a simple scene like yours, I'd recommend the material option as you just need to add 3 nodes to your material setup and you can see the result in the viewport.

In my case the sphere is the refractive object, and the cube is the background object.

Add a mix shader between your existing shader and the material output node (in the background object material that is).
add a light path node -> is transmission ray to the fac input of the mix shader node.

add a transparent shader with a white color in the first (white emission shader in the screenshot) and your existing shader in the second shader slot (red emission shader in the screenshot).


The problem lies in a misalignment between the deforming bones and the mesh, so you will have to adapt them one to another (actually, it seems to me far more easy to modify the mesh than this complicated rig).


How do I get the name of the active brush texture with Python?

In this case, you can reference it from the brush it is applied to:

bpy.data.brushes['NameOfBrush'].texture

Or use the active brush (if the context is sculpt mode, texture mode, etc.):

bpy.context.brush.texture

Or:

bpy.context.sculpt.brush.texture

https://www.blender.org/api/blender_python_api_current/info_api_reference.html#indirect-data-access


render albedo (color passe without shadow)

As Leander show in the picture of his comment there shouldn't be a problem with the passes or the nodes I have used and how I have connected them.

As hatinacat2000 suggest, I get better result by setting the color space to linear

Here is the texture on the left and the render of the albedo on the right a bit
better but not the same:

In fact the color of the albedo where shifted because of the High contrast setting (in the Look of the color Management), by changing it to none The color of the albedo are the same as the one of the texture


How to share node value with another node to keep them sync

You can simply copy-paste the driver, the values should be the same.

RMB > Copy Driver from one Mapping node
RMB > Paste Driver into the second one
Done.


Blender Cycles Slow Rendering Interior Scene

In outdoor scenes most rays don't bounce much and just fly off into the sky.

In indoor scenes almost all the rays will end up reflecting around up to the maximum number of bounces. Not only does this often mean more noise, but also slower rendering (more ray intersection calculations etc.)

You can speed this up a little by reducing the number of bounces. You can also try and reduce noise by using MIS and non-mesh lamps where appropriate.

Related:

Spherical emitter does not illuminate very well?
When should MIS be used and when should it be disabled?
Managing/Reducing noise in a night scene

Note that in 2.75 cycles will have Light Portals, which can be used to guide rays through openings. This is useful for indoor scenes lit by an outside source.

To set up a light portal, add an area lamp which covers an opening (e.g. a window), then enable Portal in the lamp settings:

The direction matters, the lamp should be pointing into the interior.

Portals will actually make sampling slower, but converge the scene with far fewer samples. So much so that if you reduce the sample count, you can get less noise with fewer samples and a shorter render time than if you didn't use portals:


How can I subdivide this if I cannot use the loop tool cut?

At least one of your polygon has more that 4 vertices ; this one has 5 vertices:

You can't use the Loop tool because you've got NGons (more than 4 vertices). You can use the Knife Tool instead.


Dimensions panel: how to proportionaly get all 3 dimensions entering just one

It's where still the Scale operation should be used. The question is how to obtain right factor for scaling.
The brute force method is to calculate how many times is 2.5 less than 3.356:

3.356 / 2.5 = 1.342

So you want the object to become 1.342 times smaller.
Press S for Scale operation. But if entering 1.342 right now, it will scale 1.342 times bigger, not smaller.

So the only step is to invert this. In order to avoid any 3-rd party calculations, after pressing S enter "=" sign (no quotes) which will make Blender to treat further text as formula and then 1 / 1.342. The final formula:

Press S, then = 1 / 1.342.

This method is brute force at least because final Y dimension would be 2.501 (with mentioned values). This should have to do with floating point precision.


Press L or search for Make Local using the space bar menu and choose All.


Why is my mesh highlighting the geometry?

Try enabling Auto Smooth.

Select the object to be smoothed in the 3D View then access Object Data properties. Scroll down to/find the Normals options (click the ► arrow to expand) and click the checkbox marked Auto Smooth

Hope that helps.


You must have a path for every different kind of render:

A folder for the image sequence.

A folder for the composites.

And the final render (probably .mp4 or .mov) anywhere.

It's not good to render different renders at the same location because it will be overwritten if the file extension were the same. Eg: png.

Last thing: You cannot recover overwritten files.


How to add an animated glint running through the edge of my alphabet?

Animate a lamp which creates a highlight on the text (as the specular component of the text's material).

Add a lamp (point light), and uncheck Diffuse, since we only need the specular reflection as a concentrated highlight.
In the viewport, choose GLSL shading (instead of multitextured) in textured mode to preview the shading.
Adjust the text's material's specular hardness and intensity as needed.
Position the lamp while looking through the camera at its start position and set a location keyframe. Repeat with the end position.

To make the specular highlight only appear at the edges position the lamp directly underneath/beside the text and give it some depth.

If you want to create a photographic glow on the highlight, do it in the compositor. After rendering (F12) enable the compositor nodes. Adding a glare node or screening the blurred highlights will produce an effect of light dispersion across highlighted areas.


Why does my character glitch out when i put it on a path

I think your problem is the following one:

You're trying to give a Follow Path constraint to your mesh, but it's not the thing to do, it's not the mesh that is supposed to follow the path, the mesh is parented to the armature, it's the armature that is supposed to follow the path... If you give your mesh a Follow Path constraint, it has 2 contradictory constraints: The Follow Path and the armature, and it can't work.

So give the Follow Path to the armature.

Also, you need to make sure that you've:

Applied the scale and rotation of your curve.
Given it the right direction, i.e. the direction that the armature is supposed to follow, in Edit mode switch it with a W > Switch Direction.
Put the curve origin at its beginning.
Put the armature at the center of the scene with an altG, so that it sticks to the beginning of the curve once you create the Follow Path.

But it looks already good...


Texture Paint only draws in black - Blender 2.8

I could solve this problem, I just had to change the brush texture. It seems like I messed it up, and put it to black


Ok to turn my comment into an actual answer:

Within Edit Mode:
Select the vertices you want to delete by pressing C and clicking LeftMouseButton on the ones you wish to delete. Use the mouse wheel to change the size of the brush(press rightmousebutton confirm selection), OR use the box-select tool, B, and drag. Afterwards press X, then V.Then you'll want to exturde the top ring of vertices using ALT+Right click, which is used to select loops.
 do ALT+RightMouseButton anywhere between two vertices on the top loop to select the loop(the red lines illustrate some examples of where you can ALT right click). Once selected press E to extrude. It will be automatically stuck along the local Z axis. If you don't want that press Z again. Press LeftMouseButton to confirm placement.

Related Links:
https://www.blender.org/manual/modeling/curves/editing/introduction.html?highlight=extrude#extending-curves

How to extrude outwards?

https://www.blender.org/manual/modeling/meshes/mesh_structures.html#loops


At this stage - no. A marker can be linked to a camera as a way to change the active camera during an animation but there is no link between markers and keyframes, it is not possible to move both markers and keyframes at the same time.

It would be possible to create an addon that would allow you to move markers and keyframes at the same time.


How can I fill the inside of this helmet?

So my answer works better if you've kept a low-poly version. Always keep a low-poly version somewhere, before applying the Subdivision Surface.
You can:

Select all the external vertices + the small inner extrusions:

Press Ctrli to invert the selection:

Delete:

Fill the gaps, with Grid Fill if possible:

For the bottom, extrude inwards and close the shape:


Why is the wrong texture showing when I switch from texture paint to object mode?

So unfortunately these answers didn't work, and I still have no idea why it was doing that since it worked with the other identical file, but when I switched it to cycles render I was able to use a texture node, and that seemed to fix the problem. Thanks for the suggestions.


How to control RGB color input via python script

Here is a guide to control cycles nodes with python.

So the code would look like this:

import bpy
mat = bpy.data.materials['Material_Name']
nodes = mat.node_tree.nodes
node = nodes.get("Diffuse BSDF")
# change the color
node.inputs[0].default_value = (0,1,0,1)  # green RGBA

This lets you change the value just one time and does not run in a loop like with animation nodes.


Make sure you have the latest Blender, because i have it; or try to unistall and install again

Good Luck


Placing Wave Texture In Center Of Geometry

If you want the texture coordinates (0,0) to start at the center of your object, use Object Texture Coordinates:


Numeric values of camera angles while tracking

You have a Track to constraint on the camera (it's what I see), or a parent relation maybe.
The Rotation in the properties panel does not take in account the constraints or parenting effects, so it shows 0.

You can enter bpy.context.scene.camera.matrix_world.to_euler() in the console and it should give you the real orientation of the camera.


Your emitter exits the domain after that frame. Enlarge the domain to encompass the full animation of your emitter. Also, you should set sampling subframes on the emitter to stop it from making that dotty effect. It will sample the motion in between frames. The emitter is moving too fast to produce a smooth stream of smoke.


How can I fix broken linked dupligroups when the source file/directory has changed?

This has been fixed in Blender 2.77

To fix broken dupligroup links when the path to the source file (directory name/s) has changed; (//directoryA/source.blend changed to //directoryB/source.blend):

Go to File/External Data
Select "Find Missing Data"
Navigate to the new location, click Find Missing Files
Save, then close and re-open file.

To fix a broken dupligroup link when the filename of the source .blend file has changed (//directoryA/oldName.blend changed to //directoryA/newName.blend)

Go the Outliner
In the pulldown box that by default says "All Scenes" select "Data-Blocks"

Expand the "Libaries" section
Expand the "Lib" section for whichever linked Dupligroup you're fixing

In the "File Path" field remove the old path/filename and type in the new path/filename. (it should start with // if you're using relative paths)

Save, then close and re-open file.

The last option will also work for changed file name and path; just manually type in the full new path and filename.

This was information given in the Blender 2.77 release notes. It says that "In case of missing libraries on load, empty placeholder datablocks get added, which allows to restore or relink." and in the Datablocks and Libraries Management section of the release notes it says that this allows the user to "Edit missing libs paths in the Outliner, save & reload main .blend file, and get missing linked datablocks back."

Awesome! Thanks Blender developers! :)


Actually both the 2 shapekeys are identical, the object is deformed because you've given it a Multires modifier. So delete this modifier or at least deactivate it and make the mesh deformations you need in Edit mode with the shapekey called Key1 selected.


You have your render engine set to Blender Render. Set it to Cycles instead by selecting Cycles Render in Info > Header (at the top of the window by default):

See How is Cycles different from Blender Internal? for more information.


How to properly set up physics with door hinge?

How to do it:

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

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

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

give the safe and the door a rigid body

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

give the door a lower mass.

add a plane, give it rigid body passive.

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

Here is the blend file:

Here is the result:

https://youtu.be/s-ZfOSBvxZM


Rigify error Generation has thrown an aception 'None Type' object has no attribute 'bones'

Your fix for "Spine.004 is disjoint" was not exactly a fix. It just removed the error message and created further problems. It's not your fault, Rigify setups are just easily messed up with by making small changes.

parent the neck back to Spine.004
snap the neck bone to the end of the spine

If you have trouble snapping the bones together, here is how to do it:
https://youtu.be/ILDdIbAwxJM?t=490


I will explain how I use stencil images to make use of tiled textures. I paint the stencils using different brush and brush mask textures.
We want to set up our uv mapping to make the best use of the tiled texture to make it spread across our object.

So we need to use the UV layer and rename it to tiled, and we want to arrange the uvs so that we get a nice texel size - stretching outside the constrains of the uv window is fine, as the texture just repeats past it and scaling way past just means we can see the texture decreasing in relationship to the actual face size.

We now want a second uv mapping layer for our stencil , and we will use Smart UV Project here so that we will be able to paint on a stencil over the whole object.

We will set up an initial node tree that mixes two tiled brick textures, even thoguh they aren't exactly the same scale we can use the same UV map to control how it lines up. We only see one brick texture without having painted the first stencil yet.

With the Stencil for the bricks in place, we can paint into small patches with a hard curve brush with white and reveal the second brick - I like to try to keep the paint inside the brick shapes from the first image, making it easier to blend them together.

We repeat the process, adding a stencil and a tiled image for the plaster.

I use a combination of procedural textures here, one set to 3d mapping on the brush at a small scale and another set to tiled at a large scale on the brush mask texture - procedurals are your friend here, allowing you to get interesting effects rather quickly.

We then can add another stencil and a tiled moss image texture.

If you make a new texbrush, you can set it to use jitter and wide spacing on the stroke, and set the radius to use pressure, painting in the moss where you want it.

I hope that helps - once you paint your object the way you want, you can use the same method to paint other objects in the scene. How you apply it is up to you, and you can use this same technique applied to mixing shader node groups with the matching tiled normal maps, and you can go so far as to also paint in dirt and cracks on another image multiplied - if you do that, start that one with a white image and paint with black.

Good luck!


Raytraced transparency not showing other transparent materials beneath?

You should check the Traceable property on the Eye_transparent material. This allows the material to be evaluated during raytracing calculations and will therefore let the specular highlight on the Eye_transparent geometry be seen through the raytraced glass.

This isn't strictly related to your original question, but I'd also recommend enabling mirror raytracing on your lens material to increase their realism. I recommend setting reflectivity to 1, fresnel to 3.5 and blend to 1.15. Fresnel reflectivity is really important to capture accurately for a realistic render, particularly for glass and water materials. I also think that your skin material could benefit from lowering the subsurface scattering radius a little bit. This is just my two cents and of course for a glass material to look really good it has to have an environment to reflect.


The answer is: Remove any world position offset textures from your Unreal material, and the space should go away upon saving.


for x in range(8):
    for y in range(8):
        p1 = v1.lerp(v2, x/len[array])
        p2 = v4.lerp(v3, x/len[array])
        p3 = p1.lerp(p2,y/len[array[x])
        this is the point I needed


How can I convert multiple mirror ball exposures into an HDR?

Blender is not the right tool for this job. Not only will you have a hard time getting the functionality you need, but Blender's color management is fundamentally flawed, so even if you do get results, they'll be wrong.

A better tool would be Hugin. It's specifically designed for exactly the kind of thing you're trying to do (creating an HDR/EXR from a set of LDR images). It's free, open-source, and relatively well supported. Your task is smack-dab in the middle of what Hugin was made for, so you shouldn't have any trouble finding (modern) tutorials for that.

EDIT: If you REALLY want to do this in Blender, I'd be interested to see the results if you used them as textures on an emissive plane. If you ADD (not multiply) all the images together (mix node set to add, two images in; that mix node out to another mix node set to add, with another image in; and so on until you've added all the images together), you'll come up with... something. It'll definitely be higher dynamic range... and it'll definitely contain all the data.

Put that texture on an emissive plane, and render that out to an HDR. It's pretty kludgey, but I'd be interested to see what happens. Hugin is still the right answer, tho ;-)


How to customize default sizes new created objects

Use the "Add Plane" window to change value from 200mm to 150mm al subsequent planes added to this file will start with 150mm. You can then File->Defaults->SetStartupFile" to use this file as your default file.


Once you've created a material go to the texture section, and create a new texture ->image. The texture will now be associated with the material.

Open the image you want to use and then you need to assign some coordinates for the texture mapping and what kind of influence the texture is going to have on the material, the default is Color.


Crazybump doesn't use height map because it is poor. Instead of height map, use normal map - it has much better results on same resolution.


Final result:

Base mesh:

As a base mesh we will use simple Plane rotated by 90 degrees and subdivided couple of times. Less subdivision = bigger wrinkles.

I've used Subdivide > 10 and than Subdivide > 1.

We need to add Mean Crease > 1 to the outer edge for Subdivision Surface modifier that we will add later on.

Vertex Group:

For Pinning Cloth we will add Vertex Group with two side edges assigned.

Shape Keys:

For folding our Cloth we need to add Shape Keys - Basis and Key 1 with shrunken side edges moved to the top of the mesh.

We can go ahead and animate Key 1 value by inserting keyframes on frame 0 with value 0 and frame, lets say, 25 with value 1.

Cloth settings:

Now we can finally add Cloth simulation to our mesh with below settings.

Most important are:

Pinning - select Vertex Group we have created before.
Mass - higher mass more curve on cloth.
Structural - lower allow more cloth stretching.
Velocity - will slow down/smooth simulation.
Self collision - self explanatory, Distance is important, it prevents cloth from intersecting.

Rest of the settings are more or less important tweaks, described in tool tips and docs.

Final touches:

Now we can add Subdivision Surface modifier and play our animation to see result (this one is 80 frames long):

Thoughts:

You can experiment with base mesh randomization, subdivision or Cloth settings to get different results.

Material used in Final Results is default Velvet BSDF with changed color.

Back drapes are made using same method.


You could try the BTrace Blender Addon for that purpose.
I don't know if it can track armatures, it might only work on meshes, not sure but you can probably easily add a mesh to your armature to accomplish the desired effect


How do I get a driver variable to taper down to 0 once the variable is doubled?

In order to get the value moving back down towards zero once the bound has been reached you simply need to specify an expression that gives the desired result. The key is to think about the boundary cases - in this case, what happens at 0.26666
So, up to 0.26666 you want the output to be var
Above 0.26666 you want it to move back towards 0 - so you need to subtract var ie, -var, BUT, at 0.26666 you want it to equal 0.26666... ie, you want it to be (0.26666*2) - var
This would result in the expression var if var < 0.26666 else 0.53332 - var.
You can actually link multiple of these conditionals together so you may want it to stay at zero once it reaches zero. ie,

below 0.26666 : var

0.26666 -> 0.53332 : 0.53332 - var

over 0.53332 : 0

This could be produced with :
var if var < 0.26666 else 0.53332 - var if var < 0.53332 else 0


Perhaps a simpler solution is possible (or automating the below steps), but here's what I came up with.

base - the mesh you're working on
selector - the mesh you want to use for (de)selecting
copy - the copy of base created in step 1.

Duplicate the base which now becomes the copy, add a Boolean modifier in Intersection mode and choose selector as a target. Apply the modifier.

Hide the selector.

Select all vertices of the copy and assign them to a new vertex group.

Select the copy in Object Mode, then the base (so the base is active), and switch from Object Mode to Weight Paint:

From Weights menu choose Transfer Weights.

Expand the panel that pops up in bottom-left corner:

Set Data Type to Vertex Groups.

Select Only Neighbor Geometry and decrease the Max Distance to the smallest non-zero value (try 0.00001)

Go back to Object Mode, remove the copy. Start editing the base:

You can now select the part shared with the selector:

Or make a selection:

And deselect the part shared with the selector:


How to create an animated Electric Arc or Lightning?

I've experienced such need in my project long time ago. I did it with the help of Laplacian Lightning addon, too. My suggestion is:

For the varieties of lightning, you can keep on clicking generate lightning button on the Laplacian Lightning tool panel until getting enough varieties. It will generate random result each time based on the parameter setting.
For the "show time", first group them together, then simply add particle to a plane or something to emit that group, set Lifetime to 1. The Number value is quite nice for controlling the frequency.


How do I make all these faces lay flat ? without changing the scale?

First create a plane that you would like to align them all to.

Second If they are not already individual objects, go into edit mode and hit P to separate by loose parts.

Then enable snapping by clicking the magnet button and set up the settings as you see here:

Finally, select the parts in object mode hit G to move them. Put your cursor on the plane, then they should rotate to match the plane.


How do I offset each bone's keyframes to be 10 frames later than the previous bone?

Amended code to do somewhat what you want.

Shifts keyframes 0 for first fcurve, 10 for next, 20, 30...

Have made it adjust only the action on the active object.

import bpy

ob = bpy.context.object
ob.animation_data_create()  # lazy way to make animation data exist
action = ob.animation_data.action
if action:
    for i, fcurve in enumerate(action.fcurves):
        for point in fcurve.keyframe_points:
            point.co.x += i * 10

Please use consistent 4 space indent

Re finding which fcurve is which see https://blender.stackexchange.com/a/111326/15543

To order the fcurves firstly by data_path, and secondly by array index eg

pose.bones["bar"].location.x
pose.bones["foo"].location.x
pose.bones["foo"].location.y

Use something like

fcurves = sorted(action.fcurves, key=lambda fc: (fc.data_path, fc.array_index))


How to animate rotation of duplivert shape

You could use Dupliverts as an arranging tool, as you have already, working all at the origin, with the original plane's normal facing down its own local Y axis, (you may have to rotate it in Edit mode) as shown:

Then, to set up a basic rig:

With the circle selected, CtrlShiftA .. 'Make Duplicates Real'. Check 'Parent' The planes are now all instances, and can be transformed independently, but are all children of the circle.
Delete the original plane, and replace it with an empty at the origin.
Select a memorable plane-instance, and assign a Locked Track constraint to it. 'Target': the empty.'To':-Y. 'Lock': X
Select all the other planes, with the constrained one still active, and in the header  Object > Constraints menu, hit 'Copy constraints to selected' Now all the planes should be constrained to look at the empty.
CtrlP parent the empty to the circle
To tidy up, in the properties region of the 3D view, lock all the transforms of the empty, except Z location.
To tidy up further, select all the planes, and in an Outliner window, Alt-uncheck the selection arrow on one of them.

Now none of the planes should be directly selectable, the empty should only be able to move up and down in its local Z, (with the planes following), and the whole group can be moved or rotated by its parent circle.


I can't find the ` apply ` button in subsurf modifier

You have to click the little down arrow in the modifier options. The apply option is hidden underneath:


VSE: How to set as start frame where the cursor is in Blender 2.80

In the Timeline, Playback menu, Set Start frame and Set End frame buttons. If you Right-click them and assign them a shortcut, the shortcuts will also work in the VSE.


Move and rotate an object according to travel distance and direction between objects

I figured out that I needed to use to_track_quat() instead of rotation_difference() to get the direction along this vector.

import bpy
import mathutils

selected_object = bpy.context.object
car_f1_location = bpy.data.objects['car_f1'].location.copy()
car_f2_location = bpy.data.objects['car_f2'].location.copy()

direction_vec = car_f2_location - car_f1_location
direction = direction_vec.to_track_quat('Y', 'Z')

selected_object.rotation_quaternion = direction


Dirty workaround is to enable Open Shading Language in render tab (works only with CPU), somehow it solved my problem, even though I don't have a clue what does it mean.
Another trick is to use spritesheet technique. In a nutshell, you have to combine all your images into 1 big image (without overlaying of course) and translate UV map along these "small" images. In this setup you are duplicating Vector Mapping as many times as there are images on the spritesheet.


Motion tracking a shot where no tracking point is in frame throughout the video

There is no problem in this situation.  All you need to do:

is in solve settings set keyframe A and keyframe B where you have enough motion and more then 8 point are the same.  So it can be not the start and end frame.
And also you need to track points from start and end (and maybe in middle) - your goal is to make shure that every frame have 8 or more enabled tracking points. They may be different, but due to the fact that new markers pick up motion, tracking will continue


Solidify a UV sphere that has a part transparent material?

I found a solution:

First resize the UV sphere so it is a little bit smaller than the surface of the water and UV unwrap it. (Since I am using a distorted map of the earth that is meant for a sphere, sphere projecting the image will work perfectly.)

Second add a subdivision surface (more subdivides=better resolution) and a displacement map to the sphere. Lower the displacement strength down to .1 or .2 and Set the Texture Coordinates to UV:

Next add a new texture in the displacement modifier and edit the texture under the texture panel. Open the black and white image (Black=Transparent, white=terrain) of your choice and adjust the brightness to the desired amount. (Brightness changes how much terrain pops out.)

Finally, change the material to have a mix shader of diffuse and transparent, factored by the same black and white image used for the displacement:

Result (Not the best result but does work):


The circle object has scale unapplied.
Press Ctrl+A > Scale and red circle will be screwed correctly.

Read more:

Why is it important to apply transformation
Apply Object transformations - wiki


How to fix my procedural chocolate bloom nodes

The mistake you did here is that you used a painted scratched metal shader for chocolate - and that 1 to 1 including the metallic value(!). This results in delicious chocolate for robots ... or tasty chocolate robots? ;-)
You can use the procedural imperfections from this shader setup for the chocolate bloom and (in other cases) you can use the Metallic value in Eevee to fake colors (like lipstick, hair shading, etc). But I would not recommend Metallic for chocolate.
You will get a much better result if you use the Roughness value for the chocolate instead.
Let's start simple and make a simple chocolate shader.

make a chocolate bar. In Edit mode, scale down the default cube, subdivide it, select the 4 top faces, insect them and pull them up a bit. In Object mode, add a Bevel modifier to make it less blocky (Width, 0.01m, 3 segments, Limited to Angle, 26°)
then set up a simple shader with little Base Color variation and Roughness variation. This can be done easily with Noise textures. Last but not least, give it a bit of Subsurface Scattering to make it look more organic. No metal is here involved ;-)

Now let's evolve this to the sophisticated chocolate with imperfections shader.

add the shader node setup for the procedural scratches (of painted metal) from the tutorial video and adjust it a bit
most important: don't use the Metallic slot but use the Roughness slot
adjust the colors of Color Ramp for the base color as you like. Insert a light brown color for the imperfections
add a Noise texture and Mix RGB node for the Base Color (top right in the screenshot) to create some darker areas as shown in the reference image
(optional) add seams and UV unwrap the chocolate bar to get rid of texture compression at the sides
use an HDR image for the world background (and for Eevee an extra light).

The shader in this example is from the linked video with the "Voronoi Cracks" update for Blender 2.81, plus some noise in base color and UV mapping for little rotation as described above.
Rendered example (Cycles, 128 samples, Adaptive Sampling, NLM denoiser (checkbox), 50% size)


How to append a Rig with a python interface at the same time

If you do this manually, you need to run the script after it is linked. The script auto-runs only on file open/reload (if it is registered).

You can write an addon, that will link your character, create proxy rig from it, link the script and run the script:

Here is how you link stuff with python
You make proxy rig like this:

# get your linked group object
objects = bpy.context.scene.objects
group_ob = objects.get('Character')   # <- you probably have this from linking already
# create proxy rig
objects.active = group_ob
bpy.ops.object.proxy_make()
# get the proxy object if you need
proxy_ob = bpy.context.active_object

Running the script is easy:

script = bpy.data.texts.get("rig_script.py")   # <- you have this from linking
exec(script.as_string())


You can perform your animation using odd numbers only, then select all objects or armature you used and go to the menu: Object (or pose), animation, bake action. Set the frame step to 2, then select all the new action and set the interpolation to "constant".


To bake a position map you need to create an emissive shader and bake in emit mode.

For the node setup use for the input an Input > Texture Coordinate. You will need to use the generated output of the node, by default the axis in Blender aren't the same as most 3D software so you will need to change the RGB channels. For that connect the Generated output to a Converter > Separate RGB and add a Converter > Combine RGB node, here are the connections:

R > R
G inverted > B
B > G

Then add a Color > Gamma and set it at 2.2 to convert the color in Linear, by default it's in sRGB and doesn't work in other software. Then on the Emissive node.

Here is the result and the complete node setup:


In Edit Mode enable Face select right click on the top face you want to remove.

Then press X or Delete. This shows the Delete popup menu, where you can select Faces.


What does "Bone location is set in local space" mean?

It means the bone behaves 'as normal' and location curves are based on the bone's rest position. If you uncheck it they (the curves/ transform) will be in the rotational space of the armature, ignoring the rest rotation of the bone.
Nathan added this during sintel I believe to avoid having to align bones in the rig. Honestly I think it is a nuisance.


How can I proportionally scale a UV Map when scaling the object

One way is to use Object Coordinates and an Empty.
The texture will then keep its size when objects are scaled.

Add an ampty to your scene
Set texture coordinates to Object and target your empty
Adjust the texture position/size by moving/scaling the empty or via the Mapping node.


How can I get better results when doing camera motion tracking?

Here are a few pointers for camera tracking (for more details follow the links in blue text):
1. Prepare your scene carefully  before shooting to make tracking and reconstruction easier
Avoid sudden camera movements to prevent blurry footage and rolling shutter artifacts. Blurry, shaky or otherwise distorted video is very hard to track and will result in inaccurate 3D reconstruction.
If your camera has a zoom lens Do Not Change the focal length during the shot. Blender cannot work with such shots yet.
Include in your scene distinctive, trackable features, and make sure they stay sharp and recognizable throughout the time they are on the screen.
Tracking markers are most effective when they are well distributed and give you a good idea of perspective. There should be some in the foreground and the background. Reconstruction is calculated by how different objects move within the frame according to their distance to the camera, objects that are close to the camera will move faster than those far away. Motion tracking works best when the difference in the tracked object's movement is clear.
If your scene has large areas of flat or homogeneous surfaces with few elements to track, or with features that repeat and might confuse the tracker, then make your own tracking markers and place them in the scene. Small pieces of tape or stickers will work wonders, for grass you can use ping pong or golf balls.
Make sure that the tracking points are not all bunched up in just one area of the frame, and that is placed on different axes, for instance, don't track the floor only but the walls as well.
A common mistake is making very large and featureless makers like these:

instead of small and widely distributed like these:

As for the texture on the tracking points, a quick google image search will give you an idea of what kind of patterns other people use:

(for more details on this topic read this link)
2. Make the Tracking process as accurate as you can
Even though blender has an option to Detect features to be tracked, you'll get better results by placing your own.
Start the tracking procedure by examining the video footage and finding what objects or features of the image are present in most of the shot. Track those First. Then go through the shot and identify features that are sharp and have good contrast or distinctive colors, track those as well.
If the tracking process stops before the object has disappeared or before the end of the shot, it means that blender cannot accurately track an element. In other words, tracking fails when the tracked element cannot be found accurately within the search box area.

(To display the search bound box enable this:

If the tracked element moves too much from frame to frame and falls outside the search area, you can resize the search box (note that this will make the process slower and use more RAM)

Read What can you do when the tracking stops? for possible solutions
Once you track some points, check that none of your markers are sliding around. Go through each one of them, maybe some are not locking properly.
You can check the accuracy of a tracker by selecting it playing back the scene while looking at the small track window on the right of the screen (if it is not visible press N to open the side panel).
This tracker for example is sliding:

Ideally, the tracked feature should stay fixed on the track window and not dance around. It should be rock solid as in the next image:

Carefully examine each and every tracked point, one by one, for accuracy.
You need at least 8 successful trackers to reconstruct a scene, but don't limit yourself to that number only.
It's better to have a few accurate markers than lots of inaccurate ones.
If your tracked points are sliding or giving large error averages, try different tracking motion models other than Loc. Use LocRotScale or Perspective for example (More info on this link)

Re-track existing markers using "Refine" to increase accuracy.

Elements that change in size or distort with perspective shifts are better tracked using Match "Previous Frame" instead of "Keyframe".

If the object you are tracking gets temporarily blocked, or goes out of the frame and comes back, you can either offset the tracker, or track to the frame where it disappears with one tracker, then track from the moment the element is visible again with a new tracker and then join the two of them together. That way blender knows that is dealing with the same object and not different ones.

3. Set up the camera data properly
Set the sensor size and focal length as best as you can using information from the camera and lenses used for the shot. If you don't know the focal length you can use the refine tools when solving. If you don't have such information, you can have blender guess the lens parameters based on tracked information by using the Refine option when you solve the camera motion.

All lenses in the real world create some kind of optical distortion. To integrate images from a real camera into a virtual 3D environment correctly, its important to determine the values for lens distortion or have blender calculate them and refine them for you

4. Set a proper range of keyframes for the camera solution

The solver can get better tracking data from some sections of the video than others. The idea is to use the section of the video that will give blender a better description of the space, based on the difference in the movement of the trackers. To do that the keyframe range should include at least 8 successfully tracked points and they should all be visible in every frame of the selected range. If you are unsure of what the best keyframe range is, let blender choose the right ones automatically, by enabling "keyframes".
One important thing to understand is that this range of keyframes is not the only section that will get solved. It only means the optimal range where there is "reliable" information (with at least 8 common markers). Blender will try to solve the rest of the scene, for example in places where the common (bundled) tracks are not present.

5. Choose the correct solver for your camera movement
The default solver in blender presumes some parallax, or perspective shift, meaning that as the camera moves, the perspective of the objects in the scene changes as well. For this to be true the camera has to have some displacement (side to side, up-down, etc). With this kind of motion, objects that are close to the camera will move at different speeds as those far away and parallel lines will converge at different points depending on where the camera is at.
Example of camera displacement:

Shots with no camera displacement, where the camera is in the same place and just rotates (panning or/and tilting), cannot be solved with the default solver.
Example of stationary Camera or Tripod shot:

These kinds of shots can only be solved as Tripod:

When using Tripod solve it's not possible to determine proper 3D information. Blender has no way to know what is closer or further away from the camera, so the tracking information gets projected from the camera in a spherical way.

Some of those shots might be easier to reconstruct using Blam or Fspy.

6. Do whatever it takes to have a low Solve Error
If your solve error is more than 0.3 or is getting "data failed to reconstruct" errors, then you really need to work on the marker accuracy and other elements outlined here. The tracking error is calculated in pixels. An error larger than one-third of a pixel is considered too high.
To find out which trackers have issues or high average errors use the graphs and dopesheet tools.

If the error is still too high, go back and revisit some of the previous steps, re-track, delete inaccurate trackers, etc.
There are times when blender will be able to solve only part of the shot, no matter how accurate the tracking process. That can happen in sections where none of the bundled tracks are present. Maybe the camera moved past them or maybe there are sections of the shot where there aren't 8 common tracking points anymore. When that happens you'll still get a "some data failed to reconstruct", and the frames where the reconstruction failed will be marked in red.
UPDATE:
To further refine your track after solving you can use the Script made by @StephenLeger. See this link for more information. It sets the tracking weight according to the reprojection error so that the information from bad trackers can also have a meaningful contribution to the camera solution.

7. Check for reprojection errors
Once you have a camera solution and further refine the optical center of your camera.

8. Correct the orientation on the scene
If after all of the pain you've been through the orientation is incorrect for the reconstructed scene. You can manually re-orient or re-scale the camera in the 3D viewport and all of the tracking points will follow:


How to have bone scaling only effective on one action?

As i understand, All of your actions didn't have any Scaling Keyframes, so when you scale your bone, it apply effect to all actions.
So, all you need to do is go to action editor and add Normal Scaling Keyframes to your action before you Cheat on your actions.

Go to Dope Sheet, Select Ation Editor

Select Scaling in Active Keying set

Press I to add Normal Scaling Keyframe

Repeat to all of your actions


How to render smooth alpha transistion between two objects?

Yes the renderer has access to geometry data, but the Z-channel clipping is still sharp no matter what.

You would have to make the ground plane transparent where the particles are crossing behind it, which one can do, but it would be pointless because it's not the effect you are looking for - any geometry behind ground could be seen.

What you need to do is to render smaller particles closer to the camera that don't intersect the ground.


Node Editor, Unwrapping, and FBX export not working

Sorry if this reply comes a little late, but I rarely ever import into Unity, so I had to do a bit of trial and error.

First of all, there is nothing wrong with your file. The only thing that is missing is the link to your texture. If you load it back in via the Texture-Tab in the Properties Window, everything works as it should.

Consider packing your textures into the .blend files if you hand them off to somebody else, this will incorporate the images into the file and you will no longer have to send the texture files along with the .blend file.

Now, to import those files into Unity, there are a couple of workflows. I will give you the one that I find the most useful, if you want to learn about all the ins and outs, i would recommend Darrin Lile's course on Blender and Unity Pipelines. It is only about 12 Dollars, but it goes through all possible permutations of asset importing and gives you best practises to follow along the way. Like for instance naming the materials. It will not matter with a single cube, like in your file, but the materials do pile up.

Darrin Lile's Creating a Game Environment in Unity Course

To get assets from Blender into Unity follow these steps:

Set up the materials (like you have)
Export an FBX. Either for the whole Scene, or, with the "Selected" Checkbox checked, only the selected Objects
Drag these objects into Unity's Asset Window (or right click it and select Import New Asset)

I would recommend you set up 3 Folders: Models for the Mesh Data, Materials for the Unity Materials and Textures for the Texture files

If you use the same Texture Folder for your Unity Project that you use for your .blend files, you will not have to import anything here. It populates with the files that are in this folder.
Now select your object. It has the material on it, that you assigned in Blender. You need to hook up the brick Texture manually to the Albedo slot (see image above). Drag it from the texture folder onto the square next to the Albedo Label.

This should be all you need. I remember there was an option to embed textures into an FBX, but as far as I could find out, that ONLY works if you use Blender Internal Renderer and do NOT use nodes to build the material. Just wanted to mention it for completion's sake. FBX Export Article

Also, on import, the default color in Unity is an off-white, which will make your textures look less contrasty. To counteract this, set the base color to full white.


You need to use boolean modifier and animate the boolean object to cut your mesh.


When changing bevel on curves, the curves disappear

For each point in a curve you can specify a radius, this value alters the radius of the bevel at that point of the curve. When a point has a radius of 0.0 there is no bevel at that point (or between two points of zero radius). While selected in object mode the curve is highlighted along the zero size area but deselecting it will hide that section.

Here we have a deselected curve with bevel.

Selecting the curve highlights an extra part that wasn't visible.

In edit mode you can see the radius value in the properties sidebar. You can also use AltS to adjust the radius in edit mode.


When Blender says out of memory error what exactly do I need to free up or replace?

Are you rendering it on GPU or CPU?
If it's GPU then you

(a) try splitting up and rendering the scene over different render layers

-OR-

(b) try rendering it on CPU instead. I had to render a complex scene too earlier this month, it kept crashing every time I tried to rendering it on GPU; worked just fine on CPU however it took longer (obviously). If the problem still persists on CPU rendering then you could consider upgrading your RAM; I, myself, have 16GB and that just barely enough for complex renders.


You can't find it in the menu because you didn't add it to the menu. Menus don't automatically pick up new entries based on the class properties, you have to write code to add them:

import bpy

def add_menu_item(self, context):
    self.layout.label("Added this line")
    self.layout.operator("mesh.tree_add")

bpy.types.INFO_MT_mesh_add.append(add_menu_item)


Units display while in Orthographic Blender 2.8


You can use bone layers and bone groups, to speed up navigation, selection and visibility (in pose mode).


You can use the view3d.viewnumpad operation.
Pass on the override context, just like in your example code. This snippet can also be used to enter the active camera's view.

bpy.ops.view3d.viewnumpad(override, type='CAMERA')


Why are there dfferences between Textured and Rendered modes?

It appears like you have moved the texture after you brought it into blender. You need to relocate the texture. When blender renders it loads the texture from disk (and is unable to find it causing the purple). The material view is using the copy in memory. When the file is saved and reloaded the material view will purple as well.


The red your colour combination is describing is the correct intention when rendered. The square is the incorrect result when considered in a physically plausible rendering scenario. Specifically, it is "correct" at only one possible intensity, which has no real bearing in a scene referred physically plausible rendering scenario.

A quick and simple test of this concept would be to keep increasing the emission of your original colour. You'll find that it skews to become a purely saturated REC.709 colour if you sample the output values, as opposed to the original intended colour ratio.

Principled shaders use, among many of the options, albedo values that represent the amount of reflection of a given channel for each of the default REC.709 three lights. It is also mixed in with other complex algorithms to yield the result. EG: The roughness / glossiness / fresnel is reflecting some of the source light itself, or other environment things.

With an emission, it is a little trickier. Your value is projected directly out. At risk of repeating some of the other answers on this site:

You cannot represent a colour that is both saturated and intense.

We are bound by the limits of the display. If we think about a heavily saturated REC.709 red such as [0.1 0.000000001, 0.0000003] we can see that we will "run out of room to express that colour" very quickly. Eventually the red channel will hit the maximum of the REC.709 display, and at that point, we can no longer "hold" the original colour intention.

So what you are looking at when you turn colour management off or use an inappropriate camera rendering transform is objectively wrong in all cases; *it simply isn't the colour represented by the original set of REC.709 ratios. Calling it "desaturated" is also a bit of a misnomer; it is a different colour entirely, and one that is based off of the original intention of the REC.709 colour triplets.

Andrew Price did a very good demonstration of this complexity in one of his videos. It is worth focusing on to begin to grasp the differences between a display referred imaging application and a scene referred rendering scenario.

Further reading which dives more deeply into how colours are encoded in an additive three light RGB model in relation to rendering can be found here.


Physics Simulation - Objects going through one another

You can try disabling Disable Collisions on all the constraint empties and using the Mesh collision shape for the links.


Joining instead of Cutting with BoolTool Ctrl Shift - Shortcut

Use the Boolean modifier in Properties > Modifier Properties > Add Modifier > Boolean, and choose the object you want to cut with, in the menu for Object. I'm not sure what Ctrl Shift - shortcut does.


How to edit a split vertex normal without affecting others?

In hindsight, it all comes down to order, you need to:

Set hard edges + Auto Smooth before Data Transfer modifier.
After transferring the normals, apply Edge Split modifier (to hard edges only)
Then select the faces with incorrect normals and set their vertex normal to face, since vertices are split properly, it won't affect other existing normals.


custom transform orientation doesn't align with object

It looks like since 2.9, the orientation that has been selected in the Transform Orientations dropdown menu won't be taken into account by default when you Align to Transform Orientation. Now you need to go into the Operator box and choose the Orientation you want. The previous way made more sense in my opinion (it may also be an oversight/bug).


How to push a box with physics engine by another object?

Better if you use a copy location constraint on the box by a hand bone. You can set keyframes for the influence, so the character can release it.


Can't change mouse influence in proportional editing mode

I'm adding an answer here because effected users might overlook what is written in the comments:

If you're working with large scale models to scale (say at a distance 100Km), the influence radius will likely be too small for you to notice, even if you scroll multiple times. When you grab (G) a vertex or edge, press the page up key and keep it pressed until the scope starts to become visible. "proportional size" at the bottom of your 3D view might appear to not change, but it eventually will.

Hope this spares another soul some misery.


Rotate text with curve modifier without spiraling

The transformation axis in the screenshot is X.
If you rotate your text, the X values of the text are different and it spirals.

Solution:
Translate the text only on the X axis (G-key followed by X-key). This way the text moves along the circle.


Remove Unnecessary Confirmation Popups -- resolved, but why not effective?

They were removed, but then some were added back later.
Some are still removed, such as copy and paste for objects.

However it seems the confirmation popups for delete and save have been re-added after a bug report, and for good reason IMO. I hit those keys accidentally rather often, and I try to avoid reflexively undoing as much as possible due to various limitations (not to mention speed).


retopology mesh intersects with sculpted mesh

You can always add a Displace Modifier to temporarily lift your faces above the mesh without influencing the final result. That is what Retopoflow does, by the way. Give that thing a spin if you need to retopologize a lot. It may be far from perfect, but it has a lot of useful tools that can speed up the mundane parts of the task.


How can I scale a quad by its X axis rather than my point of view?

Choose normal as transformation oriention.


blender 2.8 shader editor normal map missing

Where were you searching from? Were you using the regular F3 search function or were you using the Shift+A function inside the Shader Editor? The add node function (which is Shift+A) comes with its own searching feature which searches through all of the different nodes, which will include Normal Map.


Changes via Script in Blender Render and Cycles [data to object]

Many of the changes can be done by Python Script.

You can make a selection of the objects a create a group.  The selection can be done manually by clicking on the 3D View .  Perhaps by spelling of name if that happens to be your case.

import bpy

#tested in blender render and cycles render lightly
def data_object_mat(groupname):
    for x in bpy.data.groups[groupname].objects:
        print(x.name)
        o = bpy.data.objects[x.name]
        m = o.material_slots[0].material
        o.material_slots[0].link = 'OBJECT'
        o.material_slots[0].material = m

#create a group with the name below in quotes or change the name
data_object_mat("MatGroup")

# this script does zero error checking and expects specific data to exist
# backup your file, create a discardable copy, use at your own risk
# you are responsible for any damages

The above script is still being tested. It is a starting point after you have created a group with the name in quotes.  The Script iterates through the group and is intended to perform the desired actions.

Consider use only on a discardable copy of your file.  Standard disclaimer.  Backup your files every hour and use Scripts at your own risk.    Scripts are put in the text editor window and executed. This is not a tutorial on any topic, because at the moment I do not have time. You may choose further research.

The image above shows the Run Script button and a group.

You may need to change your search to ... Python Script to [data to object] material.  You may also look at Material addons in the User Preferences.  Please improve my search suggestion.

If time is of the essence, for the above you may choose to do it manually.

Multiple Materials to One Material

copy linked materials nodes to local material

I saw something I believe here at BSE an question which brought up a material matching in the form of a Script.  I believe it reduces multiple matching materials into one material.
That script may be on the [Related column] on this same BSE page,

copy linked materials nodes to local nodes.

Above image shows some material addons.  I have not researched these.  The documentation button seems to link to non existant files.


Why do these dark lines appear in render mode?

This is a known bug and limitation of Cycles. Does happen in render also, not only in render view.

The solution is to keep everything close by scene origin. You can have the camera stationary close to origin and then move the scene if it is big inversely to do "camera motion".


How to make this sharp circle edge rounded?

The bevel tool is what you need but won't work properly on your model because the top of the tube lacks edges to join the vertical edges on the outside and inside of the tube. See the picture below.
To get them there, delete the polygon at the top of the tube, then select the inside circle (click on an edge with alt held down) then hold shift down while selecting the outside circle. Then bridge the edge loops. (You can press W and choose Bridge Edge Loops from the menu.)
Edit - have tried to help with the wrong edge - didn't read your question properly.
Using the Bevel tool - press Control B, then, without pressing a mouse button, move the mouse around until it starts to do something to the edge - you might need to move back and forth a bit - when you get something that looks like what you want, Left Click. If you want to use numbers or fine tune - left click then go into a Bevel menu - see bottom of workspace and click on down arrow to open menu.


How to universally rename something the same?

Sadly, All game engines like Unity and Unreal need you to rename them properly because that is how it makes it easier for the engine and you to create your game. If you don't do so, in the long run, you will face more issues. So the answer to your question is unfortunately, no. And next time, don't use offensive language.


Make quad face from where two edges will meet?

If you have the F2 addon enabled (comes bundled with blender), you can do exactly what you are looking for.

To enable the F2 addon, open up the user preferences with CtrlAltU or File > User preferences. Then in the Addons tab, search for f2. Enable the addon by checking the check box.

Now you can simply select the corner vertex, and press F. Done.

Do note that the addon decides which direction to make the new face based off of the mouse position.

  Direction control

  If there are multiple ways to create a new quad, the position of the mouse cursor is taken into account. Of the multiple new faces which are possible, the one which will be closest to the mouse cursor (in 2d screen-space) is the one which will be created.

Quoted from the wiki

Further documentation can be found on the addon's home page.


Why is a 100% mix node not acting as the identity?

From this bug report:

When the input image file is not available, what happens is that the mix node will still try to use the resolution of the first input as the resolution of the output, which doesn't work well because the non-existent file specifies a (0,0) resolution - thus the black image (there are simply no pixels that would be mixed with the second input).
The mix node cannot detect cleanly whether the input buffer is valid, and the image node cannot guess a meaningful resolution ... It seems to work as expected if i choose a valid image file.
I would like to redesign the whole resolution handling in the compositor. Pixels are just not a very reliable and intuitive way of specifying size and transformation. When this happens we can hopefully avoid cases like this.

For context, this was reported while attempting to do this.
So essentially, the mix node (rather unexpectedly) doesn't know the size of the image it's getting from the blur node. As such, it treats it like the input from the blur node is completely transparent (or 0x0 pixels large).
One workaround is to provide a resolution, e.g. with a mask node:


Why can't I change/delete the world background image?

You can adjust the material preview world shading by clicking the drop-down to the right of the shading icons.

Enable 'Scene Lights' and 'Scene World' to use your scene's illumination instead of the material preview presets. You can select different HDRI worlds by clicking the sphere or adjust the other settings. Clicking the 'cog' takes you to the preferences window to allow you to set up custom lighting with your own HDRIs.


Make Proxy operation only works for Groups that are linked from an external file.

To solve your problem,

save the file with the group in it.
Then create a link to the group from the external file.
Then on the group instance selection in the viewport create the proxy.


Proportional editing on mesh doesn't work

Proportional editing works with transform operations like move, rotate and scale. Try clicking G to grab and use mouse wheel to set the influence higher and see if that works.


How do you call "animation_play()" from AN?

Not really solved, but have received confirmation from Jacques Lucke that what I am trying to do (start/stop timeline with AN) is not something that AN was designed for, and is not recommended.


Here is a try:

Analysis:

According to the source artwork, there may be some shaders used. However, the key parts can be: Glass/Refraction, Translucent, Glossy, etc.

So after a few trial and errors, a possible setup might be:

Besides, post processing like compositing can also be included:

To model the water shape, here is one way:

Example file:


Procedural eyes + armature = bloody-red mess
The eyes are built procedurally. The shader makes heavy use of the object coordinates and is a bit prone to changes in the object's origin and scale.
You have parented the eyes to the armature. This applies an Armature modifier which deforms the mesh. The eyeballs don't get deformed but moved down when you play the sit-down animation. The origin (orange dot) stays where it is during the animation, just the mesh is moved. This finally messes up the procedural shader of the eyes. The iris disappears and the bloody back of the eye with all the veins begins to cover the entire eyeball.

How to fix Rigify eyes
In a nutshell: remove the Armature modifier from the eyeball objects and parent them to the bones MCH-eye.R and MCH-eye.L of the generated rig (not the metarig).
Make sure the origin of the eyeball is at the center and the bones of the metarig are at the center of the eyeballs else the eyes will stick out of the head when they are rotated. You can use the 3D Curser (Shift+S pie menu) to align them.
If the bones are a bit off re-generate the rig to have all relevant bones in the right place. Remember to make a backup copy of the mesh with the weight paint if you did already some weight paint. Then align the bones with the eyeballs, and re-generate the rig from the metarig.

Parent the eyeballs to the bones MCH-eye.R and MCH-eye.L of the rig. The MCH- bones are on layer 31. In Object mode, select the first eyeball, then select the rig additionally (eyeball is selected red, rig is selected in orange). Switch to Pose mode, select the bone, and parent the eyeball to the bone (Ctrl+P, Parent to  ... Bone).

Once you have (re-)generated the rig and parented the armature to the mesh you need to weight paint the eyelids (or transfer the weights from a backup copy if you already did this step).  See Why are my model's eyes deforming so badly? for details.
Hope this helps ...
I can see you ;-)


How can I make a warning sign appear when an enemy is behind my character in game engine?

The near sensor is checking if an object is near.

You requirement is to detect if the enemy is behind the character. Either you use a radar (looking behind the character), or you use the near and check if the detected objects are behind the character.

Nevertheless the near sensor should detect objects already. Are you sure the enemies are in range and detectable (dynamic, or rigid body)?


I had a similar issue and found the origin point of the objects in my "DupliGroup" were not centered on the geometry, causing each object to move away from the Emitter surface. Fixing the origin points fixed the issue.


I had the same on a old Dell notebook with Nvidia Geforce GO 7950 and Nouveau driver.

I managed to get the full images shown by selecting DrawPixels as Image Draw Method in user preferences.


Why should triangle meshes be avoided for character animation?

Rather than thinking of limitations with using triangles (I think this is an over simplification of the topic), you need to understand common workflows that take advantage of quad-dominant meshes.

adding and removing edge loops (to increase or remove detail)
using loops to better define features of the mesh (such as facial features, around eyes etc).
operations on faceloops and edge-loops that speed up selection loop selecting, loop sliding for example.
operations on grids. ripping & grid-fill for example.
better deformation with shape keys (a lot could be written on this, read up on mesh topology, facial shapes, deformation).
better subsurface results (edge loops along important features of the form allow your to use creases too).

However in a specific situation you may find it's not a problem to have a 100% triangle mesh so don't be single minded about this.

Instead of defining triangle meshes as bad, try to learn to use these tools and you'll better understand why in most cases, triangle heavy meshes are not ideal for character animation.


The color, that is used when a texture is not found, is defined by four macros in util_texture.h. The color is magenta with full alpha (no transparency).

#define TEX_IMAGE_MISSING_R 1
#define TEX_IMAGE_MISSING_G 0
#define TEX_IMAGE_MISSING_B 1
#define TEX_IMAGE_MISSING_A 1

Code is licensed under GPLv3

The macros are used whenever image data isn't available, e.g. in ImageManager::device_load_image() image.cpp when the loading of an image failed or in ImageTextureNode::compile() nodes.cpp when no texture has been selected in the Image Texture node.


Baking the rigid body sim worked for me. Thanks.


Edit an object's material in Blender using python

Yes, you can.  You will need a second material and then assign that material to the face.  Here is an example I concocted which affects the faces you have selected in EDIT mode:

import bpy
import bmesh

def get_other_material():
    mat = bpy.data.materials.get("pants")
    if mat is None:
        mat = bpy.data.materials.new("pants")
        mat.diffuse_color = (0.8, 0.6, 0)
    return mat

def setPolyMaterial(obj, polyIdxs):
    if len(obj.data.materials)<2:
        obj.data.materials.append(get_other_material())
    material_index = 1

    if bpy.context.mode == 'EDIT_MESH':
        bm = bmesh.from_edit_mesh(obj.data)
        for idx in polyIdxs:
            bm.faces[idx].material_index = material_index
        bmesh.update_edit_mesh(obj.data)
    else:
        for idx in polyIdxs:
            obj.data.polygons[idx].material_index = material_index

obj = bpy.context.active_object
if bpy.context..mode == 'EDIT_MESH':
    bm = bmesh.from_edit_mesh(obj.data)
    polyIdxs = [ f.index for f in bm.faces if f.select ]
else:
    polyIdxs = [ p.index for p in obj.data.polygons if p.select ]
setPolyMaterial( obj, polyIdxs)

I personally prefer to avoid anything from bpy.ops if I can because it requires you to mess with the editor state; and exactly what state you must adjust is entirely undocumented (although usually straightforward, USUALLY).

If you want to alter anything other than the diffuse_color, you can hover your mouse over the field and a pop-up will usually appear giving you an indication of the path to that property in python code (although sometimes it is truncated and you have to go to #blenderpython for an answer)


Use Power function with 1/3 as exponent.


Matrix not applying to pose bone correctly

Added
bpy.context.view_layer.update()

right after setting the matrix. That fixed my issue.


Animating and creating pose libraries without Shape Keys

I think the answer is simple : you may need up to one bone per vertex to obtain the same accuracy as shape keys.

About Karan Shah : he uses UV warp modifier which is purely based on the UV mapping. So that does not change the 3D (or 2D) geometry. Also, in this approach, you cannot mix the effect of two bones (and shape keys can be mixed).
If we want to compare shape keys effect on the face of a Manuel Lab character to UV warp effect for Karan Shah, you'll see that for each shape keys combination (for ML), you may need one texture part (for KS).

After that, maybe something new could be invented... I don't know.


Looks like you have maximized your 3D view.

You can toggle this action with the shortcut keys  CTRL + Up Arrow  or with SHFT + Spacebar

Or find the option in the View menu


How to create half circular-window hole on the wall without resulting ngon?

In answer to the question:

Select the face that you want to put an arch opening in
Subdivide enough times to suit your needs:

Select the edges that surround the area where your arch opening will be:

Select the Circle tool from the LoopTools addon (available in User Preferences if not already installed). This will move the selected edges into a circular shape:

At this point, you can either delete the bottom half of the original face and rebuild the mesh for the lower part of your door opening, or you can realign the vertices that will form the door opening by copy/pasting the appropriate transform values to line them up on the z axis. To do this, just place the mouse cursor over the appropriate transform value and press Ctrl-C:

Individually select each vertex below the one you just copied the value from, and paste the value into the same transform field by just placing the mouse over it and pressing Ctrl-V. You should end up with something like this:

Now you can delete the faces that form the arched doorway.


Material is being squished according to the dimensions of object, how can I fix this?

You will automatically have this deformation with the Texture Coordinate Generated outlet, because it will try to fit the faces of your object. So you have several solutions:

Put a Vector > Mapping node between the Texture Coordinate and the Image Texture and play with the Z scale to find the correct value.
Use the Object outlet instead of the Generated one, it won't deform your texture. Anyway, you'll probably need a Vector > Mapping node between the Texture Coordinate and the Image Texture to scale up or down the texture.
Unwrap your object and open the UV/Image Editor to place the texture on your wall, but I guess it's a solution you try to avoid? It will be necessary if you want to be precise though.


How to fuse/weld/combine 2 "tunnles" in scuplting

Fastest way to solve this is:

Go to edit mode. Select the areas oposing each other (probably with C - circle selection).

Run Edge - bridge edge loops.

I assume you are using Dyntopo - dynamic topology, so then you can return to sculpt mode, and with dyntopo on, you can add resolution and smooth this area.


How to remove black areas of transparent image in reflection

I turned off its glossiness in the ray visibility menu under object tab

Could be the only way of solving the black background of the png as of the moment.


Can you make a button have more than one purpose?

Typically keys and buttons have a purpose dependent on the context.

According to your question the context of "next level" is a current level.

Therefore you need to determine the current level to find out what operation the button is supposed to perform.

It does not need to be complicated. But there are quite a lot of different solutions.

Level Scene switching itself

Assumption: the level scene is still running (e.g. as background scene)

on activating your button send a message "switch to next scene"

on receiving "switch to next scene" let an object of the current level scene switch to the next scene.

Requirements:

you start with a level scene, as there is nothing that loads it otherwise
each level scene implements a switching object

Menu scene switching level

on activating your button send a message "switch to next scene" (see above)
an object knows what the current level is (not necessarily the scene)

on receiving "switch to next scene" this object changes to next level

on changing the level switch to the according scene

I suggest to keep the level in a property either as string or as number. A number is simple as it allows to be incremented.

The important idea is that you first set the level. In reaction of the level change you add, remove or switch scenes (or do other things).

I hope you see this method makes it easy to even add a "previous level" operation.

Remarks:

When you have a lot of scenes you will need to setup a lot of scene setting too. In that case it might be easier to use python to "calculate" the name of the scene that belongs to a level. But this is another topic.


How can I unparent an object in an animaton?

Parenting can't be disabled during timeline. If you want this, you must use Child Of constraint instead. It has influence value, that can be animated.

Look also:

How do I "parent" objects?

Dynamic parent addon


I can see that the pivot point you are talking about, is not at the center of the mesh.
The Pivot point is the orange dot with a black outline.

To center the pivot point, go to into Object mode, select the car mesh, right click, Set Origin -> Origin to Geometry.
Then the pivot point should be centered.

Also, try deselect the Bisect for the X axis in the modifier options.

Let me hear if it worked :)


Subdivision Surface messing up image texture?

I am not sure, but having multiple verticies may be the problem. Merge them Alt + M and then see what the results are.

Some other things to consider are what your edge flow is like at those positions. If there are no edge creases or loop cuts, then the subdivision modifier may round your objects at those locations. With lighting, normals etc, this may be giving you that appearance?


Why no displacement seen in cycles render

Displacement > Midlevel 0.6 > Scale 0.1 seems to be working fine.

I don't have the issue of missing bump in provided blend file.
Probably it is work of Denoiser? Pattern in that distance is really small.
Destruction on last image is caused by high Displacement Scale value.


How to use a background image in sculpting mode?

Go to the camera properties and choose the image background images option.


More lights = darker object? (see Pictures)

The logo in the second image has some Subsurface shading.

I would suggest for the moment to go back to basics,

1: Clean up your logo shader so that it isn't using any subsurf.

2: Replace all your lights with a couple of area lamps.

result is :

Now you can go back and set up shaders and lights as required.


Why does the transparent glass material not allow the emission to pass through?

Cycles doesn't handle this kind of direct lighting terribly well. The only way I know of to rectify this is to reduce the Alpha value of the glass material to something like 0.5.


Do you sculpt a character for a game with the clothing as one object or separate

Well, you could do it either way. However the usual approach is to have any changeable clothing be separate..

Often you wouldn't sculpt the clothing any way, because the shape of the mesh isn't important and will get deformed instead by the things under it using a simulation. As I said in my comment it's a bit complicated, so you really need to learn more about the cloth simulation system.

If you didn't want to use the simulation, either because you have very rigid clothes/armour or it's super tight against the character then I would probably model and retopo the character first plus rig it. For tight stuff, just duplicate and lift the retopoed surface from the relevant part of your character. Since it's tight fitting you can use the same bone weights for the most part and save a bunch of time.

But it all depends on what you need. For realistic clothes and armour it's best to model the body and then put the bits on of top of it. If you don't care then you could skip making any parts of the body that are fully covered.

If for example your character appears in three different sets of full plate/powered armour then you're probably better off just making three entire characters that just share a head or something. They may even need different animations if the clothing is sufficiently different.

There isn't really one right or wrong way. It's just having a base body that you can put different clothes on is more flexible and extendible, especially if they can share one animation set.


How to connect mesh vertex groups with bones?

When using the Armature modifier with Vertex Groups enabled :

the vertex groups should have the same names as the bones so they can be bound together