Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Dinges <blender@dingto.org>2016-05-12 15:51:42 +0300
committerThomas Dinges <blender@dingto.org>2016-05-12 15:51:42 +0300
commit3c85e1ca1a916fe2ded9ab508f4cd55a2ee22549 (patch)
tree97d80514ed304f00ca264da319b4861ed879f60d /intern/cycles/util
parentcde10e774c39bc4359259558abed6263ed15c392 (diff)
Cycles: Add support for single channel byte textures.
This way, we also save 3/4th of memory for single channel byte textures (e.g. Bump Maps). Note: In order for this to work, the texture *must* have 1 channel only. In Gimp you can e.g. do that via the menu: Image -> Mode -> Grayscale
Diffstat (limited to 'intern/cycles/util')
-rw-r--r--intern/cycles/util/util_texture.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/intern/cycles/util/util_texture.h b/intern/cycles/util/util_texture.h
index 1f0046c354c..2a1cfca4fdd 100644
--- a/intern/cycles/util/util_texture.h
+++ b/intern/cycles/util/util_texture.h
@@ -25,29 +25,37 @@ CCL_NAMESPACE_BEGIN
#define TEX_NUM_BYTE4_IMAGES_CPU 1024
#define TEX_NUM_FLOAT4_IMAGES_CPU 1024
#define TEX_NUM_FLOAT_IMAGES_CPU 1024
+#define TEX_NUM_BYTE_IMAGES_CPU 1024
#define TEX_IMAGE_BYTE4_START_CPU TEX_NUM_FLOAT4_IMAGES_CPU
#define TEX_IMAGE_FLOAT_START_CPU (TEX_NUM_FLOAT4_IMAGES_CPU + TEX_NUM_BYTE4_IMAGES_CPU)
+#define TEX_IMAGE_BYTE_START_CPU (TEX_NUM_FLOAT4_IMAGES_CPU + TEX_NUM_BYTE4_IMAGES_CPU + TEX_NUM_BYTE_IMAGES_CPU)
/* CUDA (Fermi) */
#define TEX_NUM_BYTE4_IMAGES_CUDA 88
#define TEX_NUM_FLOAT4_IMAGES_CUDA 5
#define TEX_NUM_FLOAT_IMAGES_CUDA 0
+#define TEX_NUM_BYTE_IMAGES_CUDA 0
#define TEX_IMAGE_BYTE4_START_CUDA TEX_NUM_FLOAT4_IMAGES_CUDA
#define TEX_IMAGE_FLOAT_START_CUDA (TEX_NUM_FLOAT4_IMAGES_CUDA + TEX_NUM_BYTE4_IMAGES_CUDA)
+#define TEX_IMAGE_BYTE_START_CUDA (TEX_NUM_FLOAT4_IMAGES_CUDA + TEX_NUM_BYTE4_IMAGES_CUDA + TEX_NUM_BYTE_IMAGES_CUDA)
/* CUDA (KEPLER and above) */
#define TEX_NUM_BYTE4_IMAGES_CUDA_KEPLER 145
#define TEX_NUM_FLOAT4_IMAGES_CUDA_KEPLER 5
#define TEX_NUM_FLOAT_IMAGES_CUDA_KEPLER 0
+#define TEX_NUM_BYTE_IMAGES_CUDA_KEPLER 0
#define TEX_IMAGE_BYTE4_START_CUDA_KEPLER TEX_NUM_FLOAT4_IMAGES_CUDA_KEPLER
#define TEX_IMAGE_FLOAT_START_CUDA_KEPLER (TEX_NUM_FLOAT4_IMAGES_CUDA_KEPLER + TEX_NUM_BYTE4_IMAGES_CUDA_KEPLER)
+#define TEX_IMAGE_BYTE_START_CUDA_KEPLER (TEX_NUM_FLOAT4_IMAGES_CUDA_KEPLER + TEX_NUM_BYTE4_IMAGES_CUDA_KEPLER + TEX_NUM_BYTE_IMAGES_CUDA_KEPLER)
/* OpenCL */
#define TEX_NUM_BYTE4_IMAGES_OPENCL 1024
#define TEX_NUM_FLOAT4_IMAGES_OPENCL 1024
#define TEX_NUM_FLOAT_IMAGES_OPENCL 0
+#define TEX_NUM_BYTE_IMAGES_OPENCL 0
#define TEX_IMAGE_BYTE4_START_OPENCL TEX_NUM_FLOAT4_IMAGES_OPENCL
#define TEX_IMAGE_FLOAT_START_OPENCL (TEX_NUM_FLOAT4_IMAGES_OPENCL + TEX_NUM_BYTE4_IMAGES_OPENCL)
+#define TEX_IMAGE_BYTE_START_OPENCL (TEX_NUM_FLOAT4_IMAGES_OPENCL + TEX_NUM_BYTE4_IMAGES_OPENCL + TEX_NUM_BYTE_IMAGES_OPENCL)
/* Color to use when textures are not found. */