[Bf-blender-cvs] [e50d229] master: Fix T47794: Point density sometime seems stretched when rendered on GPU
Sergey Sharybin
noreply at git.blender.org
Wed Apr 20 14:42:27 CEST 2016
Commit: e50d2292733b8d50437a9848fc82ee0715f6dec0
Author: Sergey Sharybin
Date: Wed Apr 20 14:42:04 2016 +0200
Branches: master
https://developer.blender.org/rBe50d2292733b8d50437a9848fc82ee0715f6dec0
Fix T47794: Point density sometime seems stretched when rendered on GPU
===================================================================
M intern/cycles/device/device_cuda.cpp
===================================================================
diff --git a/intern/cycles/device/device_cuda.cpp b/intern/cycles/device/device_cuda.cpp
index 22365bb..f1a17d6 100644
--- a/intern/cycles/device/device_cuda.cpp
+++ b/intern/cycles/device/device_cuda.cpp
@@ -606,22 +606,27 @@ public:
cuda_assert(cuTexRefSetFlags(texref, CU_TRSF_READ_AS_INTEGER));
}
+ CUaddress_mode address_mode = CU_TR_ADDRESS_MODE_WRAP;
switch(extension) {
case EXTENSION_REPEAT:
- cuda_assert(cuTexRefSetAddressMode(texref, 0, CU_TR_ADDRESS_MODE_WRAP));
- cuda_assert(cuTexRefSetAddressMode(texref, 1, CU_TR_ADDRESS_MODE_WRAP));
+ address_mode = CU_TR_ADDRESS_MODE_WRAP;
break;
case EXTENSION_EXTEND:
- cuda_assert(cuTexRefSetAddressMode(texref, 0, CU_TR_ADDRESS_MODE_CLAMP));
- cuda_assert(cuTexRefSetAddressMode(texref, 1, CU_TR_ADDRESS_MODE_CLAMP));
+ address_mode = CU_TR_ADDRESS_MODE_CLAMP;
break;
case EXTENSION_CLIP:
- cuda_assert(cuTexRefSetAddressMode(texref, 0, CU_TR_ADDRESS_MODE_BORDER));
- cuda_assert(cuTexRefSetAddressMode(texref, 1, CU_TR_ADDRESS_MODE_BORDER));
+ address_mode = CU_TR_ADDRESS_MODE_BORDER;
break;
default:
assert(0);
+ break;
+ }
+ cuda_assert(cuTexRefSetAddressMode(texref, 0, address_mode));
+ cuda_assert(cuTexRefSetAddressMode(texref, 1, address_mode));
+ if(mem.data_depth > 1) {
+ cuda_assert(cuTexRefSetAddressMode(texref, 2, address_mode));
}
+
cuda_assert(cuTexRefSetFormat(texref, format, mem.data_elements));
cuda_pop_context();
More information about the Bf-blender-cvs
mailing list