[Bf-blender-cvs] SVN commit: /data/svn/repos/bf-blender [61669] trunk/lib/win64_vc14/opensubdiv: MSVC 2015 windows x64 (vc140) OpenSubDiv (cf7135eb2a77d7907192fb3be4da7caa1e708f96)
Martijn Berger
martijn.berger at gmail.com
Tue May 31 14:23:31 CEST 2016
Revision: 61669
https://developer.blender.org/rBL61669
Author: juicyfruit
Date: 2016-05-31 14:23:31 +0200 (Tue, 31 May 2016)
Log Message:
-----------
MSVC 2015 windows x64 (vc140) OpenSubDiv (cf7135eb2a77d7907192fb3be4da7caa1e708f96)
Added Paths:
-----------
trunk/lib/win64_vc14/opensubdiv/
trunk/lib/win64_vc14/opensubdiv/bin/
trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe
trunk/lib/win64_vc14/opensubdiv/include/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/error.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchDescriptor.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchMap.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchParam.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchTableFactory.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/primvarRefiner.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/ptexIndices.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/stencilTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/stencilTableFactory.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/topologyDescriptor.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/topologyLevel.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/topologyRefiner.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/topologyRefinerFactory.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/types.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/allocator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/bilinear.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/catmark.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/cornerEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/creaseEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/face.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/faceEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/fvarData.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/fvarEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/halfedge.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/hierarchicalEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/holeEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/loop.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/mesh.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/subdivision.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/vertex.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/hbr/vertexEdit.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/bufferDescriptor.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/clEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/clGLVertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/clPatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/clVertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/cpuD3D11VertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/cpuEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/cpuGLVertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/cpuPatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/cpuVertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/d3d11ComputeEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/d3d11LegacyGregoryPatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/d3d11Mesh.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/d3d11PatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/d3d11VertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glComputeEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glLegacyGregoryPatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glMesh.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glPatchTable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glVertexBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glXFBEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/glslPatchShaderSource.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/hlslPatchShaderSource.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/mesh.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/nonCopyable.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/ompEvaluator.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/ompKernel.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/opencl.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/opengl.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/osd/types.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/bilinearScheme.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/catmarkScheme.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/crease.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/loopScheme.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/options.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/scheme.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/sdc/types.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/version.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/array.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/componentInterfaces.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/fvarLevel.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/fvarRefinement.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/level.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/refinement.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/sparseSelector.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/stackBuffer.h
trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/vtr/types.h
trunk/lib/win64_vc14/opensubdiv/lib/
trunk/lib/win64_vc14/opensubdiv/lib/osdCPU.lib
trunk/lib/win64_vc14/opensubdiv/lib/osdCPU_d.lib
trunk/lib/win64_vc14/opensubdiv/lib/osdGPU.lib
trunk/lib/win64_vc14/opensubdiv/lib/osdGPU_d.lib
Added: trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe
===================================================================
(Binary files differ)
Index: trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe
===================================================================
--- trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe 2016-05-31 12:22:09 UTC (rev 61668)
+++ trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe 2016-05-31 12:23:31 UTC (rev 61669)
Property changes on: trunk/lib/win64_vc14/opensubdiv/bin/stringify.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/error.h
===================================================================
--- trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/error.h (rev 0)
+++ trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/error.h 2016-05-31 12:23:31 UTC (rev 61669)
@@ -0,0 +1,95 @@
+//
+// Copyright 2013 Pixar
+//
+// 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.
+//
+
+#ifndef OPENSUBDIV3_FAR_ERROR_H
+#define OPENSUBDIV3_FAR_ERROR_H
+
+#include "../version.h"
+
+namespace OpenSubdiv {
+namespace OPENSUBDIV_VERSION {
+
+namespace Far {
+
+typedef enum {
+ FAR_NO_ERROR, ///< No error. Move along.
+ FAR_FATAL_ERROR, ///< Issue a fatal error and end the program.
+ FAR_INTERNAL_CODING_ERROR, ///< Issue an internal programming error, but continue execution.
+ FAR_CODING_ERROR, ///< Issue a generic programming error, but continue execution.
+ FAR_RUNTIME_ERROR ///< Issue a generic runtime error, but continue execution.
+} ErrorType;
+
+
+/// \brief The error callback function type (default is "printf")
+typedef void (*ErrorCallbackFunc)(ErrorType err, const char *message);
+
+/// \brief Sets the error callback function (default is "printf")
+///
+/// \note This function is not thread-safe !
+///
+/// @param func function pointer to the callback function
+///
+void SetErrorCallback(ErrorCallbackFunc func);
+
+
+/// \brief The warning callback function type (default is "printf")
+typedef void (*WarningCallbackFunc)(const char *message);
+
+/// \brief Sets the warning callback function (default is "printf")
+///
+/// \note This function is not thread-safe !
+///
+/// @param func function pointer to the callback function
+///
+void SetWarningCallback(WarningCallbackFunc func);
+
+
+//
+// The following are intended for internal use only (and will eventually
+// be moved within namespace internal)
+//
+
+/// \brief Sends an OSD error with a message (internal use only)
+///
+/// @param err the error type
+///
+/// @param format the format of the message (followed by arguments)
+///
+void Error(ErrorType err, const char *format, ...);
+
+/// \brief Sends an OSD warning message (internal use only)
+///
+/// @param format the format of the message (followed by arguments)
+///
+void Warning(const char *format, ...);
+
+
+} // end namespace
+
+} // end namespace OPENSUBDIV_VERSION
+using namespace OPENSUBDIV_VERSION;
+
+} // end namespace OpenSubdiv
+
+#endif // OPENSUBDIV3_FAR_ERROR_H
Added: trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchDescriptor.h
===================================================================
--- trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchDescriptor.h (rev 0)
+++ trunk/lib/win64_vc14/opensubdiv/include/opensubdiv/far/patchDescriptor.h 2016-05-31 12:23:31 UTC (rev 61669)
@@ -0,0 +1,206 @@
+//
+// Copyright 2013 Pixar
+//
+// 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.
+//
+
+#ifndef OPENSUBDIV3_FAR_PATCH_DESCRIPTOR_H
+#define OPENSUBDIV3_FAR_PATCH_DESCRIPTOR_H
+
+#include "../version.h"
+
+#include "../far/types.h"
+#include "../sdc/types.h"
+
+#include <vector>
+
+namespace OpenSubdiv {
+namespace OPENSUBDIV_VERSION {
+
+namespace Far {
+
+/// \brief Describes the type of a patch
+///
+/// Uniquely identifies all the different types of patches
+///
+/// * Uniformly subdivided meshes contain bilinear patches of either QUADS
+/// or TRIANGLES
+///
+/// * Adaptively subdivided meshes contain bicubic patches of types REGULAR,
+/// GREGORY, GREGORY_BOUNDARY, GREGORY_BASIS.
+///
+/// Bitfield layout :
+///
+/// Field | Bits | Content
+/// ------------|:----:|------------------------------------------------------
+/// _type | 4 | patch type
+///
+class PatchDescriptor {
+
+public:
+
+ enum Type {
+ NON_PATCH = 0, ///< undefined
+
+ POINTS, ///< points (useful for cage drawing)
+ LINES, ///< lines (useful for cage drawing)
+
+ QUADS, ///< bilinear quads-only patches
+ TRIANGLES, ///< bilinear triangles-only mesh
+
+ LOOP, ///< Loop patch
+
+ REGULAR, ///< feature-adaptive bicubic patches
+ GREGORY,
+ GREGORY_BOUNDARY,
+ GREGORY_BASIS
+ };
+
+public:
+
+ /// \brief Default constructor.
+ PatchDescriptor() :
+ _type(NON_PATCH) { }
+
+ /// \brief Constructor
+ PatchDescriptor(int type) :
+ _type(type) { }
+
+ /// \brief Copy Constructor
+ PatchDescriptor( PatchDescriptor const & d ) :
+ _type(d.GetType()) { }
+
+ /// \brief Returns the type of the patch
+ Type GetType() const {
+ return (Type)_type;
+ }
+
+ /// \brief Returns true if the type is an adaptive patch
+ static inline bool IsAdaptive(Type type) {
+ return (type>=LOOP and type<=GREGORY_BASIS);
+ }
+
+ /// \brief Returns true if the type is an adaptive patch
+ bool IsAdaptive() const {
+ return IsAdaptive( this->GetType() );
+ }
+
+ /// \brief Returns the number of control vertices expected for a patch of the
+ /// type described
+ static inline short GetNumControlVertices( Type t );
+
+ static inline short GetNumFVarControlVertices( Type t );
+
+ /// \brief Returns the number of control vertices expected for a patch of the
+ /// type described
+ short GetNumControlVertices() const {
+ return GetNumControlVertices( this->GetType() );
+ }
+
+ /// \brief Returns the number of control vertices expected for a patch of the
+ /// type described
+ short GetNumFVarControlVertices() const {
+ return GetNumFVarControlVertices( this->GetType() );
+ }
+
+ /// \brief Number of control vertices of Regular Patches in table.
+ static short GetRegularPatchSize() { return 16; }
+
+ /// \brief Number of control vertices of Gregory (and Gregory Boundary) Patches in table.
+ static short GetGregoryPatchSize() { return 4; }
+
+ /// \brief Number of control vertices of Gregory patch basis (20)
+ static short GetGregoryBasisPatchSize() { return 20; }
+
+
+ /// \brief Returns a vector of all the legal patch descriptors for the
+ /// given adaptive subdivision scheme
+ static Vtr::ConstArray<PatchDescriptor> GetAdaptivePatchDescriptors(Sdc::SchemeType type);
+
+ /// \brief Allows ordering of patches by type
+ inline bool operator < ( PatchDescriptor const other ) const;
+
+ /// \brief True if the descriptors are identical
+ inline bool operator == ( PatchDescriptor const other ) const;
+
+ // debug helper
+ void print() const;
+
+private:
+ unsigned int _type:4;
+};
+
+typedef Vtr::ConstArray<PatchDescriptor> ConstPatchDescriptorArray;
+
+// Returns the number of control vertices expected for a patch of this type
+inline short
+PatchDescriptor::GetNumControlVertices( Type type ) {
+ switch (type) {
+ case REGULAR : return GetRegularPatchSize();
+ case QUADS : return 4;
+ case GREGORY :
+ case GREGORY_BOUNDARY : return GetGregoryPatchSize();
+ case GREGORY_BASIS : return GetGregoryBasisPatchSize();
+ case TRIANGLES : return 3;
+ case LINES : return 2;
+ case POINTS : return 1;
+ default : return -1;
+ }
+}
+
+// Returns the number of face-varying control vertices expected for a patch of this type
+inline short
+PatchDescriptor::GetNumFVarControlVertices( Type type ) {
+ switch (type) {
+ case REGULAR : return GetRegularPatchSize();
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list