1
$\begingroup$

I have a scene that renders differently when rendering from the command line and using the GUI.

Specifically, objects go missing from the render when using the command line.

I use the following command (tested in OS-X terminal):

/Applications/blender-2.5x/blender.app/Contents/MacOS/blender -b GzContrejour.blend -o bl_out/render.png -F JPEG -x 1 -f 1
$\endgroup$
4
  • $\begingroup$ Could you post a screen shot? $\endgroup$
    – Qwertie
    Commented May 1, 2014 at 12:35
  • $\begingroup$ What happens if you press File > External data > Make all paths absolute, save the .blend, and then retry the command line render? $\endgroup$
    – gandalf3
    Commented May 1, 2014 at 23:14
  • $\begingroup$ @gandalf3 I get the same result. I actually replaced the material using the texture with something else, and the object still doesn't show, so the texture is not the culprit. $\endgroup$
    – user3345
    Commented May 2, 2014 at 8:40
  • $\begingroup$ @gandalf3 found it. you can see my answer below. I feel sorry for asking but what can I say... $\endgroup$
    – user3345
    Commented May 2, 2014 at 9:12

2 Answers 2

1
$\begingroup$

The problem was that I created the scenes using blender 2.66, but invoked Blender 2.58 on the command line; there are backwards compatibility issues involved here although I forgot exactly what it was (something to do with ngons I believe). Regardless the end result is that precious few object types created in 2.66 will load in 2.58 so the real surprise here was that anything was displayed at all.

Thanks for everybody who kindly tried helping with this. Took me a while to track the issue as I usually need to keep several versions of blender installed so I guess this 'issue' wouldn't affect many people.

$\endgroup$
4
  • $\begingroup$ Personally I still pity that Blender 2.58 should even attempt loading these files, took us ages to figure what was going on when some colleagues quietly migrated to 2.6x when others did not, so we started seeing weird stuff when swapping files around... $\endgroup$
    – user3345
    Commented May 2, 2014 at 9:14
  • 1
    $\begingroup$ You can triangulate the meshes in your 2.63+ .blend, then save with Legacy Mesh Format enabled. Older versions, which do not support Ngons, will be able to load them correctly. But keep in mind that the triangulation may mess up some things like normals. $\endgroup$
    – CodeManX
    Commented May 3, 2014 at 23:39
  • $\begingroup$ @CoDEmanX thanks, I think all our team members migrated to 2.6x by now, so the only thing left to do really is me removing the older version. The only point I'm making (and this may not be the right place to do it) is failing silently isn't good in this case (it is rarely a good thing imho); displaying a warning would be appropriate... $\endgroup$
    – user3345
    Commented May 5, 2014 at 11:35
  • $\begingroup$ Well there's backward and forward compatibility in Blender, so you can basically load an old file in a new Blender and vice versa. If you load a new .blend in an old version, some things may break, but there's no way to determine that (unless you time-travel back and tell the old Blender what features and forward-compatibility-breaking changes will be made in future). If you experience any issues, check the release docs for what may have changed. You can check the .blend version with a hex editor, the very first bytes are human-readable (if they aren't, decompress the .blend using 7-Zip). $\endgroup$
    – CodeManX
    Commented May 5, 2014 at 14:10
0
$\begingroup$

My first instinct is to go into the UI and look at the paths on the files for the images that are part of the textures. If they don't begin with a / or // then they can malfunction when you run blender from a different directory than when you start the UI.

This sounds like a problem that would best be solved interactively in IRC (freenode #blender) and then the true solution posted afterward.

$\endgroup$
2
  • $\begingroup$ I would much rather use a relative path... But I get the idea, looking into it. $\endgroup$
    – user3345
    Commented May 2, 2014 at 6:43
  • $\begingroup$ Solved it, see below. $\endgroup$
    – user3345
    Commented May 2, 2014 at 9:11

You must log in to answer this question.