GithubHelp home page GithubHelp logo

bdrydyk / ptex Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wdas/ptex

0.0 1.0 0.0 61.2 MB

Per-Face Texture Mapping for Production Rendering

Home Page: ptex.us/

Makefile 0.17% C++ 22.80% Objective-C 3.37% C 72.58% Python 0.07% CMake 0.66% HTML 0.16% Shell 0.19%

ptex's Introduction

Ptex

Ptex is a texture mapping system developed by Walt Disney Animation Studios for production-quality rendering:

  • No UV assignment is required! Ptex applies a separate texture to each face of a subdivision or polygon mesh.

  • The Ptex file format can efficiently store hundreds of thousands of texture images in a single file.

  • The Ptex API provides cached file I/O and high-quality filtering - everything that is needed to easily add Ptex support to a production-quality renderer or texture authoring application.

Quickstart

Building with make (Linux):

make prefix=$PWD/install
make test
make install
make doc

The Makefile uses cmake under the hood.

This will build, install to a local 'install' directory, and run regression tests.

Installation Contents

install/bin:
    ptxinfo

install/include:
    PtexHalf.h  PtexInt.h  Ptexture.h  PtexUtils.h

install/lib:
    libPtex.a  libPtex.so

Note: docs will be generated in the 'src/doc/ptex' directory and installed as 'install/share/doc/ptex'.

Development

Source tree

Tests

Unit tests are in the src/tests/ directory.

All tests are run by default when building the default all target. Use make test to run the tests directly.

The flags variable can be used to forward flags to ctest. For example, to run just the half tests:

    make test flags='-R half'

Packaging Notes

Ptex's build scripts will use a hardcoded version number that may or may not match the tagged version number when Ptex is built from a tarball instead of from a git worktree.

This version be overriden by placing a file called version at the root of the source tree containing the desired version number.

For example, the following command will generate a version file that will be used by the build in lieu of git tags and the PTEX_VER cmake variable:

echo v2.3.2 >version

Release Prep

Before creating new minor version releases, run:

    ./src/tests/check_version --update vX.Y

check_version.sh updates the default PTEX_VER version in CMakeLists.txt with the specified minor version number.

Running ./src/tests/check_version.sh without any arguments will warn when the git tags do not match the default version.

The gh-pages branch contains the ptex.us website. When new release are created add an entry to buildsite.py and run the script to update the site.

ptex's People

Contributors

davvid avatar brentb avatar schuttejoe avatar mmp avatar nyue avatar manuelknvda avatar billhoffman avatar mochimisu avatar dtoshevcg avatar npbarber avatar byron avatar hippocrates avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.