Exported UV Layout is Blank I'm having an issue with trying to export my UV layout in Blender 2.76b on Windows 10.

My model has seams and is unwrapped and the UV map is working properly. However, when I try to export the UV layout the resulting image has no lines, it's just a blank canvas.

I've been able to successfully export the layout of this project less than a week ago with no noticeable changes other than some adjusted UV coordinates.

Steps I've done to export the layout:

Switch to UV Editing screen layout
Change 3D View to Edit Mode
Select all vertices in 3D View and UV editor
Go to UVs > Export UV Layout
Export the layout as a .png with the "All UVs" flag checked

Any assistance in figuring out what's going wrong would be much appreciated.

Check that you have the "keep uv and edit mode mesh sync" disabled (in the bottom screen options). I had the same issue and that worked


Glowing transparent shader, Eevee and Cycle render different result I am trying to create a transparent glowing shader. I manage to get the result I'm looking for in Eevee. However, it look different in cycle render. I am aware of the fact where both renderer is different even though a  lot of the node are compactible. So I'm wondering is there a way to replicate the result of Eevee to Cycle.
The image is the result I'm looking for. The model is transparent with a glowing effect.

A test render with cycle, although there is still some transparency. However, it is significantly weaker.
Is there a way to replicate the effect of image one in cycle ?
The following is the blender file which contain the node setup.

The closest I've been able to manage to getting EEVEE and Cycles to appear the same:

I've removed the emission shader but enabled emission directly from the cycle shader and then moved the transparent shader to where you had the emission shader.
This doesn't give exactly the effect you were after but it at least matches cycles and EEVEE as closely as possible.  Perhaps it will give you a starting point for what you did want?
EEVEE:

Cycles (viewport):

For cycles I enabled noise reduction in the viewport render mode:


Bone dissapears in edit mode, but seen in pose mode? There are no constraints on it.

Once I go into edit mode, it's gone! I can't find it and I can't delete it, it just come back when I go back to pose mode.

Thanks for the help.

I have solved my very stupid question.  I hope this serves well for anyone who happens to stumble across this.
It was hiding in edit mode but not in pose mode.  I think there should be a better way for blender to handle trying to delete hidden bones.  Because it just gives you a menu and it does nothing.  When you come back in pose mode the bone still there. Give me an error message at least?


Python 2.8 - updating code sample from v. 2.63 (image rendering and saving) In 2.8, I am having difficulty adapting a code sample written for Blender/Python 2.63.  The intent is to save images of a scene using python.  The code was sourced from this post.

In 2.8, the code throws an error on the following line.  The error message is 'AttributeError: 'SpaceView3D' object has no attribute 'viewport_shade''

area.spaces[0].viewport_shade = 'RENDERED'

The full code snippet is here:

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        area.spaces[0].viewport_shade = 'RENDERED'

bpy.context.scene.render.image_settings.file_format='JPEG'
bpy.context.scene.render.filepath = ".pic%0.2d.jpg"%i
bpy.ops.render.render(use_viewport = True, write_still=True)

The line to set the viewport shading needs to change from

area.spaces[0].viewport_shade = 'RENDERED'

to

area.spaces[0].shading.type = 'RENDERED'

since Blender 2.8's API has replaced viewport_shade. Here you can find the documentation of the Area, AreaSpaces, SpaceView3D (if the space is of type 'VIEW_3D') and View3DShading.

Although I'm wondering why you'd want to set the viewport shading if you intend to actually render the scene. In case this really is what you want I'd suggest getting the active space, which will be the one currently displayed.

for area in bpy.context.screen.areas:
    if area.type == 'VIEW_3D':
        space = area.spaces.active
        space.shading.type = 'RENDERED'


How to merge a loose edge into coplanar faces? I created this edge by linking the two vertices directly (Make Edge / Face):

Now I would like to split the quad face below along this loose edge. What is the solution for the general case where the edge crosses multiple coplanar faces?

AFAIK, there is no way to use an edge (without even a plane) to divide a face.

What you need to do is delete the edge (x->edge) and then join the two verts, by selecting them and hitting 'j'.

If you've made a bunch of edges not realizing what you were doing in some other model, you can use mesh->cleanup->delete loose to delete all these edges, but I don't believe there's any way to transform them into cuts.


How to clip Background Sky Texture to above Horizon As the title says, I'm looking for a way to clip a Sky Texture Background to above the Horizon only, anything below it should be black.
I tried using the clip function of the mapping node but the result is something else. I also tried combining the sky texture with an rgb node with a mix shader and using the mapping node as Fac but didnt find a solution.
Please show me a working node setup.

You can use Generated texture coordinate with World to read Z axis on -1 to 1 range. Here -1 is straight under, 1 is straight up and 0 is the horizon. Taking it from there, you could simply use Math node to test for Greater than 0. Math node returns 0 for under 0 and 1 immeadiately above 0 so you can achieve a sharp mask.

For smoother options you could use Color Ramp node, it even conveniently ignores anything below 0 in the range.

EDIT: Here are couple setups for Color Ramp. First ColorRamp range from horizon to Zenith, horizon is on the left of the ColorRamp at value 0.0.

And here we have shifted the -1 to 1 range between 0 and 1 by adding 1 and multiplying by 0.5. Horizon is in the middle of the ColorRamp at value 0.5.


Vertices as particles? I'm new to blender. I'm trying to build a galaxy for a home page on a website. Was wondering what is the least intensive way to get star like particles for a galaxy that can be used for a website. Right now I have cubes for the particles, but I heard vertices could possibly be used. If so how would I go about using the vertices and coloring them?

You used to be able to render vertices as halos. That only worked with the old Blender Internal renderer which was completely scrapped. I miss the halos.
Anyways, there is an alternative option called Point Density, I'm not going into this here, because it renders slowly and is not well suited for your situation.
I suggest you use icospheres, or stick to the cubes if they looked good enough.


how to pin two soft body objects together? (new to blender)
i need to have an effect of the highlighted center object (softbody) to appear to "float" within the outer object (also softbody).

i want to use this later to make animations so that the "core" is generally around the center of the outer membrane.

after reading a few things, it seems like "Goal" is the way to get this to work properly with softbody physics but i'm not sure how to set the vertex group properly. HELPMEPLZ

If this  is what you want, read the following:

The goal property tells your softbody where (location) it should be and how it should look (shape resulting out of shapekeys or other modifiers). So, a good option is to just keyframe your inner mesh to be inside your outer mesh at every frame, after the outer mesh has an already baked softbody-simulation. Then, because of the keyframed locations and the goal property of your inner softbody, it should look like it tries to stay inside the outer softbody. However, because we value our sanity, we don't want to do this by hand. Blender has the option to automatically calculate a new point of origin (that small orange dot inside of every mesh) of an object based on its current shape or other properties (Object -> Set Origin), for instance trying to put it into the average middle-point of your object. So, for good results we can just have blender calculate a new point of origin for each frame based on the outer mesh's current shape and then keyframe the inner mesh to be at the location of that new point of origin. Because you can't keyframe the point of origin itself however (and because the calculation doesn't take the softbody-modifier into account), I had to create a script which does what we want:

#hello user
#please specify the desired framerange of your animation
first_frame = 1
last_frame = 250
#to run this script, have both the outer and inner mesh selected, with the outer mesh being the active object. (=> Select it last, it should have an yellow-orange outline instead of orange-red)
#then just press the "Run Script" Button in the top right corner of this text-editor.

import bpy

outer_mesh = bpy.context.object
outer_mesh.select_set(False)
inner_mesh = bpy.context.selected_objects[0]

for x in range(first_frame,last_frame+1):
    bpy.context.scene.frame_set(x)
    bpy.ops.object.select_all(action='DESELECT')
    outer_mesh.select_set(True)
    bpy.context.view_layer.objects.active = outer_mesh
    bpy.ops.object.object_duplicate_flatten_modifiers()
    t_m = bpy.context.object #(temporary_mesh)
    t_m.location        = outer_mesh.location
    t_m.rotation_euler  = outer_mesh.rotation_euler
    t_m.scale           = outer_mesh.scale
    bpy.ops.object.origin_set(type='ORIGIN_CENTER_OF_VOLUME')
    inner_mesh.location         = t_m.location
    inner_mesh.keyframe_insert(data_path = "location")
    bpy.ops.object.delete(use_global=False)

How to use:

First, you need to have an addon enabled - "Corrective Shape Keys".
To do so, go into your blender preferences, and under the tab
"Add-ons" search for its name, then just check the box left to it.

Second, get the script into your blend-file. Get to the text-editor
(one is in the "Scripting" workspace by default), click on "New" to
create an empty script and just copy-paste my script in
there.

After that is done:

Bake the softbody-simulation of your outer mesh
If not done yet, create your inner mesh. The location of it doesn't really matter here
Select your inner mesh and then your outer mesh as well (outer mesh last so it's the active object, shown by a yellow outline instead of red)
In the first lines of the script, specify the frame-range of your softbody-animation and then press the fat "Run Script" button in the top right corner. Wait for the script to finish. Now your inner mesh has the individualy calculated point-of-origin-locations of your outer softbody keyframed.

(The script uses the "Origin to Center of Mass (volume)" option, but you should be able to edit it to use the other ones; in the script change 'ORIGIN_CENTER_OF_VOLUME' to one of the following: 'ORIGIN_CENTER_OF_MASS', 'ORIGIN_CURSOR','ORIGIN_GEOMETRY', 'GEOMETRY_ORIGIN'. I didn't test this myself though.)

If not done already, give your inner mesh a softbody-modifier and bake it with your desired properties.

Obviously, in its properties check the "Goal" box to enable it, if it isn't already. You don't need to use a vertex group as a goal since that just changes how much certain vertices are affected by it.
You probably want to experiment with mass and gravity values of your mesh. Know that you can for instance set its mass to 0kg to not have it be influenced by gravity and show almost no inertia, or that you can set the gravity to 0 in the Field-Weights section, then however being able to keep the mass of your object above 0 to see effects of inertia without it falling down.
You can significantly increase the object Friction (found above its Mass) to make it look like it's in jelly instead of thin air.

Optional addition: Preventing the inner mesh to clip outside of your outer mesh. Done by using the outer mesh as a collision object:

Select your outer mesh and go into edit mode
In the Viewport Overlays dropdown menu enable "Face Orientation" (in the geometry tab). Now your meshes look all blue on the outside, and red on the inside.
Select all faces of your mesh, and then flip their normals (Mesh ->Normals ->Flip). Now the mesh should be red on the outside and blue on the inside.
Go back to object mode and give your outer mesh a collision modifier.
Bake the softbody-simulation of your inner mesh again. It should now not clip through your outer mesh in most cases. Also experiment with the "Thickness Outer" property of your collision-outer-mesh. A value of 0.1 is equal to 0.1 meters. A small value means your Softbody can in some cases actually look like it touches the surface of your outer mesh, which you probably don't want.
Once satisfied with the result, flip the normals of your outer mesh again to prevent shading- and other issues.


Converting a mesh to voxels Is it possible to convert a mesh into a voxel image?

This operation would make white voxels inside the mesh, and black voxels outside the mesh, and would either:

write a standard 3D image file format, or just a raw voxel dump; or
create a stack of 2D images in each axis

As Chebhou suggested in the comments, the 2D image stack can be achieved with dynamic painting an animated plane.

Add a plane, and animate it to pass through the main mesh
In the physics panel of the main mesh, enable Dynamic Paint and make it a brush
In the physics panel of the plane, enable Dynamic Paint and make it a canvas with these settings:

Format: Image Sequence
Dry time: 1
Dissolve time: 1

In the Dynamic Paint Output panel, click "Bake Image Sequence" to write out the plane/mesh intersection at each frame of the animation.


Blender beta 2.8: How can I insert a rim on this flat edge? I would like to double the amount of vertices along the edge, with faces, to form a kind of "rim" or "depth" here. What type of 3d operations do I need to perform in order to do that?

Select all vertices of the rim, then press E,S and move the mouse to scale inwward the new extruded faces; left click to confirm the scaling. Another method is to add a solidify modifier to the whole mesh.


How do I cycle through the camera views? When reviewing the existing cameras of a scene,
is there a way to quickly cycle through the views of all cameras?

You can try by binding the cameras to the markers. In the timeline, press M to add marker in specified frames. You can rename that frame by pressing Ctrl + M.

Assuming you have 2 cameras on viewport, then add two marker on timeline (adjust location of the marker diferently, ie : marker 1 : 1-20, marker 2 : 21-50). Now select the first camera, press Ctrl + 0 to set as active camera, make sure first marker selected, then in timeline press Ctrl + B to bind active camera to first marker.

Select the second marker, then set second camera as active again Ctrl + 0, hover the mouse on the timeline and press Ctrl + B.

Now, when you start the animation Alt + A, the camera should switch between first and second based on marker position.


Is there a way to create a pause between movements in Animation Nodes? I want to create a translation or a rotation, but with pauses every custom number of frames (Preferable with an interpolation) , like in the GIF. How can I do this?

I'm sure there are many ways to create this effect but here is one relatively simple one:

The essential node here is Mix Euler List. For translation you could use the Mix Vector List node.

The Mix Euler List node takes a list of vectors and a value between 0 and 1 (can be higher when Repeat is enabled). If the factor is 0 it will output the first element, if it's one it will output the last one. All values inbetween will result in an interpolated output. (eg. 0.1 will be something between 0° and 90° in the z-axis).

The downside of this approach is that the time intervalls are always the same, but it seems to work in your case. You can animate the time somehow to change the intervalls using the same approach but this can become messy very quickly so I didn't do it here.


Shader nodes are missing? I have blender 2.69 and I've been following a tutorial on how to make text.

The only problem is when I go to add a glossy shader in the node editor it does not exist. Neither does the shader category.

It sounds like your render engine is set to Blender Render (also known as Blender Internal or BI) in the Info panel at the top of the window.

Try setting it to Cycles instead:


Can I display text object like a mesh? I have a text (that displays ammo), which looks rather sloppy when it [text] is close to the camera. How would I convert this to a mesh that will still function as a text? I know I can convert it with Alt+C, but it stops functioning as a text object. I saw some videos, and it looks like I will have to use the UV editor with each number separate. How can I have a text display as a mesh, but still keep its function as a text object?

You can do this with the special text property only found in text objects.

In this case, I am using Always ➨ And ➨ Property

The property actuator copies another property from a different object.
I am using the cube from this question to change the properties so you can see it updating.

I have two text objects, neither one of them have been transformed into a mesh. they both retain there edibility as a text object.

In this example, the text is white. see this question to change the text color.


Showing Hierarchy / Project view during UV editing When I switch from "Default" to "UV Editing", the "View" pane on the right always disappears.

Is this intended for some reason, and if yes, for which reason?
Can I simply show it again? I haven't found any key combination for it yet.

Thank you.

Blender's UI allows us to split the window into multiple sections, each using a different editor. These window layouts are saved as a list of Screens which we can switch between and add to. The default UV editing screen does not provide an outliner, or a graph editor or a properties editor or dopesheet...

There are three places that screens can be defined, the default screens programmed into blender, the startup blend that has your settings or each blend file that you use. When you open a blend file there is a Load UI option which decides if you want to use the screens in the file you are opening or keep the screens you are currently using. You can set the default for this option in the preferences.

Every time you adjust the window layout you are altering the current screen and that adjustment is kept in the current screen and saved with the blend file. If you don't like the default screens that blender provides you can define your own screen layouts.

You define custom layouts by starting blender, create and adjust as many screens as you want and then save your startup blend. This makes them available every time you start blender, if you also disable the Load UI option in preferences and save that you will use your layouts unless you choose to use the layouts in the file as you open it.


Problem with extruding with x-axis I am extruding (Shift+E) a bone with x-mirror on.
The left bone is fine but the mirrored one is HUGE! I have no idea why this is happening. I have a pic and my .blend file is included here.

Thanks for providing the .blend file, it looks like the issue is due to the Armature being off-center. You can inspect this with the Item tab in the N menu, you generally want an armature's origin to be right at the world center for X-mirror to work.

I was able to correct the issue by translating the Armature object up on the Z axis until the feet touched the floor, and then applying the Location transform to the armature with Ctrl + A. After this, the bones in the feet extrude over X mirror as expected. This also affected the eyes for the character, so you may need to correct their location and scale after applying on the Armature.
You can also apply the 10x Scale if you like, it's a good idea to finalize that early on as it affects poses and animations, but the correct Origin via Location transform is all that's needed to fix the X-mirror.


How to I add rotation to my roller coaster track in blender? I want to rotate my track to form different track elements in this dive coaster, but the curve won't allow me to add banking/rotation.I want to achieve this type of effect, where the track rotates around the curve.

Here is my current set up. I can't complete this immelmann without banking the track out.

Select your curve, go into Edit mode. Select a control point, then press CTRL T to pivot the curve perpendicular to the curve path.


Strange shading for face of wheel? I have extruded a wheel that originally looked like this:

My modified wheel now looks like this:

As you can see, the shading looks incorrect, with strange dips instead of a flat surface. But the normals seem ok to me:

Is there a way I can fix this? Is there some sort of issue with my vertices causing problems with interpolation?

Thank you!

You need to remove these vertices. They are creating n-gons. You should strive towards quad based topology (4 sides).


Run actions with a custom button I would like to run 2 actions with a custom button. For example in edit mode I would like to run 1. Disolve edges and after that, 2. Disolve vertex.

Is there a way to create this custom button?

Thank you.

Too add custom buttons to the UI here in 3D view / Toolpanel you could something like this:

import bpy

class DissolvePanel(bpy.types.Panel):
    bl_label = "Dissolve Panel"
    bl_idname = "OBJECT_PT_hello"
    bl_space_type = 'VIEW_3D'
    bl_region_type = 'TOOLS'

    def draw(self, context):
        layout = self.layout
        col = layout.column(align=True)
        row = col.row(align=True)
        row.operator("mesh.dissolve_edges", text = "Dissolve Edges")
        row.operator("mesh.dissolve_verts", text = "Dissolve Verts")
        # invoke custom operator
        # row.operator("object.simple_operator" , text = "All")

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

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

if __name__ == "__main__":
    register()

To run dissolve edges followed by dissolve vertices you would need to define your own operator, to enable the All button uncomment this line in the above script:

# row.operator("object.simple_operator" , text = "All"):

Custom operator (from editor's templates)

import bpy

def main(context):
    bpy.ops.mesh.dissolve_edges()
    bpy.ops.mesh.dissolve_verts()

class SimpleOperator(bpy.types.Operator):
    """Tooltip"""
    bl_idname = "object.simple_operator"
    bl_label = "Simple Object Operator"

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

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

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

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

if __name__ == "__main__":
    register()
    # test call
    bpy.ops.object.simple_operator()


Python: Object custom property glitch I have the following custom prop:

class Settings(bpy.types.PropertyGroup):
    enabled = False
    state = {
        "some_data": None, # edit: this points to numpy array
        "some_other_data": None
    }
    string_prop = StringProperty(
        name='Heyyy')

Assigned to:

bpy.types.Object.my_settings = PointerProperty(type=Settings)

There are two issues I am having.

1) I cannot change the value of enabled, like so:

class Init(bpy.types.Operator):
    bl_idname = "object.init"
    bl_label = "Init"
    def execute(self, context):
        context.object.my_settings.enabled = True
        return {'FINISHED'}

2) All of the objects share and control values of state

There are no issues with blender props like the string_prop above.

I assume this is just how Blender handles custom PropertyGroups. Is there a way to make this work? I need to have information stored per object. The only other solution I can think of so far is to store an array of custom props per scene and check which one is currently active based on the id of the selected object, but that is more complicated than I would like it to be.

The boolean flag is the simple part here. As you already assumed, those PropertyGroups are designed to hold Blender Properties only. So instead of

enabled = False

you should use

enabled = BoolProperty(default = False)  // which is anyways the default

The state property is more difficult. There are no Dictionary properties available to you, but maybe you can work around your issue by using a CollectionProperty instead?

Create a class first to hold your collection, for example:

class MyCollection(PropertyGroup):
    val1 = StringProperty()
    val2 = IntProperty(min = 0, max = 999)
    // etc etc

Then, in your Settings class, reference it like this:

variableCollection = CollectionProperty(type = MyCollection)

To add items to the collection, use this in your operator code:

x = context.object.my_settings.variableCollection.add()
x.val1 = 'This works'
x.val2 = 34

Alternatively, you can also nest PropertyGroups of course. That would be

nestedProperties = PointerProperty(type = MyCollection)

That would allow you to do:

context.object.my_settings.nestedProperties.val1 = 'This is nested'
context.object.my_settings.nestedProperties.val2 = 33

It depends on your situation in terms of what works best. But keep in mind that Blender's own property types are the only ones it can store with the file.

One last way to store Python data - but this does not save that data with the file - is simply using a key - value approach on the object. You can always use something like:

x = bpy.context.object
x['myCustomKey'] = myDesiredValue

The resulting data can then even be viewed in the viewport:


Load and update enum values I have an enum in my panel and I wonder how I can populate it from a file and then refresh it when needed instead of being static as shown below.

So if I have a text file populate.txt with the below format it should give the same result as the above one so that the values in the text file will be populated in my panel when it's loaded:

populate.txt:
1.5,A,
2.4,B,
-5.2,C,

I also wonder how I can refresh the list after the panel is already drawn and the enum is drawn (read from the text file and update the list).

This is my current script:

import bpy
from bpy.types import Panel, PropertyGroup
from bpy.props import EnumProperty, PointerProperty
from bpy.types import Scene

bl_info = {
    "name": "prop",
    "description": "prop",
}

class PropVal(PropertyGroup):
    enumv = EnumProperty(
        name="my_enum_name:",
        description="my_enum_description",
        items=[ ("1.5", "A", ""),
                ("2.4", "B", ""),
                ("-5.2", "C", ""),
               ]
        )

class EnumPanel(Panel):
    bl_idname = "EnumPanel"
    bl_label = "Panel"
    bl_space_type = "VIEW_3D"
    bl_region_type = "TOOLS"
    bl_category = "Tools"

    def draw(self, context):
        layout = self.layout
        scene = context.scene
        enumval = scene.enumval
        layout.prop(enumval, "enumv")

def register():
    bpy.utils.register_module(__name__)
    bpy.types.Scene.enumval = PointerProperty(type=PropVal)

def unregister():
    bpy.utils.unregister_module(__name__)
    del bpy.types.Scene.enumval

if __name__ == "__main__":
    register()

And this is my result:

bpy.props.EnumProperty can be of static nature (as in your example) or dynamic.

bpy.props.EnumProperty(items, name="", description="", default=None, options={'ANIMATABLE'}, update=None, get=None, set=None)

A dynamic enum is one whose items are calculated when clicked on, for example.

def items_file(self, context):
    items = []
    # open file
    # construct a tuple
    # append to items
    return items

Now whenever you click the enum property in the Panel, the items will be fetched from the callback.

Note:

The default parameter must be None for dynamic enum
In the callback, the items must always be assigned to a local variable, populated and then returned (to avoid crash: and this is a documented bug)

https://docs.blender.org/api/current/bpy.props.html


How would one paint a narrow circle around the edge of a circular object in blender I need to paint a circular border onto an object in Blender 2.83. After playing with the vertex paint, I have not been able to figure this out. This should be simple, but so far have not had much success.

In general, it doesnt sound as useful to draw narrow circle in Vertex Paint. For such result you would need a lot of vertices or very specific vertices for this purpose. It would be better if you can closer describe what is your goal. Maybe you dont need to use a Vertex Paint for it.

Narrow circle you can achive by many ways ...
version 01 Material

create specific geometry and assign one material to object and create another one assigned to specific faces.

version 02 Texture

create material with Image texture

version 03 Vertex Paint

I dont know if there is a specific tool for it (Sculpt mode had some paint from curve). One way that lays on vertices position as well - you can create a Vertex Group by assigning vertices to a group ... (here displayed in Weight Paint mode)

... switch to Vertex Paint mode and use Vertex Color from Weight operator.

version 04 Paint Editor

in Image editor in 2.91 go to side panel (N) Tool - Stroke - Stroke Method - Curve, add a new and with Ctrl manually create a circle shape from curve, than press Draw


Draw straight lines for sphere/polar coordinate meshes I want to make a texture that basically splits a sphere into 8 quadrants, and has two boxes which are place on opposite poles (since these two boxes are where more of the visual detail is in an original mesh I place them in on opposing sides of the equatorial band). I prepped a texture outside of blender and uploaded and it looks roughly like this (with all lines equal width in texture file):

However when you do that the lines experience a spherical contraction/expansion depending on their position in the texture. It seems the natural way would be to draw these lines and quadrants in blender instead, but how do you draw "straight" curves onto a blender texture? There isn't any UV mapping/relief required here, just need to adjust for spherical effects on mesh

Here's a view of a sphere from directly above one of the poles:

The orange selected vertices look like a square, don't they?  that's because I used the knife tool to carefully draw "straight" lines between four of the vertices.
But let's look at the sphere from a slightly different view:

Notice how in 3d the "Square" doesn't have right angles or straight lines?
Next I added a seam around the equator of the sphere.  (It's the red line that's outlining the equator in both drawings.  In the UV editor, I selected all vertices and did a UV unwrap.  Here's what you get for two hemispheres:

Notice that the apparent square is curved?
When you want to UV uwrap a sphere and draw in a box you end up with this sort of distortion.  Rather than all of the quadrants being separate, I would settle for two hemispheres, I think.
To draw in the boxes, I would export the UV map and then import it into an editor to use as a guide layer for my texture painting.
Here is one way to do that:
In the UV editor, type ALT-N to bring up the new image menu:

Give the image a name, and then make sure you've selected all of the vertices in the sphere.
You should end up with an image that looks something like this:

Next export the image to a file by typing SHIFT-ALT-S and using the dialog box.  Take that image to your favorite drawing program and make it a layer.  Do your drawing on it.  Then, before you save the drawing, remove the layer containing the image.  That'll be your texture file.


How could I avoid UV maps when combining procedural Textures? I would like to have a transparent material like:

What I have so far is

How could I get rid of the Texture Coordinate and Mapping Nodes? (I just did this because I don't know better)

You have to keep them. UV Mapping is the default texture coordinate for image textures in Cycles, but the generated textures use generated coordinates by default:

  Texture coordinate to sample texture at; defaults to Generated texture
  coordinates if the socket is left unconnected. (http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Textures, Wave Texture)

You could simplify the setup if you pressed CtrlG to make the two nodes a group (a group looks like a single node). You can edit a group by pressing Tab.


Textures are gray after Blender crash I spent about three hours painting textures on to a creature I sculpted and decided that I wanted to add some hair to it. I go into edit mode and pick the circle select tool to select the portion of the head that I want to add hair to. I press the F key because that's what I thought was the shortcut for adjusting the radius of the select tool and then suddenly Blender just crashes. Now every time I open up the saved file all of the textures images are just gray. There has got to be a way to retrieve the old textures right?

Alright never mind I've figured out that Blender doesn't actually save the textures to anywhere in your computer once you make them so I guess I'm just gonna have to bite the bullet and start all over :/


Zoom with camera in an animation Is it possible to animate zooming in on an object, or is moving the object the only option available to get it to appear closer to the camera?

You can animate Focal length in camera properties panel

Go to the first frame of you animation and insert a keyframe on the focal length, right click over the focal length and select Insert Keyframe value or press I)

Move to a different frame, change the focal length value and insert another keyframe.

Animation example


How can i attach array objects to a curve while animating? i made an object and then applied the array modifier, then i attached it to a curve with the curve modifier, and it looks good but if i move the curve ( i need to animate it ) the spheres moves weird, apart from the curve...is there any way to fix this? :(

Thanks in regard.

parent the spheres to the curve so when you move the curve the sphere will follow
animate the curve using shape key


Where's Offset Edge Slide in Blender 2.80 menus? In order to learn Blender I'm thoroughly reading the docs and I've come across Offset Edge Slide, which is barely documented but seems really useful to add detail in a face.

Problem is, I cannot find it in the menus of Blender 2.80. Granted I can use the shortcut or the F3 search tool, but it'd be great to know whether it appears in a menu.

You can find the Offset Edge Loop Cut/Slide in the toolbar. You need to press and hold your left mouse button on the Loop Cut icon and then select the Offset Edge Loop Cut from the menu. The naming is a bit inconsistent, the menu entry says Cut and the description, documentation and last operation panel call it Slide.


Dyntopo workflow + Dyntopo vs. Multires? I've checked the Dyntopo option on sculpt mode and now my mesh is with triangles. Is there any way to revert a mesh to the way it was before clicking on Dyntopo?

Is it better to sculpt with Dyntopo or with Multires? Which of the two gives better higher quality results?

There's a great tutorial on youtube where the person first demonstrates the dyntopo sculpting, then does the retopology, and then adds an multi-resolution modifier on the retopology in order to give it a more detailed sculpt. Now is it necessary to have this workflow? Or is it more convenient to first have your high detailed sculpt, then retopology and after that, bake normals from high to low poly?

Link to the video
https://www.youtube.com/watch?v=k9NAv_q_wfU

Something to be aware of with workflows is there isn't necessarily an objectively 'better' or 'worse' workflow. There are a number of ways to get to the same (or at least very similar) end result, so the workflow you use should be the one that fits you best, and lets you work in a way you like while giving you the best results in the least amount of time.

Now to answer your questions, there is no way to revert back to your mesh once you have started to sculpt with Dyntopo. That's known as a destructive process, as it permanently changes the structure of your mesh. However, if you have just clicked the button and haven't actually started sculpting, you may be able to use the tris to quads tool in edit mode. Select all of your faces, then press Alt+J and it will try and join the triangles into quads. Depending on your mesh this may have varying levels of success.

Dyntopo vs. Multiresolution is a subjective question. There are uses for each tool, and situations where one is better than the other. I discussed this in another question here.

To answer your final question (and just for future reference you should try to limit your questions per post to just one), the workflow used on the video isn't 'necessary' but may be the best way to achieve the best results. As for convenience, if it works better for you, then do it that way. Part of creating digital art is having fun and being able to express yourself, so you don't want to have a workflow where you're constantly fighting with your tools. Find what works best and stick with it.


Outliner / properties etc dissapeared This happened to me a couple times before, where i accidently click a key combination and it hides the outliner + other panels
Pressing CTRL UP / DOWN / LEFT / RIGHT does not bring anything back for me.
And restarting blender doesn't help..

What you have basically done is destroyed all areas except the 3-D view editor. Thankfully, you can easily bring them back by dragging the corners of the area to split it, then changing the new area to what you need (see the blender manual on “User interface”), or like one of the commenters said, you can open a new blend file, then open this one without loading its UI.


Is there a way to batch render multiple scenes? I have animations in 4 different scenes in my Blender file that I would like to batch render.

Is there a way to batch render all the scenes, instead of only the scene I am working in?

Yes, you can use

blender -b file_name.blend -x 1 -o //file -F AVI_JPEG -s 001 -e 250 -S scene_name -a

-b: tells blender to run in background

-x: is used to add an extension to the movie

-o: sets the directory + Target image file

-F: sets the output image type

-s: 001 -e 250 -a set the start frame to 001 and end frame to 250. Important: You can use -s or -e, but if they're not in order, they'll not work!

-S: sets the scene name to render (spaces in the name are not supported)

-a: renders the animation

The above command should render whatever scene name you specify to -S. To avoid certain problems where similar files can get overwritten, its best to use a script to render each scene on a different line. For example:

batch_render.sh / .bat

blender -b file_name.blend -x 1 -S scene_name001 -o //file -F AVI_JPEG -s 1 -e 250 -a
blender -b file_name.blend -x 1 -S scene_name002 -o //file -F AVI_JPEG -s 1 -e 250 -a

You could also do this in one command - as follows:

blender -b file_name.blend -x 1 \
    -S scene_name001 -o //file -F AVI_JPEG -s 1 -e 250 -a \
    -S scene_name002 -o //file -F AVI_JPEG -s 1 -e 250 -a

However launching blender isn't typically a bottleneck, so it may end up being less trouble to run a new blender instance for each scene.

To get a better understanding of the parameters, you can see the wiki.


Why can't I use put Render Layers in a node group? (Compositor) When I try to create a node group that includes the Render Layers node, I get an error saying it can't create a group with that node. Is there a reason why or some way around it? I don't want to have to plug the input into every single copy of my node group.

Probably because that is a group in its own. A render group. And so Blender just will not let you do that.


How can I duplicate show/hide conditions of objects while duplicating collection? As you can see in the above picture, duplicating a collection did not be applied to show/hide condition but rendering condition.

If I duplicate a collection consisting of objects with very complex hierarchy, it's very hard to manage each show/hide conditions one by one.

So I want duplicate a collection including show/hide condions.

How can I do this?

The eye icon hides objects temporarily. To hide objects globally, use the screen icon.
You can enable it from the outliner "funnel" menu.
Temporarily Hide objects (Eye icon)
Resets when a collection is enabled, duplicated or linked to another scene
Globally disable objects (Screen icon  )
Stays on when collection is enabled, duplicated or linked


What is this anomaly when I'm trying to sculpt and how do I fix it? The mesh derived from a cylinder and I've put Mirror, Bevel and Subsurf modifiers on it before sculpting.

EDIT: Ok, so flood filling seemed to have fixed the weird stretching. But the brushes don't work on the top side of the mesh.. I can sculpt the sides just fine. Note: I've scaled the mesh down on the Z axis but I've applied the scaling.
Here's the project(excuse the messiness, I've been experimenting a bit on that project):

Problem Breakdown

As Duarte already assumed, your mesh has uneven density. This is a problem for all sculpting methods, since the algorithms get confused about which edges to subdivide.

However, there is a possibility to fix this by using Dynamic Topology and relative detail.

You also want to use a "sharp brush" Texture in form of a simple white png with a black outline (image below).

Fixing the Topology and smoothing the Surface

In Sculpt mode, activate Dyntopo, switch from "Constant Detail" to "Relative Detail", change the Detail Value to 4.0 and activate "Smooth Shading".
While you are here, also deactivate all settings in the Symetry/Lock section below (image below).

Then, select the "Clay Strips" Brush, lower its strenght to 0.1 and lock it to "Area Plane".
Under "Texture", add a new texture, load the "sharp brush" texture from above and activate "rake" and "random" (image below).

The setup is now complete and you can start fixing the topology. Sculpt only with a small portion on the handle and the pommel.
When switching to Edit Mode, your topology should look more or less like this:

Back in Sculpt Mode, switch from "Relative Detail" to "Constant Detail", change the Resolution by using the "Sample" button to sample it from the newly sculpted portion of the mesh.
Next, hit "Detail Flood Fill" and then "Optimize" (image below).

Switch back from "Constant Detail" to "Relative Detail", change the Detail to 8.00, then select the "Smooth Brush" and select the "sharp brush" texture from above.

Turn on Matcap and select preferably a glossy one to highlight distortions.
Turn on "Rake" and "Random", then start smoothing the whole mesh. Be careful around the sharp edges, turn down the brush strenght to 0.2, if necessary.
Work your way around the mesh until everything looks smooth (image below).

Your mesh shold now be fixed and you can start to add the details. You might want to play with the Detail settings under Dynamic Topology to get the detail level you want to see in your result.


How to co-simulate between Blender and a system modeling tool? Supplementing the Blender simulator with other tools can enable creating animations not otherwise possible. How can another simulator be co-simulated with Blender?

Blender 2.8 can co-simulate with simulation tools that generate FMUs (see https://fmi-standard.org/ ) using the FMPY library. Most versions of Modelica will create FMUs. A complete list of simulation tools that create FMUs is found at https://fmi-standard.org/tools/ .
Installation
To co-simulate with an FMU, the library FMPY (https://github.com/CATIA-Systems/FMPy ) should be installed. This procedure will work on Blender 2.8 and later.

Using the python version with Blender, at the command prompt enter 'python -m pip -install FMPY'
Is FMPY installs successfully, the final message should say something like 'Successfully installed ...'
Verify installation by opening Blender and typing 'import fmpy' into the console. If it successfully imports, then the library was installed.
Verify an FMU can be imported by downloading an FMU and loading.
Download 'rectifier.fmu' from https://github.com/modelica/fmi-cross-check/blob/master/fmus/2.0/cs/win32/Dymola/2019FD01/Rectifier/Rectifier.fmu
Enter the following python commands:

from fmpy import *
fmu = 'path-to-fmu\\rectifier.fmu'
dump(fmu)

If a summary of the fmu prints out, then the module is working an able to import fmu's.

Usage
To co-simulate, a python script can be used with animation nodes to initialize and co-simulate. The fmu_simulate command can be used to set the state,set inputs, step in time, and get the outputs and new state. See https://github.com/CATIA-Systems/FMPy/blob/master/fmpy/examples/coupled_clutches.py for an example of this command.


Mesh and Bones Stretch After Rigging I'm new to blender and just started modeling. I made (what I think) is a cool little viking. Now I'm trying to rig him up, and I have aligned the bones and painted weights. But for some reason, when I rotate/move any limb, the entire bone and mesh stretch with it. I don't know what's causing this. Any solutions?

After redoing it, I realized I forgot to set the lower bones as a child of the spine. In short, I'm pretty sure the problem stemmed from having two root objects.


Rigid body - Fall in fron of camera / loopable I'm doing a footage with camera flying through scene, and objects are falling from top, sticking (and moving backwards) at ground plane.

Since footage has to be about a 2-3 minutes, I'd like to render only a little portion and loop it.

I believe the easiest way would be to create some particles, convert them into objects, apply rigid body modifier to all of them, and finally bake them into keyframes.

However, I don't need them to fall all at once. I need them to fall in front of camera as far the camera move towards scene.
Even more - I'd like to loop the animation, so object distribution has to be semi-random.

Problem solved.
Initially wrong approach was chosen.

I installed a brilliant Animation Nodes addon, which did the job perfectly.


How to multiply vector by scalar in material nodes? I'd like to do arbitrary vector math with the camera position, shading point, and possibly other points. As a test case (blend file), suppose I want to make a shader that will draw a simple gradient based on distance from the shading point to the camera in one of two ways.

The two methods of getting the desired distance are:

"Camera Data.View Distance" as the control.
Computing the length of a vector equal to the unit vector given by "Camera Data.View Vector" multiplied by the scalar "Camera Data.View Distance". This is the issue.

The node setup looks like this:

What can I put in the "Vec * Scalar?" frame so that the material will look the same no matter how the "Selector" Mix Shader Factor is set?

You should think more about the data types. If you want vector*scalar, use MixRGB set to Multiply (an RGB color has three components, like a vector), and not a simple scalar math node. See my answer to this question for an example of vector*scalar: Scale Texture with a Value-/Math-Node

Also your selector seems to be a Mix Shader (I didn't download your file, but it has shader inputs and outputs), and you should not put scalars into a node that expects shaders.

EDIT Just for completeness: There are also other ways of doing vector*scalar, like using a vector Mapping node and setting the same X, Y, Z Scale, or separating the vector components with a Separate XYZ and multiplying the three scalar coordinates individually, and merging them again with Combine XYZ.


How to make camera rotate around object and take pictures from different angles? Please give me a script example of how to make camera rotate around object and take pictures from different angles

You don't need a script.

1) Set up your scene.

2) Position your camera for the first image.

3) Set a keyframe for the camera location and rotation.

4) Move to the next frame in the timeline.

5) Position the camera for the next image.

6) Set key frames as before.

7) Repeat until you have set up all the pictures you need.

8) In the animation settings, set it to create separate images (eg PNG).

9) Set the start and end frame numbers for the animation.

10) Start rendering the animation.  Blender will then create a still image for each of the frames you have set up.


Why is my rigidbody broken? Both rigid bodies have mesh collisions.

For this kind of shape (the zero) using convex hull seems to work better than using mesh.
From the manual page on collisions:

Convex Hull
A mesh-like surface encompassing (e.g. shrink-wrapped over) all
vertices (best results with fewer vertices). A convex approximation of
the object, which has good performance and stability.

Mesh
Mesh consisting of triangles only, allowing for more detailed interactions than convex hulls. Allows simulating concave objects, but
is rather slow and unstable.

In your case, using convex hull stabilizes things much more.

Here is the difference between mesh and convex hull in your case:
Mesh:

Convex Hull:


Constant Interpolation when Auto keying I would like to animate using only constant interpolation. I know that I can change the interpolation with "T" or going to Timeline<Key<Interpolation, but every time I add a new keyframe the interpolation is Bezier.
How can I make it so every new frame is added with linear interpolation so that I don't need to keep setting new frames interpolation type manually?
Thank you.

I found the solution in Blender Prefences shown below:


How can I create a shortcut to Shadeless? I would like to create a shortcut to Shadeless.
Is it possible? or is scripting required for something like that?

I have made an addon for you because I already created it to enable similar custom shortcuts (Show Only Render and Show Edges).

Copy the addon file
https://raw.githubusercontent.com/jendabek/blender_misc/master/custom_shortcuts_enable.py
to Blender\2.X\scripts\addons
Enable it in User Preferences CtrlAltU > Addons, it is called Custom Shortcuts Enable.
Create a new shortcut in the User Preferences > Input > Screen section and insert the screen.trigger_shadeless as the operator name:

Set some key combination.

That shortcut should trigger shadeless on / off on the selected material.


How to enable other passes on background layer? Here's what my compositor shows when I have shadow pass enabled. How do I enable it for the background layer as well?

In the View Layer Properties tab you can see all the render passes availables.


How to use Shader Editor for Grease Pencil Strokes and Fills It seems that you can't use the shader editor (formally the node editor) to edit stroke and fills for the grease pencil. Am I mistaken, is there a way to edit these strokes and fills as you would a regular material?

You can't, found this on the official documentation.

  The shader is not yet a BSDF capable shader to interact with Blender lights and can only be setting up on the Material Properties panel (it is not a shader node).
  https://docs.blender.org/manual/en/latest/grease_pencil/materials/grease_pencil_shader.html

Hope they add it soon.


Creating a half tone like pattern with cylinders using Geometry Nodes I want to create a pattern consisting of different cylinders.
I definitely could create them row by row, but I am also planing to animate them - getting bigger and smaller and so on.
In the next step they should also react (collision).
Is it possible with Geonodes?
I tried but I had to make them real. (using 2.93 or will it be added in future maybe?)
I watched like "every" tutorial to get a clue how I could achieve it. found some but not on 2.93 or 2.92 and their nodes look way different, and every time I try some things it freezes Blender.
My workstation should be good enough, I think I just use them wrong.
I just duplicated these to get more rows, I need way more.

Blender 2.92.0. Let's start with a subdivided plane.

In edit mode select all faces then in top left corner click Face->Poke Faces

Then Face->Tris to Quads

I added a subdivided cube, because in my opinion it looked nicer than cylinders, and an empty to control the scale for animation purposes.

And I did this node setup.

From left:

Attribute Fill node sets scale on every instance (vertex) to 1.
Attribute Vector Math multiplies position of each instance by vector (1,0,0) and saves result to a custom positionX attribute, so positionX contains only (X,0,0) of each instance.
Attribute Vector Math calculates distance between positionX and (X,0,0) vector where X is X part of Empty location. Result of this operation is saved as custom attribute distanceX.
Attribute Vector Math divides scale of each instance (it's always set to 1 by Attribute Fill node above, but you can instead of it use Attribute Randomize to make initial scale of every instance a little different) by distanceX. This works fine for most cases, but when empty is really close to an instance we end up with extremely large scales (for example 1/0.001 = 1000)
Attribute Math is used to control how wide the "wave" of large instances there are. The larger the float value the smaller the "wave".
Attribute Color Ramp is placed to cut the scale so it never exceeds 1. It allows you also to control how small the far away instances should be. (just change color from black to dark gray)

And this is the final result.

You can animate the scales of the instanced objects by moving the empty so the animation is really easy.


How to Solve the Mirror Modifier Error In Blender 2.82? How to Solve the Mirror Modifier Error In Blender 2.82 ?

Hi guys I am now making the Zeta Gundam and I was creating a left leg of it.I was planning to make right leg with mirror modifier.So I moved all of origins in left leg into the cursor that's place at world origin to make sure that if i add mirror modifier, it will flip to became a right leg. But it doesn't work as I think. It only flip the foot to the right place but the rest parts of leg are flip into unusual sides. I changed the X,Y,Z in modifier but still doesn't work.As you can see in image,

leg flipped to top.

thigh and knee joint flipped to aside but

only foot flipped into right place.

Any idea or suggest to filp normally? Thank for the answer.

Press Ctrl + A to apply rotation, your rotations are wrong.


Wave Texture: How can I have even bands proportions and distributions? So I have been trying to make this semicircle with lines radiating from one point using wave texture node.
The problem is that the lines are not equally distributed and are stretched and compressed as they get closer to the x and y axes respectively, making them having uneven thickness.

I don't know though if the Normal mapping type has anything to do with these weird observations, but so far it is the only method that gives results close to what I want.

I would very much appreciate sharing another approach or a fix to this situation.
thanks...

Use a gradient texture in Radial Mode.

Same idea with the wave texture:


Blender file Dialogue window always hides suggested folders, how to show by default? Whenever I open up the file dialogue, to find an image, install an addon etc... Blender always has my suggested folders hidden, and i have to manually grab pane splitter, dragging down the bottom one to show all the folders.

Is there anyway to manually set this so it DOESNT hide these folders, or always allows, say, 400px of space above?

Heres what it initially gives me:

Heres what I want it to be (after i manually drag down the pane)

I'm on MacOS 10.12.6 running Blender 2.79

I have tested this on Windows but I hope it works on Mac as well.
To modify Open File dialog settings, you need open new Blend, set the dialog panels to desired positions and save the current Blend as a Startup File:

Start the Blender so you have empty (default) project opened

Open the Open File dialog by File > Open (or F1)

Resize your panels as you wish

Close the dialog so you return to Blender's workspace

Press Ctrl+U to Save Startup File - this saves the current settings as a default for any new projects (together with your panel)
(this trick also works for remembering startup window configuration for multiple displays)

Note: If you want to use F1 shortcut for opening a file, you need to configure this dialog as well, it's settings is independent from File -> Open dialog.
To save settings of the Install Add-on dialog, don't open the dialog from User Preferences, but use Spacebar & type "Install" > hit Install Add-on from File. It will use Open File dialog settings this way.


Parenting an object to a bone displaces it I'm trying to connect the arm (which is a separate object) to a bone.

Here's what I'm doing:

select the armature
go into [pose mode]
select the arm
select the bone
[make parent]
[bone]

it ends up looking like this (zoomed out a lot):

what am I doing wrong?

I didn't understand the way the hierarchy works and transforms etc... now I do. I had to "apply" the transformation of the objects.


swap one material with another is there a way to swap a material with another?

let`s say I have materials yellow, and gold, what I want is, to replace the material yellow, with the material gold, so all the objects that have the material yellow on it, to have the material gold instead.

In other words, material yellow to become material gold, and delete material yellow.

Go to the Outliner. At the top click the button and switch to Blender File. Still in the Outliner choose Materials, twirl it open with the little triangle to the left. You will now see all the materials in the file in a list. Now you just need to select the offending materials, right click it, choose Remap Users. And from the list choose the correct material. Now they will all link to the same correct material.


will stopping an animation render mid-way still save the progress? I'm trying to render an animation in blender and midway, I want to stop the animation and I'm wondering if it still renders the frames in the mp4 file and saves?

Answer: no.
We generally make our animation renders as a PNG or EXR image sequence, and then we transform the image sequence in the final .mp4 (this latter render is very fast).
The advantages are that you can stop the render in midway, if there's a crash or an electric failure you don't loose the previous computing, you store maximum uncompressed quality, you can store layers for later compositing, and so on.


Scaling works differently in GUI and from script I am trying to scale a group of vertices. I changed the pivot point to 3D cursor. I placed the cursor on of the corners of the square. I want to scale the vertices about this corner. When done in GUI, using the shortcut s+x (to scale along x direction) and a factor of 0.3, I get the following desired result.

When I try the same from a script, by placing the 3D cursor on the same corner and then do a bpy.ops.transform.resize(value=(0.3, 0.3, 0.3)) (or (0.3,0,0)), I get the result of what would have been if the cursor was at the centre (median) of the line as shown in the second figure.

Can someone tell why this difference?

It's a context issue and you need to Override the Context

The pivot point is a member of the 3D_VIEW space.  In code below would be area.spaces.active.pivot_point  Example of overriding the context which "fools" the operator into thinking it is being run from the 3D view, not the text editor.

import bpy
context = bpy.context
override = context.copy() # dictionary of context

for area in context.screen.areas:
    if area.type == 'VIEW_3D':
        override["area"] = area
        override["space_data"] = area.spaces.active
        override["region"] = area.regions[-1] # rule of thumb r.type == 'WINDOW'
        break

bpy.ops.transform.resize(override,
                         value=(0.3, 1, 1),
                         constraint_axis=(True, False, False))


BGE: Getting rigged door mesh to update for collisions I set off to create a rigged door, thinking a single mesh object with moving parts should be easier to manage than having each part as a separate object - especially once there are a large number of doors in a level and some doors have many animated parts.

If the physics calculations turn out to be too slow I will reconsider this approach, but I want to test it out. Besides, knowing how to update the physics mesh will be useful for many other situations too.

Here is my test scene with a player object (Character collision type) that falls onto a trap door mesh object. Collision with the mesh object triggers a Message to its parent armature and an Action Actuator plays the rigged animation of the door opening. This part is working fine.

From what I've read, when a mesh deforms, if collisions are required it must be updated using reinstancePhysicsMesh()

Official documentation on it is here, but to be honest I don't understand all of what's written there. For example, it seems that arguments are optional, but are they optional in my case? Not sure.

I tried writing a simple script for this, but I believe my syntax is wrong because the player object does not fall through the trap door, and as you can see from the physics debugging visualization, the physics mesh is not updating.

Logic:

Script:

import bge
cont = bge.logic.getCurrentController()
own = cont.owner

char_coll = cont.sensors["CharColl"]

if char_coll.positive:
    print("Character collision detected")
    own.reinstancePhysicsMesh()

After some consideration, I've decided that my original approach is not a good way to make door rigs, even if reinstancePhysicsMesh() can be made to work for this use.

I am posting a partial answer, with what I believe to be a better way to make rigged doors. This solution assumes that armature deform is not a requirement for the doors.

The answer is partial because it does not address how to use reinstancePhysicsMesh(), but maybe someone else can post an answer addressing that aspect, or maybe it should be a separate question.

Essentially, all I did is separate the mesh into 2 objects, remove the vertex groups, and parent the entire door objects again from Pose Mode. No armature deformation, since the door panels are completely rigid.

I realize this contradicts my original statement about wanting a single mesh, but I've realized 2 things that make managing doors with multiple parts easier:

If the parent armature of the door and the door mesh objects each have their origins at the same location it's easier to keep track of them. Grouping them together would also be a good idea, of course.
Writing the game logic on a single mesh object and then separating its parts can save you from having to write duplicate logic.

These things become obvious once thought through and tried. Together they eliminate any reason for an aversion to multi-mesh door rigs. Managing large numbers of doors each with multiple mesh objects is actually not so difficult to organize. This brings me to a third point:

Texturing as a single mesh and then separating into multiple mesh objects can simplify production too.

tl;dr I believe this approach is totally sufficient unless you have a door made of meat or something, in which case we're back to needing reinstancePhysicsMesh(). For rigid doors, this covers it.


Align multiple objects on same plan I was looking for a quick way to align multiple objects on the same plan.
I made an architecture with lots of cleats and need to rotate all of them so they are aligned straight. Aligning them one by one would take way too much time..

I'd like to get from here :

to here :

Rotation was reset to 0 in edit mode while modeling so the default rotate position is the position they are currently in..

Does anybody have a solution ? :)

General Idea

The built-in function mathutils.geometry.box_fit_2d could help you with that.

from left to right: original, without correction, with correction

box_fit_2d is a function that calculates the angle by which two-dimensional coordinates have to be rotated to best fit an axis-aligned rectangle.

For every object you take a list of all vertices and project them to a plane perpendicular to the axis around which you want to rotate. Then you convert these projected vertices' coordinates, which are still three-dimensional, into two-dimensional coordinates so that box_fit_2d accepts them. If you rotate around one of the main axes then this is simply a matter of dropping one of the coordinates. E.g. vertex [x, y, z] becomes [y, z] when you rotate around the x axis.

This two-dimensional vector is passed to the function which returns the angle that you can use to rotate the object.

As far as I'm aware, box_fit_2d doesn't do checks about which side is longer. So, if you want the bars to point in the same direction, you have to do an additional check, e.g. whether the range of y values of the rotated object's vertices is higher than the range of z values, like it's the case for the box in front in the image in the middle. And if that's the case increase the rotation angle by 90 degrees.

Implementation

I generally use the add-on Animation Nodes for this kind of calculation, but this method could be done with a Python script in Blender without any additional tools.

The naïve Animation Nodes node tree that was used to generate the middle image is pictured below. Note that you have to would have to list the module mathutils in the advanced node settings for the expression node, if you want to use the module in an expression.

The correction that would increase the rotational angle by another 90 degrees when the object is horizontally aligned was wired like below:


how to paint on sculpts without retopo for idealization? I am trying paint in eye brows and eye shadow without having to retopo because  I just want to see the idealization of the model/sculpt. Is this possible or maybe there is a better way to do this that im not thinking about any advice would be awesome!

If you don't want to do any texturing, you can use vertex paint. It's like painting on the surface of your 3D model. It's not the most advisable method of coloring, texturing usually is, but if you don't want to have to deal with retopo and just want an idea of what your colors are going to be, vertex painting is an great tool. I'm not that great at teaching, but I do have a video that might help:

Vertex Paint Workflow in Blender 2.8

Hope I somewhat answered your question :)


Topology Circluar Quads I can't seem to wrap my head around on how to make a cricle from a square in a nondestructive way.

The result I'm trying to achieve is this:

Starting from this:

I've tried inserting a face but it won't let me slide it anywhere from it's starting point. I've also tried extruding and then scaling it in but the shading gets all weird. I just want to add the extra edges and make it more like a circle.

Any help would be appricated!

Inset the faces with I, then use To Sphere tool (Shift+Alt+S,1) to make the edge loops round.

Next enable the proportional editing (with a Sphere falloff type) and transform the middle vertex upwards (G,Z). Finally extrude the four middle faces upwards (E,Z).


UV unwrap spiral texture I would like to have spiral shape texture on the cylinder. How to UV map the model and how to make a texture which wraps around the cylinder ?

First, unwrap your cylinder -- Edit Mode; Select all (A); Unwrap (U) -- with a cylindrical projection. Use a texture that joins the top and the bottom seamlessly.

Then select the bottom row in the UV window (B and make a rectangle) and shear it by grabbing to a side (G).

Voilà.


Scripting more hair keys than six I need to write a script that allows me to bend a hair to exact coordinates. I've been using -

bpy.context.object.particle_systems[0].particles[0].hair_keys[0].co = (x,y,z)

but particles[0] seems to only allow 0-5 hair_keys.

Is there anyway to script an increase in the number of hair_keys? Any sample code would be greatly appreciated.

Thanks!

You can change the "segment" to get a higher number of "hair_keys".

In script, you can use bpy.data.particles["ParticleSettings"].hair_step = n,
where n is the segment number, which is len(hair_keys) - 1


How can I make a shadow disappear in Cycles? I'm doing an acetate animation effect: Text on 'transparent plastic' lays down on a white surface, and as the text lays down its shadow, from a sun lamp, plays on the white surface.

All achieved. A subdivided plane, cloth sim, UV text, the usual diff/transparency/factor node set up.

The problem is I want there to be no residual shadow once the text has hit the white base plane. And the cloth sim won't let me hit the base plane, due to the cloth sim tolerances. It floats just above the base plane.

So I'm looking for a way to 'fade' this thin drop-shadow away in the compositor.

I can't change the world surface node colour (which gives the shadow colour) from black to white: that affects the ambient light of the entire scene. I can't raise or lower the sun lamp strength for the same reason.

I guess I'm looking for more info on the shadow pass... I'm not sure how to use it in this example. I'm looking for a parameter that allows me to fade out the lamp's ability to cast a shadow... or to fade out the ability of the base plane to receive a shadow. Any tips?

Blend file: https://dl.dropboxusercontent.com/u/13900881/flop2.blend

This affects the object casting the sadow not the lamp.

A slightly simpler solution exists: you can set the object you want not to cast shadows not to interact with shadow rays. You can then render your animation with and without the shadow. Finally you mix the two animations to control the fading.

The parameters are in Object > Ray Visibility > Shadow. See this qustion for more info about this:

How to make a cycles light emisson object invisible to the camera?


Flames show in viewport but not in render I've been trying to render out a simple fire/smoke sim. Everything looks fine in viewport but when rendered the flames do not show. I'm using cycles with optix in blender 2.83 steam release, on windows 10.

Viewport

I have tried changing shader setups just to see the same thing, that the flame and temperature volume info seems to look fine in viewport, but be abscent from render, changing number of light bounces, and volumes step rates and max steps.

I found the solution, turns out my particle emitter was disabled in render, which disabled rendering fire.

This is weird because smoke is still rendered and volume passes are all black, and disabling the emitter in viewport does not affect anything.


How to Tell if Object is No Longer in Camera View (bpy) I'm wondering what's the most efficient way to detect whether or not an object is entirely within the current camera's field of view. For example, if I'd want to allow variations in camera rotation until the object is at the edge of the field of view, so to speak.

Is there an easy way to do this?

Thanks!

Yes there's an easy way, go to the BGE Documentation to look for more information. Since you dont specified if you are using bpy or bge i go for bge.

from bge import logic
cont = logic.getCurrentController()
cam = cont.owner

# Test point [0.0, 0.0, 0.0]
if (cam.pointInsideFrustum([0.0, 0.0, 0.0])):
  # Point is inside frustum !
  # Do something useful !
else:
  # Box is outside the frustum !


Frame rate drops in video editor Hey everyone! So im a little confused here and im extremely new to the world of video editing. My brain is hurting but it feels really rewarding. Anyways, my first problem that I am having is in video editing mode (obviously) with the video playback. I believe it is called video sequence editor. For the first three or so seconds, it runs at 55 - 60 fps (even though the video is at 30) and then it almost starts playing in slow motion at 2.50 - 5 fps!! What the real kicker for me is, the video is at 30 frames per second, but it actually looks fully up to speed when it reads 60 fps. Anything below that, it plays almost in slow motion. Actually, very slowly.

I have manually set the fps to 30, tried again without manually setting it and still no luck.

Thanks all!

Why Is It Slow?

1. The V.S.E. , unlike your typical video editor, is frame dependent. Most others rely on time. This is why you must set the correct fps in the properties panel. Which you did, great!
Second Blender has to "cache" those frames. So when you play it through it takes each frame and saves a temporary version of it. But, the farther you go the more it will struggle to cache it, meaning you may have to play through it a couple times for it to work.
OR
2. You've reached the maximum cache...

Ok... So how do I fix that?

To change max cache press CTRL+ALT+U to bring up user preferences. Head over to the last tab labeled System and scroll down to the bottom where you'll see Sequencer/Clip:Editor. Go ahead and set that to your RAM. You can go even higher if you want; I can't guarantee what will happen. Make sure to save your user settings.

Other Things You Can Try:
1. Use that handy-dandy proxy setting. Right click on your video, and set that proxy! Then you'll have to go down and press Rebuild Proxy and Timecode Indices
Use frame dropping or Av-sync. Use it, it does what it says. Drops frames to run faster.

Last Thing

Not entirely sure why it says it runs at 60 fps (its not), but I suppose its just saying hey, this is how fast I can run.
Also know that this will NOT affect the final render in any way, only in the viewport.


Surface materials stretching on mesh I originally asked this question on Quixel's support forum, but the answer just said "What you're missing is conflating UVs with subdivisions. UVs are independent of subdivisions. You'll need to edit your UV mapping for this plane instead of editing its subdivisions." When I asked if he could elaborate on that, I never got a response. So I figured I'd come to the pros.
My understanding after watching tutorials and trying my best to follow them is this: I make a mesh, if I want detail on this mesh, I need high verts/faces. I then UV Map the mesh with those faces, and this gives me the detail for my textures and materials.
I've added a pic of the road I made to show the issue I'm having. 1k faces is a bit much in my opinion but I wanted to vertex paint so I needed enough verts to accomplish that.
When I drag and drop my materials to the mesh in UE4(and even in Quixel/Substance apps) it looks awful.
What am I missing about my UVs and what am I doing wrong? I follow the tutorials step by step, and they're not doing anything that I haven't done.
Here is my Quixel question as well:
No matter how many verts and faces I have, when i add Quixel or Substance  materials to my meshes which have UV maps, I get one very stretched tile. If I bump up to 6 in tiling, it does less stretching, but looks awful.
If i scale the mesh in Y in UE4, I can get it small and it looks okay, but then I would have to be tiling in the same asset over and over, and for performance that is bad.
I've went from 2K to 4K, same issue.
I'm using a Blended Material with 3 megascans assets.

Ok, here's what you have to do. Get rid of the existing UV map. Go to object properties, UV maps, select the map and click the minus button. See below:

Then, go to object mode, press ctrl + A and select apply scale. Then, go back to edit mode smart unwrap again, but make sure to untick the "stretch to bounds box.

You should be good to go from there.
However, since all you're unwrapping is a flat plane, you should be fine to just use "unwrap" instead of "smart unwrap". You will still need to remove the existing map though, as smart unwraps tend to "stick around".
EDIT - Here is a .blend file showing what the UV unwrap should look like to avoid stretching, as well as the node setup for both the image texture and the generated one. I hope this helps to clarify that the ability to texture has nothing to do with subdivisions (in most cases). If you want the image tiled, look at the scale section of the Mapping node.
Here is the file -


can't subdivide face I can't subdivide the front face in a model. I want to put more materials on the model, I used a Boolean modifier, and caused triangle faces. I don't know if that makes any difference but I need to subdivide it so badly it's getting on my nerves.

Thank you

Here's a picture of the model

Boolean operations are a convenient way to transform geometry, but they can leave behind other problems. In this case you've generated a big and ugly n-gon (a polygon with more than 4 vertices). Ngons are notorious for deforming in unpredictable or undesirable ways. In general is preferable to work with quads.

Start by getting rid of the ngon

select the edge loop by pressing Alt while slecting an edge.

Press the space bar and type grid fill (or press CtrlF and select grid fill)

And play with the grid fill settings until you get something that does look like a grid.


How to activate pose mode? Downloaded a rigged model and want to move the bones. How do I enter the pose mode?

Select the Armature in Object Mode and switch to Pose Mode by pressing  Ctrl + Tab [0]
[0] https://en.wikibooks.org/wiki/Blender_3D:_Noob_to_Pro/Bones


simulate gold foil sticker on glass wise Blender-World folks,

I'd like to do a proper simulation of gold foil stickers on glasses (like a decorated long-drink glass).

I am pretty sure about pictures with transparency and stuff that works well on other materials, but blender's glass-material seems to have a mind of its own...

Anyone around who has some hints?
That would be awfully nice, thank you so much in advance!

Pls have a nice day.

The setup is quite simple.
UV unwrap your object and use the texture's alpha channel to determine the mix between a glossy shader and the glass shader.

(click on the image to enlarge)

If your texture image is black and white but does not have an alpha channel then use the color to determine the mix between the two shaders:


How to transform from selected vertices to circle? I am following a tutorial in youtube to model a perfume bottle.

I lost my way on how to do this transformation from selected vertices to a circle (refer 0.44 seconds in the video). I have tried many keys and found nothing could help me.

Appreciate your advices..

THANKS!

This is probably Ctrl+V -> Connect Vertices with a custom shortcut.


No light or transparency through glass and water objects using various transparent materials I'm trying to render an image that has a wall of windows through which sun should be reflecting into an environment, and a pool with a glass wall facing that wall of windows. At the moment I'm going for having the light be sort of natural. The camera is positioned so it seeing part of the outdoors through the water, the glass wall of the pool, and the glass of the windows.

I set up the water, glass in the windows, and the glass of the pool wall as the same material - it uses a set of nodes to allow transparency and accurate reflections without getting into caustics, it's in the wiki manual and also documented in an answer here.

However, nothing can be seen through the windows, and lights I specifically put in to shine through the glass of the pool aren't visible, except for one, a little. Those I put in just to see if they would show.

I have tried increasing the Render Light Paths settings so that Transparency, Bounces, and Transmission are all at 50. I've tried increasing the Camera Clipping End Distance to 2000. I moved the objects in question to a new file so that things that were set up as linked groups are instead local, to check materials. Nothing has changed.

What is the issue here?

Edit: I have tried two alternate approaches to a glass material that seemed like they might help, with no luck.

The first is shown by Dorian Zgraggen here:

The second is shown by Michael Ting here:

I remain completely confused as to what the problem is. For now, I simply replaced the window glass with an invisible material (by switching the shadow ray for a camera ray in the material in the first screenshot above). I am going to try putting a lot more light under the pool, and then I'm completely out of ideas.

The issue was that the 'Simplify' checkbox was checked, under Properties > Scene, at the bottom.


Array modifier with some kind of scaling transform for each iteration I have just used an array modifier to create a bunch of stairs for a pyramid we're creating. I have made the railings for the staircase wider at the bottom than it is at the top and therefore my stairs don't fit perfectly, so I was hoping there's a way to use the array modifier to incrementally scale the stairs so they fit. Please see screenshot for reference.

You could put the array under the control of another object (here, an empty,) by checking 'Object Offset' Then any object-level transform on the empty will be applied to each instance in the array.

In this example, X runs across the steps, and Z is up. The empty has been scaled in X.

This gives a step-wise taper. The progression is geometric, not arithmetic, though.

If you wanted a linear progression, you could make each step out of two halves: assign a 'Mirror' modifier after the array,  checking 'Clip' and 'Merge', In this case, instead of scaling the empty, translate it  a little in X. This would have the effect of translating the two halves toward one another by a constant amount, each step.

If you want the taper to be continuous, don't do as above. Instead, leave the array as it was and assign another modifier: 'Simple Deform' > Taper. Select the appropriate axis for the taper.

By default, the taper acts on both axes orthogonal to the taper direction. Lock off any axis you want to remain unaffected.. in this example, Z.

(The empty in the second illustration is redundant; I've used the step's own axes.)


How to fix a texture to the object it is being mapped to? I'm new to Blender 2.8 and have been playing around with UV mapping onto objects. After following this tutorial https://www.youtube.com/watch?v=snbEMKGOla0 I noticed that once I had added the environment texture node then reposition the sphere, the texture seems to warp as if it is still trying to map around a sphere at the global 0,0,0 coordinate. Below shows the texture before the movement and after

Before

After

I've also noticed that when rotating the sphere, the geometry of the sphere rotates because the 'poles' of the uv sphere move as shown below. Despite this, the texture still remains in its initial position. I am wondering if there is a way to fix the texture to the sphere when moving it, or is there a better way to achieve this in general?

Sphere pole rotates about the x axis, however the texture remains the same

Thanks for any help

Have you tried adding a mapping node then a texture coordinate node?


The image renders, but the image editor with the rendered image does not show in the interface I have just installed Blender 2.81 and I can't view a rendered image. I press F12 and it runs through the motions but nothing show at the end of the process. I have tried selecting view animation or F 11 and nothing happens, am I missing something obvious? I go back to Blender 2.80 and it works fine.

found the solution!

I had to update the preferences and change 'Render in' from 'keep user interface' to 'image editor' See pic.


Getting a flat, thin, long, cube (ribbon) to follow Beizer curve? How do I make a ribbon follow a Beizer curve? I've found ways to make a round pipe out of a curve but not a flat ribbon.

I would make the curve flat by not bending a mesh to fit it, but "beveling" the curve (adding thickness).

Add a BezierCircle (in addition to the curve you already have)
In edit mode convert the handle type to Vector (super quick way V,V), that will make it a square.
Rotate it 45° along the Z axis (just to make it straight along an axis).
Scale the square along the X axis, to make it a thin ribbon.
(Last step) On your other curve object set the Bevel Object to be the "BezierCircle" you added in step one.


Is it possible to print to the Report window in the Info view? I wonder if it is currently possible to print or send messages to the Report window in the Info view? this would be quite useful sometimes.

We can always use an operator's report method. Running the following operator:

class RENDER_OT_test(bpy.types.Operator):
    bl_idname = 'render.oha_test'
    bl_label = 'Test'
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self, context):
        self.report({'INFO'}, 'Printing report to Info window.')
        return {'FINISHED'}

prints this in the Info window:

The color depends on the type enum: INFO gets green, WARNING light red, and ERROR dark red. I don't see reference to any direct output to Info window, other than this method.


List of selected faces after shortest_path_select() How can i retrieve the list of selected verts/edges/faces after selecting the shortest_path_select() ?
I can see in the viewport that the correct faces are being selected, but from code i cannot see them selected, neither from the bmesh neither from the mesh itself.

As you can see in the image, after the call to bpy.ops.mesh.shortest_path_select() i see the faces selected in the viewport, but from code only the face 655 of the mesh results selected.
After calling the function i DO call bmesh.update_edit_mesh(me) but still it seems not to work as wanted.
Here a snippet of code driving this example
                bpy.ops.mesh.shortest_path_select()

                bmesh.update_edit_mesh(me)

                self.report({"INFO"}, f"me 655: {me.polygons[655].select}")
                self.report({"INFO"}, f"me 380: {me.polygons[380].select}")
                self.report({"INFO"}, f"me 372: {me.polygons[372].select}")
                self.report({"INFO"}, f"me 947: {me.polygons[947].select}")
                self.report({"INFO"}, f"me 2200: {me.polygons[2200].select}")
                self.report({"INFO"}, f"")

                self.report({"INFO"}, f"bm 655: {bm.faces[655].select}")
                self.report({"INFO"}, f"bm 380: {bm.faces[380].select}")
                self.report({"INFO"}, f"bm 372: {bm.faces[372].select}")
                self.report({"INFO"}, f"bm 947: {bm.faces[947].select}")
                self.report({"INFO"}, f"bm 2200: {bm.faces[2200].select}")
                self.report({"INFO"}, f"")

I don't know how to get the list of selected faces after the shortest path calculation.
Any hep?

Unclear what the issue is.
Will mention that when a mesh is put into edit mode, the edit mode mesh is a "snapshot" of the data when mode toggled.  It is not written back to the mesh datablock until mode is toggled back. (Or other methods are called to implicitly save edit mode changes)
>>> C.object.update_from_editmode(
update_from_editmode()
Object.update_from_editmode()
Load the objects edit-mode data into the object data

Hence looking at bpy.data.meshes["Foo"] data while "Foo" is being edited will not show updates.
Little test script.
import bpy
import bmesh

ob = bpy.context.edit_object
me = ob.data
bm = bmesh.from_edit_mesh(me)

def print_selection(element_type):
    selection = [e.index for e in getattr(bm, element_type)
                 if e.select]
    print(f"{len(selection)} {element_type} selected")
    if selection:
        print(f"    {selection}")

print("Before")
for sel in ("verts", "edges", "faces"):
    print_selection(sel)
bpy.ops.mesh.shortest_path_select()
#bmesh.update_edit_mesh(me) # Not required.
print("After")
for sel in ("verts", "edges", "faces"):
    print_selection(sel)

Run on default grid.

Output to console
Before
8 verts selected
    [11, 12, 21, 22, 77, 78, 87, 88]
8 edges selected
    [6, 29, 31, 32, 139, 155, 157, 158]
2 faces selected
    [10, 70]
After
28 verts selected
    [11, 12, 21, 22, 23, 31, 32, 33, 42, 43, 52, 53, 54, 55, 62, 63, 64, 65, 74, 75, 76, 77, 78, 84, 85, 86, 87, 88]
40 edges selected
    [6, 29, 31, 32, 34, 48, 50, 51, 52, 53, 69, 71, 72, 88, 90, 91, 93, 95, 107, 109, 110, 111, 112, 113, 114, 130, 132, 133, 135, 137, 139, 149, 151, 152, 153, 154, 155, 156, 157, 158]
13 faces selected
    [10, 19, 20, 29, 38, 47, 48, 49, 58, 67, 68, 69, 70]

Again with two initial verts selected

Before
2 verts selected
    [11, 88]
0 edges selected
0 faces selected
After
15 verts selected
    [11, 12, 13, 14, 24, 34, 44, 45, 46, 56, 66, 76, 86, 87, 88]
14 edges selected
    [6, 9, 12, 35, 54, 73, 76, 78, 96, 115, 134, 153, 156, 158]
0 faces selected

And again, but modifying to also show the mesh selection, deselect all verts, toggle into object mode and back to edit mode, select two verts and  run script
def print_selection(element_type):
    lut = {"verts" : me.vertices,
           "edges" : me.edges,
           "faces" : me.polygons,
           }
    selection = [e.index for e in getattr(bm, element_type)
                 if e.select]
    print(f"{len(selection)} {element_type} selected")
    if selection:
        print(f"    {selection}")

        print([lut[element_type][i].select for i in selection])

Result.
Before
2 verts selected
    [11, 88]
[False, False]
0 edges selected
0 faces selected
After
15 verts selected
    [11, 12, 13, 14, 24, 34, 44, 45, 46, 56, 66, 76, 86, 87, 88]
[False, False, False, False, False, False, False, False, False, False, False, False, False, False, False]
14 edges selected
    [6, 9, 12, 35, 54, 73, 76, 78, 96, 115, 134, 153, 156, 158]
[False, False, False, False, False, False, False, False, False, False, False, False, False, False]
0 faces selected

What is the bmesh equivalent to bpy.ops.mesh.shortest_path_select()?


BPS V3 Minecraft character rig animation problem (snapping) I'm trying to create a Minecraft animation with the BPS V3 rig.
When i add keyframes, and play, instead of the character gradually moving to a position, it snaps into position as soon as the play cursor (i think that's what it's called?) reaches the keyframe. This is a MAJOR setback as i can't animate. pls help!! ＞﹏＜

Try selecting the first keyframe, then pressing T to change the keyframe interpolation. In the menu that pops up, select anything other than Constant. Constant interpolation causes the keyframe's value to be held constant until the next keyframe.