The OpenSubdiv public interface currently requires only C++11 but we
choose this version since C++14 has been the default since GCC 6,
Clang 6, and Visual Studio 2017 (for the most part) and C++14 has been
the default for OpenSubdiv on macOS when support for Metal is enabled.
This setting is guarded so that it can be overridden by the caller when
running CMake.
Fixes#1276
This introduces an internal glLoader library which allows
most of the implementation to be agnostic about the
implementation of the GL loading library. Specifically,
this removes references to the GLEW headers and libraries
from the rest of the source code and build system.
Split the examples/common objects into graphics API dependent object
libraries (following the pattern used for cemmon Ptex dependencies)
so that DX11 and Metal examples are no longer forced to link with GLFW.
Removed the link dependency from libosd to
the Ptex library since Ptex is used only by the
examples. Updated examples/common to separate
the common Ptex sources from the other common
sources so that they are used only by the Ptex
examples.
- updated CMakeLists to account for the moved files
- updated references to argOptions.h in all examples
- added method to ArgOptions to populate vector<ShapeDesc>
- minor changes to ViewerArgUtils to use forward references
Reorganized the character cells used for UI
elements and removed elements that were not
being used in order to provide more space
for the logo image and logo text.
Updated to the new OpenSubdiv logo and updated
the HUD drawing code used to display the logo
character cells.
- updated all examples/gl* to make use of common/argOptions.h
- implemented -yup where user-supplied geometry is imported
- updated glPtexViewer to use ObjAnim class for animated geometry
- added definition to regression/common/shape_utils.h
- removed examples/common/shapeDesc.h and all references to it
- removed local definitions of ShapeDesc from examples, regressions, etc.
- overloaded Shape::parseObj() with ShapeDesc
- updated examples to use Shape::parseObj(ShapeDesc const&);
- removed axis argument to Shape::ParseObj() and ObjAnim::Create()
- replaced -axis with -yup in examples/common/argOptions
- updated clients of ArgOptions: glViewer, glFVarViewer, dxViewer
- updated documentation for common arguments and usage of examples
Started refactoring how we parse arguments for sample viewer
applications into a common place. This will make it easier
to keep args consistent between applications.
- added conversions Shape and Sdc scheme types
- extended ObjAnim to take a scheme type on construction
- updated far/tutorial_9 to make use of new functionality
- changed the main OPENSUBDIV_INCLUDE_DIR to exclude ./opensubdiv
- updated CMakeLists.txt files in non-examples to use only this path
- updated CMakeLists.txt files in examples to append ./opensubdiv to path
- updated source in regression/common to use #include <opensubdiv/...>
- updated source in examples/common to use #include <opensubdiv/...>
- deferred source in examples to be updated on a case-by-case basis
- Added support for OSX CI builds and tests
- Cleaned up build scripts and moved to $ROOT/build_scripts
- On Linux: moved to trusty distro
- On Linux: enabled OpenMP, TBB and PTex build options
- On Linux: install and setup xvfb with newer mesa drivers to run our GL tests
- On Linux: enable GL tests
Read all comments and made corrections to files that aren't part of
OpenSubdiv itself but are packaged with it.
Commandline output of glPtexViewer is affected. Otherwise no functional
changes.
Also removed the remaining Maya dependencies. These
were most useful during the early days of OpenSubdiv.
Now OpenSubdiv has been integrated directly into Maya
and these examples serve little purpose.
- update GUI to match more closely glPtexViewer
- added pipeline stats query for number of triangles tesselated
- matched CPU / GPU compute timers
- added obj animation
- fixed near / far clip planes
- fix build compiling & linking to accomodate recent code churn in Ptex
- fix FindPTex.cmake module to correctly extract version number
- fix dxPtexViewer & glPtexViewer source to compile with new Ptex namespace changes
- add alpha channel padding function to ptexMipmapLoader as a workaround to the absence of 3-channel DXGI formats
- mirror ptex memory limit function from glPtexViewer to dxPtexViewer