[Bf-blender-cvs] [443b91aebe7] upstream_cycles_texture_cache: Cycles: Smaller updates to texture cache, setting a few more options and letting textureSys do the flipping instead of doing it manually

Stefan Werner noreply at git.blender.org
Wed Jun 27 14:04:55 CEST 2018


Commit: 443b91aebe73fede8d40f3702de5b70ba095549d
Author: Stefan Werner
Date:   Thu Jul 6 14:32:40 2017 +0200
Branches: upstream_cycles_texture_cache
https://developer.blender.org/rB443b91aebe73fede8d40f3702de5b70ba095549d

Cycles: Smaller updates to texture cache, setting a few more options and letting textureSys do the flipping instead of doing it manually

===================================================================

M	intern/cycles/kernel/svm/svm_image.h
M	intern/cycles/render/image.cpp
M	intern/cycles/render/shader.cpp

===================================================================

diff --git a/intern/cycles/kernel/svm/svm_image.h b/intern/cycles/kernel/svm/svm_image.h
index 888f45f9449..ab9b4c413d3 100644
--- a/intern/cycles/kernel/svm/svm_image.h
+++ b/intern/cycles/kernel/svm/svm_image.h
@@ -34,14 +34,15 @@ ccl_device float4 svm_image_texture(KernelGlobals *kg, int id, float x, float y,
 		if(path_flag & NEAREST_LOOKUP_PATHS) {
 			options.interpmode = OIIO::TextureOpt::InterpClosest;
 			options.mipmode = OIIO::TextureOpt::MipModeOneLevel;
-			if(path_flag & BLUR_LOOKUP_PATHS)
+			if(path_flag & BLUR_LOOKUP_PATHS) {
 				options.sblur = options.tblur = 1.f/64.f;
+			}
 		}
 		else {
 			options.interpmode = kg->oiio->textures[id].interpolation;
 			options.mipmode = OIIO::TextureOpt::MipModeAniso;
 		}
-		bool success = kg->oiio->tex_sys->texture(kg->oiio->textures[id].handle, (OIIO::TextureSystem::Perthread*)kg->oiio_tdata, options, x, 1.0f - y, ds.dx, ds.dy, dt.dx, dt.dy, 4, (float*)&r);
+		bool success = kg->oiio->tex_sys->texture(kg->oiio->textures[id].handle, (OIIO::TextureSystem::Perthread*)kg->oiio_tdata, options, x, y, ds.dx, ds.dy, dt.dx, dt.dy, 4, (float*)&r);
 		if(!success) {
 			(void) kg->oiio->tex_sys->geterror();
 		} else {
diff --git a/intern/cycles/render/image.cpp b/intern/cycles/render/image.cpp
index 288a8ca2ef3..8b6ded28210 100644
--- a/intern/cycles/render/image.cpp
+++ b/intern/cycles/render/image.cpp
@@ -1077,6 +1077,10 @@ bool ImageManager::make_tx(Image *image, Progress *progress)
 	
 	ImageSpec config;
 	config.attribute("maketx:filtername", "lanczos3");
+	config.attribute("maketx:opaque_detect", 1);
+	config.attribute("maketx:highlightcomp", 1);
+	config.attribute("maketx:updatemode", 1);
+	config.attribute("maketx:oiio_options", 1);
 	if(image->srgb) {
 		config.attribute("maketx:incolorspace", "sRGB");
 		config.attribute("maketx:outcolorspace", "linear");
diff --git a/intern/cycles/render/shader.cpp b/intern/cycles/render/shader.cpp
index 4c56ed85717..c3576f12052 100644
--- a/intern/cycles/render/shader.cpp
+++ b/intern/cycles/render/shader.cpp
@@ -494,6 +494,9 @@ void ShaderManager::device_update_common(Device *device,
 			ts->attribute("accept_unmipped", scene->params.texture_accept_unmipped ? 1 : 0);
 			ts->attribute("accept_untiled", scene->params.texture_accept_untiled ? 1 : 0);
 			ts->attribute("max_memory_MB", scene->params.texture_cache_size > 0 ? (float)scene->params.texture_cache_size : 16384.0f);
+			ts->attribute("latlong_up", "z");
+			ts->attribute("flip_t", 1);
+			ts->attribute("max_tile_channels", 1);
 			oiio_globals->tex_sys = ts;
 		}
 	}



More information about the Bf-blender-cvs mailing list