2
$\begingroup$

It renders, composites and saves the image just fine, but refuses to move to the next frame. GUI remains responsive.

It's a large scene (alembic animations, 7 million tris with hair on top of the meshes) and for some reason reducing the size of the scene solves the issue. I'm sure I'm not running out of RAM though, as I have 16Gb and Blender is using only 3Gb to render. Plus, like I said, it renders just fine it's just not moving to the next frame. CPU usage is at 100% when it gets stuck. I'm using the latest version.

Switching from Optix to CUDA seems to help, but it also gets stuck after 5 or 6 frames. It also takes 6 times longer so I'd rather not use that.

Specs: Ryzen 5 3600

RTX 3070

16Gb RAM

250Gb SSD (100Gb free)

Scene specs: Scene specs

[EDIT] Sadly I can't upload the .blend file as this project is for a client

$\endgroup$
2
  • 2
    $\begingroup$ Are you using Animation Nodes or a fluid simulation by any chance ? $\endgroup$
    – Gorgious
    Mar 1, 2021 at 17:14
  • $\begingroup$ @Gorgious nope. My scene consists basically of two large alembic files and a few hair systems. $\endgroup$
    – Paul S
    Mar 1, 2021 at 17:38

2 Answers 2

3
$\begingroup$

Similar to sgariepy.3d's answer, you could try command line rendering.

Blender docs: https://docs.blender.org/manual/en/latest/advanced/command_line/render.html

CG Dive encounters a similar issue and provides an example of running the CLI command: https://cgdive.com/blender-improve-render-stability-100-by-rendering-from-the-command-line/

> "C:\Program Files\Blender Foundation\Blender\blender.exe" -b c:\file_path\blend_file.blend -a

This will use the settings in your blend file, and render an animation.

$\endgroup$
3
$\begingroup$

You could try rendering without the GUI. I had found the following python script, which worked well, on the youtube channel of Chris P when I had crashes rendering animation nodes scenes :

import bpy

start_frame = 1
end_frame = 180
fps = 24
path = 'C:\\tmp'

for frame in range(start_frame, end_frame + 1):
    bpy.context.scene.render.fps = fps
    bpy.context.scene.frame_current = frame
    bpy.context.scene.render.filepath= path + '\\%04d.png' % frame
    bpy.ops.render.render(write_still=True)

Just paste it in a new text file in the Blender text editor of the scene you want to render. Replace start_frame, end_frame, fps and path, then run the python script. Tell me if it worked :)

$\endgroup$
6
  • $\begingroup$ Interesting, now this is the error I'm getting: pasteboard.co/JQD0sGK.png I didn't see this error rendering normally. I set the file path to C:/Blender, not C:/Clender, no idea why it's saying that. Here's my edited code: pasteboard.co/JQD11fD.png $\endgroup$
    – Paul S
    Mar 1, 2021 at 17:34
  • $\begingroup$ Looking at your edited code, it should work. In your render output properties, could you try browsing to the exact same location and giving your file a name, then running the script again ? The output path should look like this : pasteboard.co/JQD3Xjj.jpg $\endgroup$ Mar 1, 2021 at 17:43
  • $\begingroup$ It seems to be having trouble naming the filepath: pasteboard.co/JQDacov.png . If I set the filepath manually on the GUI and render using the python code it works though. But to be able to render the whole animation I need to set the filepath on the code. $\endgroup$
    – Paul S
    Mar 1, 2021 at 18:00
  • $\begingroup$ Nevermind, I inverted the slashes and it works perfectly! Thank you so much! pasteboard.co/JQDdxef.png $\endgroup$
    – Paul S
    Mar 1, 2021 at 18:06
  • $\begingroup$ Great, you're welcome ! I'm not sure what the problem is exactly since it worked on my computer with the backslashes. I'll keep trying to render various scenes with it. $\endgroup$ Mar 1, 2021 at 18:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .