Gaffer on Windows (MSVC)

4,100 views
Skip to first unread message

Alex Fuller

unread,
Jul 5, 2017, 4:42:18 AM7/5/17
to gaffer-dev
Hi all, thought I'd link a victory pic here of what's to come:

This has taken a lot longer than I had anticipated, lets just say that.... ;)

For interested people you can poke around here https://github.com/boberfly/gaffer/tree/msvc

Cheers all!

Dorian Fevrier

unread,
Jul 5, 2017, 12:40:33 PM7/5/17
to gaffer-dev
Amazing work!

ben toogood

unread,
Jul 5, 2017, 12:47:14 PM7/5/17
to gaffe...@googlegroups.com
Fantastic - once you get to wanting other testers be sure to let us know!

On Wed, Jul 5, 2017 at 5:40 PM, Dorian Fevrier <dorian....@gmail.com> wrote:
Amazing work!

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
ben tooogood
vimeo | linkedin

François Beaune

unread,
Jul 5, 2017, 1:43:53 PM7/5/17
to gaffer-dev
Hey Alex,

This is seriously awesome!

Please let us know when we can give it a try (even if it's a debug build!).

Franz

Alex Fuller

unread,
Jul 5, 2017, 1:58:55 PM7/5/17
to gaffer-dev
Cheers all!

Currently I just have a few snags like Appleseed and OSL not loading up their python modules so the main GUI doesn't appear just yet, only the browser so far. Funnily enough this is just a release build not a debug so to get really serious I'll need to tweak the dependencies branch to build in that mode first, which will make sense in the next phase of finding all these small issues...

Franz/Ben: I'll need to make a bundle packager to make a cleaner .zip for everyone to test soon as well. Franz, Appleseed's dependency repo has really helped me a lot with making the batch build scripts btw, thank you! Do you know if the current trend right now is everyone will be defaulting to MSVC2015? I don't think vfx platform cares about windows for valid reasons, this is currently MSVC2013.

Alex Fuller

unread,
Jul 8, 2017, 4:12:46 PM7/8/17
to gaffer-dev

There we go! Took awhile to get some sort of debugging with python to go in VS2013, turns out the gl error checking is bugged in Windows so I commented that guy out aaaaand:




On Wednesday, 5 July 2017 01:42:18 UTC-7, Alex Fuller wrote:

Alvaro Castaneda

unread,
Jul 8, 2017, 4:20:38 PM7/8/17
to gaffe...@googlegroups.com
Congrats Alex, yeah I don't "like "  compiling on windows, lets just say that hehe

--

Alex Fuller

unread,
Jul 9, 2017, 9:07:36 PM7/9/17
to gaffer-dev


On Wednesday, 5 July 2017 01:42:18 UTC-7, Alex Fuller wrote:

Gustaf Nilsson

unread,
Sep 7, 2017, 1:34:03 PM9/7/17
to gaffer-dev
works!
just had to set the GAFFER_ROOT env variable first which was not mega obvious?

cant wait for v0.41 ;)

Alex Fuller

unread,
Sep 7, 2017, 2:11:23 PM9/7/17
to gaffer-dev
Awesome, yea should of mentioned that, also needing to use the forward slashes otherwise the stylesheet code in Python/Qt breaks.

Looks like the dispatcher isn't working either, probably because there's no subprocess32 for windows. As for the next version I'll need to revisit the dependencies as I think John has done a lot of changes there since the last time I forked the repo, also Cortex 10 has a lot of refactors...

Gustaf Nilsson

unread,
Sep 8, 2017, 6:05:25 AM9/8/17
to gaffer-dev
is there a trick to open geometry files? scene or abc readers dont want to open my files?
tried both \ and /

Alex Fuller

unread,
Sep 8, 2017, 1:20:09 PM9/8/17
to gaffer-dev
Just at work right now, but I think something like C:/path/to/file.scc worked, or it might've been /C/path/to/file.scc. The backend is using boost::filesystem but the Python code or C++ might do some funny business on top, I've been going through bits of that code using the 'os.sep' constant so that it uses the right slash, and made one for the C++ side as well. Also 'os.pathsep' for environment variable separators ( : on posix, ; on win32).

Definitely need to go though this again, I'd like to keep everything forward-slashed as much as possible so it's compatible with Linux/macOS, so that the .gfr scripts just load anywhere provided the root or project path is an environment variable with the style of $THIS and not %THIS% like on windows...

Alex Fuller

unread,
Sep 18, 2017, 1:12:59 PM9/18/17
to gaffer-dev
Just an update, while the refactors are in-progress I thought I would look into moving onto MSVC 2015 from 2013 as it seems a few other libraries are moving towards this compiler also (USD, OpenVDB).

You can see the dependency PR for this if you want (and if anyone wants to help improve):

Unfortunately I'm in linker hell with the same version of Cortex I used for MSVC2013 so something changed in this new compiler but I'm not sure what yet (linking IECorePython to IECore) but it might be some flag that's been added or removed, very strange.

Eric Mehl

unread,
Sep 19, 2017, 11:12:58 AM9/19/17
to gaffer-dev
Hi Alex,
This is fantastic, great work so far! I'm very interested in using Gaffer on Windows because we use a mixed Windows (for 3ds Max) and Linux pipeline.

I'm running into a problem at the very start where I get a bunch of "Could not parse stylesheet of object " followed by a hex identifier of some kind. It makes the UI pretty much unreadable. I poked around a little but I don't have much experience with Qt so I'm a little adrift.

I'm interested in assisting if you need. I don't have tons of professional development experience, but I may be able to lend a hand somewhere. Is the goal to eventually have it merged back into the main project?

Eric Mehl

unread,
Sep 19, 2017, 12:31:11 PM9/19/17
to gaffer-dev
Just saw the note about stylesheets breaking without forward slashes, that solved it for me. 

Alex Fuller

unread,
Sep 19, 2017, 12:33:25 PM9/19/17
to gaffer-dev
Hey Eric,

I kind of mentioned before but wasn't too clear, but for now when you set GAFFER_ROOT use forward slashes for that one in particular instead of the standard windows backslashes, it'll make the css stylesheet code not blow up like you've just experienced. I think on my end I just patched that code up to swap the backslashes in the python file with .replace("\\", "/"), probably after that packaged-up version I released.

At the moment it's a bit of a challenge to get this merged back because John and IE don't use windows so it isn't a priority and they're often busy working on higher priorities, but yes I'd love it to be merged back eventually with AppVeyor continuous integration so we can test for regressions on future code changes. Currently Cortex is in a refactor so I'm letting the dust settle on that one before continuing.

Currently I'm stuck on this:

And I just hit a few abstract base classes so that this workaround doesn't work on these cases and I'm not too sure how to proceed on that one, apart from going back to MSVC 2013 (possible) or going to 2017 which I don't think is a good idea just yet.

Eric Mehl

unread,
Sep 23, 2017, 1:35:46 PM9/23/17
to gaffer-dev
I'm out of my league a bit on the conflicts with linker error on building dependencies unfortunately.

I might be able to make a contribution with the cross-platform / merging back to the main branch though, since we are a mixed Windows / Mac / Linux studio. I'm unfamiliar with Github and large project development like this in general, could you offer some advice on how the collaboration works on something like this?

Should I start out with the .34 release of the ImageEngine/Gaffer repo, then start sorting out how to merge in your boberfly/Gaffer repo? I picked .34 (or I suppose .35 is similar) since that seems to be the latest stable release for both and you are working on the dependencies to bring it the Windows version up to .40.

Regardless of which repo to start with, should I create a fork? It looks like that would be the best and allow me to develop independently and then selectively make pull requests to either the ImageEngine or boberfly repo, gradually getting them both ready for a Master Merge once things are settled out. Or should I just clone boberfly or ImageEngine and make pull requests case-by-case?

Not sure what the best-practice is and appreciate your advice.

Alex Fuller

unread,
Sep 26, 2017, 7:48:30 PM9/26/17
to gaffer-dev
Hi Eric,

I'm holding off from 0.40.x.x for now because Cortex greatly differs but I will eventually update here but I think I'll roll back to MSVC 2013 because the 2015 workaround doesn't work with base classes.

Some of my changes to Cortex and Gaffer do change quite a bit and I try to isolate these using pre-processor defines, and I'm starting to add an IECore/Platform.h header for very MSVC/windows-specific things so that I don't need to undef/define constantly due to windows polluting generically-named things. I haven't talked to John about this yet if it's the best approach. My first set of patches is to have the dllimport/dllexport defines placed in (which most do exist already in mainline Cortex), and John is working to get these to work on Linux/macOS too to hide symbols so this is pretty much the big 'step 1' before all the other PR patches.

To get things going I'd suggest my branch for now for the easiest/fastest way if you want Windows, or you can just work on Mac/Linux for now if you want the latest and greatest and worry about Windows later.

Cheers
-Alex

Eric Mehl

unread,
Nov 6, 2017, 12:26:26 PM11/6/17
to gaffer-dev
Hi Alex,
I finally have a little time to give to Gaffer on Windows so I'm getting started by building the dependencies. I'm having trouble with building Python - I'm getting a lot of unresolved externals from the crypto.lib and ssl.lib libraries.

I'm working from the "windows2" branch and using MSVC 2013 since you mentioned you had lots of problems with 2015. Is that the right starting point?

There are 46 errors total. A typical one is like this: 
ssl.lib(t1_lib.obj) : error LNK2019: unresolved external symbol custom_ext_init referenced in function ssl_add_clienthello_tlsext [M:\gafferDependenci
es\Python-2.7.13\gafferBuild\CMakeBuild\extensions\extension_ssl\extension_ssl.vcxproj]

Have you come across this problem when you were building? I assume it's a problem with building OpenSSL, but I didin't get any errors when that built and I was able to find the source code for the functions it's missing. I'm not experienced enough yet to sort out symbol issues like this so any help is appreciated!

- Eric

Alex Fuller

unread,
Nov 6, 2017, 11:08:17 PM11/6/17
to gaffer-dev
Hey Eric,

Yeah that is a weird one and I'm not sure why I didn't run into this build issue. I do remember that I needed to comment out something from the CMake file but it wasn't that, the CMake script I used isn't an official one or it was for another version so there might be a few gotchas. I can already see that t1_ext.c is not included in the compile here:


I would try adding the missing source files here until Python is happy, or make Python not build with SSL support for now, which is probably a flag that can be set for CMake in its buildOpenSSL.bat. Gaffer itself doesn't rely on this module but probably any of your custom modules like the shotgun API won't work properly.

Eric Mehl

unread,
Nov 7, 2017, 4:04:27 PM11/7/17
to gaffer-dev
That helped a lot, thanks! I sorted through the missing files and am able to build it now. Strange that it wasn't already there since you were building it successfully.

Boost was a little tricky but I think I have it working ok. I'm sorting through the rest of the depedencies and I'll report back as I make progress.

Alex Fuller

unread,
Nov 8, 2017, 12:12:11 AM11/8/17
to gaffer-dev
I recently did a fresh rebuild for MSVC2013, the things I found were problematic was the PySide bindings install to your system python despite telling it not to (probably an easy fix of temporarily setting the python path to the gaffer built one) and the Qt5 build fails the first time but will work the second time (no idea why but it's fairly consistent in doing this).

Eric Mehl

unread,
Nov 8, 2017, 8:51:41 AM11/8/17
to gaffer-dev
Good to know, I'll keep an eye out for those problems. I wonder if I have my build environment set up correctly. I was initially having conflicts between msvc 2013 and 2015 because I had both installed. So I removed both and did a fresh install of 2013.

I've had the most success so far using the command line from the MSVC 2013 64 bit command environment, accessed from the Visual Studio 2013 Tools start menu item. Is that what you are using?

One thing that makes me think I'm drifting in the wrong direction is that I found all the Python libraries needed by Boost were going into a "lib64" directory instead of "lib". I had to point Boost to that directory to get it to build without giving errors of missing symbols because it couldn't find those libraries. I think it was a 32 vs 64 bit build issue, which is why I started using that prepackaged build environment command line.

I have a few commits on my fork of your dependencies repository that shows the changes I made to here: 

I'm wondering if my build environment is not quite right and I need to start fresh.

Alex Fuller

unread,
Nov 8, 2017, 3:10:01 PM11/8/17
to gaffer-dev
Hi Eric,

I'm running the MSVC 2013 64-bit native command line for my builds so I'd definitely recommend what you're currently doing. I think I put in my env bat file which I use to path stuff and set CMake and boost to use the right compiler toolchain (ahh in my older branch):

I'm glad to see someone else trying these out as I've been the only one to my knowledge doing this. Actually I just noticed some of my later changes haven't been pushed yet, I'll do that when I get home (I have a nice way of packaging up the dependencies now using 7-zip). I can just supply these pre-built zips, saves you from this so you can just compile Gaffer (and probably Cortex) separately.

Eric Mehl

unread,
Nov 9, 2017, 9:58:30 AM11/9/17
to gaffer-dev
Hi Alex,
If you could supply them as pre-built zips that would be wonderful, thanks. That would at least let me get caught up in the near-term and get a Gaffer build going.

I'll keep working on building the dependencies so there's a second example of a successful build. I first started building in a generic terminal window, not the MSVC special environment, so that may have caused some of the early hiccups I found. I'll start fresh with the MSVC environment and see how that goes.

Eric Mehl

unread,
Nov 18, 2017, 7:51:54 PM11/18/17
to gaffer-dev
Hi Alex,
I had some time this afternoon to sort through the Windows dependency builds and I have almost everything working! I made a few changes to fix up minor details and have them up here: https://github.com/hypotheticalinc/gafferDependencies/commits/windows2

It's little convoluted due to my trial and error and reverting some changes that didn't work out, but hopefully it's not too hard to follow. I'm definitely open to feedback and corrections! 

I think the only piece left is Cortex. I'll grab your fork and give it a similar treatment to see if there is anything I need to sort to get it building on my end.

Alex Fuller

unread,
Nov 19, 2017, 4:06:28 PM11/19/17
to gaffer-dev
Hey Eric,

I'll put down some comments/feedback to your commits there. Cheers!

Alex Fuller

unread,
Nov 19, 2017, 4:13:24 PM11/19/17
to gaffer-dev
I have a funny feeling that because I've installed the 'bash on windows' subsystem that the backslash/forward slash issue is somewhat mitigated, which might explain why you are landing into some roadblocks here that I didn't seem to land in. I don't use bash on windows to do this, but I think it adds aliases to things like 'ls' to the regular command prompt, and might do some special thing with slashes.

Alex Fuller

unread,
Nov 19, 2017, 4:48:58 PM11/19/17
to gaffer-dev
I've just updated my branch with stuff I had locally here, like missing .exe's (saves people trying to go look for these). Might need to do the same for patch.exe for OCIO, as I study the appleseed-deps they did this also recently.

Regis Vaquette

unread,
Dec 7, 2017, 3:30:16 AM12/7/17
to gaffer-dev
Hello!

Is there any chance to test the Windows version of Gaffer? I am very interested into this porting, thanks you very much for all your effort to bring Gaffer to Windows!!!

Cheers,

Regis

Eric Mehl

unread,
Dec 9, 2017, 4:17:59 PM12/9/17
to gaffer-dev
Alex's build from July is working for me, though I'm not using it in production. It's definitely enough to get it running and learn some of the basics.

Regis Vaquette

unread,
Dec 9, 2017, 4:57:27 PM12/9/17
to gaffe...@googlegroups.com
Thanks a lot, Eric!

--
You received this message because you are subscribed to a topic in the Google Groups "gaffer-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gaffer-dev/rQraWNbDxaU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gaffer-dev+unsubscribe@googlegroups.com.

Alex Fuller

unread,
Dec 25, 2017, 3:08:54 PM12/25/17
to gaffer-dev
Seems like this time around I'm falling into some of these problems as well Eric. Also boost always wanting to link the system-level .dll of python which is clearly wrong, so I had to force it to find python27.lib in the build directory. Your patches for OpenSSL have been working well for me so far also, cheers!

I'm actually compiling against MSVC 2017 this time around, it seems to be more like a point release to 2015 but it should have the boost::python base class template bug fixed, which is the main reason for me dropping 2015 (and 2013 has only partial support for C++11 which OpenVDB needs full support apparently). Same for USD, I think 2013 is not supported for that either. 

I guess using a later compiler is ok as USD/VDB seems to link with like Maya still and they are fairly conservative with MSVC compilers, how else do they get those libraries to work?
Thanks a lot, Eric!

To unsubscribe from this group and all its topics, send an email to gaffer-dev+...@googlegroups.com.

Alex Fuller

unread,
Dec 28, 2017, 6:13:21 PM12/28/17
to gaffer-dev

There we go, too easy....! I'll package it up soon.

Alex Fuller

unread,
Dec 28, 2017, 8:13:40 PM12/28/17
to gaffer-dev
Try it out here:

If you want, you can clone the msvc2 branch from my repo and use the gafferDependencies:

Make sure you navigate to the bin directory and run:
gaffer_env.bat
gaffer.bat

No need to set GAFFER_ROOT anymore, but you probably need to set ARNOLD_ROOT if you want Arnold support before running gaffer_env.bat. For some reason the menus don't appear just yet, maybe something changed in the Arnold 5 python library? I'm using Arnold 5.0.2.3 on windows here.

Cheers

Eric Mehl

unread,
Dec 29, 2017, 10:04:02 AM12/29/17
to gaffer-dev
Awesome work Alex! I don't know about the "easy" part though, thanks for sorting out all those build issues and getting it working on Windows.

I've been trying to break off some time to update to your latest but haven't managed it yet. I'll try and reproduce your success and let you know how it goes as soon as I have the chance.

Alex Fuller

unread,
Dec 29, 2017, 3:23:43 PM12/29/17
to gaffer-dev
Still not happy with the python home layout on windows vs linux, causes issues with libraries trying to find it if I move things around to reflect more like linux. I couldn't get PySide2 to build cleanly yet, and the headers for python just go straight into include/ which I'll need to investigate later and shuffle into include/python2.7/

Other than that, openvdb fails to build the viewer but it will build the lib, I just manually copied over the headers/lib for now but I'll probably just go in there and disable the viewer build.

Satish Goda

unread,
Feb 21, 2018, 1:59:49 AM2/21/18
to gaffer-dev
First of all, thank you for your work on Windows build. Having Gaffer and supporting tools available on Windows opens up lots of doors!

But, after setting the environment variables and running gaffer.bat, I am getting the following errors on Windows 10. Any help would be appreciated. Thank you.

C:\>C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\bin\gaffer.bat

C:\>python C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\bin\../bin/gaffer.py
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 253, in resizeEvent
    owner._makeCurrent()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 172, in _makeCurrent
    return self.__framebufferValid()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 45, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 253, in resizeEvent
    owner._makeCurrent()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 172, in _makeCurrent
    return self.__framebufferValid()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 403, in drawBackground
    self.__backgroundDrawFunction()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\Gaffer\WeakMethod.py", line 67, in __call__
    return m( *args, **kwArgs )
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 187, in __draw
    if not self.__framebufferValid() :
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 403, in drawBackground
    self.__backgroundDrawFunction()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\Gaffer\WeakMethod.py", line 67, in __call__
    return m( *args, **kwArgs )
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 187, in __draw
    if not self.__framebufferValid() :
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 403, in drawBackground
    self.__backgroundDrawFunction()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\Gaffer\WeakMethod.py", line 67, in __call__
    return m( *args, **kwArgs )
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 187, in __draw
    if not self.__framebufferValid() :
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 403, in drawBackground
    self.__backgroundDrawFunction()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\Gaffer\WeakMethod.py", line 67, in __call__
    return m( *args, **kwArgs )
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 187, in __draw
    if not self.__framebufferValid() :
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0
Traceback (most recent call last):
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 403, in drawBackground
    self.__backgroundDrawFunction()
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\Gaffer\WeakMethod.py", line 67, in __call__
    return m( *args, **kwArgs )
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 187, in __draw
    if not self.__framebufferValid() :
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\GafferUI\GLWidget.py", line 177, in __framebufferValid
    return GL.framebufferobjects.glCheckFramebufferStatus( GL.framebufferobjects.GL_FRAMEBUFFER ) == GL.framebufferobjects.GL_FRAMEBUFFER_COMPLETE
  File "C:\Users\odw\Downloads\tools\gaffer-0.42.0.0-windows-msvc2017\python\OpenGL\latebind.py", line 41, in __call__
    return self._finalCall( *args, **named )
WindowsError: exception: access violation writing 0xFFFFFFFFED3963E0

C:\>

Daniel Dresser

unread,
Feb 21, 2018, 3:17:47 AM2/21/18
to gaffer-dev
I don't know anything about the Windows build, but with a GL error, my first question is what your GPU is?  On Linux, I think we currently have issues with integrated Intel cards, though the driver situation on Windows is probably completely different.

Alex Fuller

unread,
Feb 21, 2018, 12:39:45 PM2/21/18
to gaffer-dev
Oh dear, yeah Daniel would be right it's probably something to do with your OpenGL implementation. So far I've only tested on an Nvidia card (GTX 1080 to be precise). I do suppress a while loop on windows for glGetError calls for window resizing events on my end as it causes an infinite loop and will never start up otherwise:

Maybe there's something else to this, I haven't investigated much after doing this quick workaround.

Satish Goda

unread,
Feb 21, 2018, 1:44:48 PM2/21/18
to gaffe...@googlegroups.com
Thank you Daniel and Alex.

Yes, my laptop has an Intel(R) Iris(TM) Pro Graphics P580 and that could be the reason. I will try it out on a machine with Nvidia GPU later in the week. 

Cheers,

--
You received this message because you are subscribed to a topic in the Google Groups "gaffer-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gaffer-dev/rQraWNbDxaU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gaffer-dev+unsubscribe@googlegroups.com.

John Haddon

unread,
Feb 21, 2018, 2:13:23 PM2/21/18
to gaffe...@googlegroups.com
On 21 February 2018 at 08:17, Daniel Dresser <dres...@gmail.com> wrote:
On Linux, I think we currently have issues with integrated Intel cards

I think I made some progress on a related issue recently actually. I discovered that the open source nouveau/mesa drivers link to LLVM, as does Gaffer, and that a version clash was resulting in crashes. Static linking LLVM into Gaffer and hiding the symbols fixed this. The fix should make it into the next major release, at which point I'm very curious to see if there are any remaining graphics-card compatibility issues for folks without NVIDIA drivers...

 

Alex Fuller

unread,
Feb 21, 2018, 2:21:30 PM2/21/18
to gaffer-dev
Hi John,

I'm already doing static builds of LLVM on windows as dynamic isn't supported in 3.4, possibly Intel's support for old GL code and 2.1 might be flimsy in general.

Cheers

Sam Hodge

unread,
Feb 21, 2018, 9:29:48 PM2/21/18
to gaffer-dev
High five, persistence pays off.

Eric Mehl

unread,
Mar 22, 2018, 4:22:43 PM3/22/18
to gaffer-dev
Hi Alex! I'm working some small adaptations of the Gaffer, Gaffer dependencies and Cortex code to get it building on my CI tool. I have the dependencies and Cortex building now but when I tried compiling Gaffer (either in TeamCity which is what I use for CI or just building by hand with the batch command) it's giving me a number of errors.

I haven't dug into them yet, but I figured I would double check that the code you used to successfully build Gaffer and Cortex is on your Github repo. Is your GitHub up to date with your latest?

Hopefully when I get these builds working I can contribute to making it work on AppVeyor or something else if that is desirable.

Alex Fuller

unread,
Mar 22, 2018, 4:50:42 PM3/22/18
to gaffer-dev
Hey Eric,

I haven't updated to the latest Gaffer I don't think only Cortex for the most part, I haven't had the time recently to work on this. The CI stuff sounds great and definitely in-line with what was being planned eventually. The symbols are exported now in Gaffer mainline, but I think some exports in Cortex particularly the template stuff probably needs a once-over.

Cheers

Eric Mehl

unread,
Mar 22, 2018, 5:21:52 PM3/22/18
to gaffer-dev
Cool, my goal is to get the windows code caught up to 0.42 and then tackle any changes that need to be made to 0.43 code and beyond.

Alex Fuller

unread,
Mar 22, 2018, 6:14:40 PM3/22/18
to gaffer-dev
Actually 0.42.0.0 should be this:

Thought you meant like 0.45.0.0, that still needs doing. Also need to do a refresher on those dependencies, they're becoming tarballs now...

Eric Mehl

unread,
Mar 22, 2018, 6:53:40 PM3/22/18
to gaffe...@googlegroups.com
0.42 is what I'm working on building, even up to date with your latest work. I got success returned from all the dependencies including Cortex (the latest I could find on your Cortex fork). It's unhappy about some data conversions in typeddata.inl and a few other small glitches.

It's probably something not getting detected right by the build scripts on my side as the dependencies compile. I'll have a look through and see what I can sort out.

--
You received this message because you are subscribed to a topic in the Google Groups "gaffer-dev" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/gaffer-dev/rQraWNbDxaU/unsubscribe.
To unsubscribe from this group and all its topics, send an email to gaffer-dev+...@googlegroups.com.

Eric Mehl

unread,
Mar 22, 2018, 7:18:16 PM3/22/18
to gaffer-dev
Maybe I'm not on the right Cortex, I remember there were some missing bits (or was it purposeful?) like Platform.h from your windows4 branch. I ended up sorting it by pulling some things from your windows3 branch. But maybe that was an error? It compiles but might not be quite right.

Alex Fuller

unread,
Mar 22, 2018, 7:26:21 PM3/22/18
to gaffer-dev
Yep the windows4 branch is a much more recent cortex that has the symbol exports made by John in preparation of updating gaffer afterwards, but then OT started at my current job and I was part-way refactoring a new branch for the dependencies.

Eric Mehl

unread,
Mar 22, 2018, 7:50:13 PM3/22/18
to gaffer-dev
Gotcha, that makes complete sense. I saw some of your discussion with John and others on GitHub, so maybe I'll try and do the rebase he mentioned and pick up where you left off. I'm still very much learning (and on a little OT of my own) so no guarantees I'll make progress, but I'll see what I can do.

dan...@image-engine.com

unread,
Mar 22, 2018, 8:10:28 PM3/22/18
to gaffer-dev
Yeah, last I looked at some of Alex's stuff, it was looking pretty close to being good to go after a rebase.  I haven't been following things too closely ( and I don't have a Windows box to test on ), but there are folks around who can try to point you in the right direction if you run into questions.

Eddie J. L. Christian

unread,
Apr 16, 2019, 12:28:40 PM4/16/19
to gaffer-dev
Silly question, I just found this and I am wondering how I start the windows build?

Eric Mehl

unread,
Apr 16, 2019, 12:44:09 PM4/16/19
to gaffer-dev
I think the best option is my the release on my fork here: https://github.com/hypothetical-inc/gaffer/releases/tag/0.52.0.0-beta. You should be able to just download the release, unzip and run the gaffer.bat and it will get you started.

I thought I had released a more recent beta but I'm not finding it. I'll get that up this weekend - it includes some nice new support for Arnold, USD, scattering points, etc.

jeff....@gmail.com

unread,
May 7, 2019, 4:08:36 PM5/7/19
to gaffer-dev
On Wednesday, July 5, 2017 at 4:42:18 AM UTC-4, Alex Fuller wrote:
> Hi all, thought I'd link a victory pic here of what's to come:
>
> This has taken a lot longer than I had anticipated, lets just say that.... ;)
>
>
> For interested people you can poke around here https://github.com/boberfly/gaffer/tree/msvc
>
>
> Cheers all!

More windows Love. Apple is going in the shitter for pros.

Eric Mehl

unread,
Jun 29, 2019, 3:29:34 PM6/29/19
to gaffer-dev
For those interested, I just released a new build of my Windows fork here: https://github.com/hypothetical-inc/gaffer/releases/tag/0.53.6.2-beta

It corresponds to the main 0.53.6.2 release. A number of things were fixed and it's getting closer to being more widely useful. It has very preliminary Arnold and Appleseed support but I'm finding it crashes with any actual scene rendering (Interactive or regular renders). But shader previews work so it's a step in the right direction.

If you want to fork this fork, it's probably best to check in with me first - this build is based on a bit of a funky merge that combines a number of work-in-progress branches that will continue to evolve.

Alex Fuller

unread,
Jun 30, 2019, 8:27:12 PM6/30/19
to gaffer-dev
Great work Eric! This will help a lot having pre-made builds to test with.

Miguel González Viñé

unread,
Jul 1, 2019, 7:27:50 AM7/1/19
to gaffe...@googlegroups.com
Thanks a lot for this build.
The gafferbot and all the alembic files I've tested work perfectly! Great work!

I've tried shader previews for Arnold and Appleseed, and Gaffer crashes here on Windows 7 and Windows 10.

I've tried with Arnold 5.3.1.1 and Arnold 5.2.1.0, and this is the output after run a clean Gaffer session and try to create an "aiStandardSurface":
WARNING : GafferArnold::ParameterHandler::setupPlug : Unsupported parameter "matrix" of type "ARRAY" on node "ArnoldShaderBall.__skyDome" of type "skydome_light"
WARNING : GafferArnold::ParameterHandler::setupPlug : Unsupported parameter "filters" of type "ARRAY" on node "ArnoldShaderBall.__skyDome" of type "skydome_light"
WARNING : GafferArnold::ParameterHandler::setupPlug : Unsupported parameter "shader" of type "NODE" on node "ArnoldShaderBall.__skyDome" of type "skydome_light"
00:00:08   447MB ERROR   | signal caught: error C0000005 -- access violation

****
* Arnold 5.3.1.1 [ab89cffa] windows icc-17.0.2 oiio-2.1.0 osl-1.11.0 vdb-4.0.0 clm-1.0.3.513 rlm-12.4.2 optix-6.0.0 2019/06/04 08:43:01
* CRASHED in AiArrayCopy at 00:00:00, pixel (0, 0)
* signal caught: error C0000005 -- access violation
*
* backtrace:
*  0 0x000007fe7b00808e [ai                        ]
*  1 0x000007fe7b00732f [ai                        ]
*  2 0x0000000076f1bc20 [kernel32                  ] UnhandledExceptionFilter
*  3 0x0000000077119015 [ntdll                     ] longjmp
*  4 0x00000000770f7388 [ntdll                     ] _C_specific_handler
*  5 0x000000007710bf7d [ntdll                     ] _chkstk
*  6 0x00000000770e043a [ntdll                     ] RtlInitializeResource
*  7 0x000000007710b61e [ntdll                     ] KiUserExceptionDispatcher
>> 8 0x000007fe7acdfea6 [ai                        ] AiArrayCopy
*  9 0x000007fe7ae6aebb [ai                        ] AiGetVersion
* 10 0x000007fe7afe4258 [ai                        ] AiNodeSetStr
* 11 0x000007fe7ab47f79 [GafferArnold              ] IECore::GeometricTypedData<Imath_2_2::Vec3<float> >::operator=
* 12 0x000007fe7ab3c8ea [GafferArnold              ] IECore::CubicBasis<float>::operator=
* 13 0x000007fe7ab438a6 [GafferArnold              ] IECore::GeometricTypedData<Imath_2_2::Vec3<float> >::operator=
* 14 0x000007fe87ed47a4 [GafferScene               ] IECoreScenePreview::Renderer::create
* 15 0x000007fe87e616ef [GafferScene               ] GafferScene::InteractiveRender::update
* 16 0x000007fe87e61302 [GafferScene               ] GafferScene::InteractiveRender::plugDirtied
* 17 0x000007fe977e98be [Gaffer                    ] Gaffer::Animation::CurvePlug::staticTypeName
* 18 0x000007fe9780b21c [Gaffer                    ] Gaffer::CompoundPathFilter::~CompoundPathFilter
* 19 0x000007fe9784e2fc [Gaffer                    ] Gaffer::PerformanceMonitor::processStarted
* 20 0x000007fe9784df33 [Gaffer                    ] Gaffer::PerformanceMonitor::processStarted
* 21 0x000007fe9785088c [Gaffer                    ] Gaffer::Plug::direction
* 22 0x000007fe97818c22 [Gaffer                    ] Gaffer::DirtyPropagationScope::~DirtyPropagationScope
* 23 0x000007fe97851bc8 [Gaffer                    ] Gaffer::Plug::propagateDirtiness
* 24 0x000007fe97879a7e [Gaffer                    ] Gaffer::ValuePlug::dirty
* 25 0x000007fe977e39e7 [Gaffer                    ] Gaffer::Action::enact
* 26 0x000007fe9787b076 [Gaffer                    ] Gaffer::ValuePlug::setObjectValue
* 27 0x000007fe97848e73 [Gaffer                    ] Gaffer::NumericPlug<int>::setValue
* 28 0x000007fe88023db5 [GafferSceneUI             ] GafferSceneUI::ShaderView::idleUpdate
* 29 0x000007fe778f2467 [_GafferOSL                ]
* 30 0x000007fe779073ed [_GafferOSL                ] Gaffer::TypedPlug<bool>::`default constructor closure'
* 31 0x000007fe7790313e [_GafferOSL                ] IECore::TypedDataTraits<unsigned short>::operator=
* 32 0x000007fef5031442 [boost_python-vc140-mt-1_61] boost::python::objects::function::call
* 33 0x000007fef503189a [boost_python-vc140-mt-1_61] boost::python::objects::function::get_namespace
* 34 0x000007fef5037ef4 [boost_python-vc140-mt-1_61] boost::python::detail::exception_handler::operator()
* 35 0x000007fe85319c81 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 36 0x000007fe85319c51 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 37 0x000007fe85319c21 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 38 0x000007fe85319bf1 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 39 0x000007fe85319bc1 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 40 0x000007fe85319b91 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 41 0x000007fe85319b61 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 42 0x000007fe85319b31 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 43 0x000007fe85319b01 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 44 0x000007fe85319ad1 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 45 0x000007fe85319aa1 [pyopenvdb                 ] openvdb::v4_0_2::GridBase::writeTransform
* 46 0x000007fe8b8b77bc [IECorePython              ] IECorePython::bindCanceller
* 47 0x000007fe8b90ddc1 [IECorePython              ] IECorePython::bindException
* 48 0x000007fef524ff41 [iex                       ]
* 49 0x000007fef5038222 [boost_python-vc140-mt-1_61] boost::python::handle_exception_impl
* 50 0x000007fef502f6ae [boost_python-vc140-mt-1_61] boost::python::objects::static_data
* 51 0x000007fe8d0844dd [python27                  ] PyObject_Call
* 52 0x000007fe8d092c5f [python27                  ] PyCell_Set
* 53 0x000007fe8d0844dd [python27                  ] PyObject_Call
* 54 0x000007fe8d0c921e [python27                  ] PyType_GenericNew
* 55 0x000007fe8d0844dd [python27                  ] PyObject_Call
* 56 0x000007fe8d0f7dea [python27                  ] Py_CheckRecursiveCall
* 57 0x000007fe8d0f7914 [python27                  ] Py_CheckRecursiveCall
* 58 0x000007fe8d0f5c32 [python27                  ] PyEval_EvalFrameEx
* 59 0x000007fe8d0f33d5 [python27                  ] PyEval_EvalCodeEx
* 60 0x000007fe8d0abd15 [python27                  ] PyFrame_Init
* 61 0x000007fe8d0844dd [python27                  ] PyObject_Call
* 62 0x000007fe8d0f2b7c [python27                  ] PyEval_CallObjectWithKeywords
* 63 0x000007fe9dbe6173 [pyside2                   ] PySide::SignalManager::callPythonMetaMethod
* 64 0x000007fe9dbea199 [pyside2                   ] PySide::SignalManager::retriveMetaObject
* 65 0x0000000066aee58d [Qt5Core                   ] QMetaObject::activate
* 66 0x000007fe897df94f [QtCore                    ]
* 67 0x0000000066af2bb8 [Qt5Core                   ] QObject::event
* 68 0x000007fe897df312 [QtCore                    ]
* 69 0x00000000640d84cf [Qt5Widgets                ] QApplicationPrivate::notify_helper
* 70 0x00000000640d739c [Qt5Widgets                ] QApplication::notify
* 71 0x000007fe88c7216d [QtWidgets                 ]
* 72 0x0000000066acdfc9 [Qt5Core                   ] QCoreApplication::notifyInternal2
* 73 0x0000000066b123e8 [Qt5Core                   ] QEventDispatcherWin32::event
* 74 0x00000000640d84cf [Qt5Widgets                ] QApplicationPrivate::notify_helper
* 75 0x00000000640d739c [Qt5Widgets                ] QApplication::notify
* 76 0x000007fe88c7216d [QtWidgets                 ]
* 77 0x0000000066acdfc9 [Qt5Core                   ] QCoreApplication::notifyInternal2
* 78 0x0000000066acfca1 [Qt5Core                   ] QCoreApplicationPrivate::sendPostedEvents
* 79 0x000007fe88a285df [qwindows                  ] qt_plugin_query_metadata
* 80 0x0000000066b13524 [Qt5Core                   ] QEventDispatcherWin32::processEvents
* 81 0x0000000076fb9bbd [USER32                    ] TranslateMessageEx
* 82 0x0000000076fb98c2 [USER32                    ] TranslateMessage
* 83 0x0000000066b12dc9 [Qt5Core                   ] QEventDispatcherWin32::processEvents
* 84 0x000007fe88a285b9 [qwindows                  ] qt_plugin_query_metadata
* 85 0x0000000066acad69 [Qt5Core                   ] QEventLoop::exec
* 86 0x0000000066acd170 [Qt5Core                   ] QCoreApplication::exec
* 87 0x000007fe88c6ee32 [QtWidgets                 ]
* 88 0x000007fe8d0f7716 [python27                  ] Py_CheckRecursiveCall
* 89 0x000007fe8d0f5c32 [python27                  ] PyEval_EvalFrameEx
* 90 0x000007fe8d0f88b8 [python27                  ] Py_CheckRecursiveCall
* 91 0x000007fe8d0f7907 [python27                  ] Py_CheckRecursiveCall
* 92 0x000007fe8d0f5c32 [python27                  ] PyEval_EvalFrameEx
* 93 0x000007fe8d0f88b8 [python27                  ] Py_CheckRecursiveCall
* 94 0x000007fe8d0f7907 [python27                  ] Py_CheckRecursiveCall
* 95 0x000007fe8d0f5c32 [python27                  ] PyEval_EvalFrameEx
* 96 0x000007fe8d0f88b8 [python27                  ] Py_CheckRecursiveCall
* 97 0x000007fe8d0f7907 [python27                  ] Py_CheckRecursiveCall
* 98 0x000007fe8d0f5c32 [python27                  ] PyEval_EvalFrameEx
* 99 0x000007fe8d0f88b8 [python27                  ] Py_CheckRecursiveCall
*
* loaded modules:
*    0x000007fe7acd0000  ai
*    0x0000000076e80000  kernel32
*    0x00000000770a0000  ntdll
*    0x000007fe7ab10000  GafferArnold
*    0x000007fe87e00000  GafferScene
*    0x000007fe977e0000  Gaffer
*    0x000007fe87fe0000  GafferSceneUI
*    0x000007fe778f0000  _GafferOSL
*    0x000007fef5020000  boost_python-vc140-mt-1_61
*    0x000007fe85240000  pyopenvdb
*    0x000007fe8b860000  IECorePython
*    0x000007fef5220000  iex
*    0x000007fe8d060000  python27
*    0x000007fe9dbe0000  pyside2
*    0x0000000066920000  Qt5Core
*    0x000007fe89680000  QtCore
*    0x00000000640c0000  Qt5Widgets
*    0x000007fe88c30000  QtWidgets
*    0x000007fe889d0000  qwindows
*    0x0000000076fa0000  USER32
****


Appleseed is less informative:
C:\Users\blue\Downloads\gaffer-0.53.6.2-windows\bin>if -1073741819 NEQ 0 (
echo "Error(s) running Gaffer"
 exit /b -1073741819
)
"Error(s) running Gaffer"


Thanks again for upload this build, so we can play with it.



--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/7a15f32e-1085-4e5a-9eee-edb8301cf145%40googlegroups.com.

Eric Mehl

unread,
Jul 1, 2019, 11:25:17 AM7/1/19
to gaffer-dev
I'm getting that crash now too Miguel, thanks for pointing it out. My dev build is not crashing so there must be something my CI builds are not including or are doing differently that causes the crash.

I'll have a look at it this week.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.

Daniel Dresser

unread,
Jul 1, 2019, 12:53:13 PM7/1/19
to gaffer-dev
Hmmm, those errors sound like a really old Arnold version.  I'd have to double once I get to work and have a bunch of old versions handy, but I think skydome_light has no shader parameter, that might mean you're on Arnold 4.
If you've statically linked to an old libArnold, that could explain the issue.

Eric Mehl

unread,
Jul 1, 2019, 5:33:49 PM7/1/19
to gaffer-dev
I'm linking it to Arnold 5.1.1.1 - do you think that version would be affected by the skydome issue too? I'm linking against their demo standalone SDK and I found another discrepancy between their Windows and Arnold SDK earlier so maybe this is another? Though I think the warnings on the plugs may be a bigger problem with the Windows builds - I get similar warnings even with successful Arnold and Appleseed material previews, so I bet there are dots I'm not connecting to get the parameters set up right.

Eric Mehl

unread,
Jul 1, 2019, 5:42:02 PM7/1/19
to gaffer-dev
Actually I misspoke about linking to Arnold, it should be dynamically linking so using whatever the user's ai.dll version corresponds to.

Daniel Dresser

unread,
Jul 2, 2019, 12:45:12 PM7/2/19
to gaffer-dev
OK, holiday is over, I'm back at work, and thinking about it more clearly, my the specifics of my comment yesterday are gibberish - those are Gaffer unsupported parameter warnings on skydome_light, not Arnold not knowing about a parameter.  So those warnings are nothing to do with an old Arnold version, and not the cause of the crash.

Looking at the stack trace more closely though, it does still look like something has gone badly wrong in linking the Arnold API.  The crash is while using AiGetVersion to try and determine the Arnold version, this is probably just one of the first Arnold API functions to be called.  So it's probably the whole Arnold API that isn't linked properly.

> it should be dynamically linking so using whatever the user's ai.dll version corresponds to.

OK, so you that means you need binary compatibility between the version of Arnold you built with, and the version you are trying to dynamically link.  It sounds ilke you built with 5.1.1.1, and the stack trace shows it's running with 5.3.1.1
Arnold versions that far apart are not binary compatible, so that would make some sense of your crash.

-Daniel

Miguel González Viñé

unread,
Jul 2, 2019, 3:56:19 PM7/2/19
to gaffe...@googlegroups.com
You're absolutely right Daniel. I've just test it with Arnold 5.1.1.1 and it works! I'm so happy to see a shader ball with Arnold inside Gaffer on Windows :)
Don't know why Appleseed is not working, but it works in Eric dev build.

Thanks.

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/96667cc1-6f81-4e30-8180-1ed9772dde7d%40googlegroups.com.

Eric Mehl

unread,
Jul 15, 2019, 6:18:25 PM7/15/19
to gaffer-dev
Miguel - I've been working on getting rendering going on both Arnold and Appleseed and I'm hoping you might have a minute to try something out for me. If you use your Arnold 5.1.1.1 build and do a quick scene from scratch that includes StandardOptions, Outputs nodes and such (from the gafferhq.org tutorial or similar), are you able to render with Arnold? From a regular camera, not just a material preview?

I found a bug in my Windows versions that are making them crash when loading scenes created with non-Windows Gaffer that have Outputs nodes, but I think if you put down a new Outputs node in this latest Windows build and render with Arnold (Appleseed is definitely not working yet) it should render. I'm having success with that so I'm hoping you can replicate it.

thanks!

On Tuesday, July 2, 2019 at 3:56:19 PM UTC-4, Miguel González Viñé wrote:
You're absolutely right Daniel. I've just test it with Arnold 5.1.1.1 and it works! I'm so happy to see a shader ball with Arnold inside Gaffer on Windows :)
Don't know why Appleseed is not working, but it works in Eric dev build.

Thanks.

El mar., 2 de jul. de 2019 a la(s) 18:45, Daniel Dresser (dan...@image-engine.com) escribió:
OK, holiday is over, I'm back at work, and thinking about it more clearly, my the specifics of my comment yesterday are gibberish - those are Gaffer unsupported parameter warnings on skydome_light, not Arnold not knowing about a parameter.  So those warnings are nothing to do with an old Arnold version, and not the cause of the crash.

Looking at the stack trace more closely though, it does still look like something has gone badly wrong in linking the Arnold API.  The crash is while using AiGetVersion to try and determine the Arnold version, this is probably just one of the first Arnold API functions to be called.  So it's probably the whole Arnold API that isn't linked properly.

> it should be dynamically linking so using whatever the user's ai.dll version corresponds to.

OK, so you that means you need binary compatibility between the version of Arnold you built with, and the version you are trying to dynamically link.  It sounds ilke you built with 5.1.1.1, and the stack trace shows it's running with 5.3.1.1
Arnold versions that far apart are not binary compatible, so that would make some sense of your crash.

-Daniel

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.

Juri Fripp

unread,
Jul 15, 2019, 10:46:22 PM7/15/19
to gaffe...@googlegroups.com
Hi Miguel,

I just tried out gaffer-0.53.6.2-windows precompiled version on Windows with the Arnold 5.1.1 SDK and have had sucessful renders! Which is great news! I've attached the scene and a screenshot
gaffer-0.53.6.2-windows.PNG
Really excited to be able to start testing Gaffer out on Windows. If there are further tests you would like performed I'm happy to help out however I can.

Thanks,
Juri

To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/cfcd2ba3-e366-43dd-b7cd-7840251e507b%40googlegroups.com.
test_gafferBot.gfr

Miguel González Viñé

unread,
Jul 16, 2019, 9:22:02 AM7/16/19
to gaffe...@googlegroups.com
Hi Eric. Sorry, we were finishing two projects at the same time and I'm this week on holidays. But I've just try it and it works! Juri was faster than me :)

I did not have time to test it in depth, so I always tried it with some existing scenes.

So happy to see this working! Can't wait to come back to test some Lookdevs in Gaffer.

Thanks!

To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/cfcd2ba3-e366-43dd-b7cd-7840251e507b%40googlegroups.com.

Eric Mehl

unread,
Jul 16, 2019, 10:36:33 AM7/16/19
to gaffer-dev
Great to hear it's working! Thanks for trying that out Juri and Miguel. I'm excited to hear how to get along with it.

Daniel - how are you currently handling Arnold versions for the release builds? I figure I should keep to your system for consistency unless people prefer the Windows build sticks to a specific version of Arnold. As noted above I'm building against 5.1.1.1 right now which I gather is out of date. Are you always building Gaffer releases with the latest Arnold or is there a more official "we're now upgrading the Arnold version" at various times?

John Haddon

unread,
Jul 16, 2019, 10:54:43 AM7/16/19
to gaffe...@googlegroups.com
On Tue, 16 Jul 2019 at 15:36, Eric Mehl <eric...@gmail.com> wrote:
how are you currently handling Arnold versions for the release builds? I figure I should keep to your system for consistency unless people prefer the Windows build sticks to a specific version of Arnold. As noted above I'm building against 5.1.1.1 right now which I gather is out of date. Are you always building Gaffer releases with the latest Arnold or is there a more official "we're now upgrading the Arnold version" at various times?

Because there's a lot of overhead involved in maintaining and testing the public release builds, we only ever build releases against a single Arnold version for any given Gaffer version. Typically Arnold maintains binary compatibility between releases so this still leaves a lot of leeway for the user to choose a different version. The upcoming Gaffer 0.54 will be built against Arnold 5.3 for instance, but should still be usable with Arnold 5.2. The current Arnold version, as Gaffer sees it, is stored in `config/installArnold.sh`. Unless there's a good reason why not, I would recommend that the Windows builds match the Linux and MacOS builds in this respect, and target Arnold 5.3.





Eric Mehl

unread,
Jul 16, 2019, 10:59:10 AM7/16/19
to gaffer-dev
Perfect, thanks John! I'll keep an eye on the installArnold.sh script in the future to make sure we're in sync.

John Haddon

unread,
Jul 16, 2019, 11:05:11 AM7/16/19
to gaffe...@googlegroups.com
Great! I'm hoping that as we improve our Azure-pipelines-foo and merge your changes with the main repo, we'll slowly get to a point where the entire release process for all platforms is automated and all versions etc are driven by config in the repo...

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/37cc60ee-916a-42fd-9af6-63e64715a569%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


--
John Haddon - R&D Programmer
Image Engine
studio: +1-604-874-5634 | jo...@image-engine.com | www.image-engine.com



15 West 5th Avenue, Vancouver, BC, V5Y 1H4, Canada

If you are not the intended recipient, disclosure, copying, distribution and use of this email is prohibited. Please notify us immediately and delete this email from your systems. You may contact us at in...@image-engine.com if you do not wish to receive further commercial electronic messages. We may still send you messages for which we do not require consent.

Miguel González Viñé

unread,
Jul 25, 2019, 5:30:13 AM7/25/19
to gaffe...@googlegroups.com
Hi Eric,

I've been testing your build and it works pretty well! After a few test I wanted to try if I could get Yeti working and just creating an "ExternalProcedural" node crashes Gaffer. I know you're still working on a few crashes, so I just wanted to let you know this one in case you missed it.
This is the stack trace:
ERROR   | signal caught: error C0000005 -- access violation

****
* Arnold 5.1.1.1 [3849b993] windows icc-17.0.2 oiio-1.7.17 osl-1.9.0 vdb-4.0.0 clm-1.0.3.513 rlm-12.2.2 2018/06/26 21:12:06
* CRASHED in Gaffer::CompoundNumericPlug<Imath_2_2::Vec3<int> >::hash at 00:00:00, pixel (0, 0)

* signal caught: error C0000005 -- access violation
*
* backtrace:
*  0 0x000007fe6daa84de [ai         ]
*  1 0x000007fe6daa777f [ai         ]
*  2 0x0000000076f9bc20 [kernel32   ] UnhandledExceptionFilter
*  3 0x0000000077199015 [ntdll      ] longjmp
*  4 0x0000000077177388 [ntdll      ] _C_specific_handler
*  5 0x000000007718bf7d [ntdll      ] _chkstk
*  6 0x000000007716043a [ntdll      ] RtlInitializeResource
*  7 0x000000007718b61e [ntdll      ] KiUserExceptionDispatcher
>> 8 0x000007fecbdc6ba6 [Gaffer     ] Gaffer::CompoundNumericPlug<Imath_2_2::Vec3<int> >::hash
*  9 0x000007fea816f1de [GafferScene] GafferScene::ExternalProcedural::hashSource
* 10 0x000007fecbe38143 [Gaffer     ] Gaffer::UndoScope::~UndoScope
* 11 0x000007fecbe3a3ba [Gaffer     ] Gaffer::ValuePlug::getObjectValueIfCached
* 12 0x000007fecbe3a528 [Gaffer     ] Gaffer::ValuePlug::hash
* 13 0x000007fecbdc6bb4 [Gaffer     ] Gaffer::CompoundNumericPlug<Imath_2_2::Vec3<int> >::hash
* 14 0x000007fea81c7278 [GafferScene] GafferScene::SceneNode::hash
* 15 0x000007fea819ea54 [GafferScene] GafferScene::ObjectSource::hash
* 16 0x000007fecbe38143 [Gaffer     ] Gaffer::UndoScope::~UndoScope
* 17 0x000007fecbe3a3ba [Gaffer     ] Gaffer::ValuePlug::getObjectValueIfCached
* 18 0x000007fecbe3a528 [Gaffer     ] Gaffer::ValuePlug::hash
* 19 0x000007fea81667f2 [GafferScene] GafferScene::DeleteObject::hashObject
* 20 0x000007fea81c7278 [GafferScene] GafferScene::SceneNode::hash
* 21 0x000007fea81cc731 [GafferScene] GafferScene::SceneProcessor::hash
* 22 0x000007fecbe38143 [Gaffer     ] Gaffer::UndoScope::~UndoScope
* 23 0x000007fecbe3a3ba [Gaffer     ] Gaffer::ValuePlug::getObjectValueIfCached
* 24 0x000007fecbe3a528 [Gaffer     ] Gaffer::ValuePlug::hash
* 25 0x000007fea81b4942 [GafferScene] GafferScene::RenderController::updateMatchingPaths
* 26 0x000007fea81b31f2 [GafferScene] GafferScene::RenderController::update
* 27 0x000007fea81b20fa [GafferScene] GafferScene::RenderController::dirtySceneGraphs
* 28 0x000007feed72f3ce [tbb        ] tbb::recursive_mutex::scoped_lock::internal_try_acquire
* 29 0x000007fea81b2299 [GafferScene] GafferScene::RenderController::dirtySceneGraphs
* 30 0x000007feed72f3ce [tbb        ] tbb::recursive_mutex::scoped_lock::internal_try_acquire
* 31 0x000007feed730a1f [tbb        ] tbb::recursive_mutex::scoped_lock::internal_try_acquire
* 32 0x000007fea81b4752 [GafferScene] GafferScene::RenderController::updateInternal
* 33 0x000007fecbe09215 [Gaffer     ] Gaffer::NumericPlug<float>::staticTypeName
* 34 0x000007fecbdaeea1 [Gaffer     ] Gaffer::BackgroundTask::~BackgroundTask
* 35 0x000007fecbdafce3 [Gaffer     ] Gaffer::BackgroundTask::cancelAndWait
* 36 0x000007feed72f3ce [tbb        ] tbb::recursive_mutex::scoped_lock::internal_try_acquire
* 37 0x000007feed72361d [tbb        ] tbb::interface7::internal::task_arena_base::internal_wait
* 38 0x000007feed728ff4 [tbb        ] tbb::task_scheduler_init::terminate
* 39 0x000007feed72bd2c [tbb        ] tbb::thread_bound_filter::try_process_item
* 40 0x000007feed72becd [tbb        ] tbb::thread_bound_filter::try_process_item
* 41 0x000007fef917cd70 [ucrtbase   ] o__realloc_base
* 42 0x0000000076f159cd [kernel32   ] BaseThreadInitThunk
* 43 0x000000007717385d [ntdll      ] RtlUserThreadStart
*
* loaded modules:
*    0x000007fe6d800000  ai
*    0x0000000076f00000  kernel32
*    0x0000000077120000  ntdll
*    0x000007fecbda0000  Gaffer
*    0x000007fea8130000  GafferScene
*    0x000007feed720000  tbb
*    0x000007fef9160000  ucrtbase
****


Just create an "ExternalProcedural" node in a new Gaffer session and it will crash. If I don't set ARNOLD_ROOT env variable, it crashes without any message.

As Appleseed still doesn't work and OSL shader previews render with it, Is it possible to render OSL shader previews with Arnold? Changing some config file or environment variable?

Thanks. Cheers,
Miguel

Eric Mehl

unread,
Jul 25, 2019, 1:03:48 PM7/25/19
to gaffer-dev
Hey Miguel,
Great to hear it's working well for you! Thanks for pointing out that crash - it turns out it was an oversight of mine when adding the new FileSystemPathPlug I created for Windows. It was a quick fix so I put up a new version here: https://github.com/hypothetical-inc/gaffer/releases/tag/0.53.6.3-beta

Give that one a try and let me know how it works. I'm interested to hear how the Yeti ExternalProcedural works out - yours will be the first test that I know of with ExternalProcedural on Windows.

- Eric
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.


--
John Haddon - R&D Programmer
Image Engine
studio: +1-604-874-5634 | jo...@image-engine.com | www.image-engine.com



15 West 5th Avenue, Vancouver, BC, V5Y 1H4, Canada

If you are not the intended recipient, disclosure, copying, distribution and use of this email is prohibited. Please notify us immediately and delete this email from your systems. You may contact us at in...@image-engine.com if you do not wish to receive further commercial electronic messages. We may still send you messages for which we do not require consent.

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.

Miguel González Viñé

unread,
Jul 26, 2019, 7:21:30 AM7/26/19
to gaffe...@googlegroups.com
Hey Eric, 
that was fast. Thanks!

I've been testing the ExternalProcedural node and it works great. I've made a few test with .ass Arnold files and also directly using it as a pgYetiArnold procedural.

When I use ExternalProcedural node with an .ass file and there's some pgYetiArnold procedural inside, it renders fine.

When I use ExternalProcedural node with the pgYetiArnold procedural, I can't see the fur in the render but all the curves are exported as I see in the Arnold log. So after a few tests, I've exported the Gaffer graph to an .ass Arnold file and I've seen that the pgYetiArnold has set visibility to 0, even if I create a new "visibility" parameter and set it to 255.
I've not have the time to test this on Mac, so I don't know if this is a Window build related thing or if I'm doing something wrong... but there's people in this list that have Yeti working with Gaffer.

image.png

I know this is Arnold related and you don't use it, so If anyone can shed some light, it'd be great.

Also I get this warnings:
00:00:02   791MB WARNING |   instance:b09c7522fe40623bdff1abfdd0ded0d9: could not read INT parameter "mode"
00:00:02   791MB WARNING |   instance:b09c7522fe40623bdff1abfdd0ded0d9: could not read FLOAT parameter "min_pixel_width"
I've tried adding an ArnoldAttributes node after the ExternalProcedural node but it doesn't work. The only way to get rid of these warnings is creating them in the ExternalProcedural node as I created the "samples" parameter.

Thanks!
Miguel


To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/50dcf68d-e7ed-4a8b-9350-80eff2f0b7af%40googlegroups.com.

Eric Mehl

unread,
Aug 20, 2019, 11:45:47 AM8/20/19
to gaffer-dev
Hello Windows thread peoples!
I have put up a new release of my work-in-progress Gaffer for Windows build here: https://github.com/hypothetical-inc/gaffer/releases/tag/0.54.1.0

It includes all the updates as of Gaffer 0.54.1.0 and also updates the Arnold build to version 5.3.1.0 - the same version as the main Gaffer releases.

I also have an updated set of dependencies that now include Cortex. This puts my fork in line with the main Linux standard of including all needed dependencies in one place. That release is here:

I'm continuing to work on getting Appleseed running - currently it is still suffering from crashes when the render engine is started.

I also overhauled the repository for the forks to hopefully make it clearer for anyone wanting to build it themselves. There are now only two branches on each of my Hypothetical GafferDependencies, Cortex and Gaffer forks. On those I will keep "master" in sync with GafferHQ master, and "msvc2017" the latest working MSVC build. I won't push code to the msvc2017 branch until I've verified it's working, so you have a reliable place to get working MSVC code.

I split the ongoing, messy work-in-progress builds to my personal GitHub account. Branches there will likely be more up-to-date but not as straightforward to work from so probably best to post an issue on those repositories so I can help you navigate the current state of things.

John Haddon

unread,
Aug 20, 2019, 11:47:59 AM8/20/19
to gaffe...@googlegroups.com
Good stuff! Thanks Eric!

To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/1e579749-43e5-4786-9083-d758a10b6cf4%40googlegroups.com.

Carlos Sifuentes

unread,
Aug 20, 2019, 5:42:12 PM8/20/19
to gaffe...@googlegroups.com

Miguel González Viñé

unread,
Aug 21, 2019, 4:51:12 AM8/21/19
to gaffe...@googlegroups.com
Great!! Thanks Eric! 

To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/1e579749-43e5-4786-9083-d758a10b6cf4%40googlegroups.com.
Message has been deleted

Carlos Sifuentes

unread,
Aug 29, 2019, 2:01:27 PM8/29/19
to gaffer-dev
I just downloaded gaffer windows and I have this error and the windows in black

gaffer win.jpg


Eric Mehl

unread,
Aug 29, 2019, 2:07:09 PM8/29/19
to gaffer-dev
I suspect it might be running on your built-in graphics card? Have a look at this post and see if it's the same problem: https://groups.google.com/d/msg/gaffer-dev/KDspEgxy65A/-dL4FC5vCAAJ

If it's a laptop and you have a dedicated graphics card in it, can you switch the driver to use that instead?

Carlos Sifuentes

unread,
Aug 30, 2019, 2:51:37 PM8/30/19
to gaffe...@googlegroups.com
problem solved

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.


--
Carlos Sifuentes Haro
3D Artistc17vfx.com



fix.PNG

Carlos Sifuentes

unread,
Sep 9, 2019, 1:06:57 PM9/9/19
to gaffer-dev

I've been having this error in my scene with Arnold

gaffer error.PNG



John Haddon

unread,
Sep 9, 2019, 1:37:54 PM9/9/19
to gaffe...@googlegroups.com
We shouldn't be trying to load the `matrix` parameter at all - we suppress it using this file :


That is added to Arnold's plugin path here :

Perhaps for some reason that isn't happening on Windows?
Cheers...
John


On Mon, 9 Sep 2019 at 10:06, Carlos Sifuentes <c17...@gmail.com> wrote:

I've been having this error in my scene with Arnold

gaffer error.PNG



--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.

Eric Mehl

unread,
Sep 10, 2019, 9:32:58 AM9/10/19
to gaffer-dev
Thanks for pointing that out Carlos!

John is right, the .mtd file isn't getting loaded because Windows separates paths in environment variables with a semi-colon instead of colon. In Cortex, Arnold splits on colon only so it should be a quick fix and have the nice side effect of organizing the Arnold menus on Windows better.

Carlos - is this causing any failures for you or is it just the warnings? I'll get this fixed in the next release which I'll probably time with the next official Gaffer release, but if it's keeping you from being able to use Gaffer / Arnold I can push it up to this week to keep you running.

On Monday, September 9, 2019 at 1:37:54 PM UTC-4, John Haddon wrote:
We shouldn't be trying to load the `matrix` parameter at all - we suppress it using this file :


That is added to Arnold's plugin path here :

Perhaps for some reason that isn't happening on Windows?
Cheers...
John


On Mon, 9 Sep 2019 at 10:06, Carlos Sifuentes <c17...@gmail.com> wrote:

I've been having this error in my scene with Arnold

gaffer error.PNG



--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.

Carlos Sifuentes

unread,
Sep 10, 2019, 4:17:03 PM9/10/19
to gaffer-dev
At the moment the error is only when opening the file. I keep doing my tests I will look forward to the final version

General TickTack

unread,
Sep 19, 2019, 5:53:16 AM9/19/19
to gaffer-dev
I just tested this with Arnold-5.3.1.1-windows and it works like a charm

thank you very much!

Carlos Sifuentes

unread,
Oct 16, 2019, 10:12:35 PM10/16/19
to gaffer-dev
hello, news for this branch?


El miércoles, 5 de julio de 2017, 3:42:18 (UTC-5), Alex Fuller escribió:
Hi all, thought I'd link a victory pic here of what's to come:

This has taken a lot longer than I had anticipated, lets just say that.... ;)

For interested people you can poke around here https://github.com/boberfly/gaffer/tree/msvc

Cheers all!

Eric Mehl

unread,
Oct 18, 2019, 8:14:05 AM10/18/19
to gaffer-dev
Hey Carlos,
My latest is I'm working on getting my fork up to the latest 0.54.2.0 official release. I have it built and working, I just need to sort out my release and get everything pushed and organized. I'm aiming for this weekend for that but not 100% certain.

Roy Nieterau

unread,
Oct 18, 2019, 8:40:29 AM10/18/19
to gaffer-dev
Nice! Is that also reaching a point that we should be able and start seeing a PR to the official repository and have it become part of the official releases? :) Or what's holding it back from trying to get things merged?

Eric Mehl

unread,
Oct 18, 2019, 9:14:29 AM10/18/19
to gaffer-dev
The only thing holding it back from getting merged is... time ;)

Now that Cortex is pretty close to being up to speed I'll get into organizing the Gaffer code to get it merged into the main project. It's a pretty big set of commits to merge so I want to do some sorting to get them into manageable chunks.

My time available to spend on that is fairly limited right now but it's definitely on my to-do list.

Carlos Sifuentes

unread,
Nov 25, 2019, 10:42:33 PM11/25/19
to gaffer-dev
news here?

Eric Mehl

unread,
Dec 3, 2019, 9:02:49 AM12/3/19
to gaffer-dev
I have a new Windows release corresponding to the main Gaffer release 0.55.1.0: https://github.com/hypothetical-inc/gaffer/releases/tag/0.55.1.0

It includes all the cool new features that release added and fixes some Arnold metadata handling that was unique to Windows. I also disabled Appleseed by default because it is known to crash and caused a lot of confusion. OSL should work better with that disabled and Arnold is still available for rendering. I left all the Appleseed code in the release so all you have to do is uncomment the relevant lines in gaffer.bat if you want to have a go at debugging it :)

Tom Cowland

unread,
Dec 3, 2019, 10:59:12 AM12/3/19
to gaffe...@googlegroups.com
Awesome! Thanks so much Eric!

-- 
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gaffer-dev/2fe94bb5-c674-439a-aa4d-57e986c71e97%40googlegroups.com.

Carlos Sifuentes

unread,
Dec 3, 2019, 4:59:24 PM12/3/19
to gaffer-dev
thanks Eric,
downloading...

Alex Fuller

unread,
Dec 3, 2019, 5:01:21 PM12/3/19
to gaffer-dev
Very cool Eric! Guess I should dust off my crazy msvc docker container and try to build GafferCycles with it!

Cheers

On Tuesday, 3 December 2019 13:59:24 UTC-8, Carlos Sifuentes wrote:
thanks Eric,
downloading...

Juri Fripp

unread,
Dec 4, 2019, 6:39:57 PM12/4/19
to gaffe...@googlegroups.com
Thank You Eric for the latest version. Really looking forward to testing this out.

I've got a bug which is related to the latest Nvidia Studio display driver versions (I havent tried the game ready drivers). Essentially the viewports display black and an error is sent to the command prompt - see attached.

I tested a few different Nvidia drivers and the last driver that works is Nvidia Studio Driver 431.86
Both Nvidia Studio Driver 441.12 and 441.28 give this error

This error also comes up in the previous version of Gaffer 0.54.1.0

Thought this could help out others that may run into this issue. 

Thanks
Juri
gaffer_display_error.png


--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffer-dev+...@googlegroups.com.

Eric Mehl

unread,
Dec 5, 2019, 8:26:17 AM12/5/19
to gaffer-dev
Hey Juri,
I suspect that's the same crash as another user flagged on the end of this github issue https://github.com/hypothetical-inc/gaffer/issues/2

Interesting that it happens on the studio driver and only on the newer versions - thanks for adding that information.

I'm not running studio drivers now but I'll give it a try and see if I can reproduce the issue and hopefully sort it out.

On Wednesday, December 4, 2019 at 6:39:57 PM UTC-5, Juri Fripp wrote:
Thank You Eric for the latest version. Really looking forward to testing this out.

I've got a bug which is related to the latest Nvidia Studio display driver versions (I havent tried the game ready drivers). Essentially the viewports display black and an error is sent to the command prompt - see attached.

I tested a few different Nvidia drivers and the last driver that works is Nvidia Studio Driver 431.86
Both Nvidia Studio Driver 441.12 and 441.28 give this error

This error also comes up in the previous version of Gaffer 0.54.1.0

Thought this could help out others that may run into this issue. 

Thanks
Juri
gaffer_display_error.png


On Wed, Dec 4, 2019 at 9:01 AM Alex Fuller <bobe...@gmail.com> wrote:
Very cool Eric! Guess I should dust off my crazy msvc docker container and try to build GafferCycles with it!

Cheers

On Tuesday, 3 December 2019 13:59:24 UTC-8, Carlos Sifuentes wrote:
thanks Eric,
downloading...

--
You received this message because you are subscribed to the Google Groups "gaffer-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gaffe...@googlegroups.com.

Carlos Sifuentes

unread,
Dec 5, 2019, 11:54:22 AM12/5/19
to gaffer-dev

I have the same problem,with 0.55.1 but with version 0.54.1 it works
It is loading more messages.
0 new messages