Need some help for an experiment (Eye animation)

From the texture provided in your question, you can use "uv warp" modifier to do this:

How to do it:

UV unwrap the eye part that will be textured.
Place this UV part over the texture part you want: move and scale (big pupil, for instance)
Add the "UV warp" modifier.
The modifier uses two objects, say empties. One is the base, the other one "empty.001" is the one to shift from the base.

Move the empty so that its position and scale makes the UV cover the wanted part of the texture.
Keyframe it when the position is ok.
Do it for all steps of your animation.
Then, go to the graph editor to edit the empty movement to constant steps.

The corresponding shader node tree:

Note: if the background is not pink but white as the eye is, you can add some more variations, as done here: How can I move a UV Island to simulate the Movement of an Eye


How do you get the top menu settings back

Just drag from the 3D View corner up to create a new window. Place where desired and the change the editor type to Info


Where can the stats at the main bar be changed?

Those are defined in C in /editors/space_info/info_stats.c, they are not editable at all from/with python.


A way of achieving this would be to save the matrix as an .exr image texture (for instance using the imageio package and its imwrite() function).

You can then create a plane and add a Subdivision Surface modifier (on the wrench in the menu) changing from Catmull-Clark to Simple, and then add a Displace modifier.

On the Displace modifier, click New to create a new texture and then go to the texture menu (a square like a chess board).

There you can open your .exr image.

Now if you go back to the modifiers menu, as you increase the viewport subdivisions in the Subdiv modifier you should see how the plane starts to resemble your image.

If there's interest on this I'll add more details and screenshots :)


How to make screw spiral down into a point?

Curve Modifier. Proportional Edit. Shape Keys.

Image above

Yellow Cylinder. High Density of Vertices is shown with the wire mesh detail on extreme left.
Blue elongated cone mesh created with proportional edit of Yellow. Vanishing Point on End. Shape Keys.
Spiral Curve and Blue Mesh with Objects centers in the same location.
Curve Modifier Shown. With the cone shape dominant.
Curve Modifier Shown. With Cylinder shape dominant.
Apply Scale to Curve.
Please research further for the Curve Modifier. This is just to launch your further research and not a tutorial.  Search here at BSE.


The mouse move script allows cutomization. In order to restrict up/down rotation you could add the properties as shown in the image.


You can use the scale function in the Graph editor the same way as in the 3D viewer. make sure that all the objects with keyframes you want to adjust are loaded in the Graph editor and visible, then use A to select all, then S,X and the amount you want to scale by (i.e. S,X,-,5 or S,X,1,.,2,5, etc. and press Enter.


rendering mask image but many parts failed to render

The object index is a property that is unique to each object, you need to have every object set to the same index if you want them to show up in the same mask.

You can do this easily by selecting all of the cars, then right clicking on the object index and choosing Copy To Selected.

Another way is to use the same material on each car and use the material index instead of object index.

As you are duplicating the cars using python, you can set the pass_index as you create each car.

def createCarWithName(self,name):
    obj = bpy.data.objects[name]
    mesh = obj.data
    new_obj = bpy.data.objects.new(name, mesh)
    bpy.context.scene.objects.link(new_obj)
    new_obj.rotation_mode = 'XYZ'# Force the right rotation mode
    new_obj.pass_index = 1


Rigify: Unexpected deformation based on a given weight paint

I think it's a usage issue, not weights of DEF-forearm.R and DEF-hand.R.
Because when I reduce the value of Rubber Tweak, it seems to work fine.


Newish to Blender and desperatly need help with textures

These tuts might be helpful https://youtu.be/eiDrRa6JvQ0 this next tut is spread across several videos it covers modeling to render just pick the one(s) you want https://youtu.be/XVA8CYC9z2o and if these don't work try googling it. Hope you have success -- triplex


Render taking ages, just CPU or i did something wrong?

2000 samples squared will be 4 000 000 total samples do you need that many? Uncheck square samples.


How to bend legs at the knee and make them move independently?

To get the two legs move independently you need to go into edit mode and turn the x-mirror off as shown below:

To control knee bending, you need to add a new bone for pole targeting as shown here:

https://blender.stackexchange.com/a/21385/2517


A way to do it would be to convert both shapes to meshes (with Alt+C). Then extrude first mesh of a value greater than wideness of second mesh, and extrude second mesh of a value greater than wideness of first mesh. Then do a boolean intersect of them and a remove double (that can help to obtain a clean result).
You can't do booleans on extruded curves, even if you add first a remesh modifier on them, so you can't keep the editable property of bezier curves (or svg) for modifying on the fly the final volume if this is what you expected... (But for sure that would be a really great way to do it)


Physic-based fur/hair on an already animated model from an external software (Source Filmmaker)?

I'm not sure exactly how I can help except point you to a tutorial: https://www.youtube.com/watch?v=yxbW5mCdHLg
Animation import as fbx will work.


If you press I over the 3D window and choose LocRot from the drop-down menu, the keyframe pop up immediately for the selected bone. Perhaps you were pushing I while your mouse was in another window?

I see you have changed LocRot in the automatic record field, which will do nothing unless you activate it by pushing the red button. After activation move bones to your hearts content. Despite the auto-function - general practise is to select you bones in the 3D window and manually set the first keyframes as described above. If you wish to do automatic key framing, understand it will record everything including your mistakes. Advise tuning that off unless you specifically need it.


How come the Blender 2.83 Splash Screen by Ian Hubert takes so much less time to render than my Doughnut tutorial?

While Cycles is a "path tracer", Eevee is rasterizer.
"Unlike Cycles, Eevee is not a raytrace render engine. Instead of computing each ray of light, Eevee uses a process called rasterization. Rasterization estimates the way light interacts with objects and materials using numerous algorithms. While Eevee is designed to use PBR principles, it is not perfect and Cycles will always provide more physically accurate renders. Because Eevee uses rasterization it has a large set of limitations."
https://docs.blender.org/manual/en/latest/render/eevee/introduction.html
for example almost all game engines are Rasterizer. That way we can "fake" most stuff to look like the real deal.
And you are in luck. Eevee and Cycles are very close togther in node setup so your work is have been cut in half already. But what you do need to learn is the Eevee limitations.
https://docs.blender.org/manual/en/latest/render/eevee/limitations.html


Archipack: when adding a window to a wall with wood cladding, the window is at the wrong depth

Looks like a bug in the hole geometry generation on such walls with small thickness.

Window depth is the same as wall width parameter and always must keep in synch with wall.

Either increase wall width or set window "Offset" to 0.06 (or play with this value) should be able to fix your issue.


Remove intersections between many objects

You may use a Direct Union of a BoolTool add on.

Activate the add on in User Preferences (Ctrl+Alt+U).

Select all the spheres with Shift+RMB, then press Spacebar and type direct union.

If you want to separate each object use Linked Flat Faces option.

Select one face of the sphere, go to Select-->Linked Flat Faces (or use a Shift+Ctrl+Alt+F shortcut). Increase the Sharpness value in a Tool Shelf. Then press P-->Selection to separete the selection.


Make the wall of a UV sphere collide-able in untiy?

For anyone still having the same issue, just simply go to blender, select all vertices while in the Edit mode, go to Mesh,Normals and then invert the normals.
and then import it in unity as an obj file.


Maybe you should make concentric circles with some successive extrusions (E) and scales (S), and the more the circle is central the more you scale it on the Z axis (S Z), and you should even scale the last ones at zero (S Z 0)


I'm not sure if you really have any problem here.

Actually here is common mistake made by a lot user that are not into programming.
GPU rendering is NOT faster than a CPU rendering, GPU rendering is SOMETIMES faster than CPU rendering, depending on the rendering algorithm it's used and your graphic card your OS the pipeline etc...
Blender don't use the classic graphic pipeline that the graphic card are design for (they use raytracing instead of rasteriser) so from this point all is about how fast and efficient are every computation.

A little technical explanation:

GPU programming is one of my favourite topic in computer science so I will try to keep it simple.
Actually CPU is A LOT faster than a GPU for one computation (it's like comparing a smartphone with a desktop CPU, really) and GPU love making all at same time (that why you can use Shift+Z in cycle).
Basically if computations are not dependant between them GPU win.
-> So usually the problem is more you have dependency between computations slower it will be on the GPU.

What I think for your benchmark:

You use some shader/material/effect that make dependency between computation or make the GPU wait for some synchronisation and make you GPU render less efficient...

So blender has some optimisation problem ? No, if GPUs were just more efficient than CPU what is the point of keeping CPU ? No it's just a trade, you just have to know what you want to do with your scene (render optimisation you know...). Btw that's why blender keep CPU rendring...
The GPU is really better when you want real time using a lot a tricks that use parallelism a lot. that's also why a PS4 has 1.6 GHz but with 8 cores (for parallelism again) but that's an other story

-> You really have to keep in mind I just THINK this is the problem I don't have your scene to deeply test it or trying track which effect/shader/material take time.

Hope that help. =)

[EDIT]

Even if what I said is true I said also "I just THINK this is the problem" and in fact I've just tested your scene and checked this thread:
http://blenderartists.org/forum/showthread.php?239480-2-7x-Cycles-benchmark-%28Updated-BMW%29

On my AMD AMD A8-5550M APU with Radeon(tm) HD Graphics Processors (AMD Radeon HD 8550G) with my gentoo kernel 3.17.8-r1 and proprietary driver fglrx 14.12-r3, I have:

GPU: 5:54:54
CPU: 17:09:73

which is a pretty huge gap...
So now look at the thread, for OSX you have 2 type or person:

GPU-> not supported
GPU-> slower

So the scene is obviously GPU optimised and what I said before is not the real problem here.
The thing you have to know is OSX has a lot of problem with his graphics drivers (for exemple if you try openGL you are stuck with openGL 3.3). From here what I think is your render time difference is due to Apple's drivers.
I don't work for blender or Apple so I am not 100% sure but from I see here the problem seems obviously coming from Apple. To be really sure I will make some test on the Mac of my room-mate soon.

PS: I'm really surprised the graphics driver from Apple was that bad, I thought it was just "bad" not "really bad"


How do I use the Curve Profile > Helix (3D)

It is indeed a bit strange that one can't enter a number of twists or revolutions in the Curve Profiles menu. There are workarounds:
Method 1:
Simply duplicate the curve in Edit Mode, move it along the z axis (where the distance is the height of the curve) and delete the bottom vertex of the top curve. Then select the vertices you want to bridge and press F.

Method 2:
Turn your curve into a mesh (Alt + C by default, and choose Mesh from Curve/Meta/Surf/Text) so you can more easily make certain changes. Apply a Array modifier (with the Merge box checked) for instance.

Then after the changes are made to the mesh, turn the object back into a curve. (Alt + C again, and choose Curve from Mesh/Text)

But it might be a different kind of curve now. We can fix that by setting the spline type.
You can do this by pressing the search hotkey (usually F3 or Spacebar) and search for the command "Set Spline Type", and choose for instance Bezier.

Lastly you could select all vertices and change the Handle Type, for instance to Aligned. Now you can have the same kind of curve you started out with, only (most probably) with more vertices than before.

If the curve is a Bezier and you want to reduce the number of vertices in the curve, you can do Decimate Curve and enter a value between 0 and 1.


Before uploading make sure to pack all external data.
Images used as textures, backgrounds or environments do not get saved into the .blend file by default. To include those as part of the file you have to Pack them. In the File menu press File>External Data>"Pack all into .blend"

PLEASE NOTE:
Image sequences, video files and Simulations Cache Folders will not be packed. For those it would be better to place them in a common folder along with the blend file and zip them (or bundle them with any other packaging software). And share the whole folder. For convenience you might also want to make the blend file work with relative paths, so that you don't have to re-create the folder structure used on the original computer.
For more info, read this page form the manual: https://docs.blender.org/manual/en/dev/editors/info/file.html?highlight=find%20missing%20files#file
To save the baking cache for physics simulations see: Can I save the baking cache? or Is there a way to save a baked cloth simulation (in .blend file or to disc)?

If the question is where to host a file for a question asked on this site please use:
https://blend-exchange.giantcowfilms.com/

Note
https://blend-exchange.giantcowfilms.com/ can olny host .blend files (not zipped folders) used as part of questions and answers on this site, and they have to be smaller than 30MB. To share larger files or bundled content on zipped files there are numerous free or paid websites and services. But that part of the question is beyond the scope of this site, so do your own research.


Help with creating color tinted glass with dusty look

Is this any good?

The trick is to mix between a transparent shader and a glossy shader. First, you'll need a dust texture. I used this one from Blender Guru.

I set up a mapping and coordinate nodes just to be professional, as it gives you more control over the texture. Next, add it to an inverted math texture node (I chose noise, as I think it gives the best result), then color ramp it as you wish to an orange shade. At this point, we need to make our object behave like both a metal and glass, so I use a transparent node mixed with a glossy node, both with color from the color ramp.
The final node setup looks like this:

You can tinker with the amount of dust, metallic-ness, and transparency to your liking, but importantly, this material has all of those things.


How to UV unwrap simple plane with very short one edge?

Unfortunately, I don't believe there is any way to do this in blender via UV unwrapping.

The way all 3D programs calculate 4 sided quads is to split them into triangles.

As you scale it, blender is automatically triangulating the four sided quad so it creates a diagonal split along the face in a preferred angle depending on which direction you move the vertices (it changes depending on the algorithm blender uses).

Therefore one triangle will maintain its scale and the other will be distorted as you scale the bottom edge of one of the triangles (which don't appear to be visible until you start scaling because there is no visible edge separating them).

I suggest two methods. You could either bake your image using your subdivided version to use for your image texture for your 4 sided quad or you could use GIMP or photoshop and morph the image along the bottom edge, using the tools there and you could export your UV map template as another layer to use to help line it up.

Like this:

Blend file:
https://www.dropbox.com/s/rmifrinjqmc34ba/UV%20plane%20stretching.blend?dl=0


reorder modifier/constraints stack order in python

Sadly no. I ran in to the same limitation when trying to sort logic bricks.

The constraints, modifiers, and logic bricks are all read only collections.
The only way to reorder them is through the ops operators, moving one at a time, up or down one place. (which stinks for any scripting)

For constraints it is:

bpy.ops.constraint.move_up(constraint="constraintName", owner='OBJECT')
bpy.ops.constraint.move_down(constraint="constraintName", owner='OBJECT')

For modifier it is:

bpy.ops.object.modifier_move_up(modifier="modifierName")
bpy.ops.object.modifier_move_down(modifier="modifierName")

For logic bricks it is:

bpy.ops.logic.sensor_move(sensor="logicBrickName", object="objName", direction='UP')
bpy.ops.logic.actuator_move(actuator="logicBrickName", object="objName", direction='UP')
bpy.ops.logic.controller_move(controller="logicBrickName", object="objName", direction='UP')

bpy.ops.logic.sensor_move(sensor="logicBrickName", object="objName", direction='DOWN')
bpy.ops.logic.actuator_move(actuator="logicBrickName", object="objName", direction='DOWN')
bpy.ops.logic.controller_move(controller="logicBrickName", object="objName", direction='DOWN')

You probably would not want to reorder constraints or modifiers alphabetically. Both constraints and modifiers work from the top down, the order effects the out come.

Here is an example with the exact same modifiers and default settings, just the order is reversed. Stack order makes a huge difference.


Uneven lighting on some faces after a normal map is applied

Some of your UV islands / individual faces are flipped in U.

With an eye on the mirror axis, in the Mirror modifier for each object, check 'Flip U' so the texture matches on each side: both 'wrong', or both 'right'.

With the pivot set to something that suits, maybe 'Individul Origins' if you're doing a few at once, Select Islands/Faces that are 'wrong' and in the UV editor, Header: UV menu > Mirror > X axis.
It's probably worth right-clicking and setting a Quick Menu item for that. SX-1 would also do it.

Following commentary, there are one or two things I've noticed in samples of your model..
You would want regions meeting across a mirror plane to be exactly planar, and at exactly right-angles to the mirror. Occasionally, they are not, quite... and there are still the odd stray vertices around, extra hidden faces. One approach to solving that would be ShiftG select similar > coplanar, with a high tolerance, and scale the region to 0 about its median, along X, or its normal if it's at an angle.
It's hard to tell without running tests, but at first sight, it seems the normal map might have a slight tilt: an overall rotation in U.  That means, (irrespective of pattern) it would be  tileable in translation, but not in reflection.
Maybe you have to apply the Mirror modifier before tweaking to perfection.


How can I solve this problem, while baking a high poly to a low poly one?

Finally, the way to solve this glitch is to set viewport shading to Rendered while baking.

This is clearly a bug in old rendering engine which seems solved in new Rendered viewport engine.


Having the visibility of IK/FK controls being driven by the IK/FK switch?

You can hover on the IK_FK slider > right mouse button > copy as new driver.
Then select a bone of the IK controllers, go to the outliner, enable the visibility icon (screen shape), press dot in the numpad to highlight the selected bone, right click on the visibility icon and choose paste driver.
Repeat for the other IK bones.
Then, for the FK bones you will have to change the driver expression: paste the same on one of the control bones, edit driver and change it from average value to scripted expression and type in "1-IK_FK".
Then copy this new driver and paste it on the others FK bones.
Note that both IK and FK layers have to be permanently turned on (I've tried to work on layers visibility, but it doesn't work, I don't know why).
For values different from 0.0 and 1.0 both bone chains are visible (which I think is useful).


Baked Texture Not UV Mapping When Exported to Unity

You have two UV-Maps on the object. The exporter might have either just exported the wrong one or exported both and you need to pick the correct one in Unity. Either way UVMap is the one you want, judging by the node setup, not Joined01.


Going into wireframe mode shows that the subdivision creates a fold in the model.

Creasing the sides of the star trek polygon pulls the fold out.

That basically solves my problem, because the render looks right, but the topology doesn't:


Heel bone twists strangely under rotation, need to resolve in order to progress

It has to do with the Copy Rotation constraint you've given to your feet, if you rotate your IK controller on the Z axis, the foot will go up,  because it's rotating on its Z axis... I don't know if you can fix it with this constraint, but anyway you could simply delete this constraint and parent the feet to the controllers.


why does my TimeOffset modifier not work after rendered?

I had the same issue. The TimeOffset modifier is completely functional during renders in Blender 2.91. It looks like the discrepancy is limited to Blender 2.92 which means that if you use one of the earlier versions from this link, it should work. https://download.blender.org/release/. Hopefully this bug will be fixed in version 2.93


Is it possible to both GPU and CPU render in the same Blender instance?

It is now possible.

In the latest versions of 2.79 (check for the daily builds) you can use Hybrid mode: GPU and CPU as compute devices simultaneously.

Tile sizes have also been optimized for smaller tiles in GPU.

As always... test before you commit...


Everything snapping to grid after some accident hotkey. Precise changes available only when I'm holding CTRL

Mode: Edit or Object modes

Hotkey: Shift+Tab

Menu: Mesh/Object » Transform » Snap

Once the tool is activated you are ready to drag your element(s) to its(their) destination. Move your mouse pointer to the target where you want to snap to, hold down Ctrl, move your pointer to adjust (especially if your target is an edge or face).

When satisfied with the result, confirm with LMB Template-LMB.png or Enter (as usual, you can cancel everything with a RMB Template-RMB.png click or by hitting Esc).


Erratic SVG object transformation / rotation

Upon some testing it seems that it is not the rotation itself that is causing the distortion.

Eliminating the rotation transform from the first curve and importing again does make them overlap perfectly, but opening in Inkscape they both overlap perfectly regardless of rotation.

Scaling is the same for both objects, so that leaves only one culprit left: viewboxing

Your viewbox is causing distortions to your file as a whole, it becomes noticeable only in the transformed object.

If you manually edit your SVG file and remove the viewBox="0.000 0.000 1100 600" parameter, they both import fine and seem to overlap perfectly.


MacBook Pro 2018 - No render devices for OpenCL (2.91.2)?

Have you enabled your devices in user preferences? (I know in my image it says "No Compatible GPU's Found - I don't use OpenCL) Your devices should be listed here - Enable them and they should become accessible from the Render Properties menu.


Blender animation constraint "Track to" not working for soft bodies

Assign a vertex group.
Further to @moonboots answer, Since the soft body modifier alters the mesh but not the origin can select all or any vertices of the soft body mesh and assign to a vertex group.
Soft body mesh in  edit mode, select verts, make a new vertex group, assign to group.
In the camera's track to constraint, choose the vertex group as sub-target.

Tracking to "Group" vertex group (All) of the icosphere
The same method can be used to track to any modified mesh.


It is possible by applying subdivision surface modifier on subdivided object. Then the one you're joining to it, won't be subdivided.


Look in your tool settings under Properties for the Options panel, and set your bleed higher than 0, preferably 2 or maybe 4 pixels so that it will go 'outside' the uv mapped mesh, filling in the visible seams left by not enough overlap.

Here is your file with the subdivision turned on, and then a full strength dab applied across the black area.


How to get a camera to copy location of character from a different scene in BGE

Scenes have no "relation" to each other. You need to define a relationship by yourself.

I guess you want to mean the same relative coordinates or both cameras (example: the middle of one camera is the middle of the other camera). This shows an advanced example: https://youtu.be/rnjzoQM273A

I guess you do not need such high sophisticated solution. I simply assume:

The scale, orientation and location of both scenes is supposed to be the same and remains constant

This helps to simplify the system quite a lot.

It allows to copy the current world position (orientation and scale) from one scene to the other without converting it.

objectInSceneB.worldTransform = objectInSceneA.worldTransform.copy()

But there is a small but important issue. When you do it that way the target object might be rendered before it received the new position. That creates a one frame delay. While it does not sound a lot, it is very noticeable especially on cameras.

To solve that I created an invisible "master" object in one scene. Each scene (including the scene with the master) gets a visible "slave" object. Then I constantly copy from master to all slaves. This still creates a delay between the master and the slaves, but all slaves receive the change at the same time. As only slaves are visible there is no visible issue.

In your case I recommend following:

have one master camera (the user does not look through this camera) in one of the scenes [call it "Camera.master"]
have one slave camera at each single scene (= active cameras)
copy from master to all slaves

synchronizeCameras:

import bge

scenes = bge.logic.getSceneList()
slaveCameras = [scene.active_camera for scene in scenes]

for scene in scenes:
    masterCamera = scene.cameras.get("Camera.master")
    if masterCamera:
        masterKey = masterCamera.get("master")
        for slaveCamera in slaveCameras:
            if slaveCamera.get("slave") == masterKey:
                slaveCamera.worldTransform = masterCamera.worldTransform.copy()

Installation

Copy the above code and paste it into a new textblock of your blend file. Name it synchronizeCameras.
Add an empty to any of the active scenes. Name it Synchronizer.camera. Switch to the logic editor.

Add an Always sensor. Enable True Level Triggering, to ensure it synchronizes at each single frame.
Add a Python controller in Script mode. Select synchronizeCameras. Connect it with the always sensor

Select the camera that should act as master camera (the camera you can move around)

Duplicate the camera shift-d.

Rename the new camera to "Camera.master" (the same name as in the script). This is the master camera. It is the camera that will determine the location of all slave cameras.

Select the other camera (where you copied from). This will be a slave.

Ensure this is the active camera of this scene ctrl + numpad 0. (You will never look through the master camera, you always look through the slave cameras).
Remove all logic bricks from this camera.
Un-parent the camera if it is parented (it should only move via the above code)

Run your game.

Include/exclude

[Edit]

To include/exclude slave candidates you can define a master key. At the master object setup a property "master" (e.g. String: "camera"). Then setup a property "slave" with the same value at each slave that should be synchronized. In your case do not setup the property slave at the camera of the overlay scene (or at least not with the same value).

This even works dynamically. You can change the properties in-game to enable/disable synchroinization on-the-fly.


What shortcut to open Node Wrangler menu in 2.8?

Shortcut for the Node Wrangler's Quick access menu in 2.8 is Shift+W.
Shortcut for Node Wrangler's Quick access menu in 2.79 is Ctrl+Spacebar.

You can also press T to open Properties shelf on the right in 2.8 or N to open Toolshelf on the left in 2.79 and prior and open Node Wrangler addon's tab; there you will find all the tools it provides with shortcuts shown if you hover over them as well as the Quick Access shortcut  written in the top.

I don't have any idea what Ctrl+Shift+Alt+wm.call_menu actually is; wm.call_menu is a command entered into RNA field in the user prefs shortcut dialog and has nothing to do with a shortcut itself, it's a way to tell Blender menu with some choices should appear. The source for the choices is then pointed out in the Name field.


I can't import a COLLADA (.DAE) file into my scene

I encountered the exact same issue, and the following steps fixed it for me. I'll be posting the solution for anyone still encountering this issue that comes across this post, like I have.

I originally found this method in this forum post.

Steps to fix:

Open the .dae file with a text editor. Any will do, but for large enough files, make sure it supports regex find/replace as to not make the fix tedious.
Remove the content of all <diffuse></diffuse> tags. Only delete their content, not the tags themselves.
Save the file as .dae

Example :

<diffuse>
    <color sid="diffuse">0.800000  0.800000 0.800000 1.000000</color>
</diffuse>

becomes

<diffuse>
</diffuse>

With regex :

You can achieve this by replacing <diffuse>[\s\S]+?</diffuse> with <diffuse></diffuse> (add backslashes before / if necessary).
However, if you have the option to make . include newline, the first regex just becomes <diffuse>.+?</diffuse>


Add Manual and Python Reference Links for Custom Operators

There are two functions that takes you to the docs:

# Blender docs
bpy.ops.wm.doc_view_manual(doc_id="")

# Blender Python docs
bpy.ops.wm.doc_view(doc_id="")

It seems that they take their parameters from the property as follows:

doc_id = data.identifier + property_name

where the property has been created in this manner:

col.row().prop(data, property_name)

Those functions search the _manual_map for this doc_id. The manual_map contains by default the blender_default_map which is (prefix, manual_mapping ).

The prefix is simply 'https://blender.org/manual' while manual_mapping is dict you give it the something+doc_id (in this case bpy.ops) and you get the rest of the url (url = prefix + manual_mapping[doc_id])

So to add you manual you create your addon_map:

import bpy

prefix = "https://myaddon.org/manual/"
my_manual_mapping =(
    ("bpy.ops.myaddon.*", "page_one"),
    ("bpy.ops.myaddon.something.*", "page_one/page_two.html")
)

def my_map():

  ret = (prefix, my_manual_mapping)
  return ret

bpy.utils.register_manual_map(my_map)

bpy.ops.wm.doc_view_manual(doc_id="") will now take you to your site.

(Note: I have this in my addon: bl_idname = "myaddon.simple_operator")


A pose library is simply an Action datablock. Each pose is actually a marker in the pose_markers collection; you can use the marker's frame property to evaluate the action's fcurves, which gives you the pose.


Can you have a timer on suspended dynamics in blender game engine?


The following uses hard coded windows paths for the ip_path, op_path but as the intention was to specify your own path and file this should be no issue.

Open a new blender file (the script will be removing all content from collections in the current file while running).
Copy the code into a text editor.
Modify the ip_path, ip_fname, op_path for your specific targets.
Run the script.

import bpy
import os

# folder containing blend files
ip_path = "C:\\Blender Projects\\bridge\\"
ip_fname = "bridge_002.blend"

# target folder
op_path = "C:\\Blender Projects\\bridge\\temp\\"

blendfiles = [ip_fname,]

def clear_cur_colls():
    while len(bpy.data.collections) > 0:
        bpy.data.collections.remove(bpy.data.collections[0])
    override = bpy.context.copy()
    override["area.type"] = ['OUTLINER']
    override["display_mode"] = ['ORPHAN_DATA']
    bpy.ops.outliner.orphans_purge(override)

def get_coll_names(assets_path):
    names = []
    with bpy.data.libraries.load(assets_path) as (data_from, data_to):
        names = [name for name in data_from.collections]
    return names

for file in blendfiles:
    # prep to make a folder based on blend file name
    filepath = os.path.join(ip_path, file)

    # make a folder based on blend file name to store new files
    if not os.path.isdir(op_path):
        os.mkdir(op_path)
    # get each object from blend file
    colls = get_coll_names(filepath)
    for coll in colls:
        # clear the current file
        clear_cur_colls()
        # append the object
        bpy.ops.wm.append(filepath=file, directory=str(filepath)+"\\Collection\\", filename=coll)
        # save blend file
        bpy.ops.wm.save_as_mainfile(filepath=os.path.join(op_path, coll+".blend"))

clear_cur_colls()


Grab the three hash marks at the bottom, left-hand corner of the Dope Sheet and drag up to split it. Make sure that the seam between the two Dope Sheets is at the same height as the seam between the two 3D Viewports. Adjust the 3D Viewport's seam to equalize. If the seams are at the same height, you should be able to grab the three hash marks in the top, right-hand corner of the bottom 3D Viewport, drag them to the right, and release to collapse the bottom Dope Sheet.


simple answer is to go to system prefs on MacOS and go to mouse or on macbook trackpad and select point and click settings and then secondary click and adjust any necessary settings


How to rotate a procedural texture on a single object?

The solution is to make a separate material for each object (or set of objects that share the same properties) - as that allows you to adjust it for each object. However, it's not that you need to replicate the whole material and can't share sets of nodes, since you can create a Node Group that contains most of your material and re-use that group within each seaptarate material - maybe just adding a Texture Coordinate and Mapping node to each one so as to allow the orientation and scaling to be adjusted.


Boolean modifiers are not working correctly on this mesh

Make sure you are inspecting your results correctly to know if the modifier worked correctly.  Use multiple colors to inspect.  All gray may create more work for you.  In the outliner window turn off and on the eye icon.  The eye icon affects 3D Viewport visibility for inspection.

Image above shows placement of unclosed hemisphere and modified cube. Corners have red balls for visibility discussion below.

In the image above the hemisphere is not really closed yet we played nicely and got the results we wanted as per the OP question.

In the image above we moved the blue hemisphere into a [exotic] position and we see [exotic] case where the boolean modified cube and hemisphere have coincident surfaces. The term [exotic] is yet to be defined.  Difficult to see resulting Cube. Most of the Cube has disappeared.  You can witness this interactively by moving the hemisphere left and right.

In the image above we see the surface remaining of the cube because the visibility of the hemisphere in blue has been set to false with the outliner window eye icon.  You may or may not want this type of result. Yes it is a feature.

If your hemisphere is not closed it can cause the disappearing act.  Use a fresh full sphere to compare. A closed sphere can be shaped into a well modeled closed nice hemisphere without deleting any vertices.  The open hemisphere can cause a thin surface to be in the same location as the hemisphere and visually hidden if we are too casual in inspection effort.  The boolean modifier may even try to make logically close a surface for you, but it is not wise to count on those intricacies. The boolean modifier may have complex behavior so you may find life easier if you do not create exotic cases.

Make sure both objects are closed volumes. Water Tight in loose terms.
Make your objects are temporarily closed if necessary. Perhaps the requirement of closed volume can be relaxed yet I problems occur close the meshes water tight.

Try 2 closed objects such as sphere and a cube.  They are closed already when unedited.  Water Tight in loose terms.  Try the Boolean Subtract Modifier.  This is to compare successful operations to unsuccessful ones.

Apply the modifier.  Move the modified object to a new location to inspect or hide the target of the modifier.

Superstitious.  I recently had to select the wrong type of Boolean to achieve the results I wanted.  I had to select [intersect] but logically I would choose [union].  Troubling.  I hope you do not have to do the same.


How Can I make the World background Material to be checker Texture?

Use a Checkered texture connected to you world background shader, then just provide it with correct texture coordinates.

From a Texture Coordinate node use the Window coordinate output to get a flat 2D-like background.

Adjust the size with the Checker texture Size parameter, and the proportions with a Mapping node.

They should be relative to the Render Output image aspect ratio you have set in the Render Properties tab. For example if rendering at 1920x1080 you would get $1080/1920=0.5625$


Consider the lines as "a whole" or "individually"

As reported in the manual, "chaining" is a parameter that controls the way in which lines are rendered.

If enabled, Blender will draw each line as if it was connected with the previous; on the other way, if disables, it will render each line separately.

You can see the effect by increasing line thickness and zoom in till you can see where one line ends and another starts:

While the same object with chaining enabled is:

It is useful to make custom line styles. Notice in the examples below how the same thickness modifier brings to different results:


Blender 2.80: What is the difference between "Rendered" and "Look Dev" display modes?

LookDev uses the eevee renderer and some pre-selectable hdris to light your object. It ignores the lights in your scene. Rendered uses the lights in the scene, and you can change between cycles render and eevee.


Why is one face on my model gray instead of orange in edit mode?

That is simply the active element.  The active element changes all the time when you change the selection.  It is usually the last element you selected.

It is used for various types of things.  For example, the most common use is if you have the transform pivot point set to active element, it will use the active element as the center of the transformation.  You can change it to another element by selecting that piece of geometry last.

In object mode, the active element will be an object, it will have a slightly lighter orange boundary around it.  It is more significant in object mode, since when you change most settings in the properties panel (or go into edit mode) it will only affect the active object.


What happened to my "project/objects info" footer and how do I get it back?

Right click on the version number and check the options you're interested in.
You can have thoose infos in the 3d window overlays also, checking the "statistics" option.


Are there any known formulas or other ways to create a realistic physics animation?

[I am not an animator, and this opinion is solely based on conversations with animators and reading various articles on the subject]

Some things can be simulated to add realism, and blender supports several types of simulations: fluid, newtonian (bullet) physics, smoke and cloth and hair.
You can theoretically use the bullet physics engine to simulate what happens after a fist hits an obstacle.

You can also use motion capture (mocap) to record real motion and use this data in animation.

However, in most VFX and animated films, mocap and simulations aren't usually used just as they are. They're usually the basis or reference for enhanced, exaggerated, stylized or precisely controlled animated sequences.

Cloth, hair, fire/smoke and fluid sims are very useful for producing quick and realistic results in these departments and are more likely to be used as they are (except for some cleaning and fine tuning), especially for background animations. But animators often want more precise control over the end-result than simply running a simulation for main characters' animations.

So the short answer is: yes, you might be able to simulate some things instead of hand-animating them, or to use motion capture to acquire real motion data; but  you might not want to use these exclusively.


In the UV editor, you can select different render slots.  Select Slot 1, for instance, render... then select Slot 2, render again.  Switch back and forth between the slots to compare using J and Alt + J

EDIT:
Only adding by request... in addition to using J and Alt + J, Lukas also pointed out in his answer that the number keys at the top of the keyboard (not Numpad) can be used to select the slot to view.

It should be noted that pressing J will auto-cycle the renders.  If you only have renders in slots 1, 4, and 8, it will only cycle those slots.  So it can be handy.


How do I get Blender working with AMD OpenCL on Linux?

Having done some more poking around I have specifically pinned it down to only the libdrm update, downgrading to libdrm 2.4.93-1 is currently a functioning workaround.

https://bugs.archlinux.org/task/60061


One approach you could use is to create a special converter scene using cycles.

Place the camera in the center of a cube and give each face of the cube its own material based on one of the face images (honestly: rigging the materials and the UV coordinates will probably be the most time-consuming part of this exercise).  You probably want to use an emission BSDF.

Then change your Camera > Lens from Perspective to Panoramic.  Change the new Type: to Equirectangular (unless you want one of the others).  Then render one frame and you should have an equirecangular version of the scene.

Save that image and you should be able to use it as the environment in your main project.

There is also https://github.com/Samsung/360tools, but I have not investigated the exact command-line for converting from a cubemap to equirectangular, and it might require you to convert to YUV and back.


Issue exporting animation with blend keys to FBX

The exporting option to support your blendshapes (infalible) is to export a .dae
On the panel options check "EXPORT SHAPE KEYS".
Voilá.

My sincere gratitude if you vote me as the answer.

ps: Yes, I also use Autodesk's FBx review. Normally (2016 FBX format) will BRING in all keyshapes in the model (works in Unity as well).

But a blast from the past with .DAE and go long!

BFCT_Schiller


increasing density of beam light in volume rendering

When you are using scattering you need increase the intensity of the light.


How to fix the sinking area surface after decimate?

Another approach would be to bake your high-res model to a displacement map which you apply to a low-res mesh afterwards.
I found a video tutorial how to do that:

https://m.youtube.com/watch?v=l1ASzhU9O-A


You can use Hair particle system with Cube as Render > Object.
Cubes are emitted based on texture Density.

Sprite to Cubes
Like here your image 16 x 16 px ...

add Plane, Subdivide by 4 to get 16x16 grid, delete one row to get 15x15 faces, because Cubes will be emitted from vertices
add Particle System > Hair, Source > Vertices with disabled Random, Render > Object (assign Cube), Texture > add New and under Texture Properties assign your image, enable ColorRamp (that switch image to Black&White), under Influence enable Density.

Colors per cube should be easily taken from texture.
Like here, I just cant figure out what is wrong with setup in my file.
Edit: If this is still valid https://developer.blender.org/T42706 - emit from vertex is the issue.

Color per Cube
So you would have to go to Modifier Properties > Convert. Join Ctrl+J Cubes (if you want cubes as one object). In Edit mode with all selected Unwrap > From View. Switch to UV layout and in UV Editor switch to Individual Origins and Scale S the UV a bit.

Shader is smart enough ... UVMap is used automatically.

Notes:

You can use plane and use Subdivision Surface Modifier and Particle System after, just se Use modifier stack if enabled under Particle System
You can Separate P by Loose parts back into individual cubes if you need it.
You can use just a Plane (instead of Cube) for whole proces to make it lighter and use Solidify modifier as final touch :)
By default are images interpolated, to keep lowers images pixelated choose in Shader editor in Texture node > Closest. For Particle System Texture go to Properties Editor > Texture > Sampling > Interpolation disabled
in some of my screens is missing one Cube at a hat because I used Mapping > Generated instead UV


Removing doubles may fix it in this case, but similar results may show with wonky normals, generally fixed by Ctrl+n in Edit mode


Fract returns the fractional part of a floating-point value, as described by @Merlin, but its treatment of negative fractional parts is not actually the same as Blender's implementaion of Modulo.
If you want to see what a mathematical chunk of your shader tree is doing, it can be quite handy to make it generate a graph.
Fract:

This plane is 8x8 units, with its origin, (so (0,0)), at its center. I've added the annotations, but you can see the function without them.
Modulo 1:

Thanks to @Rich Sedman for the very useful graphing tip.


Random object transform in loop (Animation Nodes)

First step would be to shuffle your list of objects before passing it to the routine.
Second, you can use the index of the object as a delay for your start of the animation. If 1 frame is too short, you can use a multiplier to create more offset in the animation.

Here is the updated node tree with the added nodes.

And here is the result of the objects moving from point A to B.


how to do crochet patterned curtains (grandmother like)

Its not necessary to do the curtain with real geometry, just use a normal cloth simulation and create the visual effect with the material using a texture as mask for an transparent-shader


Operator docstrings displayed on buttons, not in search mode

Spacebar search uses bpy.types.Menu type class to display content in contrast of bpy.types.Panel for buttons etc.

Drawing methods in both of them will be the same, like:

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

Menu will have the items with displayed shortcuts aside with no box popup (this is probably because a menu can have a sub-menu as a popup so to not confuse).

Panel formatting has more options and does show the pop-up doc-string.

This is by some design decision and cannot be changed with current exposed api.


How to retreive the hotkey of a function/tool?

You need to have some clue about how each command is executed (i.e. the operator) in order to find its hotkeys, but if you do, it's not too difficult:

wm            = bpy.context.window_manager                       # Blender window manager
keymaps_3DV   = wm.keyconfigs['Blender'].keymaps['3D View']      # 3D View hotkeys
circle_keymap = keymaps_3DV.keymap_items['view3d.select_circle'] # Circle select keymap object
main_key      = circle_keymap.type                               # "C" in this case

If you want to see if any modifier key is used, or if the ALT / SHIFT / CTRL keys are used, you can access this info this way:

modifier_key = circle_keymap.key_modifier   # Is 'NONE' in this case
shift        = circle_keymap.shift          # Is False in this case
ctrl         = circle_keymap.ctrl           # Is False in this case
alt          = circle_keymap.alt            # You've guessed it

There's lots of other interesting properties of hotkeys to investigate, but I'll leave it to you.

To see the rotate operator's hotkey, access it thus:

circle_keymap = keymaps_3DV.keymap_items['transform.rotate']


Try using cloth instead of soft body. I think that gives you better behaviour and control.

Make sure you object is made out of quads and they have roughly the same sizes. Especially for bending animations it's crucial that quads are as undistorted as possible. Then maybe add a subd modifier before your simulation. Keep in mind that the subdivisions an object has the smaller the wrinkles of cloth animations will be so ideally you use a subd before the simulation to give it enough geometry to work with and add another one after the simulation to smoothen the result.


What's the point in modelling the base mesh?

This is my personal view, based on my own experience, so some others may see things differently: Sculpting from scratch is possible, but works best with purely organic forms which don't have a lot of lengthy or technical structural features. If they do have these, then it can be expedient, I believe, to begin with a modeling process instead of a sculpting process. You can use both processes, of course, and alternate between them. It can sometimes be efficient to begin with a modeling process and move over to a sculpting one, once the overall structure is in place, and you now want to create finer details. You can also get a lot of good use out of booleans when sculpting because the resulting topology issues aren't yet a concern. Also, bear in mind that sculpting only leads to triangle faces when Dyntopo is enabled. If disabled, sculpting brushes only push vertices around, but don't actually change the topology, which is one possible approach that might be more compatible with a workflow that switches back and forth between modeling and sculpting. So don't discount the use of both methods. I would never want to suggest that one of these methods is always preferable to the other.


A good way to render objects on a photo background that works also with focus-blurred margins

As 3dpointedit pointed out, there is a limitation of the current ID mask system:

Is Z-Render Pass accuracy dependent on sample count? Are others like object id? (Cycles)

As such, these layers are unusable for any post-processing workflow. You need to obtain these layers differently, or build the pipeline in another way.

The correct way of compositing onto a background is detailed here:

Cycles: Shadeless "Shadow-catcher" Material for Rendering onto Footage

In short, you need to put your objects in layer 1, your shadow catchers in layer 2, and the lights in both layers. The render layers will be "object only" (include: 1), "shadows" (include: 2), and "clean background" (include: 2, exclude: 1). Render with transparent background.

This will give you these layers:

"shadows"

"clean background"

Dividing the former with the latter you get the shadow:

You multiply this shadow with your backdrop, and you alpha-over the object into your backdrop. You have to render the scene 3 times though.

You can also use the new Shadow catcher feature of Blender 2.79, but it will only produce black shadows.


Calling variable functions based on name

Put references to the functions in a dictionary, using the names you want to invoke them by as keys, and the references as value.

functions={"A":DrawA, # The function name *must not* be followed by parentheses
"B":DrawB,
"C":DrawC
}

Then, you only have to check if type is in the dictionary, and call the function using functions[type](...).

(Edited for clarity in regard to the lack of parentheses)


Problem with hair particle system, a problem with the mirror

I found out that the bug is only present on the version 2.74, when I switch to the 2.77 this problem is not there anymore, still I want to hear your opinion, guys.


The "Mist Pass" is the properites windows under the world tab.


It appears you are using a separate mesh for "neck hairs" instead of using vertex group of the main horse. It also appears you're using a plane.

My suggestion would be delete the plane, and use vertex groups. You make them while in edit mode, and then assign them in the particle system under "density".  Then you don't have to worry about trying to warp that plane to fit the underlying mesh during animation.

If you have to use the plane, then flip the normals, or flip the plane.


It looks like you are following a tutorial/code written for Blender 2.49 or lower. However, if you are running that code in a current version of Blender 2.50 and upwards there is no module named Blender. That's why you get that Import Error.

A good place to get information about the current API and Blender script writing in general is the current documentation. It contains :

Blender/Python Quickstart: new to blender/scripting and want to get your feet wet?
Blender/Python API Overview: a more complete explanation of python integration
Blender/Python Addon Tutorial: a step by step guide on how to write an addon from scratch
Blender/Python API Reference Usage: examples of how to use the API reference docs
Best Practice: Conventions to follow for writing good scripts
Tips and Tricks: Hints to help you while writing scripts for blender
Gotcha’s: some of the problems you may come up against when writing scripts

...and a whole lot more :)


How do I delete a mesh/object in the middle of my animation?

I think that one way to achieve what you want is to scale to 0 and very fast your world in order to create the illusion of disappearing. Like in the GIF below.

If you need more details about how i have made the animation please let me know.


Material and Texture to Achieve an appearance

Here is a modest sloppy facsimile at the end of the post.

You must adjust to taste and artistry.
I am trying to show a technique and you can run free from there.
I am not using the exact same settings as the old manual.
I am not using Fresnel.

Blender Render. Please note there are no lights in the image below.
Shadeless Material and Texture Mapping Coordinates [Normal] with an Radial Gradiant Image.

Here is a material setting
Note the shadeless and transparency

Here is a texture setting. Note the coordinates are [Normal].  The circular image with transparency. The color ramp to threshold color.

Note that the alpha is modified.

Note the circular image which is transparent in middle.
This can be created in GIMP or Blender.  The color ramp modifies the intensity of this image.  Modify all to suit your tastes.

Some experiments to show some use of the color ramp.

Below we see transparency.  The Mapping Coordinates is (Geometric Surface) [Normal].  Exaggerated white colors.
Note the color ramp with the Red Marker.  You may change that to blue.

Please experiment and know my circular image could be simplified by you.


Vertex groups can be added in Properties in Mesh Data tab:


How can I turn a photo into individual mesh objects

Hmm, this is a tricky one. I've done something similar to this but it might be tricky to do without distorting the image. Here are the options that come to mind.

Cutting up the Mesh Manually:

This is probably the most obvious and most tedious option. Import the image as a plane, and meticulously cut apart the mesh using the knife tool, Boolean operators, or whatever else you can think of. Then separate them into individual objects (p in editmode). The texture should remained mapped appropriately.

Convert to SVG then import

This is what I would probably try first. When you import an SVG file in Blender, it imports the individual colors and segments separately. I know programs exist for converting a standard image to SVG (I can't recommend anything directly sorry) so try to find one and make an SVG version of your image then import that. It will import as a collection of curve objects.

Objects first

This is a weird one. Make your camera the exact same aspect ratio as your image, then set you image as the camera background. Then, create a mesh and edit the mesh so that you have created separate linked sets of vertices floating behind the positions of the lights on the image. Example mesh consisting of individual sets of vertices, but within the same object:

Once you have created all of your individual cells, select everything and use the UV map Projection From View option to generate a UV map that maps the image as seen from your camera. Then apply to the image as a texture for your objects using this UV Map.
Now, separate all the bits by selecting everything in Edit mode, hitting P, and selecting By Loose Parts. You should now have a bunch of individual objects all textured with appropriate bits of your image.

What are you trying to accomplish ultimately? If you want to create the illusion of a 3D scene you might want to look up some tutorials on camera mapping in Blender. Here is one from BlenderGuru.

Hope one of these works for you.


I'm afraid dynamically changing the mesh connected to the armature is not possible inside the Blender game engine without implementing it as a new feature in the source code.

All deformations of meshes must either be done vertex by vertex or through actions in the Dope sheet editor.

If you create action logic bricks that correspond to the limb movement you are trying to get to work, you should be able to get limited model deformation movements going. Changing an action actuator's start and end frames is possible when the game engine is running. This gives you some of the control you seek.


How to calculate Animation frames without render?

You can set the current frame to the start of the simulation, then press alt+A to let Blender play through the simulation. That should also cache the animation, without having to render everything.

In Python, you can use bpy.ops.screen.animation_play() to start playback. Append a function to bpy.app.handlers.frame_change_post that checks the current frame number, and calls bpy.ops.screen.animation_play() again to stop playback and remove itself from frame_change_post.


i want to create empty texture slots so i can add texture images later on

First you must make sure a material is assigned to your mesh. Then in the texture tab you can add as many textures as you please to the list at the top. Under the "Image" section you can open a file browser window to choose your textures.

If no texture is selected it should just show a big button to open an image.

You can then mix the textures or make them affect different properties, like normal and specular under the "Influence" section.


Why do my background images not align across the views?

Unfortunately your images do not show the value for the scale on both images. Make sure they are using the same value in each of the views (top, front and right).


object.hide_render Crashes Blender Before Starting to Bake

Changing the visibility of an object (hide_render, hide_select, hide_viewport, etc.) triggers the rebuild of collection caches. Since this modifies the collection you're iterating over (Collection.all_objects), it may result in a crash. Since Blender is implemented in C and C++ you're causing undefined behavior through the Python API. Therefore it's just a (un-)lucky coincidence that it didn't crash on Windows.

This limitation is documented in Blender's Python API manual on the very important Gotcha page in the section Unforunate Corner Cases.

  Unfortunate Corner Cases

  Besides all expected cases listed above, there are a few others that
  should not be an issue but, due to internal implementation details,
  currently are:

  Object.hide_viewport, Object.hide_select and Object.hide_render: Setting any of those booleans will trigger a
  rebuild of Collection caches, hence breaking any current iteration
  over Collection.all_objects.

The best solution is to create a list of all objects' names from the object references that are given by Collection.all_objects and then use these unique names to access the actual objects in the loop. This is the generally recommended approach that avoids many of the potential problems described in "Help! My script is crashing".

  TL;DR: Do not keep direct references to Blender data (of any kind)
  when modifying the container of that data, and/or when some undo/redo
  may happen (e.g. during modal operators execution…). Instead, use
  indices (or other data always stored by value in Python, like string
  keys…), that allow you to get access to the desired data.

While you can create copies of the object references, there is no guarantee that these references remain valid. This could only be done when knowing exactly how Blender manages the underlying data structures. Since the internal implementation may change and doesn't have to be consistent across all versions of Blender, that approach would be considered a bad practice.

The following code shows the required modifications to avoid the crash.

Before

low_objects = bpy.data.collections[context.scene.lowpoly_bake_obj].all_objects
for obj in low_objects:
    self.bootstrap_bake(obj.name)

After

low_objects_names = [obj.name for obj in bpy.data.collections[context.scene.lowpoly_bake_obj].all_objects]
for obj_name in low_objects_names:
    self.bootstrap_bake(obj_name)

In general you would have to perform a lookup of the objects by name instead of using it directly from the collection. If you join, rename or delete objects in the loop you may also want to check that the object still exists before accessing it.

import bpy

obj_names = [obj.name for obj in bpy.data.objects]
for obj_name in obj_names:
    obj = bpy.data.objects.get(obj_name)
    if obj is not None:
        # Perform your operations with the object here

This issue was previously reported on the bug tracker in T62406.


wrapping a complex mesh around another mesh

I used two curves modifier. One was used to make exterior curve. And then used another curve to wrap around the perimeter. that got me the result I wanted


Animating chain driven vehicle with rigid bodies

I did it finally by hand:
Create one chain link. Calculate length of chain link by rigid number of elements around one wheel, e.g. 180° + 6 elements = rotate each element by 30°. Length = sin(30)*wheel_radius. Build it for both wheels, only for the outer half-circle.  Connect the open ends with chain-links between. Set all active (rigid body). Connect them with constraints. Use hinges (beware of direction -> hinge uses z-axis).

It is an easy way, but a little bit annoying for big chains.


After almost a month of trying, I finally figured out what was wrong. Since you had to move the Up-Axis to walk, and the Up-Axis + Y  to sprint, you need to put the run action on layer 1, since it has the same control.


How can I layer two images, to be used as height information in a Bump node, while retaining control of the Strength Value of each?

Keep in mind, the contrast of the textures you use is important. If one texture is extremely contrast and one has only grey values ranging from 0.3 to 0.5, the contrast one will almost always be the more visible one.

Using the Bump node is basically a game of values (brightness/darkness of the pixel). You should convert coloured images to black and white using Converter->RGB to BW node (they are converted anyway)

Also keep in mind that both textures should have brighter colors on the "hills" and darker colors in the "crevices" of the surface. Alternatively you can check Invert on the Bump node to have it the other way, but both textures should correspond with each other in this area.

Bump node calculates the normal map based on the difference of the values of the pixels given to it. So basically you should be careful when mixing two or more textures - their actual values and the way they are mixed using MixRGB is important. You can also use Math node by the way. Since values of bitmaps are actually math anyway but both ways have their pros and cons.

It mostly depends on what you are actually trying to accomplish. Usual case I've seen is mixing the main UV mapped bump map of the model with a second one which is for detail - little perforations/scratches/bumps/glued dirt. This detail bump map is usually mapped using Texture Coordinate->Object and the texture having Box mapping instead of Flat mapping. Detail bump maps don't really need elaborate UV mapping since it's only important that the detail mapping is uniform.

Initially I should give some information about MixRGB node, since it's important here. It has 2 inputs. The top one is the "main" input. It is the one that the chosen function will alter based on the input values of the lower input and then this altered version of it can be grabbed on the output. This is true for all function except Mix, which basically mixes the inputs according to the factor (fac) you choose.

Whenever you want to mix a detail bump map onto an actual bump map, remember that there are basically 2 ways to choose from depending on the given case.

Crevices

  If it's a general bump map of bricks and then a detail bump map of the
  little perforations in the brick (meaning you want to add crevices and
  not hills), it should be mixed so the crevices are darker than the
  upper input. The way you mix it is dependent on the actual texture's
  contrast and values.

Hills

  On the other hand, when the detail bump map is meant to depict small
  bumps (hills - like dried color drops) on the surface, it should be
  mixed so the bumps are lighter than the upper input. The way you mix
  it is dependent on the actual texture's contrast and values.

As to the other question of controlling which texture is stronger. You must give me an actual material and textures for which to solve this, since it would take way too much time to talk about all types of possibilities.

All wrapped up, there is really no true way to mix bump maps in an organized way unless you get your actual bitmap texture values organized. Ie what is lighter/darker than the other. Most of the time, a simple MixRGB->Mix might work. But I'd recommend using a Converter->Math->Multiply before putting the values in the inputs of the MixRGB. You can then change the values in the multiply nodes to strengthen/weaken the bump textures.

First tip - You can always check the values you are working with using the Emission shader. Remember though, that in Properties->Scene->Color Management you often need to change the exposure or gamma to see certain changes in values, since your monitor can't dislay all of them most of the time.
Second tip -Try using Converter->Color Ramp or Color->RGB Curves to alter the textures without using 2D editor.


How can I remove a reflection onto an object but keep the shadow?

Those single pixel reflections are commonly known as fireflies.
Fireflies can often be removed by disabling caustics, as they are usually a result of an unlikely indirect sample of a lamp.
If you don't want or need caustics, then simply enable No Caustics in Render settings > Light paths.
Clamping
If you want to keep caustics, you might try using the Clamp options in Render settings > Sampling.
The clamp options will ensure a sample does not return a higher value than the clamp value, but be aware that this can potentially affect highlights and other intentionally bright areas of the render.
To help avoid this, in 2.70 you can now clamp indirect samples (where fireflies are usually found) separately from direct samples.

Also see:

How to reduce fireflies in Cycles?

the Reducing noise section of the wiki.


I'm trying to learn Blender to animate. Am I doing it right?

Yes, you are doing it right. It's kind of like learning to walk, starting with support from another person. The first time they let you go, you will fall. Get up again and continue trying.


Just select the edge loop (Alt +RMB). You will need to scale it flat if it isn't already, and since from your image it looks like "Y" is your local axis, scale it to zero on the y S > Y axis. In my image, "Z" is the local axis, I will scale to zero on the "Z" axis.

Before Scaling:

After scaling:

Now use the "to sphere" tool. since it only has two dimensions, there won't be any sphere going on, just circle.

you can find this tool with Spacebar and then searching or Shift+Alt+S.


Is there a way to split an object by vertex index?

Try to use P -> By Loose Parts in edit mode. This operation separates vertexes that connected to each outer by edges.


Output tonemapping to PNG produces gray even for superwhites

White is not necessarily a scene referred value of 1 or 100 or 10 000. It all depends on the color transforms through which the image is processed to a display referred image, in which case yes, white is corresponds to 1 (and then expressed in a number of available bits, for example in an 8 bit image pure white would be 255, 255, 255).
When you save as EXR you are bypassing the color transforms set in the color management section.
EXRs are scene referred linear data, not intended for display, but for further processing, like compositing, that should be done with linear data.
The information in EXRs is not limited to a scale of 0 to 1, and can have very large values. Those values are probably beyond what any monitor can display, so in order to be displayed in some way that we can see and understand they go through color transforms set in the color management section
Next. When you set the display transform to sRGB and save as PNGs, then the values of the image are not linear anymore but are re-scaled and transformed, scaled and probably clipped, within the bounds of "display referred" imagery (0 to 1). A curve (sometimes called "gamma") is applied to the values, hence the difference in values that you report.
If you use the filmic transforms. White could be at a different value, 16.19 approximately.
To get a much better explanation on any of this (including the maligned term "superwihtes") please read:
Render with a wider dynamic range in cycles to produce photorealistic looking images
Also when you are using a "RAW" color transform you are not applying a curve to the output image. Any value larger than 1 will be clipped in any display referred format. RAW should only be used when you need your data to be undistorted by color transforms, as is the case of normal maps, height maps, etc, that are technically not images but data.


Sculpting in 2.83 doesn't sculpt every verticies

see if there is any auto masking is active. if not then recalculate your normals.

6/19/2020 edit: it's a bug with triangle faces in blender 2.83 LTS. your workaround is to select your model go to edit mode and press f3 and search for tris to quads then try smooth sculpting. workaround worked on my side.


Copy transforms from one object to another

Select the object you wish to move
While the First object is selected, SHIFT Select the other object
Go to the transforms panel

Right click in the Location properties

Copy to selected
Note: You only need to do this for one of the axis, blender will automatically do the other axis as well

Repeat step 4 for Rotation and Scale


Rendered shading is the same as a final render (mostly), so unless you have a very simple scene and a small render farm, you probably aren't going to get even near real-time (as in > 1-2fps) renders.

Some things you can do to help:

Render a small low resolution part of the viewport (e.g. with render border) See Render Border's related check boxes - How do they work?
Reduce the number of samples (Render settings > Sampling) and bounces (Render settings > Light paths)
If you still want to use the viewport (though I would recommend rendering a quick image sequence), turn down the framerate so each frame has some time to converge.


Control grease pencil keyframes with a slider, like a shape key?

that is something you can do in Blender and it's the method we use.
Here's a quick tutorial,

Draw all your frames on a grease pencil object
In the modifiers tab add a time offset modifier and set it to Fixed Frame. The frame number will be the frame selected/shown on screen.
Use a driver to control which frame to show by right clicking the frame number and clicking add driver. Here you'll have to tweak settings dependent on your bone size and desired Active area. We generally use the distance operator ie, when the selector bone touches the smile bone it shows a smile.

Thanks
Matt


Blender 2.8 Transformation Constraint Problem

I guess your problem is that you need to apply the rotation of your cylinder: ctrlA. As it was not aligned with the Global orientation, there was a confusion in the rotation orientation.


1)

 [i for i in bm.verts if i[my_id]]

This will work because any int value other than 0 will return True. Therefore there's an assumption that you aren't using the value 0 for anything meaningful.

2)

Custom id data is removed after bm.free(). I don't know if it can be wiped before.

for the sake of completeness

>>> import bmesh
>>> bm = bmesh.new()
>>> obj = bpy.context.active_object
>>> bm.from_mesh(obj.data)
>>> my_id = bm.verts.layers.int.new('id')
>>> bm.verts.ensure_lookup_table()
>>> bm.verts[0][my_id]
0

This shows that even before you assign a specific value to your layer.int for that vertex, it will already have a default 0.


How to set quaternion rotations for bones in Blender Python

So, in the end I ended up creating the bones using new() then I converted by absolute rotation to matrix and transformed the bone by that. Then after that I added the absolute position to both the head and the tail of each bone and that got me the correct result.

    for i, node in enumerate(jms.nodes):
        scene_node = edit_bones.new(name=NODE_NAME_PREFIX+node.name)

        # Assign parent if index is valid.
        scene_node.parent = scene_nodes.get(node.parent_index, None)

        # If a node has multiple children we cannot connect its tail end
        # to the children.

        pos = absolute_transforms[i]['translation']
        rot = absolute_transforms[i]['rotation']

        # Bones when created start at 0 0 0 for their tail and head.
        # We extend the tail so it sticks out a bit and signifies the direction.

        scene_node.tail = (scene_node.bbone_x, 0.0, 0.0)

        # We then rotate the bone by the absolute rotation that it should have.

        scene_node.transform(rot.to_matrix(), scale=False)

        # Then we add the absolute location to both the head and the tail.

        scene_node.head += Vector(
            (pos[0] * scale, pos[1] * scale, pos[2] * scale))
        scene_node.tail += Vector(
            (pos[0] * scale, pos[1] * scale, pos[2] * scale))


How to maintain IK chain angle to target?

If I am understanding your question correctly, I think this kind of setup would be the simplest solution:

The main point is to disable "Inherit Rotation" for the tip bone.

Extrude another bone from the root of the "Tip Bone" that will be the "IK Target", and clear its Parent (AltP in Armature Edit Mode). It must not have a Parent in order to function properly as an IK Target.


From Haunt's trick bag:

  Since the Ocean modifier doesn't use vertex groups, one solution is to get help from a modifier that does. The Ocean modifier (gray) uses an ordinary plane. The block of water is a mesh where the upper surface is highly subdivided and the bottom contains just 4 verts. It has a Vertex Group which excludes the four bottom verts.

  The trick is a Shrinkwrap Modifier which is projecting the surface on the Ocean Modifier mesh. There the Vertex Group helps to leave the bottom verts in peace.

  Rendering of the Ocean Modifier is prevented in the outliner by clicking the camera symbol.


Toggle Subdivision modifier and smooth shading with one key

You can get it using Python.

I used a template "Operator Simple". And I added subsurf and smooth to an object to know the names of this functions:

Next, I replaced default main() function by this functions:

def main(context):
        bpy.ops.object.subdivision_set(level=2)
        bpy.ops.object.shade_smooth()

It gives subsurf and smoth, but never gets back.

To create a toggle, you need to know about programming. I writed this code:

def main(context):
    test=True
    for md in context.active_object.modifiers:
        if(md.type=='SUBSURF'):
            if(md.levels==2):
                test=False;
                break
    if(test):
        bpy.ops.object.subdivision_set(level=2)
        bpy.ops.object.shade_smooth()
    else:
        bpy.ops.object.subdivision_set(level=0)
        bpy.ops.object.shade_flat()

It checks for subsurf level 2, and if finds, removes Subsurf and smooth.

Finally, I can use this function by finding it in spacebar menu:

Also, you can add sourtcut:

UPD: For making it works in Edit Mode

You noted what script doesn't work in Edit Mode. It is because shade_smooth() doesn't work in Edit Mode. So lets try to enter Object Mode, do subsurf and smooth operations and return to edit mode.

Get the current mode, and save:

if(context.mode!='OBJECT'):
    returnto=context.mode

Return to edit mode:

if(returnto):
    bpy.ops.object.mode_set(mode=returnto)

Full code

(you can save it as .py file and install it like add-on):

bl_info = {
    "name": "Subsmoth",
    "author": "Subsmoth",
    "version": (1, 0),
    "blender": (2, 78, 0),
    "location": "",
    "description": "Toggle Subsurf and smooth",
    "warning": "",
    "wiki_url": "",
    "category": "3D View",
    }
import bpy

def main(context):
    test=True
    for md in context.active_object.modifiers:
        if(md.type=='SUBSURF'):
            if(md.levels==2):
                test=False;
                break
    returnto=False
    if(context.mode!='OBJECT'):
        returnto=context.mode
        if(returnto=='EDIT_MESH'):
            returnto='EDIT'
        bpy.ops.object.mode_set(mode='OBJECT')
    if(returnto=='EDIT' or returnto==False):
        if(test):
            bpy.ops.object.subdivision_set(level=2)
            bpy.ops.object.shade_smooth()
        else:
            bpy.ops.object.subdivision_set(level=0)
            bpy.ops.object.shade_flat()
    if(returnto):
        bpy.ops.object.mode_set(mode=returnto)

class SubsmothOperator(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.subsmooth"
    bl_label = "Subsmoth"

    @classmethod
    def poll(cls, context):
        return context.active_object is not None

    def execute(self, context):
        main(context)
        return {'FINISHED'}

def register():
    bpy.utils.register_class(SubsmothOperator)

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

if __name__ == "__main__":
    register()


Is it wrong to use Metal-Roughness-Specular etc. maps in sRGB mode?

It is technically incorrect not to use the “non-color” color space you’re using is non-color, but the result will not be horribly incorrect. as another user said, values will be shifted a bit, and normal Maps the most because they use all three channels. But anyway, why do you not want to set this? There is thankfully a way to do it with the python API, as I’ve discovered when needing it for such a purpose.


Shadow culling in shader for uv projected texture

I think what you are looking for is masking the actual texture out based on a camera direction.
I suggest you use the dot-product node in the shader graph.
The first input should be the mesh normals and the second input the projecting camera's direction. The result can be remapped using a color ramp node and then multiplied over the texture.
To get the camera's direction you could place an empty right down the z-axis of the camera and subtract the camera's position from the empty's position (maybe through a driver if necessary). If you have a lot of photos it could be a pain to manage the uvs and textures. Alternatively you could use a photogrammetry software like the opensource software MeshRoom to texture your mesh.


To match it automatically, you can use Object coordinates.

Change texture Mapping > Box
Use Texture coordinates > Object
In the Object field target your array

You can change your array and caps, but the texture will always match.


Stop mesh from continously recreating UVmaps?

This issue shows itself usually when you start sculpting with the default cube, as that one comes like all other default mesh objects by default with UVs already.

After deleting the UV-Map once, you can start sculpting without the problem, but should you by chance use undo Ctrl+Z often enough, when sculpting early on and go back enough to undo the deletion of the UV-map, it will start bothering you again.
The easier solution would be to delete the default cube and then add a new one, with but one change. After you added the cube, open the options given and deactivate the Generate UVs.

changing the option will affect the new cube
This way should you start sculpting and use undo, well rather then getting the UVs back, you would undo the cube, which would be obvious.
My tip here would be to save after adding the cube without UVs and loading the file anew.
From there you can undo to your hearts content and will be fine.
Happy Blending


Gray sockets are for scalar (single e.g. 0.73 or 512.256) values, and blue sockets are for 3D vector values such as <0.0, 0.707, 0.707> or <5.1, 8.2, 3.3> (one for each axis).
Since Blender supports vector displacement, the Displacement socket is now a vector socket. When you link a scalar to a vector socket, the three vector components all receive the same value. For example, 0.618 would become <0.618, 0.618, 0.618> and -1 <-1, -1, -1>. This conversion from a scalar to a vector can only result in two directions along one axis, but normals can face in any direction. For example, a sphere's normals face away from the center in every direction.
The Displacement node can convert a scalar to a vector that can be used for displacement/bump by making use of the object's existing normals. It should give you the results that you're looking for.
Press ShftA, Vector (V), Displacement (D) to add one.


How can I animate the pinning button on / off (cloth)?

I just found this solution.
I would like to see if there are other ways to control vertex group in the simulation cloth.
My problem was to attack and detach a group of vertices. Turn off Pinning in cloth simulation.


Insert a circle; Extrude + scale it outside; Make inner rim an edge loop and extrude it along Z; Fill the inside and use Poke Faces on it; Extrude the outside rim like 0.01 more than the inner one; Select all and use Mirror modifier on it; Give the model materials.


How can you get a plane with a emission node to be brighter in the center?

Material
You can use a Gradient node with Object mapping to make a spherical gradient based on the location of the object origin:

The mapping node is just used to scale the texture up a bit.
The multiply node controls the overall strength.
Note that scaling in object mode will stretch the texture accordingly, however applying the scale or scaling in edit mode will not.
AO
It's also possible that your reference image was created with a very heavy Ambient Occlusion effect.
To achieve this:

Enable AO in Properties > Render layers > Passes

Adjust it and multiply it with the combined pass in the compositor:

Combined with the gradient:


It is probably just easier to recreate it using math nodes rather than trying to align it to axis.

Use a Math Node set to Cosine; as input use your desired texture coordinates like Object or Generated.

Add a Separate XYZ node and use the desired axis as direction, then multiply it by any value to control density of the waves.

You can still run the output through a color ramp node to control progression and color, and covert the whole thing into a node group for simplicity sake, to make it visually cleaner, easier to reuse or port to other files.


How to Make Joints in Mesh? Distorts when I rotate in pose mode

are your mesh and armature both at the correct scale? in object mode if you Ctrl+A (apply) you can apply scale which keeps any transformations but neutralizes its scale in interactions, which can be the cause of some of these distortion problems.
Also, for future reference, for questions like this it can be helpful to upload your .blend along with the question.


You just probably switched wrong clipping value.
Select the camera and in camera panel increase the clipping: (marked in green)


Animation Node Loop with Randomized Color for Each Instance

Your Animation Nodes look fine. I think your issue is with the Cycles NodeTree. There are a couple of issues. First, this connection:

doesn't do what you think it does. Right now, it takes the luminance of the image texture and colors the each pixel of the image based on its luminance. The modification you make to the ColorRamp node with Animation Nodes is overridden. If you want to change the colors, you should use a MixRGB node to mix (or multiply) the ColorRamp output with the image texture:

There is still another problem, though. All of your objects will use the same material, so you can't set the color randomly with Animation Nodes; all of your objects will use the most recent modification of the material since they all point to the same material datablock.

Instead, you can use the Object Info node in Cycles to give a random color on a per-object basis to your material:


Select vertices, edges, faces of individual objects

I'm assuming, that bm is a bmesh object. Obviously, the bmesh object will hold all verts, edges and faces that you add to it with any operation.

You should improve the following

Don't del ret. It should be put in a global scope where ret is accessible later anyways. If it goes out of scope python will delete it automatically. You're using a dynamic interpreter language, so you can use its features. Even just not pointing to the return variable bmesh.ops.create_circle(bm, ... ) will delete the pointer.
Your code won't compile. Always post working code snippets (mwe) in question. You'll be saving everyone a lot of time. (A) Others won't have to rewrite your code and (B) your problem may be in the code you didn't post.
Read the documentation. The method bmesh.ops.create_circle actually return a dictionary with the newly created vertices.

From the api:

  Returns
  verts: output verts
  type list of (bmesh.types.BMVert)

  Return type
  dict with string keys

With the returned dict we can point to the verts. (Obviously, now that we're using the returned object ret don't delete it.)

verts = ret['verts']

Each vertex stores the linked edges.

verts[0].link_edges

The updated snippet could look like this.

import bmesh

bm = bmesh.new()

ret = bmesh.ops.create_circle(
        bm,
        cap_ends=False,
        radius=(10),
        segments=5,
        )
verts = ret['verts']

edges = set()
for vert in verts:
    for edge in vert.link_edges:
        edges.add(edge)

edges = list(edges)

So, what's going on at the end? Why are we creating a set() and then converting it to a list?

Each vertex of the circle, will have two link_edges. However, the connected vertices will share an edge. This means, that if we just add all of the linked edges into a big list, each edge will show up twice. That's why, I use a python set. In a set each element is unique. Adding items to a set with the add() method will not do anything if the element (the next edge) is already present in the set.


It's better to not use operators, there is a sophisticated "low-level" API for the node interface:

import bpy

scene = bpy.context.scene
nodes = scene.node_tree.nodes

render_layers = nodes['Render Layers']
output_file = nodes.new("CompositorNodeOutputFile")
output_file.base_path = "//maFolder/"

scene.node_tree.links.new(
    render_layers.outputs['Image'],
    output_file.inputs['Image']
)

You basically need to create a node and a link, and specify the input and output for the latter on creation to establish the connection.


I figured it out!. I had to enable the "AnimAll" Add-on in the user preferences. Then I clicked insert for each vertex I wanted to animate.


How to assign which UV map when multiple are available to use in 2.8+?

This can be accomplished by using the UV Map node (Input > UV Map), it allows you to select one of the UV maps associated with the object. The Texture Coordinate node always uses the active UV map.


How can I can make a 2D Png image (a portrait) into a 3d rotating model?

The closest thing I can think of to do this is to use the image as plane add-on. First go to File>User preferences (or Ctrl +Alt + U) >Addons, then search for Import-export: images as planes under the community supported level.

In object mode press Shift + A>Mesh>Add image plane, then when your file browser opens, select the image you want to use. Tab into edit mode, and model the plane to your liking, then Tab back to object mode to apply a solidify modifier. From there on, just add any finishing touches you want, keyframe, and you're all set.


Can I permanently deform a mesh with a rig?

Apply the Armature Deform modifier to the mesh object by clicking the Apply button:

If your object has multiple modifiers, you may want to apply them all. To do this quickly, ensure the correct object is selected and press ⎇ AltC > Mesh.


How to connect existing node group in a material in Phyton?

Here:
            #link input and output of group
            material.node_tree.links.new(bakeGroup.outputs['shaderIn'], mainShader.outputs[0])
            material.node_tree.links.new(material_output.inputs[0], bakeGroup.inputs['shaderOut'])

bakeGroup is a NodeGroup. You want to use the Group Node dummy_group_node.
Also remember in links.new(A, B), A is the input socket, and B is the output socket.
So do this instead:
            #link input and output of group
            material.node_tree.links.new(dummy_group_node.inputs['shaderIn'], mainShader.outputs[0])
            material.node_tree.links.new(material_output.inputs[0], dummy_group_node.outputs['shaderOut'])


Keyframing problem. Adds keyframes on all objects instead of the one that I selected

As has been mentioned in the other answer, the animations of the separate objects are still linked.

You can see this if you go to the 'Dopesheet' and change the view mode to 'Action Editor'. The action datablock, which stores the animation, has '13' next to it showing that all 13 characters of text are using this shared animation:

To make all the objects animations separate you can select all the objects in the 3D view and do U> Object Animation. Now you can edit all the animations separately.

You could also do this individually by clicking on the '13' next to the action name, which creates a copy of the animation data, but you would have to do this on each object.


does the domain object have a domain materiel ? if it does not (have a materiel) follow this tutorial https://youtu.be/u-zK7Bu8cAI.


EEVEE bake indirect lighting for an animation

If it was me I would render twice with the baked lighting different each render and then do some kind of fade or dissolve between the two. Should approximate a light change.


Acheiving Slit-Scan in Blender's Compositor

You can use textures as vectors to distort your image. May be a simplier node setup exists but this works.


How to effectively UV unwrap a subdivided mesh?

The message is because the scales of your object are non uniform. That means that some axis has a different scale than the other (eg : (1, 2, 1)).

But, unwrap functions works on uniform scale. So, in order to keep the dimensions and unwrap with the good proportions, you need to apply the scale (with Ctrl+A then 'scale').

Here you can see the impact on the unwrapping :

By the way, it seems that your initial work on the UV map give few space for the main face of the mesh (it is in a small center part of the UVs).
You should unwrap the main faces as 'big surfaces' in order to have the best benefit of the texture.

Something like that, which is obtained automatically adding seams to each corner :


Getting rid of seam that exists when mirroring after sculpting

You may have internal faces there.

Select the face and remove it with X.

Also, this answer may be helpful: How can I make the mirror modifier work right?


You can animate the character in Blender and export it with the animation using Alembic.Then you just import it to Houdini and voila. It's very straight forward process.


Sculpting brushes other than the grab brushes aren't affecting most of my mesh

Go to object mode, select the mesh, press Ctrl + A, then choose Scale.
here more info: https://docs.blender.org/manual/en/2.79/editors/3dview/object/editing/transform/clear_apply.html#apply-object-transformations
Why is it important to apply transformation to an objects data?
this is the problem: negative scale (and not uniform)


How do place an image to the side of a cube using the Python API

Here is python code which might serve as a start: http://web.purplefrog.com/~thoth/blender/python-cookbook/texture-one-cube-face.html

import bpy

def apply_image_to_face(template, fname):
    imgs = [ img for img in bpy.data.images if img.type=='IMAGE' and img.filepath==fname]
    if len(imgs)<1:
        img = bpy.data.images.load(fname)
        print(img.name)
    else:
        img = imgs[0]

    tex = bpy.data.textures.new(fname, 'IMAGE')
    tex.image = img

    obj = bpy.data.objects.new("capybara", template.data)

    mat = template.data.materials[1].copy()

    tslot = mat.texture_slots[0]
    if tslot is None:
        tslot = mat.texture_slots.add()
    tslot.texture = tex
    tslot.texture_coords = 'UV'

    obj.material_slots[1].link = 'OBJECT'
    print(obj.material_slots[1].link)
    obj.material_slots[1].material = mat
    print("argh "+obj.material_slots[1].link)

    return obj

# this needs to be the template object.
# It needs to already have a UV map.
# The first texture slot is for most of the cube.
# The second texture slot must exist and we will fill it with a newly-created material for the image
# one of the faces must already be assigned this second material.
template = bpy.data.objects["template"]
# template = bpy.context.active_object

obj = apply_image_to_face(template, "/home/thoth/art/drawing-practice/totoro.png")
obj.location= (0,1,0)
bpy.context.scene.objects.link(obj)

You have to have a template object named 'template'.  That object has to already have a UV map.  It has to have two materials.  The second material will be cloned to make the per-image materials.  At least one of the faces on the template object must use that second material (otherwise it never gets used to paint anything)

Blender 2.75a has a bug where when I set the material_slot[1].link = 'OBJECT' it does not stick.  It reverts to 'DATA' right after I assign material_slot1.material .  A fix for this is already in the tracker and will probably be in the next release of blender.

The code above would have to be adapted if you have your own RGB pixel data instead of a file in the filesystem.   Change out the part that does bpy.data.images.load(fname) with something like getGradientImage() from this bathymetry script:

def getGradientImage():
    """rainbow gradient image"""
    rval = bpy.data.images.get("gradient")
#    print(rval)
    if rval is None:
        rval = bpy.data.images.new("gradient", 1, 6)

        rval.pixels = [
            #R,G,B,A,
            1,0,1,1, # magenta
            0,0,1,1, # blue
            0,1,1,1, # cyan
            0,1,0,1, # green
            1,1,0,1, # yellow
            1,0,0,1, # red
        ]
        # if we don't pack the image into the .blend, it will be lost when you re-load the project
        rval.pack(True)
    return rval

Of course, you'll want to give each data set its own image name instead of "gradient".


Whenever I render the project in Evee as png files, they're all the same frames

Seems like the range of your Start and End was only 1 or several frames? Check if the frame range is correct.