Adobe After Effects has been the industry-standard motion graphics and compositing application for decades. Adobe continues to add new capabilities, including improved 3D tools, AI-assisted features, better caching and GPU acceleration.
Yet some surprisingly fundamental limitations remain.
Spend enough time in the After Effects community and the same requests appear again and again. Many of them aren’t requests for flashy new effects. They’re requests to fix fundamental parts of the workflow that become increasingly painful as projects grow.
Here are ten of the biggest features that After Effects is still missing—or where its existing implementation remains significantly behind what users are asking for.
If you render image sequences, you know the pain: scrubbing folders full of frames, guessing playback speed, or opening heavy software just to check timing.
This Image Sequence Player is built to fix exactly that.
Play Your Renders at the Correct Framerate
Drop in a folder of images and hit play. The player runs your sequence at a true, time-based framerate, so 24 fps actually feels like 24 fps—no drifting, no guesswork.
Perfect for:
Animation previews
Simulation checks
Camera move timing
Look-dev iterations
Smooth Playback, Even for Heavy Sequences
For larger renders, you can prerender the sequence into a cached video with one click. Playback instantly becomes smooth and responsive—great for long or high-resolution sequences.
You can still scrub frame-by-frame when you need precision.
Loop, Scrub, Step — Instantly
Loop animations for motion checks
Scrub the timeline naturally
Step frame-by-frame forward or backward
No setup, no importing, no project files.
Export a Quick Video File
Need to send a preview to a client or teammate?
Export your sequence directly to:
AVI (fast, no recompression)
MP4 (easy sharing, universal playback)
What you see is exactly what you export.
Why Artists Like It
No timeline setup
No codecs to fight
No heavy software just to “check a render”
Fast, clean, and predictable
It’s the kind of tool you keep open next to Blender, Houdini, or Unreal—just for viewing.
Built for One Job, Done Well
This isn’t an editor. It’s a viewer that respects time, framerate, and your workflow.
If you work with image sequences, this tool saves time every single day.
If you’ve opened your Blender scene and noticed that your camera object looks wrong — no familiar pyramid shape, no little triangle on top — and instead you only see a flat rectangle that appears only when the camera is selected, don’t worry.
This usually happens when Extras are turned off in the Viewport Overlays settings.
To fix it:
Go to the top-right corner of your 3D Viewport and click the Viewport Overlays button (the icon with two overlapping circles).
In the dropdown, scroll down to find the Extras checkbox.
Make sure Extras is enabled.
Once turned back on, your camera should immediately display its pyramid outline and top triangle again, just like normal.
This setting also affects other helper visuals, such as lights, empties, and force fields — so if they disappear too, it’s the same culprit.
While animating a camera, it is often desirable to quickly set the focus on a specific object. The “Focus on Object” field in Blender is incredibly useful for this, allowing the quick selection of a focus object via the eyedropper tool. However, once this link is set, it remains permanent. If the link is severed, the focus on the specified object is lost. I sought a solution that would allow me to capture the correct focus distance based on the focus object before severing the link. This led me to develop a script that not only calculates but also sets the “Focus Distance” field automatically to the appropriate value. This script triggers when the focus object property changes from empty to populated. It then calculates the distance, logs it in the console, and sets the focus distance. Now, you can break the link to the focus object while retaining the focus based on the last calculated distance.
How to Use the Script:
Open Blender and Set Up Your Scene: Ensure your scene contains at least one camera and other objects you might want to focus on.
Open the Scripting Tab: Navigate to the ‘Scripting’ tab in Blender to access the Python console and scripting area.
Paste the Script: Copy the script provided below and paste it into a new text editor within the Scripting tab.
Run the Script: After pasting, run the script by pressing the ‘Run Script’ button. This will activate the script, and it will start monitoring changes to the focus object property.
Use the Camera’s Focus Object Field: Go to your camera’s object data properties and under the depth of field settings, use the eyedropper to select a focus object from your scene. The script will automatically update the “Focus Distance” to match the distance to the selected object.
View the Output: Check the console (located in the same Scripting tab) to see the printed focus distance. This value is also automatically set in the camera’s “Focus Distance” field.
Sever the Link If Desired: You can now sever the link to the focus object without losing the focus distance, as it has been set manually based on the last calculation.
Here is the script:
import bpy
# Global variable to keep track of the last focus object
last_focus_object = None
def update_focus_distance_if_needed(scene):
global last_focus_object
camera = scene.camera
if camera and camera.data.dof.use_dof:
current_focus_object = camera.data.dof.focus_object
# Check if the focus object was None and now is set
if last_focus_object is None and current_focus_object is not None:
# Calculate and update the focus distance
camera_location = camera.matrix_world.translation
target_location = current_focus_object.matrix_world.translation
focus_distance = (target_location - camera_location).length
camera.data.dof.focus_distance = focus_distance
print(f"Focus distance updated to: {focus_distance}")
# Update the last known focus object
last_focus_object = current_focus_object
def register_handlers():
global last_focus_object
# Initialize last focus object
camera = bpy.context.scene.camera
if camera and camera.data.dof.use_dof:
last_focus_object = camera.data.dof.focus_object
# Add handler
bpy.app.handlers.depsgraph_update_pre.append(update_focus_distance_if_needed)
print("Handler registered to monitor focus object changes.")
register_handlers()
Today, we will tackle an essential aspect of 3D modeling in Blender – object naming.
It’s easy to lose track of your objects’ names, especially when you’re working on a complex project. All too often, we find ourselves with a sea of objects, each bearing an unhelpful name like ‘cube’, which doesn’t do much to tell us about their function or importance in the scene.
However, fear not! Blender offers a convenient tool for mass renaming of objects, allowing you to maintain order and clarity in your work. Let’s walk through the steps.
Firstly, you need to select the objects you want to rename. If your objects are neatly organized in a collection, simply right-click on the collection and choose ‘Select Objects’. Alternatively, if you’re dealing with individual objects, click on the first object, hold down ‘Shift’, then click on the last object. This selects those two objects and all others in between.
With your objects selected, hit ‘Control’ and ‘F2’. This brings up the ‘Batch Rename’ dialogue box. Here, you’ll specify the current name string you want to change – in this case, ‘cube’ – and what you’d like to replace it with. Click ‘OK’, and voila! All your selected objects are now renamed, saving you from any future confusion.
If you ever forget the shortcut, remember that you can always find the ‘Batch Rename’ option under the ‘Edit’ menu.
That wraps up today’s tutorial! We hope you found this helpful in managing your 3D workspace. Thanks for watching and remember to subscribe for more quick and easy Blender tips. Until next time, this is One Minute Video Tutorials.com, making your Blender journey a breeze, one minute at a time.
Here’s how to work with the Blender 3.4 pose library and assets browser:
Create the pose you need in pose mode. Select the bones that are required for the pose.
Save poses (still in pose mode) from the right side toolbar’s “animation” tab by clicking “Create Pose Asset”:
You can name the pose from the F9 operator dialogue.
You only need one pose for each side, since the poses can be flipped with “Flip Pose”.
Simply click on a pose thumbnail to apply it.
You can also right click on a thumbnail to select all the pose bones.
You can click and drag on a pose thumbnail to mix between to poses.
The thumbnail from the pose is rendered from the active camera. You can later change it from the Asset Browser window if needed from the “generate preview” button:
If you want to create a global “user library”, save the .blend file in the Assets directory. By default it’s in Windows: C:\Users\myusername\Documents\Blender\Assets\
It should now show up under “user library” in the assets browser, also for any new .blend files that you create.
You can save as many files as you need to the Assets folder, and each one of them will show up in the Assets panel under “user assets”
Have you ever wondered how to create a 3D-transition in which an element should fly past the camera onto the webpage? Here’s how you can do that using CSS-transforms:
See the effect in action here:
FLY IN!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body{
perspective: 300px; /* the smaller, the stronger sense of perspective (like short focal lenght) */
min-height: 95vh;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr;
text-align: center;
}
h1{
grid-column: 2/3; /* Just for putting the h1 to center of grid */
grid-row: 2/3; /* Just for putting the h1 to center of grid */
transform: translate3d(800px, 200px, 1500px); /* Set the start position for the element */
animation: myflyin 2s; /* Activate the animation called myflyin */
animation-fill-mode: forwards; /* Keep the position from the last keyfframe */
}
@keyframes myflyin { /* Define the keyframes */
from {
transform: translate3d(800px, 200px, 1500px); /* Starting position */
}
to {
transform: translate3d(0, 0, 0); /* End position */
}
}
</style>
</head>
<body>
<h1>FLY IN!</h1>
</body>
</html>
The 3D industry has been buzzing about Nvidia’s Instant NeRF (which stands for neural radiance fields) ever since they published their first demo video.
This technology has since been in rapid development and we now have a free iPhone app called Luma AI that anyone can use to capture NeRFs.
I tested the app with a toy robot, here’s a automatically generated video of the result:
The amazing thing about NeRF renders is that they can handle light reflections and bounces in a very realistic manner. This makes it a good fit for VFX work. We can also export a textured 3D-model from the Luma AI app, but it’s not as impressive as rendering with NeRFs. It’s still quite good compared to a basic photogrammetry process, especially considering that the surface of our object was quite reflective. Here’s a screenshot from Blender:
Here is how the mesh looks like (very dense):
Here’s another cool shot from a Robotime Ball Parkour toy:
I have been searching through the webs for a long time for a good, easy to use tool for recoloring pixel art to a specified color palette. The perfect tool should make it easy and fast to test out different palettes for a provided bitmap image or a sprite sheet, but it should also make it possible to fine tune the color mappings and add new colors to the palette if needed.
This has provided to be a rather challenging task. Photoshop and other similar graphics programs do have the possibility to switch to indexed color which lets you force the image to a new color palette, but I find that workflow to be rather tedious and time consuming. Illustrator has the recolor artwork tool, but it works only with vector images.