Import('env', 'plugins')

plugins += env.SharedLibrary('beckmannSurface', ['beckmannSurface.cpp'])
plugins += env.SharedLibrary('bsdfSimulator', ['bsdfSimulator/bsdfSimulator.cpp', 'bsdfSimulator/bsdfSimulator_proc.cpp'])
plugins += env.SharedLibrary('lobeDerivative', ['bsdfSimulator/lobeDerivative.cpp', 'bsdfSimulator/lobeDerivative_proc.cpp'])
plugins += env.SharedLibrary('scaleMatrixGrad', ['bsdfSimulator/scaleMatrixGrad.cpp', 'bsdfSimulator/scaleMatrixGrad_proc.cpp'])
plugins += env.SharedLibrary('microfacet', ['microfacet.cpp'])
plugins += env.SharedLibrary('heightfield2Trimesh', ['heightfield2Trimesh.cpp'])
plugins += env.SharedLibrary('sphere2Trimesh', ['sphere2Trimesh.cpp'])
plugins += env.SharedLibrary('calcPatchVisibility', ['calcPatchVisibility.cpp'])
plugins += env.SharedLibrary('calcNDFVisibility', ['calcNDFVisibility.cpp'])
plugins += env.SharedLibrary('calcPatchNDF', ['calcPatchNDF.cpp'])
plugins += env.SharedLibrary('calcPatchDirVisSimple', ['calcPatchDirVis_simple.cpp'])
plugins += env.SharedLibrary('calcPatchDirVis', ['calcPatchDirVis.cpp'])
plugins += env.SharedLibrary('testTiledHeightfield', ['testTiledHeightfield.cpp'])
plugins += env.SharedLibrary('samplePatchVis_fixWo', ['samplePatchVis_fixWo.cpp'])
plugins += env.SharedLibrary('samplePatchVis', ['samplePatchVis.cpp'])
plugins += env.SharedLibrary('normalMipmap', ['normalMipmap.cpp'])
plugins += env.SharedLibrary('ndfMipmap', ['ndfMipmap.cpp'])
plugins += env.SharedLibrary('effBRDFDirect', ['effBRDFDirect.cpp'])
plugins += env.SharedLibrary('bsdfReflectance', ['bsdfSimulator/bsdfReflectance.cpp'])
plugins += env.SharedLibrary('effBrdfEstimator', ['bsdfSimulator/effBrdfEstimator.cpp'])

plugins += env.SharedLibrary('LEADR_plane', ['LEADR_plane.cpp'])
plugins += env.SharedLibrary('checkMesoNormals', ['checkMesoNormals.cpp'])
plugins += env.SharedLibrary('validateEvalBSDF', ['validateEvalBSDF.cpp'])
plugins += env.SharedLibrary('validateSampleBSDF', ['validateSampleBSDF.cpp'])
plugins += env.SharedLibrary('validateConcentricMapping', ['validateConcentricMapping.cpp'])
plugins += env.SharedLibrary('testTextureBitmap', ['testTextureBitmap.cpp'])
plugins += env.SharedLibrary('shProjection', ['shProjection.cpp'])
plugins += env.SharedLibrary('shProjection4D', ['shProjection4D.cpp'])

plugins += env.SharedLibrary('upSampleVolume', ['upSampleVolume.cpp'])
plugins += env.SharedLibrary('albedoRemapping', ['albedoRemapping.cpp'])
plugins += env.SharedLibrary('albedoCluster', ['albedoCluster.cpp'])
plugins += env.SharedLibrary('alignLobes', ['alignLobes.cpp'])
plugins += env.SharedLibrary('downSampleVolume', ['downSampleVolume.cpp'])
plugins += env.SharedLibrary('downSampleAlbedo', ['downSampleAlbedo.cpp'])
plugins += env.SharedLibrary('downSampleSGGX', ['downSampleSGGX.cpp'])
plugins += env.SharedLibrary('microflake2SGGX', ['microflake2SGGX.cpp'])
plugins += env.SharedLibrary('cmp', ['cmp.cpp'])
plugins += env.SharedLibrary('clampVolume', ['clampVolume.cpp'])
plugins += env.SharedLibrary('splitGridVolume', ['splitGridVolume.cpp'])
plugins += env.SharedLibrary('createGridVolume', ['createGridVolume.cpp'])
plugins += env.SharedLibrary('orientation2Albedo', ['orientation2Albedo.cpp'])
plugins += env.SharedLibrary('fillEmptyVoxels', ['fillEmptyVoxels.cpp'])
plugins += env.SharedLibrary('calcDownSampleError', ['calcDownSampleError.cpp'])

plugins += env.SharedLibrary('addimages', ['addimages.cpp'])
plugins += env.SharedLibrary('joinrgb', ['joinrgb.cpp'])
plugins += env.SharedLibrary('cylclip', ['cylclip.cpp'])
plugins += env.SharedLibrary('kdbench', ['kdbench.cpp'])
plugins += env.SharedLibrary('tonemap', ['tonemap.cpp'])
#plugins += env.SharedLibrary('rdielprec', ['rdielprec.cpp'])

Export('plugins')
