OpenSubdiv/regression/shapes/catmark_cubes_infsharp.h
barry 89f00d3603 Added face-varying UVs to several regression shapes:
- added UVs to non-manifold shape sets for both Catmark and Loop
    - added UVs to the semi-sharp and inf-sharp variations of Catmark cubes
2019-05-14 15:22:33 -07:00

194 lines
4.6 KiB
C++

//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the Apache License, Version 2.0 (the "Apache License")
// with the following modification; you may not use this file except in
// compliance with the Apache License and the following modification to it:
// Section 6. Trademarks. is deleted and replaced with:
//
// 6. Trademarks. This License does not grant permission to use the trade
// names, trademarks, service marks, or product names of the Licensor
// and its affiliates, except as required to comply with Section 4(c) of
// the License and to reproduce the content of the NOTICE file.
//
// You may obtain a copy of the Apache License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the Apache License with the above modification is
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the Apache License for the specific
// language governing permissions and limitations under the Apache License.
//
static const std::string catmark_cubes_infsharp =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"# 8 vertices\n"
"v -0.25 -0.50 1.25\n"
"v -0.25 0.50 1.25\n"
"v -1.25 -0.50 1.25\n"
"v -1.25 0.50 1.25\n"
"v -1.25 -0.50 0.25\n"
"v -1.25 0.50 0.25\n"
"v -0.25 -0.50 0.25\n"
"v -0.25 0.50 0.25\n"
"\n"
"# 14 uvs\n"
"vt 0.2 0.55\n"
"vt 0.3 0.55\n"
"vt 0.2 0.65\n"
"vt 0.3 0.65\n"
"vt 0.2 0.75\n"
"vt 0.3 0.75\n"
"vt 0.2 0.85\n"
"vt 0.3 0.85\n"
"vt 0.2 0.95\n"
"vt 0.3 0.95\n"
"vt 0.4 0.55\n"
"vt 0.4 0.65\n"
"vt 0.1 0.55\n"
"vt 0.1 0.65\n"
"\n"
"f 1/1 2/2 4/4 3/3\n"
"f 3/3 4/4 6/6 5/5\n"
"f 5/5 6/6 8/8 7/7\n"
"f 7/7 8/8 2/10 1/9\n"
"f 2/2 8/11 6/12 4/4\n"
"f 7/13 1/1 3/3 5/14\n"
"\n"
"t corner 1/1/0 0 10.0\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 1.25 -0.50 1.25\n"
"v 1.25 0.50 1.25\n"
"v 0.25 -0.50 1.25\n"
"v 0.25 0.50 1.25\n"
"v 0.25 -0.50 0.25\n"
"v 0.25 0.50 0.25\n"
"v 1.25 -0.50 0.25\n"
"v 1.25 0.50 0.25\n"
"\n"
"vt 0.7 0.55\n"
"vt 0.8 0.55\n"
"vt 0.7 0.65\n"
"vt 0.8 0.65\n"
"vt 0.7 0.75\n"
"vt 0.8 0.75\n"
"vt 0.7 0.85\n"
"vt 0.8 0.85\n"
"vt 0.7 0.95\n"
"vt 0.8 0.95\n"
"vt 0.9 0.55\n"
"vt 0.9 0.65\n"
"vt 0.6 0.55\n"
"vt 0.6 0.65\n"
"\n"
"f 9/15 10/16 12/18 11/17\n"
"f 11/17 12/18 14/20 13/19\n"
"f 13/19 14/20 16/22 15/21\n"
"f 15/21 16/22 10/24 9/23\n"
"f 10/16 16/25 14/26 12/18\n"
"f 15/27 9/15 11/17 13/28\n"
"\n"
"t crease 2/1/0 8 9 10.0\n"
"t crease 2/1/0 8 10 10.0\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.25 -0.50 -0.25\n"
"v -0.25 0.50 -0.25\n"
"v -1.25 -0.50 -0.25\n"
"v -1.25 0.50 -0.25\n"
"v -1.25 -0.50 -1.25\n"
"v -1.25 0.50 -1.25\n"
"v -0.25 -0.50 -1.25\n"
"v -0.25 0.50 -1.25\n"
"\n"
"vt 0.2 0.05\n"
"vt 0.3 0.05\n"
"vt 0.2 0.15\n"
"vt 0.3 0.15\n"
"vt 0.2 0.25\n"
"vt 0.3 0.25\n"
"vt 0.2 0.35\n"
"vt 0.3 0.35\n"
"vt 0.2 0.45\n"
"vt 0.3 0.45\n"
"vt 0.4 0.05\n"
"vt 0.4 0.15\n"
"vt 0.1 0.05\n"
"vt 0.1 0.15\n"
"\n"
"f 17/29 18/30 20/32 19/31\n"
"f 19/31 20/32 22/34 21/33\n"
"f 21/33 22/34 24/36 23/35\n"
"f 23/35 24/36 18/38 17/37\n"
"f 18/30 24/39 22/40 20/32\n"
"f 23/41 17/29 19/31 21/42\n"
"\n"
"t crease 2/1/0 18 16 10.0\n"
"t crease 2/1/0 16 22 10.0\n"
"t crease 2/1/0 22 20 10.0\n"
"t crease 2/1/0 18 20 10.0\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 1.25 -0.50 -0.25\n"
"v 1.25 0.50 -0.25\n"
"v 0.25 -0.50 -0.25\n"
"v 0.25 0.50 -0.25\n"
"v 0.25 -0.50 -1.25\n"
"v 0.25 0.50 -1.25\n"
"v 1.25 -0.50 -1.25\n"
"v 1.25 0.50 -1.25\n"
"\n"
"vt 0.7 0.05\n"
"vt 0.8 0.05\n"
"vt 0.7 0.15\n"
"vt 0.8 0.15\n"
"vt 0.7 0.25\n"
"vt 0.8 0.25\n"
"vt 0.7 0.35\n"
"vt 0.8 0.35\n"
"vt 0.7 0.45\n"
"vt 0.8 0.45\n"
"vt 0.9 0.05\n"
"vt 0.9 0.15\n"
"vt 0.6 0.05\n"
"vt 0.6 0.15\n"
"\n"
"f 25/43 26/44 28/46 27/45\n"
"f 27/45 28/46 30/48 29/47\n"
"f 29/47 30/48 32/50 31/49\n"
"f 31/49 32/50 26/52 25/51\n"
"f 26/44 32/53 30/54 28/46\n"
"f 31/55 25/43 27/45 29/56\n"
"\n"
"t crease 2/1/0 24 25 0.1\n"
"t crease 2/1/0 25 27 10.0\n"
"t crease 2/1/0 27 26 10.0\n"
"t crease 2/1/0 26 24 10.0\n"
"t crease 2/1/0 28 29 10.0\n"
"t crease 2/1/0 29 31 10.0\n"
"t crease 2/1/0 31 30 10.0\n"
"t crease 2/1/0 30 28 10.0\n"
"t crease 2/1/0 24 30 10.0\n"
"t crease 2/1/0 25 31 10.0\n"
"t crease 2/1/0 26 28 10.0\n"
"t crease 2/1/0 27 29 10.0\n"
"\n"
"\n"
"t interpolateboundary 1/0/0 2\n"
"t facevaryinginterpolateboundary 1/0/0 1\n"
"\n"
;