这篇教程C++ HD_TRACE_FUNCTION函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中HD_TRACE_FUNCTION函数的典型用法代码示例。如果您正苦于以下问题:C++ HD_TRACE_FUNCTION函数的具体用法?C++ HD_TRACE_FUNCTION怎么用?C++ HD_TRACE_FUNCTION使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了HD_TRACE_FUNCTION函数的22个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: HD_TRACE_FUNCTIONvoidHdPoints::_UpdateDrawItem(HdDrawItem *drawItem, HdChangeTracker::DirtyBits *dirtyBits){ HD_TRACE_FUNCTION(); HD_MALLOC_TAG_FUNCTION(); SdfPath const& id = GetId(); /* VISIBILITY */ _UpdateVisibility(dirtyBits); /* CONSTANT PRIMVARS, TRANSFORM AND EXTENT */ _PopulateConstantPrimVars(drawItem, dirtyBits); /* INSTANCE PRIMVARS */ _PopulateInstancePrimVars(drawItem, dirtyBits, InstancePrimVar); Hd_PointsShaderKey shaderKey; drawItem->SetGeometricShader(Hd_GeometricShader::Create(shaderKey)); /* PRIMVAR */ if (HdChangeTracker::IsAnyPrimVarDirty(*dirtyBits, id)) { _PopulateVertexPrimVars(drawItem, dirtyBits); } // VertexPrimVar may be null, if there are no points in the prim. TF_VERIFY(drawItem->GetConstantPrimVarRange());}
开发者ID:ZeroCrunch,项目名称:USD,代码行数:29,
示例2: HD_TRACE_FUNCTIONvoidHdxColorCorrectionTask::Sync(HdSceneDelegate* delegate, HdTaskContext* ctx, HdDirtyBits* dirtyBits){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); if ((*dirtyBits) & HdChangeTracker::DirtyParams) { HdxColorCorrectionTaskParams params; if (_GetTaskParams(delegate, ¶ms)) { _framebufferSize = params.framebufferSize; _colorCorrectionMode = params.colorCorrectionMode; _displayOCIO = params.displayOCIO; _viewOCIO = params.viewOCIO; _colorspaceOCIO = params.colorspaceOCIO; _looksOCIO = params.looksOCIO; _lut3dSizeOCIO = params.lut3dSizeOCIO; // Rebuild shader with new OCIO settings / shader-code. _shaderProgram.reset(); } } *dirtyBits = HdChangeTracker::Clean;}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:26,
示例3: HD_TRACE_FUNCTIONboolHdSt_TriangulateFaceVaryingComputation::Resolve(){ if (!TF_VERIFY(_source)) return false; if (!_source->IsResolved()) return false; if (!_TryLock()) return false; HD_TRACE_FUNCTION(); HD_PERF_COUNTER_INCR(HdPerfTokens->triangulateFaceVarying); VtValue result; HdMeshUtil meshUtil(_topology, _id); if(meshUtil.ComputeTriangulatedFaceVaryingPrimvar( _source->GetData(), _source->GetNumElements(), _source->GetGLElementDataType(), &result)) { _SetResult(HdBufferSourceSharedPtr( new HdVtBufferSource( _source->GetName(), result))); } else { _SetResult(_source); } _SetResolved(); return true;}
开发者ID:JT-a,项目名称:USD,代码行数:29,
示例4: HD_TRACE_FUNCTIONHdDirtyList::~HdDirtyList(){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); HD_PERF_COUNTER_DECR(HdPerfTokens->dirtyLists);}
开发者ID:lvxejay,项目名称:USD,代码行数:7,
示例5: HD_TRACE_FUNCTIONboolHdMeshTopology::operator==(HdMeshTopology const &other) const { HD_TRACE_FUNCTION(); return (_topology == other._topology);}
开发者ID:lvxejay,项目名称:USD,代码行数:7,
示例6: HD_TRACE_FUNCTIONboolHdSt_DrawBatch::_DrawingProgram::CompileShader( HdStDrawItem const *drawItem, bool indirect, HdStResourceRegistrySharedPtr const &resourceRegistry){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); // glew has to be initialized if (!glLinkProgram) { return false; } if (!_geometricShader) { TF_CODING_ERROR("Can not compile a shader without a geometric shader"); return false; } // determine binding points and populate metaData HdBindingRequestVector customBindings; bool instanceDraw = true; _GetCustomBindings(&customBindings, &instanceDraw); // also (surface, renderPass) shaders use their bindings HdStShaderCodeSharedPtrVector shaders = GetComposedShaders(); TF_FOR_ALL(it, shaders) { (*it)->AddBindings(&customBindings); }
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:30,
示例7: HD_TRACE_FUNCTIONboolHd_TriangulateFaceVaryingComputation::Resolve(){ if (not TF_VERIFY(_source)) return false; if (not _source->IsResolved()) return false; if (not _TryLock()) return false; HD_TRACE_FUNCTION(); HD_PERF_COUNTER_INCR(HdPerfTokens->triangulateFaceVarying); VtIntArray const &faceVertexCounts = _topology->GetFaceVertexCounts(); VtIntArray const &holeFaces = _topology->GetHoleIndices(); bool flip = (_topology->GetOrientation() != HdTokens->rightHanded); HdBufferSourceSharedPtr result; switch (_source->GetGLElementDataType()) { case GL_FLOAT: result = _TriangulateFaceVarying<float>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_FLOAT_VEC2: result = _TriangulateFaceVarying<GfVec2f>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_FLOAT_VEC3: result = _TriangulateFaceVarying<GfVec3f>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_FLOAT_VEC4: result = _TriangulateFaceVarying<GfVec4f>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_DOUBLE: result = _TriangulateFaceVarying<double>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_DOUBLE_VEC2: result = _TriangulateFaceVarying<GfVec2d>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_DOUBLE_VEC3: result = _TriangulateFaceVarying<GfVec3d>( _source, faceVertexCounts, holeFaces, flip, _id); break; case GL_DOUBLE_VEC4: result = _TriangulateFaceVarying<GfVec4d>( _source, faceVertexCounts, holeFaces, flip, _id); break; default: TF_CODING_ERROR("Unsupported primvar type for triangulation [%s]", _id.GetText()); result = _source; break; } _SetResult(result); _SetResolved(); return true;}
开发者ID:400dama,项目名称:USD,代码行数:60,
示例8: HD_TRACE_FUNCTIONvoidHdRenderIndex::RemoveRprim(SdfPath const& id){ HD_TRACE_FUNCTION(); _RprimMap::iterator rit = _rprimMap.find(id); if (rit == _rprimMap.end()) return; _RprimInfo &rprimInfo = rit->second; SdfPath instancerId = rprimInfo.rprim->GetInstancerId(); _rprimIds.Remove(id); if (!instancerId.IsEmpty()) { _tracker.InstancerRPrimRemoved(instancerId, id); } _tracker.RprimRemoved(id); // Ask delegate to actually delete the rprim rprimInfo.rprim->Finalize(_renderDelegate->GetRenderParam()); _renderDelegate->DestroyRprim(rprimInfo.rprim); rprimInfo.rprim = nullptr; _rprimMap.erase(rit);}
开发者ID:mplanck,项目名称:USD,代码行数:29,
示例9: HD_TRACE_FUNCTIONvoidHd_PrimTypeIndex<PrimType>::RemovePrim(const TfToken &typeId, const SdfPath &primId, HdChangeTracker &tracker, HdRenderDelegate *renderDelegate){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); typename _TypeIndex::iterator typeIt = _index.find(typeId); if (typeIt ==_index.end()) { TF_CODING_ERROR("Unsupported prim type: %s", typeId.GetText()); return; } _PrimTypeEntry &typeEntry = _entries[typeIt->second]; typename _PrimMap::iterator primIt = typeEntry.primMap.find(primId); if (primIt == typeEntry.primMap.end()) { return; } _TrackerRemovePrim(tracker, primId); _PrimInfo &primInfo = primIt->second; _RenderDelegateDestroyPrim(renderDelegate, primInfo.prim); primInfo.prim = nullptr; typeEntry.primMap.erase(primIt); typeEntry.primIds.Remove(primId);}
开发者ID:JT-a,项目名称:USD,代码行数:30,
示例10: HD_TRACE_FUNCTION/* virtual */std::stringHdSt_FallbackLightingShader::GetSource(TfToken const &shaderStageKey) const{ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); return _glslfx->GetSource(shaderStageKey);}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:9,
示例11: HD_TRACE_FUNCTIONvoidHdxSelectionTask::_Execute(HdTaskContext* ctx){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); // Note that selectionTask comes after renderTask.}
开发者ID:lvxejay,项目名称:USD,代码行数:8,
示例12: HD_TRACE_FUNCTIONTfTokenVector const &HdRenderPass::GetRenderTags(){ HD_TRACE_FUNCTION(); HF_MALLOC_TAG_FUNCTION(); return _collection.GetRenderTags();}
开发者ID:davidgyu,项目名称:USD,代码行数:8,
示例13: HD_TRACE_FUNCTION/* virtual */HdSt_TestLightingShader::IDHdSt_TestLightingShader::ComputeHash() const{ HD_TRACE_FUNCTION(); size_t hash = _glslfx->GetHash(); return (ID)hash;}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:9,
示例14: HD_TRACE_FUNCTIONvoidHdCommandBuffer::PrepareDraw(HdRenderPassStateSharedPtr const &renderPassState, HdResourceRegistrySharedPtr const &resourceRegistry){ HD_TRACE_FUNCTION(); TF_FOR_ALL(batchIt, _drawBatches) { (*batchIt)->PrepareDraw(renderPassState, resourceRegistry); }
开发者ID:JT-a,项目名称:USD,代码行数:9,
示例15: HD_TRACE_FUNCTION/* static */voidHdMesh::ConfigureRepr(TfToken const &reprName, HdMeshReprDesc desc1, HdMeshReprDesc desc2){ HD_TRACE_FUNCTION(); _reprDescConfig.Append(reprName, _MeshReprConfig::DescArray{desc1, desc2});}
开发者ID:lvxejay,项目名称:USD,代码行数:10,
示例16: HD_TRACE_FUNCTIONvoidHdStBufferArrayRangeGL::GetBufferSpecs(HdBufferSpecVector *specs) const{ HD_TRACE_FUNCTION(); HdStBufferResourceGLNamedList const &resources = GetResources(); TF_FOR_ALL(it, resources) { specs->emplace_back(it->first, it->second->GetTupleType()); }
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:10,
示例17: HD_TRACE_FUNCTIONvoidUsdImagingPointsAdapter::_GetPoints(UsdPrim const& prim, VtValue* value, UsdTimeCode time){ HD_TRACE_FUNCTION(); if (!prim.GetAttribute(UsdGeomTokens->points).Get(value, time)) { *value = VtVec3fArray(); }}
开发者ID:MWDD,项目名称:USD,代码行数:10,
示例18: HD_TRACE_FUNCTION/* static */HdTextureResource::IDHdTextureResource::ComputeFallbackUVHash(){ HD_TRACE_FUNCTION(); uint32_t hash = 0; std::string const &filename = _tokens->fallbackUVPath.GetString(); hash = ArchHash(filename.c_str(), filename.size(), hash); return hash;}
开发者ID:MWDD,项目名称:USD,代码行数:12,
示例19: HD_TRACE_FUNCTION/* static */HdStGLSLProgram::IDHdStGLSLProgram::ComputeHash(TfToken const &sourceFile){ HD_TRACE_FUNCTION(); uint32_t hash = 0; std::string const &filename = sourceFile.GetString(); hash = ArchHash(filename.c_str(), filename.size(), hash); return hash;}
开发者ID:rodeofx,项目名称:USD,代码行数:12,
示例20: HD_TRACE_FUNCTIONvoid HdChangeTracker::AddCollection(TfToken const& collectionName){ HD_TRACE_FUNCTION(); _CollectionStateMap::iterator it = _collectionState.find(collectionName); // if it already exists, just return. if (it != _collectionState.end()) { return; } _collectionState[collectionName] = 1;}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:12,
示例21: HD_TRACE_FUNCTIONboolHdBasisCurvesTopology::operator==(HdBasisCurvesTopology const &other) const{ HD_TRACE_FUNCTION(); // no need to compare _adajency and _quadInfo return (_curveType == other._curveType && _curveBasis == other._curveBasis && _curveWrap == other._curveWrap && _curveVertexCounts == other._curveVertexCounts && _curveIndices == other._curveIndices);}
开发者ID:PixarAnimationStudios,项目名称:USD,代码行数:12,
示例22: HD_TRACE_FUNCTIONvoidHd_OsdRefineComputationGPU::Execute(HdBufferArrayRangeSharedPtr const &range){ HD_TRACE_FUNCTION(); HD_MALLOC_TAG_FUNCTION(); Hd_Subdivision *subdivision = _topology->GetSubdivision(); if (not TF_VERIFY(subdivision)) return; subdivision->RefineGPU(range, _name); HD_PERF_COUNTER_INCR(HdPerfTokens->subdivisionRefineGPU);}
开发者ID:400dama,项目名称:USD,代码行数:13,
注:本文中的HD_TRACE_FUNCTION函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ HDassert函数代码示例 C++ HDRP函数代码示例 |