Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/device/device_cuda.cpp
| Show First 20 Lines • Show All 1,224 Lines • ▼ Show 20 Lines | void tex_alloc(device_memory &mem) | ||||
| } | } | ||||
| CUDA_TEXTURE_DESC texDesc; | CUDA_TEXTURE_DESC texDesc; | ||||
| memset(&texDesc, 0, sizeof(texDesc)); | memset(&texDesc, 0, sizeof(texDesc)); | ||||
| texDesc.addressMode[0] = address_mode; | texDesc.addressMode[0] = address_mode; | ||||
| texDesc.addressMode[1] = address_mode; | texDesc.addressMode[1] = address_mode; | ||||
| texDesc.addressMode[2] = address_mode; | texDesc.addressMode[2] = address_mode; | ||||
| texDesc.filterMode = filter_mode; | texDesc.filterMode = filter_mode; | ||||
| texDesc.flags = CU_TRSF_NORMALIZED_COORDINATES; | texDesc.flags = CU_TRSF_NORMALIZED_COORDINATES | (mem.compress_as_srgb ? CU_TRSF_SRGB : 0); | ||||
| cuda_assert(cuTexObjectCreate(&cmem->texobject, &resDesc, &texDesc, NULL)); | cuda_assert(cuTexObjectCreate(&cmem->texobject, &resDesc, &texDesc, NULL)); | ||||
| /* Resize once */ | /* Resize once */ | ||||
| if (flat_slot >= texture_info.size()) { | if (flat_slot >= texture_info.size()) { | ||||
| /* Allocate some slots in advance, to reduce amount | /* Allocate some slots in advance, to reduce amount | ||||
| * of re-allocations. */ | * of re-allocations. */ | ||||
| texture_info.resize(flat_slot + 128); | texture_info.resize(flat_slot + 128); | ||||
| ▲ Show 20 Lines • Show All 1,570 Lines • Show Last 20 Lines | |||||