Mitsuba 2: A Retargetable Forward and Inverse Renderer

Related tags

Deep Learningmitsuba2
Overview

Mitsuba logo

Mitsuba Renderer 2

Documentation
docs

Mitsuba 2 is a research-oriented rendering system written in portable C++17. It consists of a small set of core libraries and a wide variety of plugins that implement functionality ranging from materials and light sources to complete rendering algorithms. Mitsuba 2 strives to retain scene compatibility with its predecessor Mitsuba 0.6. However, in most other respects, it is a completely new system following a different set of goals.

The most significant change of Mitsuba 2 is that it is a retargetable renderer: this means that the underlying implementations and data structures are specified in a generic fashion that can be transformed to accomplish a number of different tasks. For example:

  1. In the simplest case, Mitsuba 2 is an ordinary CPU-based RGB renderer that processes one ray at a time similar to its predecessor Mitsuba 0.6.

  2. Alternatively, Mitsuba 2 can be transformed into a differentiable renderer that runs on NVIDIA RTX GPUs. A differentiable rendering algorithm is able to compute derivatives of the entire simulation with respect to input parameters such as camera pose, geometry, BSDFs, textures, and volumes. In conjunction with gradient-based optimization, this opens door to challenging inverse problems including computational material design and scene reconstruction.

  3. Another type of transformation turns Mitsuba 2 into a vectorized CPU renderer that leverages Single Instruction/Multiple Data (SIMD) instruction sets such as AVX512 on modern CPUs to efficiently sample many light paths in parallel.

  4. Yet another type of transformation rewrites physical aspects of the simulation: Mitsuba can be used as a monochromatic renderer, RGB-based renderer, or spectral renderer. Each variant can optionally account for the effects of polarization if desired.

In addition to the above transformations, there are several other noteworthy changes:

  1. Mitsuba 2 provides very fine-grained Python bindings to essentially every function using pybind11. This makes it possible to import the renderer into a Jupyter notebook and develop new algorithms interactively while visualizing their behavior using plots.

  2. The renderer includes a large automated test suite written in Python, and its development relies on several continuous integration servers that compile and test new commits on different operating systems using various compilation settings (e.g. debug/release builds, single/double precision, etc). Manually checking that external contributions don't break existing functionality had become a severe bottleneck in the previous Mitsuba 0.6 codebase, hence the goal of this infrastructure is to avoid such manual checks and streamline interactions with the community (Pull Requests, etc.) in the future.

  3. An all-new cross-platform user interface is currently being developed using the NanoGUI library. Note that this is not yet complete.

Compiling and using Mitsuba 2

Please see the documentation for details on how to compile, use, and extend Mitsuba 2.

About

This project was created by Wenzel Jakob. Significant features and/or improvements to the code were contributed by Merlin Nimier-David, Guillaume Loubet, Benoît Ruiz, Sébastien Speierer, Delio Vicini, and Tizian Zeltner.

Comments
  • Cannot import Python module on Windows

    Cannot import Python module on Windows

    question/bug

    Summary

    When calling import mitsuba in Python, I get the good old "The specified module could not be found" error, yet according to dependencies all dll paths are resolved correctly.

    System configuration

    I've built the current master successfuly on Windows 10, using CUDA 10.2 and Python 3.8.3, default variants plus gpu_autodiff_rgb. Build in Release mode with MSVC16 (Visual Studio 2019). The mitsuba.exe binary in build/dist runs correctly. The only unexpected thing is tha INSTALL target that did not copy the content of build/dist.

    Steps to reproduce

    Here is a self-contained attempt to load the mitsuba module with correct PATH:

    import sys
    sys.path.append(r"C:\src\mitsuba2\build-msvc16\dist\python")
    import os
    os.environ['PATH'] += r";C:\src\mitsuba2\build-msvc16\dist"
    os.environ['PATH'] += r";C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin"
    import mitsuba
    

    which gives this output:

    [...] (Traceback)
    ImportError: DLL load failed while importing core_ext: The specified module could not be found.
    [...] (Traceback)
    ImportError: The 'mitsuba' native modules could not be imported. You're likely trying to use Mitsuba within a Python binary (e:\python38\python.exe) that is different from the one for which the native module was compiled (E:\Python38\python.exe).
    

    (so, yes, I am using the very same Python exe for building and for running)

    Is the core_ext pyd module doing anything fancy with DLLs that could be the cause of such an error besides usual missing path entries? (Once again, I checked using Dependencies, with cuda bin and dist in the PATH nothing seem to miss).

    opened by eliemichel 44
  • `packet_spectral` build error on Windows 10

    `packet_spectral` build error on Windows 10

    First of all, congratulations. Mitsuba 2 is completely revolutionary. Well done on getting it out.

    I've managed to compile and use Mitsuba 2 on Windows 10 in scalar_rgb and scalar_spectral modes, but when attempting to compile with packet_spectral added to the config, I receive the following error:

    Build FAILED.
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext.vcxproj.metaproj" (default target) (102) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext-obj.vcxproj.metaproj" (default target) (103) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext-obj.vcxproj" (default target) (104) ->
    (ClCompile target) -> 
      H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array_router.h(197,1): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\libco 
    re\python\core_packet_spectral_ext-obj.vcxproj]
    
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (default target) (141) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.vcxproj.metaproj" (default target) (320) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj.metaproj" (default target) (321) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj" (default target) (322) ->
      H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(119,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrators\vol 
    path-obj.vcxproj]
    
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (default target) (141) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple.vcxproj.metaproj" (default target) (323) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj.metaproj" (default target) (324) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj" (default target) (325) ->
      H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp(66,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrato 
    rs\volpathsimple-obj.vcxproj]
    

    I haven't made any modifications to the code and I cloned everything today, currently on commit a749215.

    The start is truncated due to the console line limit Full log info:

    j.metaproj" (237) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle-obj.vcxproj.metaproj" (237) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle-obj.vc 
    xproj" (238) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "rectangle-obj.dir\Debug\rectangle-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      rectangle-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle-obj.dir\Debug\rectangle-obj.lib
    FinalizeBuildStatus:
      Deleting file "rectangle-obj.dir\Debug\rectangle-obj.tlog\unsuccessfulbuild".
      Touching "rectangle-obj.dir\Debug\rectangle-obj.tlog\rectangle-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle.vcxproj.metaproj" (236) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle.vcxproj" (
    239) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "rectangle.dir\Debug\rectangle.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      rectangle.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\Debug\rectangle.dll
    FinalizeBuildStatus:
      Deleting file "rectangle.dir\Debug\rectangle.tlog\unsuccessfulbuild".
      Touching "rectangle.dir\Debug\rectangle.tlog\rectangle.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\rectangle.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj.metaproj" (240
    ) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj.metaproj" (240) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.vcxproj. 
    metaproj" (241) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.vcxproj.metaproj" (241) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.vcxp 
    roj" (242) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "regular-obj.dir\Debug\regular-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      regular-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.dir\Debug\regular-obj.lib
    FinalizeBuildStatus:
      Deleting file "regular-obj.dir\Debug\regular-obj.tlog\unsuccessfulbuild".
      Touching "regular-obj.dir\Debug\regular-obj.tlog\regular-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj.metaproj" (240) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj" (24
    3) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "regular.dir\Debug\regular.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      regular.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\Debug\regular.dll
    FinalizeBuildStatus:
      Deleting file "regular.dir\Debug\regular.tlog\unsuccessfulbuild".
      Touching "regular.dir\Debug\regular.tlog\regular.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\regular.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext.vcxproj.me
    taproj" (244) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext.vcxproj.metaproj" (244) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python 
    \render_ext-obj.vcxproj.metaproj" (245) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext-obj.vcxproj.metaproj" (245) is building "H:\Users\chris\Documents\mitsuba2\src\librender\py
    thon\render_ext-obj.vcxproj" (246) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_ext-obj.dir\Debug\render_ext-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      render_ext-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext-obj.dir\Debug\render_ext-obj.lib
    FinalizeBuildStatus:
      Deleting file "render_ext-obj.dir\Debug\render_ext-obj.tlog\unsuccessfulbuild".
      Touching "render_ext-obj.dir\Debug\render_ext-obj.tlog\render_ext-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext.vcxproj.metaproj" (244) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python
    \render_ext.vcxproj" (247) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_ext.dir\Debug\render_ext.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      render_ext.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\Debug\render_ext.cp38-win_amd64.pyd
    FinalizeBuildStatus:
      Deleting file "render_ext.dir\Debug\render_ext.tlog\unsuccessfulbuild".
      Touching "render_ext.dir\Debug\render_ext.tlog\render_ext.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_ext.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectra
    l_ext.vcxproj.metaproj" (248) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext.vcxproj.metaproj" (248) is building "H:\Users\chris\Documents\mitsuba2\src\ 
    librender\python\render_packet_spectral_ext-obj.vcxproj.metaproj" (249) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext-obj.vcxproj.metaproj" (249) is building "H:\Users\chris\Documents\mitsuba2\ 
    src\librender\python\render_packet_spectral_ext-obj.vcxproj" (250) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_packet_spectral_ext-obj.dir\Debug\render_p.AFCC1880.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      render_packet_spectral_ext-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext-obj.dir\Debug\render_packet_spectral_ext 
      -obj.lib
    FinalizeBuildStatus:
      Deleting file "render_packet_spectral_ext-obj.dir\Debug\render_p.AFCC1880.tlog\unsuccessfulbuild".
      Touching "render_packet_spectral_ext-obj.dir\Debug\render_p.AFCC1880.tlog\render_packet_spectral_ext-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext.vcxproj.metaproj" (248) is building "H:\Users\chris\Documents\mitsuba2\src\
    librender\python\render_packet_spectral_ext.vcxproj" (251) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_packet_spectral_ext.dir\Debug\render_p.37F4845A.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      render_packet_spectral_ext.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\Debug\render_packet_spectral_ext.cp38-win_amd64.pyd
    FinalizeBuildStatus:
      Deleting file "render_packet_spectral_ext.dir\Debug\render_p.37F4845A.tlog\unsuccessfulbuild".
      Touching "render_packet_spectral_ext.dir\Debug\render_p.37F4845A.tlog\render_packet_spectral_ext.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_packet_spectral_ext.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext
    .vcxproj.metaproj" (252) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext.vcxproj.metaproj" (252) is building "H:\Users\chris\Documents\mitsuba2\src\libre 
    nder\python\render_scalar_rgb_ext-obj.vcxproj.metaproj" (253) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext-obj.vcxproj.metaproj" (253) is building "H:\Users\chris\Documents\mitsuba2\src\l 
    ibrender\python\render_scalar_rgb_ext-obj.vcxproj" (254) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_scalar_rgb_ext-obj.dir\Debug\render_s.1DAD44CB.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      render_scalar_rgb_ext-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext-obj.dir\Debug\render_scalar_rgb_ext-obj.lib        
    FinalizeBuildStatus:
      Deleting file "render_scalar_rgb_ext-obj.dir\Debug\render_s.1DAD44CB.tlog\unsuccessfulbuild".
      Touching "render_scalar_rgb_ext-obj.dir\Debug\render_s.1DAD44CB.tlog\render_scalar_rgb_ext-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext.vcxproj.metaproj" (252) is building "H:\Users\chris\Documents\mitsuba2\src\libre
    nder\python\render_scalar_rgb_ext.vcxproj" (255) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_scalar_rgb_ext.dir\Debug\render_s.EBB00A5E.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      render_scalar_rgb_ext.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\Debug\render_scalar_rgb_ext.cp38-win_amd64.pyd
    FinalizeBuildStatus:
      Deleting file "render_scalar_rgb_ext.dir\Debug\render_s.EBB00A5E.tlog\unsuccessfulbuild".
      Touching "render_scalar_rgb_ext.dir\Debug\render_s.EBB00A5E.tlog\render_scalar_rgb_ext.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_rgb_ext.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectra
    l_ext.vcxproj.metaproj" (256) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext.vcxproj.metaproj" (256) is building "H:\Users\chris\Documents\mitsuba2\src\ 
    librender\python\render_scalar_spectral_ext-obj.vcxproj.metaproj" (257) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext-obj.vcxproj.metaproj" (257) is building "H:\Users\chris\Documents\mitsuba2\ 
    src\librender\python\render_scalar_spectral_ext-obj.vcxproj" (258) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_scalar_spectral_ext-obj.dir\Debug\render_s.217B2B39.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      render_scalar_spectral_ext-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext-obj.dir\Debug\render_scalar_spectral_ext 
      -obj.lib
    FinalizeBuildStatus:
      Deleting file "render_scalar_spectral_ext-obj.dir\Debug\render_s.217B2B39.tlog\unsuccessfulbuild".
      Touching "render_scalar_spectral_ext-obj.dir\Debug\render_s.217B2B39.tlog\render_scalar_spectral_ext-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext.vcxproj.metaproj" (256) is building "H:\Users\chris\Documents\mitsuba2\src\
    librender\python\render_scalar_spectral_ext.vcxproj" (259) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "render_scalar_spectral_ext.dir\Debug\render_s.EFEC4231.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      render_scalar_spectral_ext.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\librender\python\Debug\render_scalar_spectral_ext.cp38-win_amd64.pyd
    FinalizeBuildStatus:
      Deleting file "render_scalar_spectral_ext.dir\Debug\render_s.EFEC4231.tlog\unsuccessfulbuild".
      Touching "render_scalar_spectral_ext.dir\Debug\render_s.EFEC4231.tlog\render_scalar_spectral_ext.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\librender\python\render_scalar_spectral_ext.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj.metaproj" (260)
     on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj.metaproj" (260) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.vcxproj.me 
    taproj" (261) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.vcxproj.metaproj" (261) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.vcxpro 
    j" (262) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "retarder-obj.dir\Debug\retarder-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      retarder-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.dir\Debug\retarder-obj.lib
    FinalizeBuildStatus:
      Deleting file "retarder-obj.dir\Debug\retarder-obj.tlog\unsuccessfulbuild".
      Touching "retarder-obj.dir\Debug\retarder-obj.tlog\retarder-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj.metaproj" (260) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj" (263)
     on node 1 (default targets).
    InitializeBuildStatus:
      Creating "retarder.dir\Debug\retarder.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      retarder.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\retarder.dll
    FinalizeBuildStatus:
      Deleting file "retarder.dir\Debug\retarder.tlog\unsuccessfulbuild".
      Touching "retarder.dir\Debug\retarder.tlog\retarder.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\retarder.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt_run.vcxpro
    j.metaproj" (264) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt_run.vcxproj.metaproj" (264) is building "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2sp 
    ec\rgb2spec_opt.vcxproj.metaproj" (265) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt.vcxproj.metaproj" (265) is building "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\r 
    gb2spec_opt.vcxproj" (266) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "rgb2spec_opt.dir\Debug\rgb2spec_opt.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      rgb2spec_opt.vcxproj -> H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\Debug\rgb2spec_opt.exe
    PostBuildEvent:
      setlocal
      "C:\Program Files\CMake\bin\cmake.exe" -E copy_if_different H:/Users/chris/Documents/mitsuba2/ext_build/tbb/Debug/tbb.dll H:/Users/chris/Documents/mitsuba2/ext_buil 
      d/rgb2spec/Debug
      if %errorlevel% neq 0 goto :cmEnd
      :cmEnd
      endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
      :cmErrorLevel
      exit /b %1
      :cmDone
      if %errorlevel% neq 0 goto :VCEnd
      :VCEnd
    FinalizeBuildStatus:
      Deleting file "rgb2spec_opt.dir\Debug\rgb2spec_opt.tlog\unsuccessfulbuild".
      Touching "rgb2spec_opt.dir\Debug\rgb2spec_opt.tlog\rgb2spec_opt.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt_run.vcxproj.metaproj" (264) is building "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2sp
    ec\rgb2spec_opt_run.vcxproj" (267) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "x64\Debug\rgb2spec_opt_run\rgb2spec_opt_run.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    FinalizeBuildStatus:
      Deleting file "x64\Debug\rgb2spec_opt_run\rgb2spec_opt_run.tlog\unsuccessfulbuild".
      Touching "x64\Debug\rgb2spec_opt_run\rgb2spec_opt_run.tlog\rgb2spec_opt_run.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt_run.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\rgb2spec\rgb2spec_opt_run.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vcxproj.metaproj"
     (268) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vcxproj.metaproj" (268) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor-ob 
    j.vcxproj.metaproj" (269) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor-obj.vcxproj.metaproj" (269) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconducto 
    r-obj.vcxproj" (270) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughconductor-obj.dir\Debug\roughcon.53900DE9.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      roughconductor-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor-obj.dir\Debug\roughconductor-obj.lib
    FinalizeBuildStatus:
      Deleting file "roughconductor-obj.dir\Debug\roughcon.53900DE9.tlog\unsuccessfulbuild".
      Touching "roughconductor-obj.dir\Debug\roughcon.53900DE9.tlog\roughconductor-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vcxproj.metaproj" (268) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vc
    xproj" (271) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughconductor.dir\Debug\roughconductor.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      roughconductor.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\roughconductor.dll
    FinalizeBuildStatus:
      Deleting file "roughconductor.dir\Debug\roughconductor.tlog\unsuccessfulbuild".
      Touching "roughconductor.dir\Debug\roughconductor.tlog\roughconductor.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughconductor.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.vcxproj.metaproj
    " (272) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.vcxproj.metaproj" (272) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric- 
    obj.vcxproj.metaproj" (273) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric-obj.vcxproj.metaproj" (273) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielect 
    ric-obj.vcxproj" (274) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughdielectric-obj.dir\Debug\roughdie.E0AADA01.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      roughdielectric-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric-obj.dir\Debug\roughdielectric-obj.lib
    FinalizeBuildStatus:
      Deleting file "roughdielectric-obj.dir\Debug\roughdie.E0AADA01.tlog\unsuccessfulbuild".
      Touching "roughdielectric-obj.dir\Debug\roughdie.E0AADA01.tlog\roughdielectric-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.vcxproj.metaproj" (272) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.
    vcxproj" (275) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughdielectric.dir\Debug\roughdielectric.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      roughdielectric.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\roughdielectric.dll
    FinalizeBuildStatus:
      Deleting file "roughdielectric.dir\Debug\roughdielectric.tlog\unsuccessfulbuild".
      Touching "roughdielectric.dir\Debug\roughdielectric.tlog\roughdielectric.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughdielectric.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxproj.metaproj" (
    276) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxproj.metaproj" (276) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-obj.vc 
    xproj.metaproj" (277) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-obj.vcxproj.metaproj" (277) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-ob
    j.vcxproj" (278) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughplastic-obj.dir\Debug\roughplastic-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      roughplastic-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-obj.dir\Debug\roughplastic-obj.lib
    FinalizeBuildStatus:
      Deleting file "roughplastic-obj.dir\Debug\roughplastic-obj.tlog\unsuccessfulbuild".
      Touching "roughplastic-obj.dir\Debug\roughplastic-obj.tlog\roughplastic-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxproj.metaproj" (276) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxpro
    j" (279) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "roughplastic.dir\Debug\roughplastic.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      roughplastic.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\roughplastic.dll
    FinalizeBuildStatus:
      Deleting file "roughplastic.dir\Debug\roughplastic.tlog\unsuccessfulbuild".
      Touching "roughplastic.dir\Debug\roughplastic.tlog\roughplastic.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\roughplastic.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj.metaproj" (2
    80) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj.metaproj" (280) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj.vcxp 
    roj.metaproj" (281) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj.vcxproj.metaproj" (281) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj. 
    vcxproj" (282) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "serialized-obj.dir\Debug\serialized-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      serialized-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj.dir\Debug\serialized-obj.lib
    FinalizeBuildStatus:
      Deleting file "serialized-obj.dir\Debug\serialized-obj.tlog\unsuccessfulbuild".
      Touching "serialized-obj.dir\Debug\serialized-obj.tlog\serialized-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj.metaproj" (280) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj"
     (283) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "serialized.dir\Debug\serialized.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      serialized.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\Debug\serialized.dll
    FinalizeBuildStatus:
      Deleting file "serialized.dir\Debug\serialized.tlog\unsuccessfulbuild".
      Touching "serialized.dir\Debug\serialized.tlog\serialized.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\serialized.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj.metaproj" (284) 
    on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj.metaproj" (284) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.vcxproj.meta 
    proj" (285) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.vcxproj.metaproj" (285) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.vcxproj" 
     (286) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "sphere-obj.dir\Debug\sphere-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      sphere-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.dir\Debug\sphere-obj.lib
    FinalizeBuildStatus:
      Deleting file "sphere-obj.dir\Debug\sphere-obj.tlog\unsuccessfulbuild".
      Touching "sphere-obj.dir\Debug\sphere-obj.tlog\sphere-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj.metaproj" (284) is building "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj" (287) o
    n node 1 (default targets).
    InitializeBuildStatus:
      Creating "sphere.dir\Debug\sphere.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      sphere.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\shapes\Debug\sphere.dll
    FinalizeBuildStatus:
      Deleting file "sphere.dir\Debug\sphere.tlog\unsuccessfulbuild".
      Touching "sphere.dir\Debug\sphere.tlog\sphere.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\shapes\sphere.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj.metaproj" (288) o
    n node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj.metaproj" (288) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.vcxproj.metapr 
    oj" (289) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.vcxproj.metaproj" (289) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.vcxproj" (
    290) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "srgb-obj.dir\Debug\srgb-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      srgb-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.dir\Debug\srgb-obj.lib
    FinalizeBuildStatus:
      Deleting file "srgb-obj.dir\Debug\srgb-obj.tlog\unsuccessfulbuild".
      Touching "srgb-obj.dir\Debug\srgb-obj.tlog\srgb-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj.metaproj" (288) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj" (291) on 
    node 1 (default targets).
    InitializeBuildStatus:
      Creating "srgb.dir\Debug\srgb.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      srgb.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\Debug\srgb.dll
    FinalizeBuildStatus:
      Deleting file "srgb.dir\Debug\srgb.tlog\unsuccessfulbuild".
      Touching "srgb.dir\Debug\srgb.tlog\srgb.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj.metaproj" (29
    2) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj.metaproj" (292) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.vcxpro 
    j.metaproj" (293) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.vcxproj.metaproj" (293) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.vc 
    xproj" (294) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "srgb_d65-obj.dir\Debug\srgb_d65-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      srgb_d65-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.dir\Debug\srgb_d65-obj.lib
    FinalizeBuildStatus:
      Deleting file "srgb_d65-obj.dir\Debug\srgb_d65-obj.tlog\unsuccessfulbuild".
      Touching "srgb_d65-obj.dir\Debug\srgb_d65-obj.tlog\srgb_d65-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj.metaproj" (292) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj" (
    295) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "srgb_d65.dir\Debug\srgb_d65.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      srgb_d65.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\Debug\srgb_d65.dll
    FinalizeBuildStatus:
      Deleting file "srgb_d65.dir\Debug\srgb_d65.tlog\unsuccessfulbuild".
      Touching "srgb_d65.dir\Debug\srgb_d65.tlog\srgb_d65.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\srgb_d65.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxproj.metaproj" (
    296) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxproj.metaproj" (296) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-obj.vc 
    xproj.metaproj" (297) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-obj.vcxproj.metaproj" (297) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-ob 
    j.vcxproj" (298) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "stokes-obj.dir\Debug\stokes-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      stokes-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-obj.dir\Debug\stokes-obj.lib
    FinalizeBuildStatus:
      Deleting file "stokes-obj.dir\Debug\stokes-obj.tlog\unsuccessfulbuild".
      Touching "stokes-obj.dir\Debug\stokes-obj.tlog\stokes-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxproj.metaproj" (296) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxpro
    j" (299) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "stokes.dir\Debug\stokes.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      stokes.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\integrators\Debug\stokes.dll
    FinalizeBuildStatus:
      Deleting file "stokes.dir\Debug\stokes.tlog\unsuccessfulbuild".
      Touching "stokes.dir\Debug\stokes.tlog\stokes.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\stokes.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj.metaproj" (300) 
    on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj.metaproj" (300) is building "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.vcxproj.meta 
    proj" (301) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.vcxproj.metaproj" (301) is building "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.vcxproj" 
     (302) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "tent-obj.dir\Debug\tent-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      tent-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.dir\Debug\tent-obj.lib
    FinalizeBuildStatus:
      Deleting file "tent-obj.dir\Debug\tent-obj.tlog\unsuccessfulbuild".
      Touching "tent-obj.dir\Debug\tent-obj.tlog\tent-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj.metaproj" (300) is building "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj" (303) o
    n node 1 (default targets).
    InitializeBuildStatus:
      Creating "tent.dir\Debug\tent.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      tent.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\rfilters\Debug\tent.dll
    FinalizeBuildStatus:
      Deleting file "tent.dir\Debug\tent.tlog\unsuccessfulbuild".
      Touching "tent.dir\Debug\tent.tlog\tent.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\rfilters\tent.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vcxproj.metaproj"
     (304) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vcxproj.metaproj" (304) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric-ob 
    j.vcxproj.metaproj" (305) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric-obj.vcxproj.metaproj" (305) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectri 
    c-obj.vcxproj" (306) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "thindielectric-obj.dir\Debug\thindiel.8C871119.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      thindielectric-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric-obj.dir\Debug\thindielectric-obj.lib
    FinalizeBuildStatus:
      Deleting file "thindielectric-obj.dir\Debug\thindiel.8C871119.tlog\unsuccessfulbuild".
      Touching "thindielectric-obj.dir\Debug\thindiel.8C871119.tlog\thindielectric-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vcxproj.metaproj" (304) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vc
    xproj" (307) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "thindielectric.dir\Debug\thindielectric.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      thindielectric.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\thindielectric.dll
    FinalizeBuildStatus:
      Deleting file "thindielectric.dir\Debug\thindielectric.tlog\unsuccessfulbuild".
      Touching "thindielectric.dir\Debug\thindielectric.tlog\thindielectric.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\thindielectric.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj.metaproj" (30
    8) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj.metaproj" (308) is building "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.vcxpro 
    j.metaproj" (309) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.vcxproj.metaproj" (309) is building "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.vc 
    xproj" (310) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "thinlens-obj.dir\Debug\thinlens-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      thinlens-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.dir\Debug\thinlens-obj.lib
    FinalizeBuildStatus:
      Deleting file "thinlens-obj.dir\Debug\thinlens-obj.tlog\unsuccessfulbuild".
      Touching "thinlens-obj.dir\Debug\thinlens-obj.tlog\thinlens-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj.metaproj" (308) is building "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj" (
    311) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "thinlens.dir\Debug\thinlens.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      thinlens.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\sensors\Debug\thinlens.dll
    FinalizeBuildStatus:
      Deleting file "thinlens.dir\Debug\thinlens.tlog\unsuccessfulbuild".
      Touching "thinlens.dir\Debug\thinlens.tlog\thinlens.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\sensors\thinlens.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj.metaproj" (312)
     on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj.metaproj" (312) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.vcxproj.me 
    taproj" (313) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.vcxproj.metaproj" (313) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.vcxpro 
    j" (314) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "twosided-obj.dir\Debug\twosided-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      twosided-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.dir\Debug\twosided-obj.lib
    FinalizeBuildStatus:
      Deleting file "twosided-obj.dir\Debug\twosided-obj.tlog\unsuccessfulbuild".
      Touching "twosided-obj.dir\Debug\twosided-obj.tlog\twosided-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj.metaproj" (312) is building "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj" (315)
     on node 1 (default targets).
    InitializeBuildStatus:
      Creating "twosided.dir\Debug\twosided.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      twosided.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\bsdfs\Debug\twosided.dll
    FinalizeBuildStatus:
      Deleting file "twosided.dir\Debug\twosided.tlog\unsuccessfulbuild".
      Touching "twosided.dir\Debug\twosided.tlog\twosided.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\bsdfs\twosided.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj.metaproj" (316
    ) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj.metaproj" (316) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.vcxproj. 
    metaproj" (317) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.vcxproj.metaproj" (317) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.vcxp
    roj" (318) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "uniform-obj.dir\Debug\uniform-obj.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      All outputs are up-to-date.
    Lib:
      All outputs are up-to-date.
      uniform-obj.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.dir\Debug\uniform-obj.lib
    FinalizeBuildStatus:
      Deleting file "uniform-obj.dir\Debug\uniform-obj.tlog\unsuccessfulbuild".
      Touching "uniform-obj.dir\Debug\uniform-obj.tlog\uniform-obj.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform-obj.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj.metaproj" (316) is building "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj" (31
    9) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "uniform.dir\Debug\uniform.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    CustomBuild:
      All outputs are up-to-date.
    Link:
      All outputs are up-to-date.
      uniform.vcxproj -> H:\Users\chris\Documents\mitsuba2\src\spectra\Debug\uniform.dll
    FinalizeBuildStatus:
      Deleting file "uniform.dir\Debug\uniform.tlog\unsuccessfulbuild".
      Touching "uniform.dir\Debug\uniform.tlog\uniform.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\spectra\uniform.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.vcxproj.metaproj" 
    (320) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.vcxproj.metaproj" (320) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj. 
    vcxproj.metaproj" (321) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj.metaproj" (321) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath- 
    obj.vcxproj" (322) on node 1 (default targets).
    InitializeBuildStatus:
      Touching "volpath-obj.dir\Debug\volpath-obj.tlog\unsuccessfulbuild".
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\CL.exe /c /IH:\Users\chris\Documents\mitsuba2\include /IH:\U 
      sers\chris\Documents\mitsuba2\ext\tinyformat /IH:\Users\chris\Documents\mitsuba2\ext\enoki\include /IH:\Users\chris\Documents\mitsuba2\ext\tbb\include /IH:\Users\ch 
      ris\Documents\mitsuba2\ext\pybind11\include /IC:\Users\chris\AppData\Local\Programs\Python\Python38\include /Zi /nologo /W4 /WX- /diagnostics:column /MP /Od /Ob1 /D 
       WIN32 /D _WINDOWS /D _USE_MATH_DEFINES /D _CRT_SECURE_NO_WARNINGS /D _SCL_SECURE_NO_WARNINGS /D _SILENCE_CXX17_UNCAUGHT_EXCEPTION_DEPRECATION_WARNING /D _SECURE_SC 
      L=0 /D __TBB_NO_IMPLICIT_LINKAGE /D NOMINMAX /D __WINDOWS__ /D LITTLE_ENDIAN /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /arch:AVX /fp:precise /Z 
      c:wchar_t /Zc:forScope /Zc:inline /GR /std:c++17 /Fo"volpath-obj.dir\Debug\\" /Fd"volpath-obj.dir\Debug\volpath-obj.pdb" /Gd /TP /wd4251 /wd4714 /wd4505 /wd4458 /wd 
      4459 /wd4554 /wd4324 /wd4127 /wd4244 /wd4910 /errorReport:queue  /bigobj H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp
      volpath.cpp
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(119,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrators\volpa
    th-obj.vcxproj]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array_recursive.h(30,1): message : could be 'enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,i 
    nt> &enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,int>::operator =(enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,int> &&)' [H:\Users\ 
    chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
              with
              [
                  Value_=unsigned int
              ]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array.h(135,1): message : or       'enoki::Packet<unsigned int,8> &enoki::Packet<unsigned int,8>::operator = 
    (enoki::Packet<unsigned int,8> &&)' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki\array_traits.h(147,1): message : while trying to match the argument list '(enoki::Packet<unsigned int,8>, De
    rived_)' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
              with
              [
                  Derived_=enoki::Packet<float,8>
              ]
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(90): message : while compiling class template member function 'std::pair<Spectrum,enoki::PacketMask<Valu 
    e_,8>> mitsuba::VolumetricNullPathIntegratorImpl<enoki::Packet<Value_,8>,Spectrum,false>::sample(const mitsuba::Scene<enoki::Packet<Value_,8>,Spectrum> *,mitsuba::Sam 
    pler<enoki::Packet<Value_,8>,Spectrum> *,const mitsuba::RayDifferential<mitsuba::Point<enoki::Packet<Value_,8>,3>,mitsuba::Spectrum<enoki::Packet<Value_,8>,4>> &,Floa 
    t *,enoki::PacketMask<Value_,8>) const' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
              with
              [
                  Spectrum=mitsuba::Spectrum<enoki::Packet<float,8>,4>,
                  Value_=float,
                  Float=enoki::Packet<float,8>
              ]
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(50): message : see reference to class template instantiation 'mitsuba::VolumetricNullPathIntegratorImpl< 
    enoki::Packet<float,8>,mitsuba::Spectrum<enoki::Packet<float,8>,4>,false>' being compiled [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]      
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(45): message : while compiling class template member function 'std::vector<mitsuba::ref<mitsuba::Object> 
    ,std::allocator<mitsuba::ref<mitsuba::Object>>> mitsuba::VolumetricNullPathIntegrator<enoki::Packet<float,8>,mitsuba::Spectrum<enoki::Packet<float,8>,4>>::expand(void 
    ) const' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(508): message : see reference to class template instantiation 'mitsuba::VolumetricNullPathIntegrator<eno 
    ki::Packet<float,8>,mitsuba::Spectrum<enoki::Packet<float,8>,4>>' being compiled [H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj]
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj.metaproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.vcxproj.metaproj" (default targets) -- FAILED.
    
    Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (141) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple.vcxproj.meta
    proj" (323) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple.vcxproj.metaproj" (323) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\volpat 
    hsimple-obj.vcxproj.metaproj" (324) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj.metaproj" (324) is building "H:\Users\chris\Documents\mitsuba2\src\integrators\vo 
    lpathsimple-obj.vcxproj" (325) on node 1 (default targets).
    InitializeBuildStatus:
      Touching "volpathsimple-obj.dir\Debug\volpaths.9C9D093A.tlog\unsuccessfulbuild".
    CustomBuild:
      All outputs are up-to-date.
    ClCompile:
      C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64\CL.exe /c /IH:\Users\chris\Documents\mitsuba2\include /IH:\U 
      sers\chris\Documents\mitsuba2\ext\tinyformat /IH:\Users\chris\Documents\mitsuba2\ext\enoki\include /IH:\Users\chris\Documents\mitsuba2\ext\tbb\include /IH:\Users\ch
      ris\Documents\mitsuba2\ext\pybind11\include /IC:\Users\chris\AppData\Local\Programs\Python\Python38\include /Zi /nologo /W4 /WX- /diagnostics:column /MP /Od /Ob1 /D 
       WIN32 /D _WINDOWS /D _USE_MATH_DEFINES /D _CRT_SECURE_NO_WARNINGS /D _SCL_SECURE_NO_WARNINGS /D _SILENCE_CXX17_UNCAUGHT_EXCEPTION_DEPRECATION_WARNING /D _SECURE_SC 
      L=0 /D __TBB_NO_IMPLICIT_LINKAGE /D NOMINMAX /D __WINDOWS__ /D LITTLE_ENDIAN /D "CMAKE_INTDIR=\"Debug\"" /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /arch:AVX /fp:precise /Z 
      c:wchar_t /Zc:forScope /Zc:inline /GR /std:c++17 /Fo"volpathsimple-obj.dir\Debug\\" /Fd"volpathsimple-obj.dir\Debug\volpathsimple-obj.pdb" /Gd /TP /wd4251 /wd4714 / 
      wd4505 /wd4458 /wd4459 /wd4554 /wd4324 /wd4127 /wd4244 /wd4910 /errorReport:queue  /bigobj "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp"    
      volpath-simple.cpp
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp(66,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrators
    \volpathsimple-obj.vcxproj]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array_recursive.h(30,1): message : could be 'enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,i 
    nt> &enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,int>::operator =(enoki::StaticArrayImpl<Value_,8,false,enoki::Packet<Value_,8>,int> &&)' [H:\Users\ 
    chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj]
              with
              [
                  Value_=unsigned int
              ]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array.h(135,1): message : or       'enoki::Packet<unsigned int,8> &enoki::Packet<unsigned int,8>::operator = 
    (enoki::Packet<unsigned int,8> &&)' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj]
    H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki\array_traits.h(147,1): message : while trying to match the argument list '(enoki::Packet<unsigned int,8>, De 
    rived_)' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj]
              with
              [
                  Derived_=enoki::Packet<float,8>
              ]
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp(42): message : while compiling class template member function 'std::pair<Spectrum,enoki::PacketMa 
    sk<Value_,8>> mitsuba::VolumetricNullSimplePathIntegrator<enoki::Packet<Value_,8>,Spectrum>::sample(const mitsuba::Scene<enoki::Packet<Value_,8>,Spectrum> *,mitsuba:: 
    Sampler<enoki::Packet<Value_,8>,Spectrum> *,const mitsuba::RayDifferential<mitsuba::Point<enoki::Packet<Value_,8>,3>,mitsuba::Spectrum<enoki::Packet<Value_,8>,4>> &,F 
    loat *,enoki::PacketMask<Value_,8>) const' [H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj]
              with
              [
                  Spectrum=mitsuba::Spectrum<enoki::Packet<float,8>,4>,
                  Value_=float,
                  Float=enoki::Packet<float,8>
              ]
    H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp(403): message : see reference to class template instantiation 'mitsuba::VolumetricNullSimplePathI 
    ntegrator<enoki::Packet<float,8>,mitsuba::Spectrum<enoki::Packet<float,8>,4>>' being compiled [H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcx
    proj]
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj.metaproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple.vcxproj.metaproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (default targets) -- FAILED.
    
    Project "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (51) is building "H:\Users\chris\Documents\mitsuba2\ext_build\enoki\enoki-python-init.vcxproj.m
    etaproj" (326) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\ext_build\enoki\enoki-python-init.vcxproj.metaproj" (326) is building "H:\Users\chris\Documents\mitsuba2\ext_build\enoki\en 
    oki-python-init.vcxproj" (327) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "x64\Debug\enoki-python-init\enoki-py.5144DC30.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    FinalizeBuildStatus:
      Deleting file "x64\Debug\enoki-python-init\enoki-py.5144DC30.tlog\unsuccessfulbuild".
      Touching "x64\Debug\enoki-python-init\enoki-py.5144DC30.tlog\enoki-python-init.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\enoki\enoki-python-init.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ext_build\enoki\enoki-python-init.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (51) is building "H:\Users\chris\Documents\mitsuba2\src\mitsuba-enoki-python-init.vcxproj.metap
    roj" (328) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\mitsuba-enoki-python-init.vcxproj.metaproj" (328) is building "H:\Users\chris\Documents\mitsuba2\src\mitsuba-enoki-pyth 
    on-init.vcxproj" (329) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "x64\Debug\mitsuba-enoki-python-init\mitsuba-.41EAEA0E.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    FinalizeBuildStatus:
      Deleting file "x64\Debug\mitsuba-enoki-python-init\mitsuba-.41EAEA0E.tlog\unsuccessfulbuild".
      Touching "x64\Debug\mitsuba-enoki-python-init\mitsuba-.41EAEA0E.tlog\mitsuba-enoki-python-init.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\mitsuba-enoki-python-init.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\mitsuba-enoki-python-init.vcxproj.metaproj" (default targets).
    
    Project "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (51) is building "H:\Users\chris\Documents\mitsuba2\src\python\python-copy.vcxproj.metaproj" (3
    30) on node 1 (default targets).
    Project "H:\Users\chris\Documents\mitsuba2\src\python\python-copy.vcxproj.metaproj" (330) is building "H:\Users\chris\Documents\mitsuba2\src\python\python-copy.vcxpro 
    j" (331) on node 1 (default targets).
    InitializeBuildStatus:
      Creating "x64\Debug\python-copy\python-copy.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    FinalizeBuildStatus:
      Deleting file "x64\Debug\python-copy\python-copy.tlog\unsuccessfulbuild".
      Touching "x64\Debug\python-copy\python-copy.tlog\python-copy.lastbuildstate".
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\python\python-copy.vcxproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\src\python\python-copy.vcxproj.metaproj" (default targets).
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default targets) -- FAILED.
    
    Done Building Project "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default targets) -- FAILED.
    
    
    Build FAILED.
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext.vcxproj.metaproj" (default target) (102) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext-obj.vcxproj.metaproj" (default target) (103) ->
    "H:\Users\chris\Documents\mitsuba2\src\libcore\python\core_packet_spectral_ext-obj.vcxproj" (default target) (104) ->
    (ClCompile target) -> 
      H:\Users\chris\Documents\mitsuba2\ext\enoki\include\enoki/array_router.h(197,1): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\libco 
    re\python\core_packet_spectral_ext-obj.vcxproj]
    
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (default target) (141) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.vcxproj.metaproj" (default target) (320) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj.metaproj" (default target) (321) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-obj.vcxproj" (default target) (322) ->
      H:\Users\chris\Documents\mitsuba2\src\integrators\volpath.cpp(119,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrators\vol 
    path-obj.vcxproj]
    
    
    "H:\Users\chris\Documents\mitsuba2\mitsuba.sln" (default target) (1) ->
    "H:\Users\chris\Documents\mitsuba2\ALL_BUILD.vcxproj.metaproj" (default target) (51) ->
    "H:\Users\chris\Documents\mitsuba2\dist-copy.vcxproj.metaproj" (default target) (141) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple.vcxproj.metaproj" (default target) (323) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj.metaproj" (default target) (324) ->
    "H:\Users\chris\Documents\mitsuba2\src\integrators\volpathsimple-obj.vcxproj" (default target) (325) ->
      H:\Users\chris\Documents\mitsuba2\src\integrators\volpath-simple.cpp(66,13): error C2593: 'operator =' is ambiguous [H:\Users\chris\Documents\mitsuba2\src\integrato 
    rs\volpathsimple-obj.vcxproj]
    
        0 Warning(s)
        3 Error(s)
    
    Time Elapsed 00:01:35.26
    The terminal process terminated with exit code: 1
    
    opened by Smilebags 29
  • OpenEXR dwaLookups gets Segmentation fault: 11 [OSX Catalina - 10.15]

    OpenEXR dwaLookups gets Segmentation fault: 11 [OSX Catalina - 10.15]

    Hello,

    Building on OSX, I get stuck on the OpenEXR execution of dwaLookups. Here's the output when I rerun ninja after the first crash (hence why I only have 202 goals left instead of the original 700+):

    $ ninja
    [2/202] Generating dwaLookups.h
    FAILED: ext_build/openexr/OpenEXR/IlmImf/dwaLookups.h
    cd /Users/guy4261/mitsuba2/build/ext_build/openexr/OpenEXR/IlmImf && /Users/guy4261/mitsuba2/build/ext_build/openexr/OpenEXR/IlmImf/./dwaLookups > /Users/guy4261/mitsuba2/build/ext_build/openexr/OpenEXR/IlmImf/dwaLookups.h
    /bin/sh: line 1: 62275 Segmentation fault: 11  /Users/guy4261/mitsuba2/build/ext_build/openexr/OpenEXR/IlmImf/./dwaLookups > /Users/guy4261/mitsuba2/build/ext_build/openexr/OpenEXR/IlmImf/dwaLookups.h
    

    The dwaLookups binary runs, but segfaults. Here's what I get when I run on the shell:

    $ ext_build/openexr/OpenEXR/IlmImf/./dwaLookups
    #include <cstddef>
    
    
    
    const unsigned short dwaCompressorNoOp[] =
    {
        0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
        0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
        0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
        0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
    ...
        0xffe0, 0xffe1, 0xffe2, 0xffe3, 0xffe4, 0xffe5, 0xffe6, 0xffe7,
        0xffe8, 0xffe9, 0xffea, 0xffeb, 0xffec, 0xffed, 0xffee, 0xffef,
        0xfff0, 0xfff1, 0xfff2, 0xfff3, 0xfff4, 0xfff5, 0xfff6, 0xfff7,
        0xfff8, 0xfff9, 0xfffa, 0xfffb, 0xfffc, 0xfffd, 0xfffe, 0xffff,
    };
    
    
    
    Segmentation fault: 11
    

    My enabled modes in mitsuba_conf are:

        "enabled": [
            "scalar_rgb",
            "scalar_spectral",
            "packet_rgb"
        ],
    

    and notice that the problem is with the OpenEXR under ext_build, so I assume this does not arise from the OpenEXR that I may already have on my system.

    opened by guy4261 23
  •  [✨ feature request]Does the differentiable rendering module support `roughconductor`?

    [✨ feature request]Does the differentiable rendering module support `roughconductor`?

    My question is that does the differentiable rendering module support roughconductor? If it does, could you provide an example? Looking forward to your reply!

    opened by HsiangYangChu 22
  • Add xml.load_dict() to load objects from py::dict

    Add xml.load_dict() to load objects from py::dict

    Added functionality

    • Access to plugin manager instance
    • example showing how to create a scene in python

    Limitation

    Only supports mitsuba tags which are python constructible(primitive types, shape, integrator, emitter, scene). The limiting factor is the requirement of base class ptr in the call to create_object. Due to this limitation, there is a lot of unnecessary code during python scene creation.

    ✨ new feature 
    opened by arpit15 22
  • Compilation issues [scalar_spectral, gpu_autodiff_spectral, CUDA 10.2, Winows 10]

    Compilation issues [scalar_spectral, gpu_autodiff_spectral, CUDA 10.2, Winows 10]

    I have compilation issues with the following system settings:

    • Windows 10
    • Visual Studio 2019 (Community Edition) Version 16.4.5
    • cmake 3.16.4
    • python 3.6.8

    I tried different modes and cmake goes well:

    -- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.17763.
    -- The C compiler identification is MSVC 19.24.28316.0
    -- The CXX compiler identification is MSVC 19.24.28316.0
    -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
    -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
    -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
    -- Detecting CXX compiler ABI info   
    -- Detecting CXX compiler ABI info - done    
    -- Detecting CXX compile features      
    -- Detecting CXX compile features - done       
    -- Found PythonInterp: C:/Users/adminlab/AppData/Local/Programs/Python/Python36/python.exe (found version "3.6.8")   
    -- Found PythonLibs: C:/Users/adminlab/AppData/Local/Programs/Python/Python36/libs/Python36.lib         
    -- Building the following variants of Mitsuba:                
    --  * scalar_spectral                                        
    --  * gpu_autodiff_spectral                            
    -- Mitsuba: building the Python plugin.     
    -- The CUDA compiler identification is NVIDIA 10.2.89         
    -- Check for working CUDA compiler: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.2/bin/nvcc.exe   
    -- Check for working CUDA compiler: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.2/bin/nvcc.exe -- works   
    -- Detecting CUDA compiler ABI info                                                            
    -- Detecting CUDA compiler ABI info - done                               
    -- Enoki: building the CUDA backend.                     
    -- Enoki: building the autodiff backend.                
    -- Enoki: building the Python plugin.            
    -- pybind11 v2.4.dev4                 
    -- Performing Test HAS_MSVC_GL_LTCG             
    -- Performing Test HAS_MSVC_GL_LTCG - Success    
    -- LTO enabled                              
    -- Looking for sys/types.h              
    -- Looking for sys/types.h - found       
    -- Looking for stdint.h                
    -- Looking for stdint.h - found        
    -- Looking for stddef.h             
    -- Looking for stddef.h - found       
    -- Check size of off64_t            
    -- Check size of off64_t - failed       
    -- Looking for fseeko                     
    -- Looking for fseeko - not found           
    -- Looking for unistd.h                     
    -- Looking for unistd.h - not found    
    -- Found ZLIB: D:/Mitsuba2/mitsuba2/ext_build/zlib/$<CONFIGURATION>/zlib.lib       
    -- Looking for stdlib.h                     
    -- Looking for stdlib.h - found                
    -- Performing Test HAVE_GCC_INLINE_ASM_AVX       
    -- Performing Test HAVE_GCC_INLINE_ASM_AVX - Failed   
    -- Performing Test HAVE_SYSCONF_NPROCESSORS_ONLN    
    -- Performing Test HAVE_SYSCONF_NPROCESSORS_ONLN - Failed  
    -- The ASM_MASM compiler identification is MSVC            
    -- Found assembler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/ml64.exe     
    -- Performing Test SUPPORTS_VOLATILE_FLAG        
    -- Performing Test SUPPORTS_VOLATILE_FLAG - Success      
    -- Performing Test __CxxFlag__arch_AVX                      
    -- Performing Test __CxxFlag__arch_AVX - Success         
    -- Performing Test __CxxFlag__arch_AVX2          
    -- Performing Test __CxxFlag__arch_AVX2 - Success   
    -- Performing Test __CxxFlag__std_c__latest          
    -- Performing Test __CxxFlag__std_c__latest - Success     
    -- Performing Test __CxxFlag__std_c__14                    
    -- Performing Test __CxxFlag__std_c__14 - Success           
    -- Mitsuba: using builtin implementation for CPU ray tracing.      
    -- Mitsuba: using OptiX for GPU ray tracing.                       
    -- Mitsuba: LTO support enabled.                           
    -- Check if the system is big endian               
    -- Searching 16 bit integer             
    -- Check size of unsigned short        
    -- Check size of unsigned short - done     
    -- Using unsigned short                 
    -- Check if the system is big endian - little endian    
    -- Mitsuba: sampling profiler disabled.             
    -- Found Sphinx: C:/Users/adminlab/AppData/Local/Programs/Python/Python36/Scripts/sphinx-build.exe    
    -- Configuring done                                                                     
    -- Generating done                                             
    -- Build files have been written to: D:/Mitsuba2/mitsuba2 
    

    However, the compilation fails:

    1>------ Build started: Project: ZERO_CHECK, Configuration: Debug x64 ------
    1>Checking Build System
    2>------ Build started: Project: Iex, Configuration: Debug x64 ------
    3>------ Build started: Project: eLut, Configuration: Debug x64 ------
    4>------ Build started: Project: toFloat, Configuration: Debug x64 ------
    5>------ Build started: Project: IlmImf-obj, Configuration: Debug x64 ------
    2>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/Iex/CMakeLists.txt
    3>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/Half/CMakeLists.txt
    4>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/Half/CMakeLists.txt
    5>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/OpenEXR/IlmImf/CMakeLists.txt
    2>IexBaseExc.cpp
    3>eLut.cpp
    2>IexThrowErrnoExc.cpp
    2>Generating Code...
    4>toFloat.cpp
    5>ImfAttribute.cpp
    2>   Creating library D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Iex/Debug/Iex.lib and object D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Iex/Debug/Iex.exp
    4>toFloat.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\Half\Debug\toFloat.exe
    3>eLut.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\Half\Debug\eLut.exe
    2>Iex.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\Iex\Debug\Iex.dll
    6>------ Build started: Project: IlmThread, Configuration: Debug x64 ------
    7>------ Build started: Project: Imath, Configuration: Debug x64 ------
    8>------ Build started: Project: Half, Configuration: Debug x64 ------
    7>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/Imath/CMakeLists.txt
    6>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/IlmThread/CMakeLists.txt
    7>ImathBox.cpp
    7>ImathRandom.cpp
    7>ImathColorAlgo.cpp
    7>ImathShear.cpp
    7>ImathFun.cpp
    7>ImathVec.cpp
    7>ImathMatrixAlgo.cpp
    7>Generating Code...
    7>   Creating library D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Imath/Debug/Imath.lib and object D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Imath/Debug/Imath.exp
    7>Imath.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\Imath\Debug\Imath.dll
    9>------ Build started: Project: enoki-cuda, Configuration: Debug x64 ------
    9>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/enoki/CMakeLists.txt
    5>ImfBoxAttribute.cpp
    5>ImfCRgbaFile.cpp
    5>ImfChannelList.cpp
    5>ImfChannelListAttribute.cpp
    5>ImfFloatAttribute.cpp
    5>ImfFrameBuffer.cpp
    5>ImfHeader.cpp
    5>ImfIO.cpp
    6>IlmThread.cpp
    6>IlmThreadMutex.cpp
    6>IlmThreadMutexPosix.cpp
    6>IlmThreadPool.cpp
    6>IlmThreadPosix.cpp
    6>IlmThreadSemaphore.cpp
    6>IlmThreadSemaphorePosixCompat.cpp
    6>IlmThreadSemaphorePosix.cpp
    6>IlmThreadMutexWin32.cpp
    6>IlmThreadSemaphoreWin32.cpp
    6>IlmThreadWin32.cpp
    6>Generating Code...
    6>   Creating library D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/IlmThread/Debug/IlmThread.lib and object D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/IlmThread/Debug/IlmThread.exp
    5>ImfInputFile.cpp
    6>IlmThread.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\IlmThread\Debug\IlmThread.dll
    10>------ Build started: Project: zlib, Configuration: Debug x64 ------
    8>Generating eLut.h
    10>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/zlib/CMakeLists.txt
    8>Generating toFloat.h
    8>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/IlmBase/Half/CMakeLists.txt
    5>ImfIntAttribute.cpp
    10>adler32.c
    10>compress.c
    10>crc32.c
    10>deflate.c
    10>gzclose.c
    10>gzlib.c
    10>gzread.c
    10>gzwrite.c
    10>inflate.c
    10>infback.c
    10>inftrees.c
    10>inffast.c
    10>trees.c
    10>uncompr.c
    10>zutil.c
    10>Generating Code...
    10>   Creating library D:/Mitsuba2/mitsuba2/ext_build/zlib/Debug/zlib.lib and object D:/Mitsuba2/mitsuba2/ext_build/zlib/Debug/zlib.exp
    8>half.cpp
    5>ImfLineOrderAttribute.cpp
    10>zlib.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\zlib\Debug\zlib1.dll
    11>------ Build started: Project: tbb_def_files, Configuration: Debug x64 ------
    5>ImfMatrixAttribute.cpp
    5>ImfOpaqueAttribute.cpp
    11>Preprocessing tbb.def
    11>Microsoft (R) C/C++ Optimizing Compiler Version 19.24.28316 for x64
    11>Copyright (C) Microsoft Corporation.  All rights reserved.
    11>
    11>win64-tbb-export.def
    11>Preprocessing tbbmalloc.def
    11>Microsoft (R) C/C++ Optimizing Compiler Version 19.24.28316 for x64
    11>Copyright (C) Microsoft Corporation.  All rights reserved.
    11>
    11>win64-tbbmalloc-export.def
    11>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/tbb/CMakeLists.txt
    8>   Creating library D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Half/Debug/Half.lib and object D:/Mitsuba2/mitsuba2/ext_build/openexr/IlmBase/Half/Debug/Half.exp
    8>Half.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\IlmBase\Half\Debug\Half.dll
    5>ImfOutputFile.cpp
    12>------ Build started: Project: asmjit, Configuration: Debug x64 ------
    13>------ Build started: Project: CopyIlmBaseLibs, Configuration: Debug x64 ------
    12>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/asmjit/CMakeLists.txt
    5>ImfRgbaFile.cpp
    5>ImfStringAttribute.cpp
    5>ImfVecAttribute.cpp
    5>ImfHuf.cpp
    5>ImfThreading.cpp
    5>Generating Code...
    12>arch.cpp
    12>assembler.cpp
    12>codebuilder.cpp
    12>codecompiler.cpp
    12>codeemitter.cpp
    12>codeholder.cpp
    12>constpool.cpp
    12>cpuinfo.cpp
    12>func.cpp
    12>globals.cpp
    12>inst.cpp
    12>logging.cpp
    12>operand.cpp
    12>osutils.cpp
    12>regalloc.cpp
    12>runtime.cpp
    12>string.cpp
    12>utils.cpp
    12>vmem.cpp
    12>zone.cpp
    12>x86assembler.cpp
    12>x86builder.cpp
    12>x86compiler.cpp
    12>x86internal.cpp
    5>Compiling...
    5>ImfWav.cpp
    5>ImfLut.cpp
    5>ImfCompressor.cpp
    5>ImfRleCompressor.cpp
    5>ImfZipCompressor.cpp
    12>x86inst.cpp
    5>ImfPizCompressor.cpp
    12>x86instimpl.cpp
    5>ImfMisc.cpp
    12>x86logging.cpp
    12>x86operand.cpp
    12>x86operand_regs.cpp
    5>ImfCompressionAttribute.cpp
    12>x86regalloc.cpp
    5>ImfDoubleAttribute.cpp
    13>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/CMakeLists.txt
    5>ImfConvert.cpp
    14>------ Build started: Project: b44ExpLogTable, Configuration: Debug x64 ------
    5>ImfPreviewImage.cpp
    14>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/OpenEXR/IlmImf/CMakeLists.txt
    5>ImfPreviewImageAttribute.cpp
    5>ImfVersion.cpp
    5>ImfChromaticities.cpp
    14>b44ExpLogTable.cpp
    5>ImfChromaticitiesAttribute.cpp
    14>b44ExpLogTable.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\OpenEXR\IlmImf\Debug\b44ExpLogTable.exe
    15>------ Build started: Project: dwaLookups, Configuration: Debug x64 ------
    15>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/OpenEXR/IlmImf/CMakeLists.txt
    5>ImfKeyCode.cpp
    5>ImfKeyCodeAttribute.cpp
    12>LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/OPT:ICF' specification
    12>   Creating library D:/Mitsuba2/mitsuba2/ext_build/asmjit/Debug/asmjit.lib and object D:/Mitsuba2/mitsuba2/ext_build/asmjit/Debug/asmjit.exp
    12>asmjit.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\asmjit\Debug\asmjit.dll
    12>Done building project "asmjit.vcxproj".
    16>------ Build started: Project: jpeg, Configuration: Debug x64 ------
    16>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/libjpeg/CMakeLists.txt
    15>dwaLookups.cpp
    5>ImfTimeCode.cpp
    5>ImfTimeCodeAttribute.cpp
    5>ImfRational.cpp
    15>dwaLookups.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\OpenEXR\IlmImf\Debug\dwaLookups.exe
    17>------ Build started: Project: mitsuba-core-obj, Configuration: Debug x64 ------
    5>Generating Code...
    17>Building Custom Rule D:/Mitsuba2/mitsuba2/src/libcore/CMakeLists.txt
    5>Compiling...
    16>jmemnobs.c
    5>ImfRationalAttribute.cpp
    16>jaricom.c
    16>jcapimin.c
    16>jcapistd.c
    16>jcarith.c
    16>jccoefct.c
    16>jccolor.c
    17>string.cpp
    16>jcdctmgr.c
    17>appender.cpp
    17>argparser.cpp
    17>bitmap.cpp
    16>jchuff.c
    5>ImfFramesPerSecond.cpp
    16>jcinit.c
    5>ImfStandardAttributes.cpp
    16>jcmainct.c
    16>jcmarker.c
    16>jcmaster.c
    16>jcomapi.c
    16>jcparam.c
    16>jcprepct.c
    16>jcsample.c
    16>jctrans.c
    16>jdapimin.c
    16>jdapistd.c
    16>Generating Code...
    17>class.cpp
    17>D:\Mitsuba2\mitsuba2\include\mitsuba/core/rfilter.h(408,1): warning C4910: 'mitsuba::ReconstructionFilter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp)
    5>ImfStdIO.cpp
    17>D:\Mitsuba2\mitsuba2\include\mitsuba/core/rfilter.h(408,1): warning C4910: 'mitsuba::ReconstructionFilter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp)
    16>Compiling...
    17>dstream.cpp
    16>jdarith.c
    16>jdatadst.c
    16>jdatasrc.c
    16>jdcoefct.c
    17>filesystem.cpp
    16>jdcolor.c
    16>jddctmgr.c
    16>jdhuff.c
    16>jdinput.c
    5>ImfEnvmap.cpp
    16>jdmainct.c
    16>jdmarker.c
    16>jdmaster.c
    17>formatter.cpp
    16>jdmerge.c
    16>jdpostct.c
    17>fresolver.cpp
    16>jdsample.c
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(482,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    16>jdtrans.c
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(487,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(492,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(497,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(502,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    17>D:\Mitsuba2\mitsuba2\src\libcore\bitmap.cpp(507,86): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    16>jerror.c
    16>jfdctflt.c
    5>ImfEnvmapAttribute.cpp
    16>jfdctfst.c
    16>jfdctint.c
    16>jidctflt.c
    16>Generating Code...
    17>fstream.cpp
    16>Compiling...
    17>jit.cpp
    16>jidctfst.c
    16>jidctint.c
    5>ImfScanLineInputFile.cpp
    16>jquant1.c
    17>logger.cpp
    16>jquant2.c
    16>jutils.c
    16>jmemmgr.c
    16>Generating Code...
    17>mmap.cpp
    17>tensor.cpp
    5>ImfTiledInputFile.cpp
    17>mstream.cpp
    16>   Creating library D:/Mitsuba2/mitsuba2/ext_build/libjpeg/Debug/jpeg-mitsuba.lib and object D:/Mitsuba2/mitsuba2/ext_build/libjpeg/Debug/jpeg-mitsuba.exp
    17>object.cpp
    17>plugin.cpp
    16>jpeg.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\libjpeg\Debug\jpeg-mitsuba.dll
    17>profiler.cpp
    17>progress.cpp
    5>ImfTiledMisc.cpp
    17>properties.cpp
    18>------ Build started: Project: png16, Configuration: Debug x64 ------
    5>ImfTiledOutputFile.cpp
    17>qmc.cpp
    17>rfilter.cpp
    17>spectrum.cpp
    17>D:\Mitsuba2\mitsuba2\include\mitsuba/core/rfilter.h(408,1): warning C4910: 'mitsuba::ReconstructionFilter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\libcore\rfilter.cpp)
    17>D:\Mitsuba2\mitsuba2\include\mitsuba/core/rfilter.h(408,1): warning C4910: 'mitsuba::ReconstructionFilter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\libcore\rfilter.cpp)
    17>stream.cpp
    17>struct.cpp
    18>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/libpng/CMakeLists.txt
    5>ImfTiledRgbaFile.cpp
    17>thread.cpp
    17>tls.cpp
    17>transform.cpp
    17>xml.cpp
    17>zstream.cpp
    17>quad.cpp
    5>ImfTileDescriptionAttribute.cpp
    18>png.c
    5>ImfTileOffsets.cpp
    18>pngerror.c
    5>ImfRgbaYca.cpp
    18>pngget.c
    18>pngmem.c
    5>ImfPxr24Compressor.cpp
    18>pngpread.c
    18>pngread.c
    5>ImfTestFile.cpp
    18>pngrio.c
    5>ImfStringVectorAttribute.cpp
    18>pngrtran.c
    5>ImfMultiView.cpp
    18>pngrutil.c
    17>dither-matrix256.cpp
    18>pngset.c
    5>ImfAcesFile.cpp
    18>pngtrans.c
    18>pngwio.c
    5>ImfMultiPartOutputFile.cpp
    18>pngwrite.c
    18>pngwtran.c
    17>util.cpp
    18>pngwutil.c
    5>Generating Code...
    17>mitsuba-core-obj.vcxproj -> D:\Mitsuba2\mitsuba2\src\libcore\mitsuba-core-obj.dir\Debug\mitsuba-core-obj.lib
    17>Done building project "mitsuba-core-obj.vcxproj".
    19>------ Build started: Project: pugixml, Configuration: Debug x64 ------
    18>Generating Code...
    19>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/CMakeLists.txt
    19>pugixml.cpp
    18>   Creating library D:/Mitsuba2/mitsuba2/ext_build/libpng/Debug/libpng16-mitsuba.lib and object D:/Mitsuba2/mitsuba2/ext_build/libpng/Debug/libpng16-mitsuba.exp
    5>Compiling...
    5>ImfGenericOutputFile.cpp
    18>png16.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\libpng\Debug\libpng16-mitsuba.dll
    20>------ Build started: Project: tbb, Configuration: Debug x64 ------
    5>ImfOutputPartData.cpp
    19>   Creating library D:/Mitsuba2/mitsuba2/ext_build/Debug/pugixml.lib and object D:/Mitsuba2/mitsuba2/ext_build/Debug/pugixml.exp
    19>pugixml.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\Debug\pugixml.dll
    21>------ Build started: Project: mitsuba-render-obj, Configuration: Debug x64 ------
    21>Running bin2c
    5>ImfMultiPartInputFile.cpp
    21>Building Custom Rule D:/Mitsuba2/mitsuba2/src/librender/CMakeLists.txt
    21>bsdf.cpp
    21>emitter.cpp
    21>endpoint.cpp
    21>film.cpp
    5>ImfGenericInputFile.cpp
    5>ImfPartType.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\film.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\film.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\film.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\film.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\bsdf.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\bsdf.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    5>ImfInputPartData.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\emitter.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\endpoint.cpp)
    21>imageblock.cpp
    21>integrator.cpp
    21>kdtree.cpp
    21>medium.cpp
    5>ImfOutputPart.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    5>ImfTiledOutputPart.cpp
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(18,1): warning C4457: declaration of 'size' hides function parameter
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(8,63): message : see declaration of 'size'
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(11): message : while compiling class template member function 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>::ImageBlock(const mitsuba::Vector<int,2> &,size_t,const mitsuba::ReconstructionFilter<float,mitsuba::Spectrum<float,4>> *,bool,bool,bool,bool)'
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214): message : see reference to class template instantiation 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(75,1): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(49): message : while compiling class template member function 'void mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>::put(const mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>> *)'
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/phase.h(193,1): warning C4910: 'mitsuba::PhaseFunction<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/phase.h(193,1): warning C4910: 'mitsuba::PhaseFunction<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(216,1): warning C4910: 'mitsuba::Integrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(216,1): warning C4910: 'mitsuba::Integrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(217,1): warning C4910: 'mitsuba::SamplingIntegrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(217,1): warning C4910: 'mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(218,1): warning C4910: 'mitsuba::MonteCarloIntegrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(218,1): warning C4910: 'mitsuba::MonteCarloIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(68,1): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    21>D:\Mitsuba2\mitsuba2\src\librender\imageblock.cpp(49): message : while compiling class template member function 'void mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::put(const mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *)'
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    5>ImfInputPart.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\medium.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(55,12): warning C4189: 'n_threads': local variable is initialized but not referenced
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(48): message : while compiling class template member function 'bool mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::render(mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *)'
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(217): message : see reference to class template instantiation 'mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(171,14): warning C4189: 'sample_count': local variable is initialized but not referenced
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(168): message : while compiling class template member function 'void mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::render_block(const mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,const mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,Float *,size_t) const'
    21>        with
    21>        [
    21>            Float=enoki::DiffArray<enoki::CUDAArray<float>>
    21>        ]
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(170,14): warning C4189: 'pixel_count': local variable is initialized but not referenced
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\kdtree.cpp)
    21>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/array_router.h(200,1): warning C4267: 'argument': conversion from 'size_t' to 'T', possible loss of data
    21>        with
    21>        [
    21>            T=unsigned int
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(139): message : see reference to function template instantiation 'T1 &enoki::operator /=<enoki::DiffArray<enoki::CUDAArray<uint32_t>>,0,size_t>(T1 &,const T2 &)' being compiled
    21>        with
    21>        [
    21>            T1=enoki::DiffArray<enoki::CUDAArray<uint32_t>>,
    21>            T2=size_t
    21>        ]
    21>D:\Mitsuba2\mitsuba2\src\librender\integrator.cpp(48): message : while compiling class template member function 'bool mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::render(mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *,mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *)'
    5>ImfTiledInputPart.cpp
    21>mesh.cpp
    5>ImfDeepScanLineInputPart.cpp
    21>microfacet.cpp
    21>phase.cpp
    5>ImfDeepScanLineOutputPart.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    5>ImfDeepScanLineInputFile.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/phase.h(193,1): warning C4910: 'mitsuba::PhaseFunction<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/phase.h(193,1): warning C4910: 'mitsuba::PhaseFunction<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\phase.cpp)
    21>sampler.cpp
    21>scene.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/core/distr_1d.h(78,1): warning C4267: '=': conversion from 'size_t' to 'unsigned int', possible loss of data (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/core/distr_1d.h(49): message : while compiling class template member function 'void mitsuba::DiscreteDistribution<Float>::update(void)'
    21>        with
    21>        [
    21>            Float=enoki::DiffArray<enoki::CUDAArray<float>>
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/core/distr_1d.h(40): message : see reference to function template instantiation 'void mitsuba::DiscreteDistribution<Float>::update(void)' being compiled
    21>        with
    21>        [
    21>            Float=enoki::DiffArray<enoki::CUDAArray<float>>
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(360): message : see reference to class template instantiation 'mitsuba::DiscreteDistribution<Float>' being compiled
    21>        with
    21>        [
    21>            Float=enoki::DiffArray<enoki::CUDAArray<float>>
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364): message : see reference to class template instantiation 'mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/core/distr_1d.h(79,1): warning C4267: '=': conversion from 'size_t' to 'unsigned int', possible loss of data (compiling source file D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp(602,1): warning C4267: 'argument': conversion from 'size_t' to 'uint32_t', possible loss of data
    21>D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp(633): message : see reference to function template instantiation 'Result mitsuba::cuda_upload<Index,3,mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::optix_geometry::<lambda_e87b4e8bf5ad6e1ea654dd0b877449a6>,enoki::Array<Index,3>>(size_t,Func)' being compiled
    21>        with
    21>        [
    21>            Result=enoki::Array<Index,3>,
    21>            Func=mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::optix_geometry::<lambda_e87b4e8bf5ad6e1ea654dd0b877449a6>
    21>        ]
    21>D:\Mitsuba2\mitsuba2\src\librender\mesh.cpp(620): message : while compiling class template member function 'RTgeometrytriangles mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::optix_geometry(RTcontext)'
    21>sensor.cpp
    5>ImfDeepScanLineOutputFile.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sampler.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sampler.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231,1): warning C4910: 'mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>shape.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\sensor.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(216,1): warning C4910: 'mitsuba::Integrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(216,1): warning C4910: 'mitsuba::Integrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(217,1): warning C4910: 'mitsuba::SamplingIntegrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(217,1): warning C4910: 'mitsuba::SamplingIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(218,1): warning C4910: 'mitsuba::MonteCarloIntegrator<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/integrator.h(218,1): warning C4910: 'mitsuba::MonteCarloIntegrator<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    5>ImfDeepTiledInputPart.cpp
    21>texture.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>spiral.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/mesh.h(364,1): warning C4910: 'mitsuba::Mesh<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene_optix.inl(112,1): warning C4267: 'argument': conversion from 'size_t' to 'unsigned int', possible loss of data (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene_optix.inl(32): message : while compiling class template member function 'void mitsuba::Scene<float,mitsuba::Spectrum<float,4>>::accel_init_gpu(const mitsuba::Properties &)' (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231): message : see reference to class template instantiation 'mitsuba::Scene<float,mitsuba::Spectrum<float,4>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    5>ImfDeepTiledOutputPart.cpp
    21>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/array_router.h(1330,58): warning C4100: 'value': unreferenced formal parameter (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene.cpp(188): message : see reference to function template instantiation 'bool enoki::any_or<true,enoki::DiffArray<enoki::CUDAArray<bool>>>(const T &)' being compiled
    21>        with
    21>        [
    21>            T=enoki::DiffArray<enoki::CUDAArray<bool>>
    21>        ]
    21>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1390): message : see reference to class template instantiation 'enoki::call_support<BaseType,enoki::DiffArray<enoki::CUDAArray<mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *>>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1388): message : while compiling class template member function 'enoki::call_support<BaseType,enoki::DiffArray<enoki::CUDAArray<mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *>>> enoki::DiffArray<enoki::CUDAArray<mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *>>::operator ->(void) const' (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene.cpp(175): message : see reference to class template instantiation 'enoki::DiffArray<enoki::CUDAArray<mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> *>>' being compiled
    21>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/array_generic.h(263): message : see reference to class template instantiation 'enoki::StaticArrayBase<enoki::DiffArray<enoki::CUDAArray<float>>,2,false,Derived_>' being compiled
    21>        with
    21>        [
    21>            Derived_=mitsuba::Point<enoki::DiffArray<enoki::CUDAArray<float>>,2>
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/core/vector.h(29): message : see reference to class template instantiation 'enoki::StaticArrayImpl<Value_,2,false,mitsuba::Point<Value_,2>,int>' being compiled
    21>        with
    21>        [
    21>            Value_=enoki::DiffArray<enoki::CUDAArray<float>>
    21>        ] (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/interaction.h(105): message : see reference to class template instantiation 'mitsuba::Point<enoki::DiffArray<enoki::CUDAArray<float>>,2>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene.cpp(119): message : see reference to class template instantiation 'mitsuba::SurfaceInteraction<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>' being compiled
    21>D:\Mitsuba2\mitsuba2\src\librender\scene.cpp(119): message : while compiling class template member function 'mitsuba::SurfaceInteraction<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>::ray_intersect(const mitsuba::Ray<mitsuba::Point<enoki::DiffArray<enoki::CUDAArray<float>>,3>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> &,enoki::DiffArray<enoki::CUDAArray<bool>>) const'
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/scene.h(231): message : see reference to class template instantiation 'mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>' being compiled (compiling source file D:\Mitsuba2\mitsuba2\src\librender\scene.cpp)
    21>D:\Mitsuba2\mitsuba2\src\librender\scene.cpp(153): message : while compiling class template member function 'std::pair<mitsuba::DirectionSample<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>,Spectrum> mitsuba::Scene<enoki::DiffArray<enoki::CUDAArray<float>>,Spectrum>::sample_emitter_direction(const mitsuba::Interaction<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>> &,const mitsuba::Point<enoki::DiffArray<enoki::CUDAArray<float>>,2> &,bool,enoki::DiffArray<enoki::CUDAArray<bool>>) const'
    21>        with
    21>        [
    21>            Spectrum=mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>
    21>        ]
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    5>ImfDeepTiledInputFile.cpp
    5>ImfDeepTiledOutputFile.cpp
    5>ImfDeepFrameBuffer.cpp
    5>ImfDeepCompositing.cpp
    5>Generating Code...
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\texture.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/kdtree.h(2459,1): warning C4910: 'mitsuba::ShapeKDTree<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/endpoint.h(242,1): warning C4910: 'mitsuba::Endpoint<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/emitter.h(86,1): warning C4910: 'mitsuba::Emitter<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/bsdf.h(502,1): warning C4910: 'mitsuba::BSDF<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(196,1): warning C4910: 'mitsuba::Sensor<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sensor.h(197,1): warning C4910: 'mitsuba::ProjectiveCamera<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/medium.h(108,1): warning C4910: 'mitsuba::Medium<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\shape.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/sampler.h(58,1): warning C4910: 'mitsuba::Sampler<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/film.h(108,1): warning C4910: 'mitsuba::Film<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/imageblock.h(214,1): warning C4910: 'mitsuba::ImageBlock<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\spiral.cpp)
    21>srgb.cpp
    21>librender_ptx.cpp
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/shape.h(336,1): warning C4910: 'mitsuba::Shape<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(229,1): warning C4910: 'mitsuba::Texture<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<float,mitsuba::Spectrum<float,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    21>D:\Mitsuba2\mitsuba2\include\mitsuba/render/texture.h(230,1): warning C4910: 'mitsuba::Volume<enoki::DiffArray<enoki::CUDAArray<float>>,mitsuba::Spectrum<enoki::DiffArray<enoki::CUDAArray<float>>,4>>': '__declspec(dllexport)' and 'extern' are incompatible on an explicit instantiation (compiling source file D:\Mitsuba2\mitsuba2\src\librender\srgb.cpp)
    5>Compiling...
    5>ImfCompositeDeepScanLine.cpp
    21>mitsuba-render-obj.vcxproj -> D:\Mitsuba2\mitsuba2\src\librender\mitsuba-render-obj.dir\Debug\mitsuba-render-obj.lib
    21>Done building project "mitsuba-render-obj.vcxproj".
    22>------ Build started: Project: rgb2spec, Configuration: Debug x64 ------
    22>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/rgb2spec/CMakeLists.txt
    5>ImfDeepImageStateAttribute.cpp
    22>rgb2spec.c
    5>ImfFastHuf.cpp
    22>rgb2spec.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\rgb2spec\Debug\rgb2spec.lib
    5>ImfFloatVectorAttribute.cpp
    5>ImfRle.cpp
    5>ImfSystemSpecific.cpp
    5>ImfZip.cpp
    5>Generating Code...
    5>IlmImf-obj.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\OpenEXR\IlmImf\IlmImf-obj.dir\Debug\IlmImf-obj.lib
    23>------ Build started: Project: IlmImf, Configuration: Debug x64 ------
    23> Building acceleration for DwaCompressor, 0.00 %
    23>Generating b44ExpLogTable.h
    23>Generating dwaLookups.h
    23> Building acceleration for DwaCompressor, 6.10 %
    9>Compiling CUDA source file ..\..\ext\enoki\src\cuda\common.cu...
    9>Compiling CUDA source file ..\..\ext\enoki\src\cuda\horiz.cu...
    9>Compiling CUDA source file ..\..\ext\enoki\src\cuda\jit.cu...
    23> Building acceleration for DwaCompressor, 12.21 %
    9>
    9>D:\Mitsuba2\mitsuba2\ext_build\enoki>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin\nvcc.exe" -gencode=arch=compute_61,code=\"compute_61,compute_61\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64" -x cu  -ID:\Mitsuba2\mitsuba2\ext\enoki\include -ID:\Mitsuba2\mitsuba2\ext\enoki\ext\cub -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include"     --keep-dir x64\Debug -maxrregcount=0  --machine 64 --compile -cudart shared -Xcompiler="-Zi -Ob0" -g   -DENOKI_CUDA_COMPUTE_CAPABILITY=61 -DENOKI_CUDA=1 -DENOKI_BUILD=1 -DENOKI_AUTODIFF=1 -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W1 /nologo /Od /Fdenoki-cuda.dir\Debug\vc142.pdb /FS /Zi /RTC1 /MDd " -o enoki-cuda.dir\Debug\horiz.obj "D:\Mitsuba2\mitsuba2\ext\enoki\src\cuda\horiz.cu"
    9>
    9>D:\Mitsuba2\mitsuba2\ext_build\enoki>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin\nvcc.exe" -gencode=arch=compute_61,code=\"compute_61,compute_61\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64" -x cu  -ID:\Mitsuba2\mitsuba2\ext\enoki\include -ID:\Mitsuba2\mitsuba2\ext\enoki\ext\cub -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include"     --keep-dir x64\Debug -maxrregcount=0  --machine 64 --compile -cudart shared -Xcompiler="-Zi -Ob0" -g   -DENOKI_CUDA_COMPUTE_CAPABILITY=61 -DENOKI_CUDA=1 -DENOKI_BUILD=1 -DENOKI_AUTODIFF=1 -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W1 /nologo /Od /Fdenoki-cuda.dir\Debug\vc142.pdb /FS /Zi /RTC1 /MDd " -o enoki-cuda.dir\Debug\jit.obj "D:\Mitsuba2\mitsuba2\ext\enoki\src\cuda\jit.cu"
    9>
    9>D:\Mitsuba2\mitsuba2\ext_build\enoki>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin\nvcc.exe" -gencode=arch=compute_61,code=\"compute_61,compute_61\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64" -x cu  -ID:\Mitsuba2\mitsuba2\ext\enoki\include -ID:\Mitsuba2\mitsuba2\ext\enoki\ext\cub -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include"     --keep-dir x64\Debug -maxrregcount=0  --machine 64 --compile -cudart shared -Xcompiler="-Zi -Ob0" -g   -DENOKI_CUDA_COMPUTE_CAPABILITY=61 -DENOKI_CUDA=1 -DENOKI_BUILD=1 -DENOKI_AUTODIFF=1 -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W1 /nologo /Od /Fdenoki-cuda.dir\Debug\vc142.pdb /FS /Zi /RTC1 /MDd " -o enoki-cuda.dir\Debug\common.obj "D:\Mitsuba2\mitsuba2\ext\enoki\src\cuda\common.cu"
    23> Building acceleration for DwaCompressor, 18.31 %
    23> Building acceleration for DwaCompressor, 24.41 %
    9>D:/Mitsuba2/mitsuba2/ext/enoki/src/cuda/horiz.cu(81): error : namespace "std" has no member "min"
    9>
    9>1 error detected in the compilation of "C:/Users/adminlab/AppData/Local/Temp/tmpxft_00003154_00000000-7_horiz.cpp1.ii".
    9>horiz.cu
    23> Building acceleration for DwaCompressor, 30.52 %
    9>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\BuildCustomizations\CUDA 10.2.targets(764,9): error MSB3721: The command ""C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin\nvcc.exe" -gencode=arch=compute_61,code=\"compute_61,compute_61\" --use-local-env -ccbin "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.24.28314\bin\HostX64\x64" -x cu  -ID:\Mitsuba2\mitsuba2\ext\enoki\include -ID:\Mitsuba2\mitsuba2\ext\enoki\ext\cub -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include"     --keep-dir x64\Debug -maxrregcount=0  --machine 64 --compile -cudart shared -Xcompiler="-Zi -Ob0" -g   -DENOKI_CUDA_COMPUTE_CAPABILITY=61 -DENOKI_CUDA=1 -DENOKI_BUILD=1 -DENOKI_AUTODIFF=1 -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D"CMAKE_INTDIR=\"Debug\"" -Denoki_cuda_EXPORTS -D_WINDLL -D_MBCS -Xcompiler "/EHsc /W1 /nologo /Od /Fdenoki-cuda.dir\Debug\vc142.pdb /FS /Zi /RTC1 /MDd " -o enoki-cuda.dir\Debug\horiz.obj "D:\Mitsuba2\mitsuba2\ext\enoki\src\cuda\horiz.cu"" exited with code 1.
    9>Done building project "enoki-cuda.vcxproj" -- FAILED.
    9>common.cu
    23> Building acceleration for DwaCompressor, 36.62 %
    9>jit.cu
    23> Building acceleration for DwaCompressor, 42.72 %
    24>------ Build started: Project: enoki-autodiff, Configuration: Debug x64 ------
    24>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/enoki/CMakeLists.txt
    23> Building acceleration for DwaCompressor, 48.83 %
    23> Building acceleration for DwaCompressor, 54.93 %
    23> Building acceleration for DwaCompressor, 61.04 %
    24>autodiff.cpp
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<float>::s_tape': class 'std::unique_ptr<enoki::Tape<float>,std::default_delete<enoki::Tape<float>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<float>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<float>,std::default_delete<enoki::Tape<float>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1222): message : see reference to class template instantiation 'enoki::Tape<float>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<double>::s_tape': class 'std::unique_ptr<enoki::Tape<double>,std::default_delete<enoki::Tape<double>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<double>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<double>,std::default_delete<enoki::Tape<double>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1225): message : see reference to class template instantiation 'enoki::Tape<double>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>::s_tape': class 'std::unique_ptr<enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>,std::default_delete<enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>,std::default_delete<enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1228): message : see reference to class template instantiation 'enoki::Tape<enoki::DynamicArray<enoki::Packet<float,8>>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1410,1): warning C4251: 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<float,8>>>::m_value': struct 'enoki::DynamicArray<enoki::Packet<float,8>>' needs to have dll-interface to be used by clients of struct 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<float,8>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1228): message : see declaration of 'enoki::DynamicArray<enoki::Packet<float,8>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1229): message : see reference to class template instantiation 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<float,8>>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>::s_tape': class 'std::unique_ptr<enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>,std::default_delete<enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>,std::default_delete<enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1231): message : see reference to class template instantiation 'enoki::Tape<enoki::DynamicArray<enoki::Packet<double,8>>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1410,1): warning C4251: 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<double,8>>>::m_value': struct 'enoki::DynamicArray<enoki::Packet<double,8>>' needs to have dll-interface to be used by clients of struct 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<double,8>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1231): message : see declaration of 'enoki::DynamicArray<enoki::Packet<double,8>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1232): message : see reference to class template instantiation 'enoki::DiffArray<enoki::DynamicArray<enoki::Packet<double,8>>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<enoki::CUDAArray<float>>::s_tape': class 'std::unique_ptr<enoki::Tape<enoki::CUDAArray<float>>,std::default_delete<enoki::Tape<enoki::CUDAArray<float>>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<enoki::CUDAArray<float>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<enoki::CUDAArray<float>>,std::default_delete<enoki::Tape<enoki::CUDAArray<float>>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1235): message : see reference to class template instantiation 'enoki::Tape<enoki::CUDAArray<float>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1410,1): warning C4251: 'enoki::DiffArray<enoki::CUDAArray<float>>::m_value': struct 'enoki::CUDAArray<float>' needs to have dll-interface to be used by clients of struct 'enoki::DiffArray<enoki::CUDAArray<float>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1235): message : see declaration of 'enoki::CUDAArray<float>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1236): message : see reference to class template instantiation 'enoki::DiffArray<enoki::CUDAArray<float>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122,1): warning C4251: 'enoki::Tape<enoki::CUDAArray<double>>::s_tape': class 'std::unique_ptr<enoki::Tape<enoki::CUDAArray<double>>,std::default_delete<enoki::Tape<enoki::CUDAArray<double>>>>' needs to have dll-interface to be used by clients of struct 'enoki::Tape<enoki::CUDAArray<double>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(122): message : see declaration of 'std::unique_ptr<enoki::Tape<enoki::CUDAArray<double>>,std::default_delete<enoki::Tape<enoki::CUDAArray<double>>>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1238): message : see reference to class template instantiation 'enoki::Tape<enoki::CUDAArray<double>>' being compiled
    24>D:\Mitsuba2\mitsuba2\ext\enoki\include\enoki/autodiff.h(1410,1): warning C4251: 'enoki::DiffArray<enoki::CUDAArray<double>>::m_value': struct 'enoki::CUDAArray<double>' needs to have dll-interface to be used by clients of struct 'enoki::DiffArray<enoki::CUDAArray<double>>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1238): message : see declaration of 'enoki::CUDAArray<double>'
    24>D:\Mitsuba2\mitsuba2\ext\enoki\src\autodiff\autodiff.cpp(1239): message : see reference to class template instantiation 'enoki::DiffArray<enoki::CUDAArray<double>>' being compiled
    23> Building acceleration for DwaCompressor, 67.14 %
    23> Building acceleration for DwaCompressor, 73.24 %
    24>LINK : fatal error LNK1104: cannot open file 'Debug\enoki-cuda.lib'
    24>Done building project "enoki-autodiff.vcxproj" -- FAILED.
    23> Building acceleration for DwaCompressor, 79.35 %
    23> Building acceleration for DwaCompressor, 85.45 %
    23> Building acceleration for DwaCompressor, 91.55 %
    23> Building acceleration for DwaCompressor, 97.66 %
    23>Building Custom Rule D:/Mitsuba2/mitsuba2/ext/openexr/OpenEXR/IlmImf/CMakeLists.txt
    23>ImfB44Compressor.cpp
    23>ImfDwaCompressor.cpp
    23>Generating Code...
    23>   Creating library D:/Mitsuba2/mitsuba2/ext_build/openexr/OpenEXR/IlmImf/Debug/IlmImf.lib and object D:/Mitsuba2/mitsuba2/ext_build/openexr/OpenEXR/IlmImf/Debug/IlmImf.exp
    23>IlmImf.vcxproj -> D:\Mitsuba2\mitsuba2\ext_build\openexr\OpenEXR\IlmImf\Debug\IlmImf.dll
    25>------ Build started: Project: mitsuba-core (mitsuba-core\mitsuba-core), Configuration: Debug x64 ------
    25>Building Custom Rule D:/Mitsuba2/mitsuba2/src/libcore/CMakeLists.txt
    25>LINK : fatal error LNK1104: cannot open file '..\..\ext_build\enoki\Debug\enoki-autodiff.lib'
    25>Done building project "mitsuba-core.vcxproj" -- FAILED.
    26>------ Build started: Project: mitsuba-render (mitsuba-render\mitsuba-render), Configuration: Debug x64 ------
    26>Building Custom Rule D:/Mitsuba2/mitsuba2/src/librender/CMakeLists.txt
    26>LINK : fatal error LNK1104: cannot open file '..\libcore\Debug\mitsuba-core.lib'
    26>Done building project "mitsuba-render.vcxproj" -- FAILED.
    27>------ Build started: Project: mitsuba, Configuration: Debug x64 ------
    27>Building Custom Rule D:/Mitsuba2/mitsuba2/src/mitsuba/CMakeLists.txt
    27>mitsuba.cpp
    27>D:\Mitsuba2\mitsuba2\src\mitsuba\mitsuba.cpp(99,9): warning C4566: character represented by universal-character-name '\u274C' cannot be represented in the current code page (1252)
    27>D:\Mitsuba2\mitsuba2\src\mitsuba\mitsuba.cpp(192,39): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    27>D:\Mitsuba2\mitsuba2\src\mitsuba\mitsuba.cpp(194,13): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
    27>LINK : fatal error LNK1104: cannot open file '..\librender\Debug\mitsuba-render.lib'
    27>Done building project "mitsuba.vcxproj" -- FAILED.
    ========== Build: 22 succeeded, 5 failed, 0 up-to-date, 0 skipped ==========
    

    The failure seems to be related to error : namespace "std" has no member "min", error MSB3721 and some missing links LNK1104. I tried several times to compile with different variants but could not resolve this issue.

    Do you have an idea? Thanks!

    opened by LeonidMill 22
  • [❔ other question] Type mistmatch for new integrator plugin

    [❔ other question] Type mistmatch for new integrator plugin

    Summary

    I created my own integrator plugin in C++ extending the capabilities of the simple path-integrator. Even though the compilation of the repository is successfull, I cannot load the plugin due to a type mismatch.

    System configuration

    • Platform: Ubuntu 20.04 in Windows WSL2
    • Compiler: Clang
    • Python version: 3.8.5
    • Mitsuba 2 version: Own forked repo with extension (https://github.com/MaximilianBader/mitsuba2)
    • Compiled variants:
      • "scalar_rgb",
      • "scalar_spectral",
      • "scalar_mono",
      • "packet_mono"

    Description

    My own integrator plugin is called path_length_origin which is defined as class variant of MonteCarloIntegrator and then exported as it's own plugin. With this definition, I can compile the repository without any issues.

    MTS_IMPLEMENT_CLASS_VARIANT(PathLengthOriginIntegrator, MonteCarloIntegrator) MTS_EXPORT_PLUGIN(PathLengthOriginIntegrator, "Path Tracer integrator including path length and last point of interaction");

    However, if I then create a basic rendering file in Python and try to load a scene which includes the new type as integrator, I encounter an exception:

    Exception has occurred: RuntimeError ​[xml.cpp:1044] Error while loading "mitsuba_scenes/example_us_scene_2.xml" (near line 3, col 6): could not instantiate integrator plugin of type "path_length_origin": [xml.cpp:1044] [PluginManager] Type mismatch when loading plugin "path_length_origin": Expected an instance of type "Integrator" (variant "scalar_mono"), got an instance of type "MonteCarloIntegrator" (variant "scalar_mono")

    I assume, I mixed up a type definition somewhere, but as I basically copied the implementation of the standard path integrator, I do not fully understand what the type error is triggered by. Do you have any recommendations for me?

    Steps to reproduce

    Using the compiled master-branch of my fork repository of your mitsuba2 renderer, try to load the following scene

    example_us_scene_2.xml

    <scene version="2.0.0">
    	<!-- Define basic path tracer modeling maximum of 7 scattering events -->
        <integrator type="path_length_origin">
    	    <integer name="max_depth" value="3"/>
        </integrator>
    
        <!-- Define emitter-->
        <emitter type="point">
    		<spectrum name="intensity" value="1"/>
    		<point name="position" x="-0.01" y="0" z="-0.04"/>
    	</emitter>
        <!--emitter type="point">
    		<spectrum name="intensity" value="1"/>
    		<point name="position" x="0.01" y="0" z="-0.04"/>
    	</emitter -->
    	
    
    	<!-- Define sensor type at same position as emitter which detects the incoming irradiance-->
    	<shape type="rectangle">
    		<!-- Transform sensor type to correct direction -->
    		<transform name="to_world">
    			<scale x="0.00001" y="0.00001" />
    			<translate x="0" y="0" z="-0.04" />
    			<!-- rotate y="1" angle="-180" /-->
    		</transform>
    		
    		<sensor type="irradiancemeterdirectional">
    			<float name="x_max_bound" value="0.02"/>
                <float name="y_max_bound" value="0.005"/>
                <float name="z_max_bound" value="0.02"/>
    			<!-- Write to a portable float map containing all luminance values -->
    			<film type="hdrfilm">
    				<integer name="width" value="1"/>
    				<integer name="height" value="1"/>
    				<string name="pixel_format" value="luminance"/>
    				<string name="file_format" value="pfm" />
    			</film>
    			<!-- Define easiest sampler of sensor for ray tracing-->
    			<sampler type="independent">
                    <integer name = "sample_count" value = "10000"/>
                </sampler>
    		</sensor>
    	</shape>
    
    	<!-- Add simple scattering disk in origin flipped towards emitter and detector -->
    	<shape type="disk">
    		<transform name="to_world">
    			<scale x="0.001" y="0.001" />
    			<translate x="0" y="0" z="0" />
    		</transform>
            <boolean name="flip_normals" value="true"/>
    		<bsdf type="roughdielectric">
    			<float name="int_ior" value="1.5"/>
    			<float name="ext_ior" value="1"/>
    		</bsdf>
    	</shape>
    </scene>
    
    opened by MaximilianBader 21
  • Building issues [no CUDA toolset found]

    Building issues [no CUDA toolset found]

    I have building issues with the following system settings:

    Windows 10 Visual Studio 2019 (Community Edition) Version 16.5.4 cmake 3.17.1 python 3.7 CUDA 10.1

    Even though CUDA is installed, but cmake is not able to locate it. The VCTargets is not created in the VC folder: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/Common7/IDE/VC/

    [email protected] MINGW64 ~/localgitrepository/mitsuba2 (master)
    $ cmake -G "Visual Studio 16 2019" -A x64
    CMake Warning:
      No source or binary directory provided.  Both will be assumed to be the
      same as the current working directory, but note that this warning will
      become a fatal error in future CMake releases.
    
    
    -- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
    -- The C compiler identification is MSVC 19.25.28614.0
    -- The CXX compiler identification is MSVC 19.25.28614.0
    -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe
    -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe - works
    -- Detecting C compiler ABI info
    -- Detecting C compiler ABI info - done
    -- Detecting C compile features
    -- Detecting C compile features - done
    -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe
    -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe - works
    -- Detecting CXX compiler ABI info
    -- Detecting CXX compiler ABI info - done
    -- Detecting CXX compile features
    -- Detecting CXX compile features - done
    -- Found PythonInterp: C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe (found version "3.7.5")
    -- Found PythonLibs: C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/libs/Python37.lib
    -- Building the following variants of Mitsuba:
    --  * scalar_rgb
    --  * scalar_spectral
    --  * gpu_rgb
    --  * gpu_autodiff_rgb
    -- Mitsuba: building the Python plugin.
    CMake Error at C:/Program Files/CMake/share/cmake-3.17/Modules/CMakeDetermineCompilerId.cmake:367 (message):
      No CUDA toolset found.
    Call Stack (most recent call first):
      C:/Program Files/CMake/share/cmake-3.17/Modules/CMakeDetermineCompilerId.cmake:32 (CMAKE_DETERMINE_COMPILER_ID_BUILD)
      C:/Program Files/CMake/share/cmake-3.17/Modules/CMakeDetermineCUDACompiler.cmake:72 (CMAKE_DETERMINE_COMPILER_ID)
      ext/enoki/CMakeLists.txt:20 (enable_language)
    
    -- Configuring incomplete, errors occurred!
    See also "C:/Users/Ankit/localgitrepository/mitsuba2/CMakeFiles/CMakeOutput.log".
    
    

    Do you have an idea? Thanks!

    opened by ph57fe 21
  • [🐛 bug report] Unable to run differentiable rendering example with spectral mode

    [🐛 bug report] Unable to run differentiable rendering example with spectral mode

    Hello, I am trying to run the cbox example given in the docs, and changed the mitsuba2 variant to spectral as I want to work with this variant. Neither my own, nor the cbox example are running in this variant and I get the following error when trying to run both:

    cuda_check(): driver API error = 0700 "CUDA_ERROR_ILLEGAL_ADDRESS" in D:/BAC/mitsuba2/ext/enoki/src/cuda/jit.cu:1319.

    I am kinda stuck to as where the error might come from, as the underlying code does not give me enough information.

    opened by vucenovic 20
  • Installation instructions

    Installation instructions

    Please make sure to include build-essentials in the apt install Ubuntu/Debian instructions. Some images, like the ubuntu:minimal do not have the package included by default and cmake -GNinja .. then fails.

    BTW Thank you very much for publishing Mitsuba2, great job!

    opened by isolin 18
  • [❔ other question] Caustic design issues

    [❔ other question] Caustic design issues

    Hi,

    I'm attempting to create a caustic optimization loop as in the tutorial, with the key difference that my lens surface is defined by parameters that are generated by a neural network. The implementation of the network and the construction of the surface mesh are in PyTorch. At the moment I have some difficulties with setting up the scene:

    • Is there a way to create the directional area light from the tutorial with the current Mitsuba 2 version?
    • Is there a way to introduce the lens surface mesh from PyTorch directly into the scene? Now I create a mitsuba.render.Mesh object which writes the object to a ply file, and then load it from disk together with a scene description using mitsuba.core.xml.load_dict. I want my whole pipeline to be differentiable for optimization.
    • I would also like to use ptracer as an integrator as in the tutorial, any idea when that will be available for Mitsuba 2?

    System information:

    • Windows 11
    • mitsuba variant: gpu_autodiff_mono

    Thanks in advance!

    opened by SouthEndMusic 16
  • [✨ feature request] Does the mitsuba2 support bsdf for cloth model?

    [✨ feature request] Does the mitsuba2 support bsdf for cloth model?

    I notice that in Mitsuba 0.5.0 there is an implementation of irawan's bsdf for cloth. Is it possible to implement it in Mitsuba2 or is there any difficulty to do that? Looking forward to your reply!

    opened by Theo-Wu 0
  • Caught a critical exception: main [properties.cpp:401] └1∩Æ∞☺

    Caught a critical exception: main [properties.cpp:401] └1∩Æ∞☺

    Dear community,

    I captured a fisheye image as environment map. I construct a virtual hemisphere (.obj) with the attached image. The idea is to use image as illumination source and the emitter can light the scene with image context, but now it gave me: 2022-12-26 21:57:35 INFO main [PluginManager] Loading plugin "plugins\area.dll" .. Caught a critical exception: main [properties.cpp:401] └1∩Æ∞☺

    Does anyone know how to solve this?

    Thanks!

    0 hemisphere - Copy hemisphere 1

    opened by Gzhji 0
  • [✨ feature request] Tutorial on differential rendering material acquisition

    [✨ feature request] Tutorial on differential rendering material acquisition

    Summary

    Hello I would like to see if it's possible to do material acquisition (albedo, diffuse or basecolor, roughness, normals,..) on planar textures or objects based on a real photo sequence. Object model would typically come from a photogrammetry software with uv.

    Thank you for your work.

    opened by materialjan 1
  • Editing scene object structure - [❔ other question]

    Editing scene object structure - [❔ other question]

    I'm trying to write a USD Hydra delegate for Mitsuba. In order to do so I need to be able to change the scene structure, e.g. to assign a new BSDF to a Shape. This doesn't appear to be possible with the current API - one can change the value of many parameters using the TraversalCallback API but not assign new Objects.

    Would it be possible to modify Mitsuba to do this? Or is the current architecture fundamentally antithetical to changing the structure of the scene graph after the scene is first created?

    opened by anderslanglands 2
  • Is win32 build possible ?

    Is win32 build possible ?

    I am trying to build mitsuba2 for windows 7 following these instructions:

    https://mitsuba2.readthedocs.io/en/latest/src/getting_started/compiling.html

    To be safe, explicitly ask for the 64 bit version of Visual Studio

    cmake -G "Visual Studio 16 2019" -A x64

    Is it possible to build mitsuba2 for win32 as well ? I would like to try and use it in a game called OpenXcom which seems to be win32 only for the moment.

    opened by SkybuckFlying 1
  • Krisrst/advanced lenses

    Krisrst/advanced lenses

    This PR is a work-in-progress. As of right now this is not ready for "detailed reviewing" - although general feedback is very much appreciated. There are unimplemented methods, logging of rays to csv files, some very hacky solutions, and files that should not go into mitsuba2 master, that I have used "just to prove that this can be done" - this will be fixed as I go. However, at the current stage the development suffices for a basic demonstration.

    The goal of this PR is to realize more complex lens simulations that go beyond the basic "thinlens" and "pinhole" camera models. This can be used to evaluate or even optimize lens designs, for example in terms of distortion. This PR introduces three new components to Mitsuba2:

    1. A new type of sensor, called "cmos". The cmos sensor will have rays originate at the surface of the sensor array (focus_p) rather than on the aperture of the lens (aperture_p). It is designed to be able to shoot rays directly into a system of lens surfaces. If there is no optical system the cmos sensor will just produce a "white" image (light no longer gets focused at the die).
    2. A new shape asph_surf. This is an aspheric surface[1] model. It can model hyperbolic, parabolic, spherical and elliptic lenses. The paper also extends the model with a power series which is currently not implemented (but the plan is that it will). The aspheric surface is not a volume; but just a surface that rays can pass through.
    3. A new shape cylhollow. It is a hollow cylinder and quite simple compared to the aspheric lens surface. It is used to encapsulate the lens housing.

    [1] Schuhmann, Rainer. "Description of aspheric surfaces." Advanced Optical Technologies 8.3-4 (2019): 267-278.

    These components can be used to setup a simple biconvex lens:

    image

    The following figure shows a subsampled collection of points where the shapes detect origin rays and intersections through the lens housing:

    image

    We can experiment with the lens parameters to verify that it behaves "physically". For example, in this figure, we regulate the radius of the circle that the "startlens" shoots rays into. This effectively varies the aperture of the sensor, which is normally done with some physical obstruction between the lens and the sensor (but we can fake that like this):

    image

    We see that the lens focuses well with an aperture between 0.5 and 2.5.

    In the following figure, we vary the focal length of the system; i.e. the distance between the lens and the sensor:

    image

    Where we can see that "optimal" focus is at approximately 47 mm from the first lens. Outside of this region, the image blurs because the rays no longer hit the focal point of the lens system.

    A single high resolution image of the rendered scene: image

    **Compiling / Testing **

    Mitsuba.conf

        "enabled": [
            # The "scalar_rgb" variant *must* be included at the moment.
            "scalar_rgb",
            "scalar_spectral",
            "packet_rgb",
            "packet_spectral",
            "gpu_rgb",
            "gpu_spectral"
        ],
    

    The "main test script" is located in a temporary folder "temp/test.xml". It reuses parts from the cbox-rgb.xml script. To run the demo:

    /build/dist/mitsuba -D flen=47.0 -D fov=4 -D aperture=12.5 -D res=256 -D spp=128 -D max_depth=12 -m scalar_rgb -o test temp/test.xml -t 16 2> /dev/null

    At the time of writing I use the stderr file descriptor to subsample ray points etc. Any suggestions on alternative ways to "debug rays" is very welcome.

    ToDo List

    • GPU support
    • Color filter array for CMOS sensor?
    • Implement missing methods
    • Fix bounding box calculation
    • Fix surface area calculation
    • Generic cleanup code
    • Extend aspheric surface with power series

    Please add the labels (e.g. bug, feature, ..) corresponding to this PR

    Description

    Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.

    Fixes # (issue)

    Testing

    Please describe the tests that you added to verify your changes.

    Checklist:

    Please make sure to complete this checklist before requesting a review.

    • [ ] My code follows the style guidelines of this project
    • [ ] My changes generate no new warnings
    • [ ] My code also compiles for gpu_* and packet_* variants. If you can't test this, please leave below
    • [ ] I have commented my code
    • [ ] I have made corresponding changes to the documentation
    • [ ] I have added tests that prove my fix is effective or that my feature works
    • [ ] I cleaned the commit history and removed any "Merge" commits
    • [ ] I give permission that the Mitsuba 2 project may redistribute my contributions under the terms of its license
    opened by krisrst 1
Releases(v2.2.1)
  • v2.2.1(Jul 27, 2020)

  • v2.2.0(Jul 22, 2020)

    July 22, 2020

    • Instancing support via shapegroup and instance plugins (#170)
    • Various sampler plugins: stratified, multijitter, orthogonal, ldsampler (#187)
    • bumpmap BSDF plugin (#201)
    • normalmap BSDF plugin
    • Raytracing API improvements (#209)
    • Differentiable surface interaction (#209)
    • Add <path> XML tag (#165)
    • BlenderMesh shape plugin
    • Projector emitter plugin
    • Add support for textured area light sampling
    • Add Mesh::eval_parameterization to parameterize the mesh using UV values
    • Various bug fixes and other improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.1.0(May 19, 2020)

    May 19, 2020

    • Switch to OptiX 7 for GPU ray tracing backend (#88)
    • Mesh memory layout redesign (#88)
    • Mesh attribute support (#88)
    • Custom shape support for OptiX raytracing backend (#135)
    • xml.dict_to_xml() for writing XML scene file from Python (#131)
    Source code(tar.gz)
    Source code(zip)
  • v2.0.1(May 19, 2020)

    May 18, 2020

    • xml.load_dict() for Mitsuba scene/object construction in Python (#122)
    • Scene traversal mechanism enhancement (#108)
    • Support premultiplied alpha correctly (#104)
    • Spot light plugin (#100)
    • Add Blender mesh constructor (40db7be)
    • Irradiancemeter sensor plugin (b19985b)
    • Radiancemeter sensor plugin (#83)
    • Distant emitter plugin (#60)
    • Custom shape support for Embree raytracing backend (2c1b63f)
    • Add ability to specify Python default variant (4472b55)
    • Add pytest -m "not slow" option (4597466)
    • Moment integrator and Z-tests (74b2bf6)
    • Spatially-varying alpha for roughconductor and roughdielectric (cac8741)
    • Various bug fixes and other improvements
    Source code(tar.gz)
    Source code(zip)
  • v2.0.0(May 19, 2020)

Owner
Mitsuba Physically Based Renderer
A Retargetable Forward and Inverse Renderer
Mitsuba Physically Based Renderer
Angora is a mutation-based fuzzer. The main goal of Angora is to increase branch coverage by solving path constraints without symbolic execution.

Angora Angora is a mutation-based coverage guided fuzzer. The main goal of Angora is to increase branch coverage by solving path constraints without s

833 Jan 07, 2023
[arXiv] What-If Motion Prediction for Autonomous Driving ❓🚗💨

WIMP - What If Motion Predictor Reference PyTorch Implementation for What If Motion Prediction [PDF] [Dynamic Visualizations] Setup Requirements The W

William Qi 96 Dec 29, 2022
PyTorch implementation for 3D human pose estimation

Towards 3D Human Pose Estimation in the Wild: a Weakly-supervised Approach This repository is the PyTorch implementation for the network presented in:

Xingyi Zhou 579 Dec 22, 2022
Source code for our paper "Learning to Break Deep Perceptual Hashing: The Use Case NeuralHash"

Learning to Break Deep Perceptual Hashing: The Use Case NeuralHash Abstract: Apple recently revealed its deep perceptual hashing system NeuralHash to

<a href=[email protected]"> 11 Dec 03, 2022
Predicting Tweet Sentiment Maching Learning and streamlit

Predicting-Tweet-Sentiment-Maching-Learning-and-streamlit (I prefere using Visual Studio Code ) Open the folder in VS Code Run the first cell in requi

1 Nov 20, 2021
A collection of models for image<->text generation in ACM MM 2021.

Bi-directional Image and Text Generation UMT-BITG (image & text generator) Unifying Multimodal Transformer for Bi-directional Image and Text Generatio

Multimedia Research 63 Oct 30, 2022
InDuDoNet+: A Model-Driven Interpretable Dual Domain Network for Metal Artifact Reduction in CT Images

InDuDoNet+: A Model-Driven Interpretable Dual Domain Network for Metal Artifact Reduction in CT Images Hong Wang, Yuexiang Li, Haimiao Zhang, Deyu Men

Hong Wang 4 Dec 27, 2022
ThunderGBM: Fast GBDTs and Random Forests on GPUs

Documentations | Installation | Parameters | Python (scikit-learn) interface What's new? ThunderGBM won 2019 Best Paper Award from IEEE Transactions o

Xtra Computing Group 647 Jan 04, 2023
Pytorch implementation for DFN: Distributed Feedback Network for Single-Image Deraining.

DFN:Distributed Feedback Network for Single-Image Deraining Abstract Recently, deep convolutional neural networks have achieved great success for sing

6 Nov 05, 2022
[CVPR 2021 Oral] Variational Relational Point Completion Network

VRCNet: Variational Relational Point Completion Network This repository contains the PyTorch implementation of the paper: Variational Relational Point

PL 121 Dec 12, 2022
Face Depixelizer based on "PULSE: Self-Supervised Photo Upsampling via Latent Space Exploration of Generative Models" repository.

NOTE We have noticed a lot of concern that PULSE will be used to identify individuals whose faces have been blurred out. We want to emphasize that thi

Denis Malimonov 2k Dec 29, 2022
A scientific and useful toolbox, which contains practical and effective long-tail related tricks with extensive experimental results

Bag of tricks for long-tailed visual recognition with deep convolutional neural networks This repository is the official PyTorch implementation of AAA

Yong-Shun Zhang 181 Dec 28, 2022
Distance Encoding for GNN Design

Distance-encoding for GNN design This repository is the official PyTorch implementation of the DEGNN and DEAGNN framework reported in the paper: Dista

172 Nov 08, 2022
KIDA: Knowledge Inheritance in Data Aggregation

KIDA: Knowledge Inheritance in Data Aggregation This project releases our 1st place solution on NeurIPS2021 ML4CO Dual Task. Slide and model weights a

24 Sep 08, 2022
Multi-Task Deep Neural Networks for Natural Language Understanding

New Release We released Adversarial training for both LM pre-training/finetuning and f-divergence. Large-scale Adversarial training for LMs: ALUM code

Xiaodong 2.1k Dec 30, 2022
Rayvens makes it possible for data scientists to access hundreds of data services within Ray with little effort.

Rayvens augments Ray with events. With Rayvens, Ray applications can subscribe to event streams, process and produce events. Rayvens leverages Apache

CodeFlare 32 Dec 25, 2022
Detect roadway lanes using Python OpenCV for project during the 5th semester at DHBW Stuttgart for lecture in digital image processing.

Find Line Detection (Image Processing) Identifying lanes of the road is very common task that human driver performs. It's important to keep the vehicl

LMF 4 Jun 21, 2022
An Implementation of SiameseRPN with Feature Pyramid Networks

SiameseRPN with FPN This project is mainly based on HelloRicky123/Siamese-RPN. What I've done is just add a Feature Pyramid Network method to the orig

3 Apr 16, 2022
U-2-Net: U Square Net - Modified for paired image training of style transfer

U2-Net: U Square Net Modified for paired image training of style transfer This is an unofficial repo making use of the code which was made available b

Doron Adler 43 Oct 03, 2022
Publication describing 3 ML examples at NSLS-II and interfacing into Bluesky

Machine learning enabling high-throughput and remote operations at large-scale user facilities. Overview This repository contains the source code and

BNL 4 Sep 24, 2022