MCPcopy Create free account
hub / github.com/DiligentGraphics/DiligentFX / HdFormatToTextureFormat

Function HdFormatToTextureFormat

Hydrogent/src/HnTypeConversions.cpp:237–285  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

235}
236
237TEXTURE_FORMAT HdFormatToTextureFormat(pxr::HdFormat hdFormat)
238{
239 static_assert(pxr::HdFormatCount == 29, "Please handle the new format below");
240 switch (hdFormat)
241 {
242 case pxr::HdFormatInvalid: return TEX_FORMAT_UNKNOWN;
243
244 case pxr::HdFormatUNorm8: return TEX_FORMAT_R8_UNORM;
245 case pxr::HdFormatUNorm8Vec2: return TEX_FORMAT_RG8_UNORM;
246 case pxr::HdFormatUNorm8Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
247 case pxr::HdFormatUNorm8Vec4: return TEX_FORMAT_RGBA8_UNORM;
248
249 case pxr::HdFormatSNorm8: return TEX_FORMAT_R8_SNORM;
250 case pxr::HdFormatSNorm8Vec2: return TEX_FORMAT_RG8_SNORM;
251 case pxr::HdFormatSNorm8Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
252 case pxr::HdFormatSNorm8Vec4: return TEX_FORMAT_RGBA8_SNORM;
253
254 case pxr::HdFormatFloat16: return TEX_FORMAT_R16_FLOAT;
255 case pxr::HdFormatFloat16Vec2: return TEX_FORMAT_RG16_FLOAT;
256 case pxr::HdFormatFloat16Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
257 case pxr::HdFormatFloat16Vec4: return TEX_FORMAT_RGBA16_FLOAT;
258
259 case pxr::HdFormatFloat32: return TEX_FORMAT_R32_FLOAT;
260 case pxr::HdFormatFloat32Vec2: return TEX_FORMAT_RG32_FLOAT;
261 case pxr::HdFormatFloat32Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
262 case pxr::HdFormatFloat32Vec4: return TEX_FORMAT_RGBA32_FLOAT;
263
264 case pxr::HdFormatInt16: return TEX_FORMAT_R16_SINT;
265 case pxr::HdFormatInt16Vec2: return TEX_FORMAT_RG16_SINT;
266 case pxr::HdFormatInt16Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
267 case pxr::HdFormatInt16Vec4: return TEX_FORMAT_RGBA16_SINT;
268
269 case pxr::HdFormatUInt16: return TEX_FORMAT_R16_UINT;
270 case pxr::HdFormatUInt16Vec2: return TEX_FORMAT_RG16_UINT;
271 case pxr::HdFormatUInt16Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
272 case pxr::HdFormatUInt16Vec4: return TEX_FORMAT_RGBA16_UINT;
273
274 case pxr::HdFormatInt32: return TEX_FORMAT_R32_SINT;
275 case pxr::HdFormatInt32Vec2: return TEX_FORMAT_RG32_SINT;
276 case pxr::HdFormatInt32Vec3: UNSUPPORTED("Diligent does not support RGB formats"); return TEX_FORMAT_UNKNOWN;
277 case pxr::HdFormatInt32Vec4: return TEX_FORMAT_RGBA32_SINT;
278
279 case pxr::HdFormatFloat32UInt8: return TEX_FORMAT_D32_FLOAT_S8X24_UINT;
280
281 default:
282 UNEXPECTED("Unexpected format");
283 return TEX_FORMAT_UNKNOWN;
284 }
285}
286
287pxr::HdFormat TextureFormatToHdFormat(TEXTURE_FORMAT TexFmt)
288{

Callers 1

AllocateMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected