[Bf-committers] WITH_HEADLESS and OpenGL

Campbell Barton ideasman42 at gmail.com
Sat Dec 13 21:42:05 CET 2014


On Sat, Dec 13, 2014 at 8:30 PM, Jacob Merrill
<blueprintrandom1 at gmail.com> wrote:
> Running blender headless = as a background process right?

No, you can run a headless build as a foreground process too.

> Could you use this + game engine, to send data to the headless version, and
> send back models via libLoad?

I headless build makes no real difference in this case, you can run a
regular build in background mode too.

> Agoose has done this with a "running copy" of blender, but could you do it
> with a headless version of blender launched by the blenderPlayer?
>
> Destructive terrain modification, in game modeling etc?
>
> *I can imagine an amazing version of blender verse....*
>
>
> On Fri, Dec 12, 2014 at 1:13 PM, Carroll, Michael R <
> michael.r.carroll at intel.com> wrote:
>>
>> Great, thank you for the feedback Campbell. I'll be taking a closer look
>> at the first two options.
>>
>>
>> -MichaelC
>>
>> -----Original Message-----
>> From: Campbell Barton [mailto:ideasman42 at gmail.com]
>> Sent: Thursday, December 11, 2014 4:16 PM
>> To: Carroll, Michael R
>> Cc: bf-committers at blender.org
>> Subject: Re: WITH_HEADLESS and OpenGL
>>
>> On Thu, Dec 11, 2014 at 11:26 PM, Carroll, Michael R <
>> michael.r.carroll at intel.com> wrote:
>> > Hello BF-Committers,
>> >
>> >
>> >
>> > Does building Blender WITH_HEADLESS require linkage with OpenGL?
>>
>> Currently yes, however it could be changed.
>>
>> With headless builds (and in background mode) OpenGL arent called, there
>> are a few possible workaround.
>>
>> - Use mesa software OpenGL (we use this for blender-softwaregl on Linux),
>> ... Not a real solution, but at least you don't need to install libs on the
>> operating system.
>>
>> - Stub-out OpenGL and link to a dummy library.
>> ... No heavy dependencies, but takes some effort to setup. It could be
>> preloaded or static link.
>>
>> - Omit all GL calls from WITH_HEADLESS builds, ... the most correct
>> solution, but likely disruptive to the current code-base. maybe interesting
>> to try, but likely to add a lot if #ifdef's. Since this is a build option
>> (not even included in official builds), its not such an attractive prospect
>> to insert 100's of ifdef's all over the code.
>>
>> Longer term we might move drawing code into our own GPU module, IIRC Jason
>> Wilkins work went some way towards this, in that case its probably  less
>> trouble to stub out the drawing calls and remove the OpenGL dependency.
>>
>>
>> > I have read the renderer doesn’t leverage OpenGL at all. I see the
>> > window
>> > manager/X11 features have been disabled in the WITH_HEADLESS source.
>> > However, I attempt to compile (using CMAKE) without any of the
>> > WITH_GL_PROFILE* options and bump into OpenGL related compiler errors.
>> > They start with the second editors/ object:
>> >
>> >
>> >
>> > [  5%] Building C object
>> > source/blender/editors/armature/CMakeFiles/bf_editor_armature.dir/edit
>> > armature_sketch.c.o
>> >
>> >
>> /blender/blender/source/blender/editors/armature/editarmature_sketch.c:441:26:
>> > error: unknown type name ‘GLUquadric’
>> >
>> > static void sk_drawPoint(GLUquadric *quad, SK_Point *pt, float size)
>> >
>> >
>> >
>> > Would OpenGL have to be shimmed out or is there a build toggle to
>> > remove OpenGL?
>> >
>> > Many sources in the editors/ folders appear to use OpenGL… can these
>> > specifically be removed from a WITH_HEADLESS build?
>> >
>> >
>> >
>> > I have been lurking on the mail list reading related conversations…
>> > starting with the March’11 thread with Campbell, Brecht, and Pete.
>> > Campbell suggested that adding the WITH_HEADLESS feature could negate
>> > the requirement for OpenGL. I have seen a lot of checkins to support
>> > WITH_HEADLESS but those same diffs don’t appear to remove OpenGL from
>> the build flow.
>> >
>> >
>> >
>> > I’m looking to run Blender for performance analysis on many different
>> > platforms. Eliminating any GUI is a requirement. Removing OpenGL would
>> > also be extremely helpful.
>> >
>> >
>> >
>> > Thank you,
>> >
>> > -MichaelC
>> >
>> >
>>
>>
>>
>> --
>> - Campbell
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers



-- 
- Campbell


More information about the Bf-committers mailing list