A light rendering problem or an export problem?

I think the issue is that the OBJ file format does not support any type of lighting information. It simply saves geometry, simple materials, and links to image textures (via the .mtl file).

I think perhaps your first example with the white lights is misleading you, as I don't think you're actually seeing the surfaces lit by the lights in the other 3d app, you're just seeing the image textures shown on the surfaces?


In the Edit mode select all and Rotate in X axis.

Out of Edit mode. Click 2D

In the Fill select Both


First sentence from the link provided in the question:

  Assignment statements in Python do not copy objects, they create bindings between a target and an object

You assign / bind the mathutils.Vector object stored in the attribute co to the variable / name v.

You don't copy anything.

Use co.copy() to get a new instance of the vector and assign it to v instead.

Most vector operations and methods like +, -, *, cross, dot will also return a new instance for the result. So if you plan to use some of these maybe you don't need .copy.

This is done behind the scenes for immutable objects like strings or tuples. As soon as you make a change to a tuple or a string you get a new instance.

But if the object is mutable like a list it works the same way:

a = [1, 2, 3]
b = a
b[0] = 4
a[0] #-> 4


My weight painting only works at 100% no matter the shade

This is how weights work.

The weight doesn't define an influence of a particular bone; It describes the Mix factor of influence between multiple bones.

So a vertex with 1% weight on one bone and 0% on all other bones will be 100% influenced by the 1% bone.
A vertex with 1% weight on one bone and 50% weight on another bone will be almost entirely controlled by the 50% bone.

In other words, a vertex is always influenced 100%. Weight only controls which bones do the influencing.

To get a result similar to what I think you are expecting, add a second bone weighted to all the vertices by 100%. Now the first bone's weights will cause non-uniform influences, as you might expect.


How to mix three different shaders on the same material?

The textures all have an Alpha channel perfectly prepared for a mask.
So you only need two mix nodes.

But I'd recommend making four different textures instead - Color, Roughness, Metalness and Bump. Then you just plug them all into one Principled BSDF shader, have more control and an easier life :).


Making a scene, using Blender render but want to add tree's that are done in cycles

Perhaps you could add a tree image with a transparent backdrop. Then in the nodes remove the backdrop with a transparent node, and apply some different shaders such as specular and bump or normal maps to give the realism effect. This is what is used in most games as it uses minimalist faces which saves time in your final render, However they are used for distance scenes. This is the only other way of creating a tree that i can think of without creating a 3D tree, whether that be sculpted or generated with the Tree plugin.
Hope this helps Mate.


What is the difference between NLM vs Open image denoise?

Here is a nice explanation video by IBN-Blender 3d Artwork
here.
From what I understood:
Open Image Denoise and NLM are two sorts of denoising modes. OID is faster and doesn't need a high sampling rate, it is ideal for animation. NLM is slower and needs a higher sampling rate, it is ideal for single image.
You can use OID either through the Render panel or through the Compositor. The second solution gives better results.
For the first solution, enable OID through Properties panel > Render > Sampling > Denoising > Render.
For the second solution, make sure you've deactivated any denoising in the Render panel, then go into Properties panel > View Layers > Passes > Data, and activate Denoising Data, it will create all the necessary output sockets in the Compositor Render Layers node.
Now open the Compositor, create a Filter > Denoise node, plug the Nosiy Image, Albedo and Normal output sockets of the Render Layers node into the Denoise, plug Denoise into the Output and Viewer nodes.


Some images are painted on. These changes will be lost. Continue?

If you don't save the painted textures as images they will be irretrievably lost. Blender does not save painted images on the blend file by default. They need to be saved as images first (F3). Only then you can pack them into the file and save.

To know if an image has been saved see the bottom bar on the UV/Image editor window: Unsaved images (Images that have been altered, or painted over) will show a star (*) right next to Image on the menu.

Once they've been saved (F3)the star will diappear and they can be packed properly into the blend file.


How to place vertices evenly spaced along a path\curve using Python?

The mathutils module has an interpolate_bezier function that will give you a list of points along a curve.

import bpy
from mathutils.geometry import interpolate_bezier

res = 5 # number of points to get

src_spline = bpy.data.objects['BezierCurve'].data.splines[0]

k1 = src_spline.bezier_points[0].co
h1 = src_spline.bezier_points[0].handle_right

k2 = src_spline.bezier_points[1].co
h2 = src_spline.bezier_points[1].handle_left

points = interpolate_bezier(k1, h1, h2, k2, res)

for p in points:
    o = bpy.data.objects.new('p', None)
    o.location = p
    bpy.context.scene.objects.link(o)


This is because any new scene created is automatically in Multi-texture shading mode and the other scenes you go to will adopt that setting. you need to change the menu scene's shading to GLSL even if the play scene already is. You can't play a game in two different shading modes.

Here's the .blend I made up for you, there are instructions in the text area to the right.


Getting an object lined up with the x, y, or z axis again

Close the shape with ngon:

Add Empty to the scene, enable snapping, set to face, enable align orientation and snap the empty to the ngon:

Parent the mesh to the empty: Select mesh, select empty, Ctrl+P
Reset the rotation of empty with Alt+R
Clear parent (Alt+P) and Keep the transform. Now your mesh is aligned with world coords.
Delete Empty, delete ngon, rotate mesh to the axis you want.


Want to make 3D wall art how to project/bake texture from image plane to the walls of a room?

As Rob says, you should use the Project From View mode when you unwrap.

Import your image in the the UV Editor. Move your camera in front of your box until you get the view you want. In Edit mode make sure your box is subdivided enough, otherwise the projection will bug. Press U > Project From View.

Move or scale your UV as you want in the UV Editor. Create your material, load the image in the Image Texture node.

If you stay in the camera view you'll see your image as it is, i.e. it will appear flat. If you move your view you'll see how the image has been projected on the surfaces.


3D Manipulator Axis Constraints not working

I found the problem. I'm not sure I have all the exact details, but in essence, the problem had to do with the scaling and dimensions within my model file. I mentioned that the behavior I saw was as though I was clicking inside the white circle. My model was imported from an STL file where the size of the largest object was about 6cm across. In order to get the sizes to look right, I made the following settings, which led to the problem:
1) In the properties panel (the "N" window), I set the Scale to 0.001 for each object in the model
2) In the Properties Editor (not the N window), on the Scene tab, I set Unit Scale to 1.0.

The solution I found was to reset the individual object scale values to 1.0, and then under Properties>Scene, I set the Unit Scale to 0.001. After making this change, the net size of things on the screen is the same, but Blender seems happier dealing with objects at 1.0 scale rather than .001 scale, and the 3D manipulator now works as expected. This is probably the more correct way to do things, and I learn best by example, so I'll remember this. I just wonder if maybe there's a bug in Blender because it seems that the effective size of the little white circle in the middle of the 3D manipulator is larger than the size on screen, like it's not following the object scale properly. Anyway, I hope my answer helps others at some point. :-)


Blender 2.8 (Python) - manipulating the camera for resized objects

So basically you want to have a plane or area that should be included in camera view?

There are few way to include different area size:

Actually move camera to get a better cover of view.
Adjust the camera sensor size directly.
Adjust FOV setting for wider view.

For the first one: view_selected is already include in Blender.

My naive solution is to actually create a mesh indicated your desired area and select it, view_selected it and move camera to here. But the size of the render view might cut up some places since the view won't be entire include in camera. So the things get more complicate if using existed function. Then writing some math function will be faster for sure.

You only need to calculate those coordinates from your points, using camera view coordinate system. Then other thing should be easily done


Here is what I came up with:

It is mostly procedural, I did use an image texture for the grooves but you could take that out and use a voroni texture (I just liked the way the texture looked).

If you are trying to make a ground plane with thousands of pebbles I would NOT go this route. I would use a pebble texture and use displacement. However if you are going for a close up pebble shot this shader should work well.

The trick is to build up the layers of detail.

The main left box is the main rock color, It is just broken up with a noise texture and 3 different colors. Use the color ramp to clamp the pattern.

*Notice I put a hue/saturation node (highlighted) I did this to quickly change the color of different rocks (or you could just change the 3 original colors).

The middle and front box are just for the scratches and grooves in the rock. The most important part here is to use the texture as a bump with a different color and material for the chipped grooves.

I added in a texture and mapping node to just change the look of the textures across the different rocks (So they don't all look the same).


How to create path/curve tangent to mesh?

The best way to do it is to position the curve approximately in position over the mesh, and then use the shrinkwrap modifier on the curve (I find near project mode to work the best).

The only trick is that you will probably have to apply the shrinkwrap modifier once you have it positioned the way you want it, if you are using other modifiers that act on the curve object.

If the curve path at this point is not tangent to the mesh, tab into edit mode, select all control points, and then type Ctrl+T to rotate the orientation of all the control points to be oriented at 90 degree to the mesh surface.


Can blender use multiple GPUs in command line mode?

Turns out Blender uses both GPUs when doing command line rendering without having to do anything.


hair not rendering in blender and it is not showing up in object mode either

In the particle settings under render, you have selected object but haven't chosen an object to use. I expect you want to change that to path. Then under that in the display settings where you have chosen path, change that to rendered.


You can do this using Spline Ik and Bendy bones. Here is the result

1. Create the bones for your tentacle.

Under the armature settings in display, select B-Bone

Enter Edit Mode, select each bone and change the segments for it. Note more segments equals a smoother transition.

Create a Bezier Curve, select the bent handle and scale it to 0 in the y-axis to straighten it. Subdivide it to add as many control points as you want
https://imgur.com/a/oGKtL3u
Align the Curve with the bones.
https://imgur.com/a/JCGf296
Enter Pose Mode, Select the last bone, and add a Spline IK constraint to it. Select the curve and change the chain length to the number of segments the Bendy Bone has.
Parent the Bones to the mesh. You can now hide the bones.
8.Select each part of the spline and press ctrl + h and choose Hook to new object
Note: I added a subdivision surface modifier on the mesh above the armature to get clean deformation.


How to export a .fbx file with vertex colors for substance painter

I discovered the problem.  I had failed to select vertex colors as the ID map color source in Substance Painter.


If you call an update function on every value change, you will go into infinite loop without condition check (every update function calls other update functions). So first make sure that you change value only, if value for given bool property is True

import bpy

def toggle_ui(a_bool=True, b_bool=True, c_bool=True):
    bpy.data.scenes['Scene'].type_a=a_bool
    bpy.data.scenes['Scene'].type_b=b_bool
    bpy.data.scenes['Scene'].type_c=c_bool

def tgl_a(self, context):
    print("my test function", self)
    print(self.type_a)
    # toggle_ui(True, False, False)
    #print(type_a)
    if bpy.data.scenes['Scene'].type_a == True:
        bpy.data.scenes['Scene'].type_b = False
        bpy.data.scenes['Scene'].type_c = False

def tgl_b(self, context):
    print("my test function", self)
    print(self.type_b)
    # toggle_ui(False, True, False)
    if bpy.data.scenes['Scene'].type_b == True:
        bpy.data.scenes['Scene'].type_a = False
        bpy.data.scenes['Scene'].type_c = False

def tgl_c(self, context):
    print("my test function", self)
    print(self.type_c)
    # toggle_ui(False, False, True)
    if bpy.data.scenes['Scene'].type_c == True:
        bpy.data.scenes['Scene'].type_a = False
        bpy.data.scenes['Scene'].type_b = False

bpy.types.Scene.type_a = bpy.props.BoolProperty(update=tgl_a)
bpy.types.Scene.type_b = bpy.props.BoolProperty(update=tgl_b)
bpy.types.Scene.type_c = bpy.props.BoolProperty(update=tgl_c)

class HelloWorldPanel(bpy.types.Panel):
    """Creates a Panel in the Object properties window"""
    bl_label = "Hello World Panel"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'
    bl_context = "object"

    def draw(self, context):
        layout = self.layout
        layout.prop(bpy.data.scenes['Scene'], "type_a", text="a")
        layout.prop(bpy.data.scenes['Scene'], "type_b", text="b")
        layout.prop(bpy.data.scenes['Scene'], "type_c", text="c")

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

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

if __name__ == "__main__":
    register()


Changing node connections to be straight?

Open the User Preferences > Themes > Node Editor > Noodle Curving


How to make an edge loop that is parallel to one of the sides of the face loop?

If you need a new loop cut:
In edit mode, press ctrl R to add a new  loop cut. Then during edge slide press E which aligns the new loop to one of the adjacent face loops. F switches between face loops.
If a new edge loop is not needed:
Then select a edge loop alt  RMB. Press ctrl E > Edge Slide to start the edge sliding, then during edge slide press E which aligns the new loop to one of the adjacent face loops. F switches between face loops.
These are the options for edge slide as shown in the 3D view header.


Delete parts of a grid outside of another object

The problem is, that you need a proper (non-manifold) mesh to do the Boolean operations with. The method you used to create your "Grid Cube" doesn't help here because it doesn't prouce one. You could check your mesh in Edit Mode hitting Ctrl Shift Alt M with the Mesh Select Mode set to Edge or Vertex.

Here's a better Method to create your Grid-Frame-Cube:

Create a small cube in the corner

Add a default Cube (2x2x2) in the Center and name it miniCube
Position your 3D Cursor to the front bottom left corner by selecting the Vertex in Edit Mode and use Shift S, Cursor to selected
Pivot around the 3D Cursor and scale your Cube (S) by 0.25.

Duplicate this small cube twice, name one Grid and one inner, then hide the original miniCube or move it to another Layer as a Backup. You might need it later again to play around with the following Bevel settings.
Select the inner Cube and in Edit Mode select every Vertex (A), then use an Edge Bevel (Ctrl B) of 0.25.
Select the Grid Cube and add a Boolean Modifier with the inner Cube as Object in Difference mode. (This will cut out the inner part, basically only leaving the grid-frame)
Add three Array Modifiers, one for each Axis to the Grid Cube. This basically creates the grid-frame-like Cube structure you created but with a proper geometry.

Set the Count to 4
Set the Relative Offset to 0.0 on each but 1.0 for one axis: x for the first Modifier, y for the second and z for the third.
Check Merge

Now you can add the Boolean Modifier to the 2x2x2 Sphere in your Center with an Intersect Operation and the Grid as its Object and it will work fine:

You could of course play with the Bevel of your small cube before to get your grid nicer looking. You could use more Segments or change the Profile from 0.5 which is "flat" to a smaller number like 0.25 to get a more rounded grid-frame. Its settings are available in the panel in the Toolbar once you confirm the Bevel before doing any other operation or by hitting F6.


There are several requirements for this to work.

(i) There should be a texture node in the material that is baked to

(ii) That texture node should not be used as input anywhere else(not even in a different material), it should not be attached to anything until you are comfortable with all of this.

(iii) The texture node that is being baked to must be selected.  An active node is highlighted with yellow.

(iv)  When baking several objects that are joined and where each has it's own material: each material must have the same texture node that is being baked to.  As before, that node must be active(yellow) for all materials.

Here is a screen-capture that shows a node setup that will likely result in the error you describe.
As mentioned in the comments above, there won't always be an error with Cycles Baking as of the current date.

It should fail because even though the bakeTo texture node is selected for output, it is also being used as input.  This can cause a circular reference error.

Simultaneously reading and writing to the same area of memory can cause the program to crash so Blender tries to prevent this with a warning.


Alternatively
If we wish to make a special mesh class based on bpy.types.Mesh
import bpy

class Triangle(bpy.types.Mesh):
    def __init__(self, verts):
        self.is_triangle = True
        pass
    def __new__(cls, verts):
        me = bpy.data.meshes.new("Tri")
        # why bother with bmesh for a tri?
        me.from_pydata(verts, [], ((0, 1, 2),))
        return bpy.types.Mesh.__new__(Triangle, me)

# test
from math import sqrt
root = sqrt(3) / 2
context = bpy.context
tri = Triangle(
   (
        (-root, -.5, 0),
        (0, 1, 0),
        (root, -.5, 0),
    )
)

print(tri)
print(tri.is_triangle)
print(tri.vertices)
ob = bpy.data.objects.new("Tri", tri)
context.collection.objects.link(ob)

output
<bpy_struct, Mesh("Tri.012") at 0x7fd4057b6c08>
True
<bpy_collection[0], MeshVertices>

as well as triangle object linked to context collection.


Why does moving the UV map not affect the image on my object?

My Spanish is not the best, but since you have the "Equirectangular" option chosen for the projection which is not possible if you used Image Texture ("Imagen") for the color like it's shown in the tutorial, I guess you might have accidentally chosen Environment Texture ("Imagen de entorno"), which is suitable for the world background. So, simply choose "Imagen" in the color selection and open your picture.


Hey that took me awhile because I'm also used to looking for bone constraints. I guess the file creator got lazy and just used auto IK in the tool shelf. It is just a check box enabled.

Here is a screen shot of the option.


How do i stop simulating rigid bodies past a certain point?

Just uncheck the dynamic checkbox for the frame, where you want to stop it.
For the frame before, check the dynamic checkbox.
Tap I on your keyboard while hovering over that checkbox for both keyframes.


Plastic Cup is making shadows inside of itself that cannot be removed

This is a smoothing issue. In Data Properties, under Normals, enable Autosmooth.

You shaded your object smooth cause you didn't want to see the verticals faces as individual faces, but as a curved surface. The smoothing is done (more or less) by averaging the normal between two faces, and it works really well on the side of the cylinder. But it also average the normals between the bottom and the side faces, and betwen the "collar" and the side, which looks quite ugly.

Autosmooth smooth the faces below a specific angle (30° by default), and keep sharp the edge between faces above that angle.


Whenever I render, it doesn't show the texture

Assuming your texture is an image file this should work.

Change it from Blender Render to Cycles Render. Go into edit mode(tab-key) and unwrap it(u-key). Go into the node editor. In the node editor bring up the node add menu (shift + a), and select image texture. Assign your image/texture to the image texture box. Attach the yellow node from the texture image box to the diffuse box.. This should work.


Is there any Blender function that supports the above movement?

You are looking for solving the motion with Inverse Kinematics, in fact exactly like an industrial robot solves joint trajectories needed for the robot to guide some tool along some trajectory.

Here is the documentation.

You put IK constraint(s) on last bone of bone chain(s) you want to control to comply with some given position/motion given by another object or bone (the target for the solver).

For every bone of this chain you can also limit the degrees of motion for each joint. The settings are under Bone tab in Properties panel.


How do I bake a transparent shadow texture using Cycles bake?

As far as I know it's not possible to bake images with transparency in Cycles, but it's possible to figure out some workarounds, depending on what you want to achieve.

To bake a transparent shadow texture:

Set up your scene. I'll just use a simple tree in my example. Place a plane under your objects and scale it big enough to catch all the shadows.

Create a new image in the UV/Image Editor and unwrap the plane.

Create a simple diffuse material for the plane. Add an Image Texture node to the material and select the new image you just created.

In the Render Panel set Samples to a nice number (depending on your scene) and set Bake Type to Shadow.

Bake the image. You should have something like this:

Go to Compositing, select Use nodes and delete the default nodes. Then set up the nodes like this:

In the UV/Image Editor select Viewer Node from the drop down list.

Save the image as an RGBA file (*.png, *.tga - whatever you need).

Your baked transparent shadow texture is ready.


How to use an invisible emitter as mask for its particles? (Cycles)

If the emitter is always a plane then you can use the plane's Object coordinate to determine whether the particle material point is above or below the plane and use this to mix transparency as shown :

In the example image above the plane is set to be mostly transparent (so you can still see where it is) and the blocks extend above and below the plane by the same amount. The part above the plane has a positive Z coordinate (in the plane's object coordinate space) and so the Greater Than node controls its visibility.

Obviously this method will only work if the emitter is a plane and you want anything below the plane to be invisible (even it it would be visible past the edge of the plane).

For an uneven surface where you cannot determine the cutoff mathematically, you can produce the same effect by using the compositor Z Combine node to combine multiple render layers based on depth. This allows you to effectively mix the two layers together so that those parts above the surface are visible while those below the surface - and the surface itself - are transparent.

To demonstrate I created an uneven surface from Suzanne's face and added particles as for the previous example.

Setup the scene with two render layers, both with the Z-pass enabled. The first render layer should render the particles while the second just the mesh (create a duplicate of the surface and move it (M) to the second layer. For the surface to be transparent you should assign a transparent material to both of the meshes.

First render layer :

Second render layer :

In order for the transparent mesh to have an effect on the Z-pass, set the Alpha Threshold of the second render layer to zero. Don't forget to enable both layers by Shift-selecting in the toolbar or in the Scene section of the Render Layer properties.

The Z-pass on each layer should be something like the following :

Now in the compositor you can use the Z Combine node to combine the two layers based on the depth (Z-pass) of each layer - where the particle is closer than the surface it will be rendered as the particle. However, where the surface is infront of the particle it will be rendered as transparent. This is achieved as follows :

And here is the result :

Note that the checker pattern is only there to demonstrate the transparency.

Blend file included


This is no different than any other type of animation, you need to plan the animation make a storyboard and animate the characters using animation tools. That includes changing properties of your character's rig control objects and keying them at different times, may include various simulations as well. This is an extremely wide question. Answering it fully could possibly require a few books of text.

My advice would be to start with planing the animation itself and making a storyboard and possibly an animatic(a video with drawings from the story boards that tests the timing and rythm before you start animating - like this). You will need to make sure your characters are rigged well, or rig them yourself. Rigging is another wide topic that cannot be explained in a few words and you would need to research that on your own. It needs to be done well and cannot be skipped. For the animation itself my advice would be to use as much reference as possible. Film your friends if needed and try to copy timing and movement - do not attempt to come up timing using your imagination - that would be a mistake and you would most certainly fail without reference. Always use reference or base your decisions on observation. As far as tools in Blender go, it would not be logical to expect a description of everything that is needed in an answer here. You need to learn it and that requires a lot of research, time and effort so it is good to be prepared for that. Learning to animate well will take many years, however I believe you can learn the basics in a few hundred hours of hard work. YouTube is a good resource. You can start by watching tutorials on animating in Blender there.


How to add an image texture/color as an overlay to a base texture at a specific part of the object and animate the texture/color alpha?

You can use the same principle as this answer, and add a math node (or other) to control the decal the way you want.


How can I achieve a Anime Shader look in Blender?

I specifically made a long playlist where the main characteristics of stylizing a shader play a big role in your character considering:

Vertex painting (to create specific shadows) use separate RGB to create filter for channels that can be later used as specular, reflective, etc. maps.
Using a threshold to limit the light (aka Ramp Shader)
Many math operations between results to ADD light or Multiply it (darken) in the shader editor.
Modeling in regards to how the normals will be affected by light. This is tangent and crucial.
You can copy "simplified" normals from less dense polygonal objects, since you want a very "flat" shading and not light-computed-accurate shaded models. Use the Edit Normals modifier.
Textures can also be used to create masks, so you can have flat colors but limited by black/white textures.
PLANNING a GOOD 2D CHARACTER REPRESENTATION is a MUST! You can't jump into 3D without proper knowledge of what makes your character look 2D.
Mask out any unwanted light shedding on the model. Use alphas in the image node textures.
You can watch more details about these points from simple to complex examples in this series for BLENDER ONLY >>
You can use occluding meshes to create fake shadows. Create a "transparent material" but shadows are opaque. You don't see the occluding material shader, but the shadows will be on top of whatever you want to cast shadows to.


Cannot set "is_overridable_library" option via python ["_RNA_UI"]

The value behind is_overridable_library can be set through the method property_overridable_library_set() of an object. The following example demonstrates how to set a custom property named "prop" to be overridable.

import bpy

obj = bpy.context.object
obj.property_overridable_library_set('["prop"]', True)

The use_soft_limits is dynamically evaluated and it's not necessary to set it when using the Python API. If the soft_max or soft_min are different than the max or min, it will automatically show as enabled.

Calling bpy.ops.wm.properties_edit() results in an error message, because it expects that self._last_prop is set. This only happens in the invoke() function, not when calling execute() directly. Therefore the execution context has to be set by passing INVOKE_DEFAULT.

bpy.ops.wm.properties_edit("INVOKE_DEFAULT", data_path="object", property="prop", value="1.0", default="1.0", min=0, max=1, use_soft_limits=False, is_overridable_library=True, soft_min=0, soft_max=1, description="", subtype="NONE")

The downside of this is that the UI popup appears and has to be confirmed. Therefore the operator cannot be used without user interaction.


Exporting animations for mutliple armatures not working as exptected

I also faced the same issue but then I came up with a solution of joining the mesh and armature of the gun to the mesh and armature of the arms. All the animations were exported properly and there were no problems with the animations as well.


Is there a way to change default start frame on the timeline?

Open Blender, allowing your default startup file to load (so don't open an existing file).

Set the start frame to 0.

Save the file as your new startup file. Frame 0 will be the new start frame for all  new files created this way.


How to maintain the same pixel appearance, when rendering a exported image sequence

Imagine an image of 140x139 (this one : )
If you import in blender with images as plane addon, with emission or shadeless shader
And set your render output to the same resolution and framerate
And add an orthographic camera above to the center of your image, with orthographic view
[
[
You can adjust the size by zooming a lot in a corner from the camera view (Numpad 0) and adjust the Orthographic Scale.
Set color management to standard to don't have filmic transformation
And sampling to 1 to avoid anti aliasing.

The resulting image shouldn't be different.(I checked on photoshop : )
However, if you want to move the plane (rotate, or distort) the pixel will change as the raster sample the same pixels to in the same location. It will rasterize the image depending on the new transform, some pixels may stay the same, but some others will change.
Example of a distorted image :


How to Switch Cloth Object Ready for Sewing Simulation into Printable Template

I don't think there's anyway to do what you want. Your best bet is to make an extra copy of the patterns.  You'll have two copies--one for the simulation and one to render as flat patterns.


A shadow is merely the absence of light. The sharpness or distinction of a shadow is determined by the area from which the light is emitted. Thus, both increasing the size of a light and/or adding more (spread out) lights will create the appearance of subtle or blurry shadows. Simply put, more light means less shadows.

In practice there are a few ways to achieve that sort of overcast lighting:

Large light source
Multiple lights
Environment lighting

1: Large light source

All lamps (except the Hemi) in Cycles have the option to increase their Size:

The exact size value that works for you will depend entirely on the scale of your scene and how far away the light is. A small lamp (left) will cast harsh shadows, while a large lamp (right) will cast soft shadows:

2: Multiple lights

Similarly, you can add more lights which will increase the total area that is emitting light.

On the left is a single area lamp with Size = 6, and on the right are 5 area lamps (with reduced intensity) arranged like a dome above Suzanne, also with Size = 6:

Using multiple light sources is a little more tricky to control, but creates slightly more interesting shadows. Here is a screenshot of the scene rendered for the right image above:

3. Environment Lighting

Cycles allows you to emit light from the World - an infinitely far away sphere around the scene.

By default, the world colour is a dark grey (left), however if you click Use Nodes, change it to white, increase the strength and add some buildings just out of view to block some light, it can be used quite effectively (right):

Here is a screenshot of the scene rendered for the right image above:


Move multiple strips in the Video Sequence Editor

Most keyboard shortcuts work on different windows in blender.

A will allow you to select all.

Then if you press G and drag, you can move all the video strips together with the mouse:

To move the strips a specific number of frames use G, then type number of frames you want to move and press Enter. Postitive numbers will move the strips to the right, negative numbers will move them to the left.

The transitions and keyframes will follow the video strips automatically.


Why does my Python script "Onionize" my cone?

As commented above, the lines

active.modifiers.new(name='mysubsurf', type='SUBSURF')
active.modifiers["mysubsurf"].levels = 5
bpy.ops.object.modifier_apply(apply_as='DATA',modifier="mysubsurf")

in the code confirm that the problem is the interaction between subsurface modifier and tris in the mesh geometry. Remove or comment these lines and you will get beautiful cones.

The code can be used if the primitve added is based on quads.


Follow Path interpolation problem: numerical instability?

I recreated your example just to see that happens, although on my system, the "interesting" frames were different.

Path is a parametric curve, P(t). It is natural that the dP/dT = (P(t+dt) - P(t))/(dT) is not constant.  Blender is trying to find such a dT(i) for every i-th frame to make your point moving along the path in constant steps. And it fails sometimes.

This is happening because your path has a long segment (from y=0 to y=90), while your other segments are significantly shorter. You can try inserting more control points into the longest segment (just subdivide it a few times). This will increase the accuracy of derivative computations.  I usually keep my segments at equal lengths.

PS if you shorten the longest segment, the error will reduce dramatically


BGE: How to Change Active Camera with Python?

locPoint = scene.objects['EmptyPanningEnd'].worldPosition
scene = logic.getCurrentScene()
cam1 = scene.objects['panningCamera']
cam2 = scene.objects['playerCamera']

if locPoint != cam1.worldPosition:
    scene.active_camera = cam1
else:
    scene.active_camera = cam2```

https://blender.stackexchange.com/questions/90490/how-to-switch-to-another-camera-in-blender-game-engine


Compositing: Can I have multiple masks in one composite?

Stop looking!  I've worked it out.  :D

The answer is: Once you create one image using an alpha mask you then use this as your background layer for the NEXT alpha mask, and so on, and so on.

It felt like a puzzle in a computer game that I just solved. Now I'm on the next level.

Sweet!


Reset Normals directions to object rotation after applyed scale

Are you in object mode or edit mode? Either way, applying rotation resets the orientation of the object.  But what you can do (and this is better) is use the 3D cursor tool to snap the 3D cursor to the geometry, and use 3D cursor transform orientation. You can create an empty with the 3D cursor's rotation and create a custom transform orientation, too. It will create the orientation from whatever is the active selection.


How to Influence Mesh Positioning According to Bone Movement?

If you want to "read" and understand your armature's behaviour, activate the second bone layer and the "X-rays" function in the armature properties panel, then select the colored bones and analyze the bone constraints (IK and damped track).

This Stretch setting is also important for this rig.


Create a new mesh shaped in the way you require the object to be constrained - in your case a single triangular face - and add a Shrinkwrap constraint to your object set to Closest Surface Point with Target set to the mesh. This will constrain the location to the closest point on that mesh. This will work for any shape of constraint.

To demonstrate, here a Copy Location constraint has been added to Suzanne to move her to the location of an empty. In addition, the Shrinkwrap constraint has been added and targetted at the triangular mesh.

Moving the Empty causes Suzanne to follow, but only within the bounds of the triangle mesh :


Is it possible to nagivate Blender viewport like with WASD in a video game?

The shortcut is now Shift-`, for `2.79` use Shift-F. Then you can use WSAD.


Drag vertices without pulling other faces

It looks like what you need is the Extrude tool. Key E and then either drag an arrow or key X (in your case) for the X-axis and drag or type in a value.


with L you can select a whole separate mesh


How to change effect strip input in Video Editor?

To change input1 parameter:

Select strip you want to make an input
Shift+right click to select strip with input you want to change
Press Strip -> Reassign inputs (or just hit "r" as a shortcut)
Hope this helps.


Can the compositor be used to batch process images?

Yes, one not so elegant (no scripting :) but easy way to go about this would be to just use the Movie Clip node and point it to the directory with the images, pass it as input to your node group/compositor setup and render it out as an animation of stills or output each separately using the File Output node.

The only con or drawback to this approach is that the images need to be in a sequence for Blender to iterate through them.. img_001, img_002 ... img_00n or so you can scrub through in the clip editor or timeline but otherwise it should work as desired.


Grease Pencil (GP) data structure is like this:

GP-Object --> GP-Layers --> GP-Frames --> GP-Strokes --> GP-Stroke-Points

Now, the python commands to get different GP-data,

#1) To get the GP-Object data
GPObj = bpy.data.objects['GP Object Name'].data

#2) To get the GP-layers, use layer name or index.
GPLyr = GPObj.layers['Layer Name']

#3) To get the GP-Frames, use index. But there are other properties of the layer
#   you can access e.g., opacity, thickness, select, etc. You can add or remove the frame.
GPFrm = GPLyr.Frames[0]

#4) To get the GP-strokes, use index. You can add or remove a stroke, change the
#   display-mode, line-width, material index, etc.
GPStk = GPFrm.strokes[0]

#5) To get the GP-points, you can use the index to get individual points.
#   You can add or remove points.
GPPts = GPStk.Points

and each point has info about the location, pressure, strength, uv-rotation, etc. With the help of "foreach_get()" function, you can get the location (or pressure, strength, uv-rotation) of all the points.

#6) To get the location of single GP-point
loc = GPPts[0].co


Is Backface culling possible on another object?

Back-face culling means render engine will ignore faces which normal is not facing toward camera. Since a newly created cube's normal is normal facing outside, you need to filp the normal AltN in mesh edit mode:

If you want the mesh to be a mask and cut of some part of other object, it's not possible with backface culling since the mesh is ignore instead of recalculate.


I would say this has to do with an outdated physics Caché. I’m not sure where to fix this exactly, but I’m pretty sure it’s in the scene properties/settings. Look for a “rigid body world“ and re-bake the caché.


How to get current position of an object using Blender's Python API in BGE?

When are you reading the value?  If you've assigned it to a variable, it might be reading the initial value, and ignoring any updates.

You'll need to update the value periodically.  Possibly using an Always sensor, with a skip, if desired.  Or at certain times within the game;  collision with another object, for instance.

You may need to access appropriate coordinate within it's location vector:  obj.pos.x


It looks like you have your transform orientation set to "view". Set it to "global", select all the vertices you want to level out, and then press S+Z+0. This will level out your selection on the Z axis.
You can apply the transformation while on Object Mode with Ctrl+A, which then will let you decide what kind of transform you want to "freeze". Remember that you need to be in object mode for this.


Refresh an F-curve with Python after changing Extrapolation Mode

You don't set the coordinates for the handles.

Blender won't check if these are valid. In this case the right handle is initialized with the default value
(0.0, 0.0) which is invalid since the  x-coordinate of the left endpoint is 10.0. So handle_x > endpoint_x is violated here.

Moving the point blender will automatically recalculate the handles for the points.

BTW: keyframe_points.insert will recalculate the curve unless the option FAST is chosen.

This example works:

import bpy

obj = bpy.context.object
obj.animation_data_create()
obj.animation_data.action = bpy.data.actions.new(name="MyAction")
fcu_z = obj.animation_data.action.fcurves.new(data_path="location", index=2)
fcu_z.extrapolation='LINEAR'
fcu_z.keyframe_points.insert(10.0, 0.0)
fcu_z.keyframe_points.insert(20.0, 1.0)


Copying an object with python without actually creating a new object

If it's speed you are going for

import bpy
from bpy import context

obj = context.active_object

# add two array modifiers
count = 32
arrays = {"x": (1.5, 0, 0),
          "y": (0, 1.5, 0)}

for axis, displace in arrays.items():
    mod = obj.modifiers.new(axis, 'ARRAY')
    mod.count = count
    mod.relative_offset_displace = displace
    bpy.ops.object.modifier_apply(modifier=mod.name)

bpy.ops.object.origin_set()


With 2 maps on same material i am not able to see and paint on 2nd map in texture mode

I added two textures to the material as shown in the following image.

Now you can switch between the textures using the Texture Paint mode Slots tab.  You'll notice that the Slots tab shows up in the tools tab for me.  You can make this happen by shift clicking on a blank area of a tab's working space to pin it so it always shows up regardless of what tab you are currently using.


Alright, i'll be as detailed as possible.

Okay so first, create your model, for demonstration purposes, I have a cube.

After creating your model, select all the faces in edit mode and press U then select whatever option is best for you. I used the normal "Unwrap".

After that, create your texture, and apply it to the model, to do that, click New or Open in the UV/Image editor (while in edit mode and with your models faces selected).

I clicked new and in the menu it opens I set the image from Blank to Color grid.

Now that that's all done, we've got our texture, time to save it. Do that by clicking Image (It should have a little * at the end of it) and click "Save As Image", and select your location, can be anywhere.

(set the render view to Textured to see what it looks like)

And now, finally save the model as well. You should use a .blend as the format, but some other formats may work too, but for the sake of a tutorial, you should use .blend.

Alright, so next, drag your model into the Project in Unity, do that by simply dragging and dropping the file from the location you saved it to, into Unity's Project window.

And now, drag it into the Hierarchy, it should be in the scene now.

Nice, we've got a model imported into unity now. Okay so now we do the dragging and dropping of the texture in the project window as well, like we did with the model.

After that's put into the Project window alike the model, we will then drag it onto the object.

Nice, we've got our model all textured and ready to go, and all set up. And now time to make some scripts so it does something. :)

Good luck!


I'm sure that this isn't the simplest answer but you could split your cube in two pieces and make one piece green and the other brown. Than you could join (in the menu, object, join) the two pieces to one cube again.
(You can assign different colors to objects or to a part of an object in edit mode)


How to create an operator to control the Radius of a spline and add a hotkey

There is a shortcut for controlling the radius of a curve, but it isn't that obvious.

You can do Alt+S to perform the Shrink/Fatten command and this will directly control the Radius value. It is actually listed in the Transform panel of the Toolbar (T).

Now if you're really set on seeing the process of making a new operator I've included the code below using the Operator Modal template in Blender's Text Editor (explanation below code):

import bpy
from bpy.props import IntProperty, FloatProperty

#Code needed to make it an add-on
bl_info = {
    "name": "New Shrink/Fatten",
    "author": "Ray Mairlot",
    "version": (1, 0),
    "blender": (2, 79, 0),
    "location": "Space Key> Simple Modal Operator",
    "description": "",
    "warning": "",
    "wiki_url": "",
    "category": "User Interface",
    }

class ModalOperator(bpy.types.Operator):
    """Move an object with the mouse, example"""
    bl_idname = "object.modal_operator"
    bl_label = "Simple Modal Operator"

    first_mouse_x = IntProperty()
    original_values = []
    selected_points = []

    def modal(self, context, event):
        if event.type == 'MOUSEMOVE':

            #Calculate an offset based on the mouse position
            delta = self.first_mouse_x - event.mouse_x

            #Loop over points and assign this new radius
            for index, point in enumerate(self.selected_points):
                point.radius = self.original_values[index] + delta * 0.01

        elif event.type == 'LEFTMOUSE':
            #The operator has successfully finished, simply report 'Finished'
            return {'FINISHED'}

        elif event.type in {'RIGHTMOUSE', 'ESC'}:

            #The operator has been cancelled, restore the original data
            for index, point in enumerate(self.selected_points):
                point.radius = self.original_values[index]

            return {'CANCELLED'}

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):

        #Clear out values from a previous run of the operator
        self.original_values = []
        self.selected_points = []

        if context.object:
            self.first_mouse_x = event.mouse_x

            #Gather selected points by looping over the curve
            for spline in context.object.data.splines:
                for point in spline.bezier_points:
                    if point.select_control_point:
                        self.selected_points.append(point)
                        self.original_values.append(point.radius)

            context.window_manager.modal_handler_add(self)
            return {'RUNNING_MODAL'}
        else:
            self.report({'WARNING'}, "No active object, could not finish")
            return {'CANCELLED'}

keymaps = []

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

    #Keymap registration
    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name='Curve', space_type='EMPTY')
    kmi = km.keymap_items.new('object.modal_operator', 'Q', 'PRESS', alt=True)
    keymaps.append((km, kmi))

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

    #Clearing out the keymaps when the add-on is removed
    for km, kmi in keymaps:
        km.keymap_items.remove(kmi)
        keymaps.clear()

if __name__ == "__main__":
    register()

Some explanation of the code:

A modal operator is a bit more complex than your standard operator as it has to allow interactivity, which means you have to handle the user inputting information and cancelling/confirming the end of the operator.

The basic idea of the script (shown in the invoke function) is that you loop through the bezier points of the curve, find which are selected, and store them (as the operator should probably only operate on the selected points). It also stores the original radius values in case the operator is cancelled and the original data needs to be restored (and so have an initial value to increase/decrease from).

Then, in the modal function we calculate a 'delta' (an offset - the default of the template is that it uses the x location of the mouse) to work out how much the radius should change based on mouse movement. We then loop over all the points again and assign a new value based on that delta.

If the operator is cancelled we loop over the points and restore the original data we stored at the beginning.

The keymaps are handled in the register() and unregister() functions which are run when the add-on is enabled or disabled respectively. To try and avoid overriding any existing shortcuts I am using Alt+Q to activate the operator.

It's not the simplest thing if this is your first script and many parts of the script can be improved (like not just using the 'x' position of the mouse to calculate the delta and making sure the selected object is a curve etc.), but this should give you a starting point to see which topics you need to research further.


Grease Pencil : How to prevent rounded stroke ends

Since Blender Version 2.92 Alpha and onward (download V2.92) you can use the cutter tool to remove the caps of your lines.
From wiki.blender.org :

Patch note : https://developer.blender.org/rB2985a745bb01
Also there is an option to automerge strokes ends while drawing, in which you could be interested.

Disabled :

Enabled :

Patch note :
https://developer.blender.org/rBe9607f45d85d


I found a combination of other user's code with some debugging to get a working solution for now.

#Import python
import bpy
from bpy import context, data, ops

mat = bpy.data.materials.new(name="New_Mat")
mat.use_nodes = True
bsdf = mat.node_tree.nodes["Principled BSDF"]
texImage = mat.node_tree.nodes.new('ShaderNodeTexImage')
texImage.image = bpy.data.images.load("C:\\Users\\myName\\Downloads\\Textures\\Downloaded\\flooring5.jpg")
mat.node_tree.links.new(bsdf.inputs['Base Color'], texImage.outputs['Color'])

ob = context.view_layer.objects.active

# Assign it to object
if ob.data.materials:
    ob.data.materials[0] = mat
else:
    ob.data.materials.append(mat)


When using randomize transform => randomize scale, how do you have the randomized values all be above zero?

Just randomize them like you did. Then add an empty and parent all cubes to it.
Then move the empty up (z-Axis) as much as you need it.


Looks like amount of light bounces for Glossy rays in your scene under the Light Paths rollout is set to 0 and looks like this:

This will make Cycles not to take into account rays which bounced from camera to the surface with only Glossy shader (e.g. plane supposed to be the floor also has glossy added to material nodes but it's mixed with Diffuse shader and Fresnel as the factor, so blackish reflection will be visible under certain angle).

Increase bounces to something more than 0, 8 by default and glossy reflections should appear.

Another possibility - Clamp Indirect under Sampling rollout is set to something really slow, like 0.0001. Then any reflections in the scene will be also black.

These values depend on the scene but generally you don't want them to be less than 1.


Connect the last node in your tree of nodes to both Compositor node and Viewer node, because the node which is connected to either Compositor or Viewer will be one acessible for preview in result.

Basically, Viewer allows you only to preview the result which you're working on, while Compositor will make this result to be actually rendered.

At the moment you have your original image connected to Compositor node which is why you get that not expected result. Also you have your composited image connected to Viewer node, and that's why you can preview eveything nicely.

Read more on difference between these nodes in wiki or in this related question: What is the difference between Viewer and a Compositor node.


Mesh Deform modifier in 2.83 not behaving (This is a tricky one, might be a bug)

While the Mesh Deform modifier still doesn't work like it did in 2.79, (I've now submitted it as a bug) I was able to get a work around with Lattice.  This actually works amazingly well.  Thanks to Richard Lester for the solution.


You could try parenting an empty to your focus object, set with constraints to always point towards the camera, then have a second empty parented to the first, that moves along the local axis towards or away from the camera, and set your DoF focus to that empty instead. Then you can have the DoF moving along a line from your camera to the object you want while being able to control the distance.


What is a good way to make large stylized caverns/caves?

A possibility could be to use the cell fracture add-on for Blender.

Basically, the cell fracture tool can destruct an object into multiple ones,  fracturing it into lots of pieces.

My idea: use it on a cube, and make the pieces fairly small. Run the simulation for a few frames, then delete all the chunks you wanted, leaving a nice cavernous interior.  After that, use the Randomize Transform tool to add some more variation.

Once that's finished, all that's left is textures, materials, and lighting!

Good luck. ;-P


The settings you are looking for are the scene's render settings. When you save an image it will by default use these settings as well. The quality (JPEG compression) parameter is under the scene's render image settings:

bpy.context.scene.render.image_settings.quality

However, an Image data object's normal save function ( bpy.data.images['MyImage'].save() ) will not use the scene's render settings. It uses the image format settings which relates to the image saving dialogue opened through the UV/Image Editor's UI.

So to save and take the render settings into account use the Image data object's save_render function:

img = bpy.data.images['MyImage']
img.save_render( filepath = img.filepath, scene = bpy.context.scene )

The filepath = img.filepath bit makes sure you save on the image's existing file path. The scene = bpy.context.scene makes sure you save with the current scene's render settings applied, including the compression or quality parameter.


Final result:

Composition nodes:

Overview:

I don't know your scene setup but mine is just plane with procedural stripes.

After render you just need to connect couple of sets - Lens Distortion + Scale nodes and adjust values as you like. X value will stretch pattern, Y is for straightening up after Lens Distortion.

Blend file:


Check the Curve Radius property.
Under Edit Mode each vertex has a Radius value that acts as a scaling factor for the bevel width. If the bevel width is $9$ units, and bevel $0.5$ then you will end up with a bevel of $4.5$ units. It will also affect the scale of bevel objects.
You can control per Vertex Radius from the Properties Shelf in Edit Mode under the coordinates boxes or with Alt+S for proportionally changing the values. You can also override all selected vertex at once and set an absolute value with the Set Curve Radius Operator (Space Bar menu).
Also check the object scale in Object Mode and make sure it is $1$, if not apply it with Ctrl+A > Scale then and afterwards go through the steps described above, since applying uniform scales to curve objects also affects per vertex radius values.
Also see Curve Bevel function, scale?


Consider using

The Spline IK Modifier.
Vertex hooks, where the hooks are bones of an armature.


I can't be sure this is your issue, but overlay 'Edge Lengths' are displayed in Object space: that is, before any Object-level transform the object is carrying.
This plane has been scaled by 2 in Edit mode, doubling its vertex X-locations in Object space. The rectangle has then been scaled by 0.5 in X, in Object mode, restoring it to a square in World Space, but only by virtue of the transform the object is carrying.

If you CtrlA 'Apply' the scale-transform of the object, that will reset the object's X-scale to 1, and bake the object's scale into the Object-space locations of its vertices.
(The shipped add-on MeasureIt displays dimensions in World space.)


If you want to display or edit your mesh the way you see in Object Mode but after using modifiers, be sure to select those options (green one for displaying, red for editing) for all modifiers:

What's happening is that the modifiers are not set to display in Edit mode, so when you press Tab you'll get the "original" mesh, without any modifications (in your .blend, for example, you can still see a small piece of your track  in Edit mode).
Also, when you press Tab with nothing selected, Blender will enter Edit mode for the active object (the one with yellowish origin), even if it's not selected. So, probably your track is the active object when you deselect everything.


Why are the keyframes for my texture not appearing in the f-curve window or dope sheet?

Texture keyframes don't always appear in the dopesheet:

If the texture is used by an object in the scene, it'll show up in the dopesheet:

Using the texture in an input texture node in the compositor will not make it show up in the dope sheet (unless it's also used by an object in the scene):


The function you want is located in Info > File > External Data:


Wierd pixel issues in final render (GPU only)

With the newest version for the AMD Graphics Card 2020.0909.2058.37766 the pixel isssue is resolved.


The problem with your model is its size. Depending on the quality you expect to see on the finished model and on its purpose, you either need a huge texture or you can try to split up the model into smaller parts.

Another problem is that you are probably want to use seamless textures. To make them look good, you normally need to plan ahead and try to imagine your scene as a sort of a Lego model, where all the pieces have about the same size.

Preparation

Before you do anything, make sure that your model is in good condition by removing double vertices. Go into edit mode, hit W and select "Remove Doubles".

(I didn't clean your model entirely, there is still weird geometry in it. You can see double polygons around the curbs, that should be removed. Best you check every piece separately, remove doubles again and check for any redundant leftover geometry.)

Splitting the Model

To split your model into smaller pieces, select equally sized parts of your mesh, then hit P on your keyboard and select "Selection" in the popup menu.

Then you need to uv-unwrap those parts again, so each part has its own UV texture space.

The curbs and sidewalks should probably look different, so we need to separate their UVs from the road. Go into Edge Select Mode, then select the left and Shift-select the right edge of the road, then hit Ctrl+E and select "Mark Seam".

After hitting U and selecting "Unwrap", you are presented with a new UV layout for the new part of your model.

You can then straighten the UV layouts by using the method I described in my anser here.

When you are finished, your UV layout should look similar to the screenshot below. Note how the UV islands are straightened and sized equally, so they go right to the edges on the X axis.

Next, you want to open a road texture, that is seamless in the X (U) direction, then start to move the UV islands around until they match the pattern of the texture.

Creating the Material

Go to the Properties Panel - Material tab, delete whatever material you find in the slot, create a new material and rename it appropriately.

Then open the Node Editor, select "Node Tree Type - Shader" and check "Use Nodes".

In the Node Editor view, hit Shift-A, select "Input - Texture Coordinate", then Shift-A, "Texture - Image Texture" and select your Road Texture in the Texture Selector.

If you then switch to Material View, you are presented with this result:

Note how the texture pattern follows the road? This is due to our effort to straighten and realign the UV islands. This method can only used to a certain extent. If the road makes too tight curves, the texture gets distorted too much, which breaks the illusion.

If you follow through with this pattern, you should be able to achieve an almost seamles look for the whole road. You can reuse the material that was created for all similar pieces.

You can use your own texture, the one I packed into the .blend file is just a basic road texture. You could also edit it, so the curbs and the sidewalks would look different.

Link to .blend file:


Face Expressions from one mesh to another

If the meshes are different regarding their vertice (count and inter-vertice-connection - the "edges") there is no native way to do this - at least not with native blender tools. I don't know of any addon, which does this - I often need to have such a tool and didn't find any.

The reason is, that the shape keys are recordings of vertex displacements.
Think of a sphere with shape keys and try to transfer them to a cube....
(ok...that example is extreme...;) )


Even though your edge flow looks good from the side, the base of your mesh is apparently made by a single big N-gon.

Compare the subdivision of a quad base vs a n-gon base:

You should remove your base face and replace it with carefully created quadrilaterals.


How to render mist path as png sequence in Eevee?

I'd like to add that you don't have to render your animation twice, you can output as many passes or composites as you like at the same time using a File Output node:

SHIFT A -> Output -> File Output


Look Honestly because i would post a comment but because i don't have enough rep i have to answer, but with blender try to go into the material properties and hopefully if you got the mesh of the internet it should have different materials, just change those separate materials and modify them to suit you since they should of been already made from the owner.

As seen above, there should be multiple textures for that one model.

I hope this helps and i don't quite know if i completely answered your question. If you don't see the extra materials i would say it wasn't made to be compatible with blender.


Baked the duplicate of rigid body object

Use the collision groups (or Collisions/Collections in 2.80) in the physics panel. If you set the Suzanne copy to collision group 2 and set the grid to groups 1 &2, then both Suzannes will interact with the grid but not with each other.


Is there any way to publish game for android

No, the game-engine was ported to Android for a GSOC project, but this didn't make it into an official release yet.

There is however work being done for Blender to use EGL, which will help Blender run on Android and Wayland in the future. (The soc-2014-viewport_fx branch).


Background can be seen through objects, Alpha Over doesn't work?

You just missed to check "transparent" in the render panel, under the film section.
Once you do that, your two renderlayers will have their own alpha channels and you will be able to composite them.

However, you'll notice that you no longer have the sky background. To bring it back you just need to turn the environment pass on in the planet render layer, and use it as background for your two plates.


list comprehension, avoiding the none return on animation nodes expression

Lists can be joined with "+":
So you make a new list (list comprehension) with all the x for which the condition is True and simply add it to the existing list.

filas + [x for x in list if x == sector_name]


Why does Grease Pencil ui not inherit from bpy.types.Panel?

Generic Grease Pencil Panel Classes

The code you have pasted is from properties_grease_pencil_common.py you will notice that none of the "panel" classes, eg GreasePencilDataPanelare registered.  These classes are defined separately and imported, since a lot of grease pencil functionality is generic.

Now if we look at the 3d view space space_view3d.py for example, notice it imports these classes

from .properties_grease_pencil_common import (
    GreasePencilDataPanel,
    GreasePencilPaletteColorPanel,
)

One of the panels defined in this space

class VIEW3D_PT_grease_pencil(GreasePencilDataPanel, Panel):
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'UI'

    # NOTE: this is just a wrapper around the generic GP Panel

which inherits from bpy.types.Panel and is registered, and hence view-able as a panel in the 3D view space.


Finding the top / starting point of the node tree using Blender's Python API

Yes, once I found the term active_output, I pointed straight to here

This question can probably be deleted.


What's the correct name of the Camera pyramid-shaped wireframe object used to display it?

The pyramid-shaped camera gizmo is just a shape commonly chosen to represent cameras. The pyramid's angle and direction depicts the camera's field of view. Unrelated to Blender, the term you are looking for is viewing frustum or pyramid of vision. This is intended for depicting the near and far clipping planes, but Blender does not show these in its camera gizmo. As such, the shape used in Blender is not technically even a frustum because the four segments converge to a point. Within the context of Blender, it is simply called the camera.


Is there any other way to make the animation look like on the image below?

Add a bezier curve, select a sphere, shift select the curve, go to edit mode, select one control point and press Ctrl H (Hook to selected object). Repeat for the other control point and the second sphere.
With geometry property Bevel, you can set the diameter of the link.


How to toggle header visibility while 3D aera is maximized?

Toggle header = Right Alt+F9

Might interfere with Nvidia default shadowplay global key-bindings.

Alternatively:

Create another screen layout besides your Default layout.
Close/merge all the areas you don't want
Enter/exit this layout using Ctrl-> or Ctrl<-


Problem when exporting from Blender to Unity 3D?

The Blender exporters sometimes don't work perfectly. However, Unity supports .blend files, so you can simply drag and drop the .blend file into the Unity project.


How to select multiple images when importing textures?

I am not sure what do you mean by "applying images to a mesh" but you can import multiple images for later use.
Just switch to UV/Image editor, click Open and select multiple images by any of these methods:

mouse drag (lasso select)
ShiftLMB for selecting multiple
or CtrlShiftLMB for select from the first to the last clicked


Object hierarchy - scale does not change location

It's due to the parenting and an expected result.
When a child appears scaled due to its parent scale, the child own coordinates, scale or rotation won't change.
That's allow, when unparenting AltP, to have the choice between "clear parent" and "clear and keep transform".
Internally, Blender keeps the object own coordinates in matrix_basis and the resulting coordinates of its dependencies in matrix_world.
Also, moving the parented object by x unit will result in a move of its own coordinates of x unit times the inverse of the scale given by its parent. So, all is coherent.
If you want to keep parenting with scales and locations being applied, select all the parts and use CtrlA to apply, then "scale".


How to mix multiple Enviroment texture (not in the compositing)

No need to be a genius. Just mix it with a mask:

As you can see you can use a radial gradient clamped at some value with a color ramp, but image texture masks would work as well.


Changing the color space of your normal map texture to "Non-Color" should fix your problem

Normal maps are not color, they are values. Using the non-color space makes blender use the values stored, not the corresponding color.
More about color spaces in Blender.


Baking Textures as Image Sequence by Script in Cycles

Since 'Animation Baking' is now officially supported by this Add-on (shipped with Blender by default), you can simply call bpy.ops.object.anim_bake_image() for a sequence:

import bpy

scn = bpy.context.scene
scn.animrenderbake_start = 3
scn.animrenderbake_end = 30
bpy.ops.object.anim_bake_image('INVOKE_DEFAULT')

The following script is a slightly modified version of the Add-on in order to bake specific frames (for demonstration purposes). To bake all frames (or a custom range) use the range() function.

import bpy
import os
import shutil

# set the frames to bake
bake_frames = [0, 230, 99]

# format frame number
def framefile(filepath, frame):
    fn, ext = os.path.splitext(filepath)
    return "%s_%04d%s" % (fn, frame, ext)

# scene attributes
context = bpy.context
is_cycles = (context.scene.render.engine == 'CYCLES')
selected = context.selected_objects
img = None

# inspect the materials
if is_cycles:
    inactive = None
    selected = None
    for mat_slot in context.active_object.material_slots:
        mat = mat_slot.material
        if not mat or not mat.node_tree:
            continue
        trees = [mat.node_tree]
        while trees and not img:
            tree = trees.pop()
            node = tree.nodes.active
            if node.type in {'TEX_IMAGE', 'TEX_ENVIRONMENT'}:
                img = node.image
                break
            for node in tree.nodes:
                if node.type in {'TEX_IMAGE', 'TEX_ENVIRONMENT'} and node.image:
                    if node.select:
                        if not selected:
                            selected = node
                    else:
                        if not inactive:
                            inactive = node
                elif node.type == 'GROUP':
                    trees.add(node.node_tree)
        if img:
            break
    if not img:
        if selected:
            img = selected.image
        elif inactive:
            img = inactive.image
else:
    for uvtex in context.active_object.data.uv_textures:
        if uvtex.active_render == True:
            for uvdata in uvtex.data:
                if uvdata.image is not None:
                    img = uvdata.image
                    break

# convert the path to absolute path
img_filepath_abs = bpy.path.abspath(img.filepath, library=img.library)

# iterate through the frame list
for f in bake_frames:
    print("Baking frame %d" % f)

    # set the frame
    context.scene.frame_set(f)

    # cycles bake
    if is_cycles:
        bpy.ops.object.bake()

    # internal bake
    else:
        bpy.ops.object.bake_image()

    # save the image
    img.save()
    img_filepath_new = framefile(img_filepath_abs, f)

    # copy the image
    shutil.copyfile(img_filepath_abs, img_filepath_new)
    print("Saved %r" % img_filepath_new)


Go into edit mode, select all vertices using  A  the press  P  and from the dropdown menu select by loose parts, now you have every item in a different object.

Adittionally you can press   CTRL  +  SHIFT  +  ALT  +  C  to reset the origin to the geometry average.


Changing scale without changing dimensions

You can simply scale the origin of the object.

Check Tool > Transforms > Only Origins
Scale your object (it won't visually change dimensions)
Done.


Why do my chains separate when falling when I use physics with them?

Try making your chain links dramatically bigger. Blender has a problem with small objects with rigid body physics. Hope this helps!


I had to be in edit mode in order for the separate shortcut to work.


How to accomplish realistic piles of dirt in Blender?

The addon you are talking about is probably Molecular (Sand sim with Molecular)
Simulating everything will take a beefy PC and huge amounts of simulation time, and will only look good if you got the settings right before hand, but if you do its very rewarding.
You maybe want to look into techniques like
Particle Dirt

Particle Dirt

Displacement and bump mapping with PBR textures

Displacement and bump mapping

Even tessellation / Micro Displacement (adaptive subdivision)

Sculpting

To shorten your time and gain more control


The question is a bit sparse on information so this is a bit of a shot in the dark.

In your outliner panel where it says All Scenes, select Orphan Data, if the data which should be gone is visible there you can press Purge All to remove the data from the scene.

Best Regards


Stateless solution

I suggest to do the exact same thing.

So you get:

logic to switch from A to B
logic to switch from B to A

Ensure to avoid triggering both at the same time. e.g. have a according difference between the collision objects.


Blender 2.8 Subdivision Surface on planes not sharp with creases

I found out that this is currently an open bug in 2.8 according to this link: Blender Bug Tracker - Round corner in edge crease of subdivided surfaces


How to create concentric circle ripples in an upright emissions image plane, in cycles?

Have your tried the Wave Modifier? Play the animation afterwards to see the effect


ok, make these changes:

assure that your pipe is converted to mesh
add a solidify modifier to the pipe with 0.2 thickness and apply it
set surface thickness 0.2 in the fluid tab of the effector
remove velocity of inflow (because i am not sure whether it is too fast, maybe some other parameters have to be changed to make this work), so just set velocity to 0

bake again -> test


How to set blender default properties in addons?

A way of automate it could be to use an Application Handler, I think one of the scene update handlers would be the best fit. As you only want to alter the value once I would have the handler remove itself once it has done it's task.

As batFinger pointed out, it would also be useful to setup a persistent handler that will set the value when another file is loaded.

bl_info = {"name": "Set property", "version": (1, 0), "location": "blender",
    "description": "Test a way of setting a default property.",
    "warning": "Only testing", "category": "Test",
    }

import bpy
from bpy.app.handlers import persistent

@persistent
def setIt(scene):
    scene.world.use_sky_paper = True
    bpy.app.handlers.scene_update_pre.remove(setIt)

def register():
    bpy.app.handlers.scene_update_pre.append(setIt)
    bpy.app.handlers.load_post.append(setIt)

def unregister():
    bpy.app.handlers.load_post.remove(setIt)

if __name__ == "__main__":
    register()


How to add palm leaves to animated sapling tree

Here's what I've got from a bit of playing with the sapling addon. It's not too detailed but it accomplishes having the leaves on both sides of the branch. The key setting here is under the "leaves" settings, set the "Leaf Rotation" to 180 degrees. This makes every alternate leaf appear on the opposite side of the branch.


Menus are a bit different in version 2.80. You can access a contextual menu with right clicking with the default keymap now, but it is slightly different now then specials menu used to be, for example there is no Symmetrize in it, that is only in the Mesh menu now that does not have a shortcut by default.

You can use the Quick Favourites Menu to add and quickly access the functions you use most. You can access it by pressing Q and to add functions to it, right click on any function in any context menu and select Add to Quick Favourites.


You need to have two overlapping strips to be able to add a Wipe transition.


This should do the trick?

The Name field odf the Attribute node is the name of the Vertex Color layer you want to display.

(The mix is there to prevent the Emission shader from illuminating other objects)


Shifting/blurring material between objects

In your ColorRamp node you can set the mode from "constant" to "linear", then add as many control points as you need to get the desired "blurring".


How do i change the direction and rotation of rotataion axis?

You could parent the handle to a bone. You could also bring your object back to a vertical position (aligned with X, Y and Z), parent it to an empty (to make this empty is now its new global reference instead of the world) then tilt the empty. Now you can make the object rotate on its own axis for example with R Z Z.


Where do I go to add paths(curves) in Blender 2.77?

You are probably in mesh editing mode (which allows only to add meshes)

I presume you see that :

Go back in object mode :

So you have the add menus :


If you don't know any name in python properties, you can find it in data-blocks outliner:

In your case the value named use

For example, this points to first texture slot of first material of selected object:

bpy.context.object.data.materials[0].texture_slots[0].use


You turned off the Combined Layer Pass in the scene

Go to the Properties Editor > Render Layers Tab > Passes and activate the Combined layer pass


Blender Cycles Render is rendering past end frame

You should check your scene render settings:

Make sure your end frame range is where you want it to be. Also, don't mix up the render frame range with the preview frame range. You can toggle those two in the Timeline editor:


How can I change video (or image sequence) speed (slow or fast) in blender composition?

You want to use Time remapping, a quick google search for that will help you.  Also when I get to a computer I will update this answer.


Can't set major radius of a torus to anything larger than 1 meter

Creating the torus in python doesn't seem to have this limit.
not sure if it's easy to do but you can add this as a custom operator in the toolshelf.

 bpy.ops.mesh.primitive_torus_add(..., major_radius=999999,...)


One solution would be to enable a shadow pass, invert the colors and use that as alpha using a Set Alpha node.

The Dilate/Erode will help with the antialiasing of the shadow pass.

EDIT

Now... if you hate the previous option and absolutely want to use the layers you have set up, you can try this:

From the background layer you can indeed subtract the shadow layer, creating a black and white image that holds the shadow information only. But use difference instead of subtract (also, you don't need the invert node because you can invert the image with the curves node, but you do need to get rid of the color information). Next, combine that image with the alpha channel of the sphere, and use the resulting image as alpha channel on the mix of the shadow and the sphere...


What select non manifold is for exactly?

extend=True adds to the current selection, whereas extend=False replaces the selection.

Those use_xxx bools are different reasons why a part of the mesh can be non-manifold, and allow the user to select specific cases.


How to change the snapping increment in different units?

If you hold ⇧ Shift while snapping, then it will snap in smaller increments:

Or if you view from an aligned view such as top ortho (Numpad 7), the snapping increments will be equal to the grid subdivisions (which change with zoom level):


Why can't I get a clean result from cycles?

Either crank up your samples or try denoising with AI or Photoshop / AfterEffects.
The former takes a little longer to render, the latter produces artifacts at times.

I am not too sure about the current implementation of denoising into cycles, but there is an addon called dnoise you could try out. Otherwise go into the "Properties" Editor, into the "Render" Context and and put a higher value into the "Render" textfield under "Sampling".

The thing is, that Cycles does a lot more realistic calculations than BlenderRenderer ever did, so it takes longer to produce a clean result...


The problem is that your Distance setting is too high/large. There are two places where Distance is specified, and they are different settings.

One of them is the distance from the mesh that collision objects will be considered "colliding." If you set this too high, the mesh will behave as though it's colliding, even though it's not touching. If you set this too low, the mesh might move too far over the course of a frame, and the collision will never be detected.

The other place that Distance is specified is specifically for the cloth interacting with itself. Another part of the cloth that is within the specified distance will be considered "self-colliding." Similar principles apply.


How do you create an aura, or halo effect, like what was possible with the internal Blender Render Engine, in 2.80

A similar question was asked a little while ago. The following answer should provide you with the information to render halos in Cycles: (see 'Point Clouds').
https://blender.stackexchange.com/a/45487/23799

Since the linked answer is over a year old, I went ahead and verified it's content for Blender 2.80 and expanded upon the explanation on how to set this up.
For further reference on this method, see the aforementioned post.

As an example, I've added a mesh that will represent the location of the particles in the particle system. Add a particle system to the mesh and leave the settings as is.

Add a mesh that completely encompasses the particles in the particle system. This will be your volume shader. Create a material for this mesh and open the Shader Editor.
(I have made the cube semi-transparent so you can see what's going on inside).

In the Shader Editor, detach the Principled BSDF Shader node(or delete it) and add a Point Density shader (Add > Texture > Point Density) and an Emission shader (Add > Shader > Emission).
Connect the Density output of the Point Density node to the Strength input of the Emission shader.
Then connect the output of the Emission shader to the Volume input of the Material Output node.

Set the nodes up as follows; In  the Point Density node, select the object to which you added the particle system(in this case, Suzanne) and select its(her?) particle system (called 'ParticleSettings' here) in the Particle System input below. Leave the other settings as is.

Now, if you render the image using (Viewport) Render, you'll see the particles glow up. You can change the size of the glow by changing the 'Radius' setting in the Point Density node.


Whats the Blender 2.8 command for adding an object to a collection using python?

Your answer is actually wrong.

If your active collection is another as the main collection, when running your script the object will not be removed from this.

import bpy

bpy.ops.mesh.primitive_cube_add()
# our created cube is the active one
obj = bpy.context.active_object
# Remove object from all collections not used in a scene
bpy.ops.collection.objects_remove_all()
# add it to our specific collection
bpy.data.collections['MyCollection'].objects.link(obj)

About remove all:
https://docs.blender.org/api/blender2.8/bpy.ops.collection.html#bpy.ops.collection.objects_remove_all


How to execute custom Python code on startup?

Go to File -> User Preferences and select the "File" tab. In the dialog, there is a "Scripts" entry where you can define the location of an alternative scripts directory.

If you want to deploy this change to a lot of blender installations, simply copy the userpref.blend file to your skeleton/template user home directory. Whenever a new user is created, this file will then be copied to his home directory, and when he starts blender, he'll have the changed script preference. The neat thing is that you can change other preferences values (and the startup blend file, too, if you want) with this. For Linux, the file lives under ~/.config/blender/blendversion/config/userpref.blend. I'm pretty sure that for Windows there is a similar file that gets stored somewhere in the user's homedir.


Could I have a camera complete an animation then follow a path?

With your camera selected, go to Properties -> Constraints. Add 2 'Child-Of' constraints to the camera. In the first Child-Of constraint, make the target your car. In the second Child-Of constraint, make the target a static object in the scene, such as the ground model.

Go to the last frame in which the camera needs to follow the car. Set the first Child-Of influence to 1.0 and keyframe it (hit I over the influence bar). Then set the second Child-Of influence to 0.0 and keyframe it.

Go to the very next frame. Set the first Child-Of influence to 0.0 and keyframe it. Set the second Child-Of influence to 1.0 and keyframe it.
Now you are free to animate the camera with respect to the moving car. Then, you can animate the camera with respect to the scene in general.


How do I delete keyframes on a plane track?

Move The Green Timeline Marker On The Frame You Want to Delete The Keyframe on and press alt+I this will delete all current keyframes on that frame.


Is there a way to put faces on different layers with edit mode?

In edit mode - select the faces you are wanting in a different layer. Shift-D to duplicate them. Then type the shortcut letter P. A menu will appear. Confirm 'Selection'. This will separate the selected faces as a new distinct object when you return to object mode. You can then place the new object (duplicated faces) into any layer you like.

The 2.8 beta has a new layer mechanism that may support a better version of this application.


Is there a way to save selection by faces

This is a limitation of the current Vertex Groups system that has been an occasional nuisance.

That's is why they are called Vertex Groups, not "Face Groups"; selections of vertex don't unequivocally define groups of faces, since a vertex can belong to an arbitrary number of them.

Would be nice to hear about more options and solutions for this from other users around here. The way I generally solve this is by using material slots instead, if you don't mind the additional pollution in the materials list.

Go to Properties Window > Materials Tabs > Add New Material Slot button, and then with the desired faces selected press the Assign button.

Since they work on a per-face basis instead of single vertex, they can correctly define face groups. You can still assign materials independently, but you can't have a face belong to more than one slot unfortunately, so you may end up having several slots with the same materiel.

Different intersections of selections overlapping materials may require an exponentially growing number of slots.


Considering the character is not selectable as a mesh, how would I mirror these earrings?

The result that you're trying to achieve is actually very easy to do.

Add an empty.
Position it to be in the middle of your character's head.
Put a mirror modifier on your ring objects.
Use that empty as the "mirror object."


How do you control an edge loops direction?

I know it's not an answer you are waiting for, but maybe use subdivision for edges of those bottom faces, and then move points with "vertex slide"? And then connect vertices with edge making?


Note that you need numpad 5, not just the 5 key. If you do not have a numpad, go to user preferences and check the box that says "emulate numpad", so then you can use your number keys.


1.- You have to disable "lock object mode", which is in the Edit menu
(if "lock object mode" is enabled you can not select another object besides the active one without leave sculpt mode)

2.- You have to select every object and enter sculpt mode in every one of them

Supplementary:
https://www.youtube.com/watch?v=oXNZIIDZC48


Subdivision Surface modifier deforms mesh on 2.80

One thing you might be able to do is either make your own bevels, or use the bevel modifier Like so....

I start off with your problem:

After using manual bevels:(after selecting everything, do ctrl+b)

Or you can use the bevel modifier to do it for you:

NOTE: Make sure you decrease the width of the bevel modifier and increase the segments to achieve better results. Experiment with this a bit until you get what you are looking for.

If something like this is happening on a cylinder what you can do is extrude the end inward by pushing e than s, like so:(if not using the bevel modifier)


How to make an original image texture with transparency in Blender Render?

Okay, it would appear I've managed fix the transparency issue on my own with the aid of this video tutorial enter link description here that was included on my YouTube Recommendations this morning.  While following along with the video, I discovered that the reason for the faded look of the pupil texture was that the Diffuse Influence of the Alpha wasn't enabled in the Texture tab.  Once the Alpha was enabled, the pupil looked the way that it was supposed to.
As for the eyelid(s) texture, I didn't actually find out what was wrong with it.  Instead, I created a completely blank image texture in Gimp and imported onto my model.  I then repainted the eyelid(s) onto the new blank image texture, and as a result, the new eyelid texture now has looks the way that is was intended without any apparent issues that were found in the old version.
However, rendering an image still results in the same problem as before, with a weird visible mesh around the eyes that only appears when a image is rendered and not in any other mode in Blender.  I have no idea if this a serious issue or not, I guess I would have to import the model & its textures into Unreal Engine 4 to see if there is any visible problems whatsoever.


Is there any possibility to adding a value beside expression in driven property?

A shortcut to entering driver expressions is to start with a # - so entering #frame*0.1 will create a driver expression that sets the value to 1/10th of the current frame. You can then edit drivers using the graph editor in driver mode.

Using the # prefix works for some things that are available globally, like the current frame and some math functions - sin(), log(), noise.random() etc. To get a driver to depend on a transform channel or property, whether it is it's own property or another objects, you create driver variables and use them in your expression.

To see a full list of functions available within drivers, enter bpy.app.driver_namespace.keys() into blenders python console.

You can also define your own functions and add them to the driver namespace as shown here.


Why does the "Checker Texture" node produce flicker with "Texture Coordinates Object"?

That's simply because your plane is between 2 checkers.
The checker texture is a 3D texture which alternates also in the Z axis. If you go in edit mode and move your plane up and down you will see that.
You can also rotate it to get different patterns.

In "Generated" coordinates your plane is in the vertical middle of a checker. That's why there's no artifact there.


okay i solved the issue. i deselect vertex groups of eyes in armature section at modifier tab. know eyes move as they should be. maybe this helps others who struggle with same problem.


Can blender separate a sculpt mesh like zbrush?

You can Mask the part of the mesh you want to separate

and then choose the Mask -> Mask Slice to New Object menu option

Which will give you two new objects (the Blender pseudo-equivalent of SubTools).


If you 'typed it out' in Blender I'm assuming you used the text tool. If that is the case, then you have been wasting time, since it is still a curve object and will also have a messed up topology.

Text tools are just a special type of Bezier curve objects, so if you plan on converting to mesh might as well have just used the one imported from SVG you already had directly.

Curve objects are actually an underrated and powerful modeling tool to use, if you don't plan on converting to a mesh object later. That will often lead to triangulated uneven topology, unless you do some serious manual cleanup work.

If you don't plan on doing any heavy edits and shape modifications I'd recommend leaving them as curves objects.

Create your text then in Object Mode press Alt + C > Convert to Curve, then use the built in curve properties (not a Solidify modifier) for extrusion. You'll have the added benefit of procedural non destructive beveling and allow easy tweaking of the character's shapes by controlling the bezier curve handles in edit mode.

About rotation I'm assuming you want to rotate each character individually, if that's the case you either have to rotate them in Edit Mode individually (after converting to Bezier Curve or Mesh) or separate each character into it's own object (L to select all linked geometry and P to separate), then rotating each individually in Object Mode

If you plan on doing geometry heavy changes to you logo however, then I'd recommend a different approach and start from scratch modeling you logo as a mesh. It may be harder at the beginning, but with a good starting topology it may well compensate in the long run


Select or find everything that a driver is driving?

A single driver only calculates the value for one property. I think what you want are properties a driver depends on, that is properties a driver uses in its calculation.

You can use the outliner to find objects that have drivers by searching for "driver" -

I don't think blender includes a way to show driver dependancies but we can make a script to list them. Drivers and the variables we define to use in them are all stored in the animation data.

import bpy

obj = bpy.context.object

if obj.animation_data and len(obj.animation_data.drivers):
    for d in obj.animation_data.drivers:
        if len(d.driver.variables):
            for v in d.driver.variables:
                if v.type == 'SINGLE_PROP' or v.type == 'TRANSFORMS':
                    print('{}.{}[{}] uses {} from {}'.format(
                            obj.name, d.data_path, d.array_index,
                            v.targets[0].data_path, v.targets[0].id.name))
                elif v.type == 'LOC_DIFF':
                    print('{}.{}[{}] uses distance between {} and {}'.format(
                            obj.name, d.data_path, d.array_index,
                            v.targets[0].id.name, v.targets[1].id.name))
                elif v.type == 'ROTATION_DIFF':
                    print('{}.{}[{}] uses rotational difference between {} and {}'.format(
                            obj.name, d.data_path, d.array_index,
                            v.targets[0].id.name, v.targets[1].id.name))

That will give you something like -

Suzanne.location[0] uses location.x from Cube
# or
Armature.pose.bones["Bone"].location[0] uses distance between Cube and Lamp

Note that this does not cover all driver data, just what is in the main animation data, which includes the main object properties as well as modifiers and armature bones. Drivers for shapekeys can be found in obj.data.shape_keys.animation_data.drivers, materials, textures and nodetrees can also have their own animation_data.


Blender has no facility to write a .blend file as a series of Python instructions.

For limited uses you could write your own script (Its been done before for rigify armatures for eg), but for the entire blend file this becomes a large task.


Game Engine object getting darker as it scales

What shading mode are you using? (Multitexture or GLSL)

Multitexture

In this mode the the colors of the vertices are calculated from distance to the lamps. The pixels of the face are interpolated from colors of the vertices. As your vertices are more far away from the lamps they are rendered darker. The interpolation will be between dark colors and other dark colors. This method is fast but assumes that face pixels have no significant different distance to the lamps than vertices.

In other words: It is assumed, objects closer to lamps have a denser mesh (smaller faces). This way the interpolation is not that much noticeable.

Test: You will see a significant different effect when you subdivide the plane just once as the middle vertex is close to the lamps.

GLSL

In this mode you should not see this effect as all pixels of the plane get the color dependent on the distance to the lamp (rather than interpolation).


Array modifier sets the distance in between instances according to the given input that you assign, this applies to start/end caps, so unless the start and end caps have the same thickness on the array axis (in your case the Y axis) there will be a gap or they will overlay with the Array object, I found 2 solutions to this:
 First solution:
1- Make a copy of the start/end object so that you have two copies using Shift + D so you can use one of them for the start cap and the other for the end cap
2- Enter the start cap object's Edit mode using Tab, select all using A then move the mesh on the axis used for Array, in your case it's the Y axis, press G + Y and move your cursor, in your case the origin should be outside the mesh, think of it this way, the distance in between the origin of the start object and the surface touching the Array object, should be the same width of the Array object on Y axis.
3- Do the same for the End object, except that the direction of the movement should be reversed.

Notice the origin in the image above.
Keep in mind that if you assign the Start or End cap before moving the origin of their objects, you will need to re-assign after editing, the Array modifier will not update automatically.
Second solution:
You can use two Array modifiers, one of them to repeat the Array object on the Y axis, without using the Start/End cap object.
Then use the second modifier only for the cap object, so the repeat in the second modifier should be Count:1, then select the cap and end object and use the input in Relative or Constant or both, to set the distance input.
This way you are assigning separate input for the array itself (using the first array) and for the the Start/End cap (using the second array).
You will still need to move the origin of the Start/End cap object, but you don't have to make separate copies for the Start cap and the End cap.

Hope this was helpful, happy blending!