MCPcopy Create free account
hub / github.com/NVIDIA-RTX/RTXNTC / CreateTextures

Method CreateTextures

tools/explorer/NtcExplorer.cpp:235–290  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

233 ntc::ISharedTexture* decompressedTextureRightShared = nullptr;
234
235 bool CreateTextures(nvrhi::IDevice* device, bool createReferenceTexture, bool useSharedTextures, int decompressedWidth, int decompressedHeight, int decompressedMips)
236 {
237 nvrhi::TextureDesc desc;
238 desc.width = width;
239 desc.height = height;
240 desc.mipLevels = GetNumMipLevels(width, height);
241 switch(format)
242 {
243 case ntc::ChannelFormat::UNORM8:
244 desc.format = nvrhi::Format::RGBA8_UNORM;
245 break;
246 case ntc::ChannelFormat::UNORM16:
247 desc.format = nvrhi::Format::RGBA16_UNORM;
248 break;
249 case ntc::ChannelFormat::FLOAT16:
250 desc.format = nvrhi::Format::RGBA16_FLOAT;
251 break;
252 case ntc::ChannelFormat::FLOAT32:
253 desc.format = nvrhi::Format::RGBA32_FLOAT;
254 break;
255 case ntc::ChannelFormat::UINT32:
256 desc.format = nvrhi::Format::RGBA32_UINT;
257 break;
258 default: assert(false);
259 }
260 desc.debugName = name;
261 desc.dimension = nvrhi::TextureDimension::Texture2D;
262 desc.arraySize = 1;
263 desc.sharedResourceFlags = useSharedTextures ? nvrhi::SharedResourceFlags::Shared : nvrhi::SharedResourceFlags::None;
264 desc.initialState = nvrhi::ResourceStates::ShaderResource;
265 desc.keepInitialState = true;
266 desc.isRenderTarget = true;
267 desc.isTypeless = true;
268 if (createReferenceTexture)
269 {
270 referenceTexture = device->createTexture(desc);
271 if (!referenceTexture)
272 return false;
273 }
274
275 desc.width = decompressedWidth;
276 desc.height = decompressedHeight;
277 desc.mipLevels = decompressedMips;
278 desc.isUAV = true;
279 desc.debugName = name + " (Decompressed Left)";
280 decompressedTextureLeft = device->createTexture(desc);
281 if (!decompressedTextureLeft)
282 return false;
283
284 desc.debugName = name + " (Decompressed Right)";
285 decompressedTextureRight = device->createTexture(desc);
286 if (!decompressedTextureRight)
287 return false;
288
289 return true;
290 }
291
292 void ComputeUncompressedSize()

Callers 2

UploadTexturesMethod · 0.80

Calls 1

GetNumMipLevelsFunction · 0.85

Tested by

no test coverage detected