HdComputationSharedPtr HdSt_MeshTopology::GetQuadrangulateComputationGPU( TfToken const &name, HdType dataType, SdfPath const &id) { // check if the quad table is already computed as all-quads. if (_quadInfo && _quadInfo->IsAllQuads()) { // no need of quadrangulation. return HdComputationSharedPtr(); } return HdComputationSharedPtr( new HdSt_QuadrangulateComputationGPU(this, name, dataType, id)); }
HdComputationSharedPtr HdSt_MeshTopology::GetOsdRefineComputationGPU(TfToken const &name, HdType dataType) { // for empty topology, we don't need to refine anything. if (_topology.GetFaceVertexCounts().size() == 0) { return HdComputationSharedPtr(); } if (!TF_VERIFY(_subdivision)) return HdComputationSharedPtr(); return _subdivision->CreateRefineComputationGPU(this, name, dataType); }
HdComputationSharedPtr Hd_VertexAdjacency::GetSmoothNormalsComputationGPU(TfToken const &srcName, TfToken const &dstName, GLenum srcDataType, GLenum dstDataType) { return HdComputationSharedPtr(new Hd_SmoothNormalsComputationGPU( this, srcName, dstName, srcDataType, dstDataType)); }