THis page http://www.blender.org/manual/render/cycles/gpu_rendering.html gives the limitations for CUDA but not OpenCL. Some test showed up that the limit is of 96 textures. Is there a way to make it higher? It seems not to be a true limit of OpenCL as Luxcore handles more. Is there an addon in Blender to “pack images together” with some padding like for websites to workaround the limitation on both CUDA and OpenCL?
There will always be memory limits for textures CPU or GPU. The limits on the GPU are probably because of hardware limitations. To make sure that the GPU can keep up it’s speed textures are placed in special memory locations that have optimized hardware to access them. There is limits to how much you can do with this hardware wise. Either way there is a solution to get rid of vram texture limits and that is to have out-of-core textures. Basically the textures can sit in system memory and then moved to the GPU when they are needed. Octane has this but there is a slight (10% to 15%) performance penalty for using it. You can have out-of-core geometry as well, Redshift has this feature along with the out-of-core textures. It slows things down a bit, but it’s better than not being able to render at all (and in many cases is still faster than CPU rendering).
ok, thanks for the quick answer. But as I said, Luxcore renders with 200 textures without problem in OpenCL on my R9 280X, so it’s not due to a hardware limitation in that case (test made on exact same scene with Luxblend api 2.x)
Octane also doesn’t have any limitations on the number of textures either, It’s probably an area that Cycles could be updated to support?