Commit Graph

121 Commits

Author SHA1 Message Date
Takahito Tejima
b3a6d43ee3 fix simpleCpu to be compilable with the latest API 2013-03-08 09:05:07 -08:00
Takahito Tejima
291debd4a9 change access permissions on files 2013-03-08 08:57:42 -08:00
Takahito Tejima
8efecb0fca Batching stuffs: generalized kernel batches, table/dispatcher refactoring, multiMeshFactory, drawContext, etc.
2 client APIs are changed.
- VertexBuffer::UpdateData() takes start vertex offset
- ComputeController::Refine() takes FarKernelBatchVector

Also, ComputeContext no longer holds farmesh.
Client can free farmesh after OsdComputeContext is created.
(but still need FarKernelBatchVector to apply subdivision kernels)
2013-03-07 17:50:15 -08:00
Takahito Tejima
8db3e5ab41 fix updating coarse vertices for cpu/omp kernels.
Closes #133
2013-03-05 09:49:07 -08:00
manuelk
ea1a87441f Add support for hierarchical hole edits.
- add tag parsing for h-hole in shape_utils
- re-create Renderman's test shape from the documentation (catmark_square_hedit.h)
- fix Hbr to correctly pass the hole tag from parent to child face
- fix FarSubdivisionTables to handle disconnected face-vertices without crashing

fixes #75
2013-03-01 18:27:19 -08:00
Andrew Wong
df95968142 hdr_reader: Fix a few compiler warnings 2013-02-25 22:36:28 -05:00
opensubdiv
dfaf8ee76e Fixed merge error. 2013-02-22 16:25:33 -08:00
manuelk
acfd8e366b - similar API changes for Maya 2014 in mayaPtexViewer
- more file permission fixes

fixes #131
2013-02-22 12:58:09 -08:00
manuelk
c3fba1708c - fix function calls incompatible w/ Maya 2014
- change permissions on cudaUtil.cpp, OpenSubdivShader.cpp

fixes #131
2013-02-22 12:31:19 -08:00
manuelk
afc7b9b9a8 - only add detected libs to the maya dependency list
- remove MAYA_tbb_LIBRARY from MayaViewer & MayaPtexViewer examples

fixes #130
2013-02-22 11:38:46 -08:00
manuelk
d21de79ac1 Merge branch 'master' of github.com:PixarAnimationStudios/OpenSubdiv 2013-02-20 14:16:57 -08:00
manuelk
25f79e7ff2 - change adaptive refinement in FarMeshFactory to not refine inside holes,
while retaining a necessary 1-ring on the inside of a hole edge

- add IsInsideHole() function to HbrHalfEdge

- add HasChild() function to HbrVertex and HbrHalfedge

- add a regression shape with adjacent holes and creases (tests dart, crease & boundaries)

Note : this does not address hierarchical edits inside holes or hole tags in hierarchical edits

fixes #78
2013-02-20 14:12:09 -08:00
David G Yu
452b30f72f OsdMesh no longer owns its ComputeController
Now a ComputeController is passed as an
argument to OsdMesh::Create(). This is
a better match to the underlying object
model and can be much more efficient for
compute controllers that have expensive
resources, e.g. compiled shader kernels.

Fixes #103
2013-02-19 17:33:32 -08:00
manuelk
a1040e80d4 - fix glViewer / simpleCPU example code to work w/ GLFW 3.0
- remove testEval from build for now (breaks linux build)

fixes #117
2013-02-19 10:14:56 -08:00
Jeremy Cowles
1befe72c9f glViewer: exit when the window is closed 2013-02-16 13:26:46 -08:00
Jeremy Cowles
3f96f9872a Removed last remnants of glut from simpleCpu comments 2013-02-16 13:15:29 -08:00
jcowles
eb1652bc26 Fixed core profile setup in simpleCpu for linux 2013-02-16 13:10:00 -08:00
Jeremy Cowles
70502cceab Disabled string drawing from simpleCpu 2013-02-16 12:19:04 -08:00
Jeremy Cowles
cd8405a47a Added stdio.h for printf in simpleCpu/main.cpp 2013-02-16 12:05:15 -08:00
Jeremy Cowles
e9b29cda95 Updated simpleCpu to use GLFW for all platforms 2013-02-16 12:03:21 -08:00
Jeremy Cowles
5a7e33a792 Renamed mainGlut.cpp to mainGlfw.cpp in simpleCpu 2013-02-16 11:28:25 -08:00
Dirk Van Gelder
f7181d2f9d Get evalTest and simpleCpu to build again, changing glut references to glfw. 2013-02-15 18:32:10 -08:00
manuelk
a52c70ab8b First pass implementation of holes :
- make sure HBR passes down the hole tag to children when subdividing faces
- minor API modification : allow to unset the hole flag on a face
- modify uniform / adaptive FarMeshFactory to be aware of the flag
- make the FarSubdivisionTableFactory assert when finding unconnected HBR vertices (as it should)

* Uniform subdivision :
    The refinement scheme only creates faces & vertices necessary
    to maintain the one-ring around the edges of a hole, so this solution
    is quite efficient.

* Adaptive subdivision :
    At the moment we are still performing full topological analysis on holes and
    only skipping patches associated to holes. This is sub-optimal in 2 ways :
        1. the topological analysis can potentially be cranking on a lot of unnecessary
           geometry
        2. even though we may not be drawing the patches, the compute stage is still
           applying kernels on all the control vertices of these patches.
    We will have to revisit feature adaptive subdivision & holes, so keep the issue active.

fixes #78
2013-02-13 14:34:33 -08:00
Manuel Kraemer
5ad40fe535 Merge pull request #121 from andrewkww/vs2012_warnings
VS2012 warnings: more conversion warnings and a few others
2013-02-12 17:26:25 -08:00
Philip Rideout
13dfc733f2 typo in the Python readme 2013-02-11 16:24:27 -08:00
Andrew Wong
ccbfea69b1 common/hud: fix a conversion warning
warning C4242: 'argument' : conversion from 'int' to 'char', possible loss of data
2013-02-10 00:04:31 -05:00
manuelk
ef408fc67c - remove the now obsolete glutViewer (replaced by glViewer)
- remove some glut-era callbacks in glViewer / ptexViewer
- fix OSX includes in osd_regression

fixes #117
2013-02-08 14:06:44 -08:00
Philip Rideout
05558699d7 remove unused variable 2013-02-07 17:00:32 -08:00
Philip Rideout
293034d39c move screenshot of demo to doc folder 2013-02-07 16:57:22 -08:00
Manuel Kraemer
ca1e294c70 Merge pull request #116 from prideout/master
Python Bindings for Grandma

This is probably not the final word on python bindings... but it gives us a place to start.

Note : tested only in linux environments so far
2013-02-07 16:40:12 -08:00
Philip Rideout
ad040466a0 fix typos in README 2013-02-07 11:41:48 -08:00
Philip Rideout
604c35ac4f incorp feedback from mkraemer: remove the license file, move the demo to examples/python, change the min Python version to 2.6 2013-02-07 11:37:00 -08:00
Manuel Kraemer
6d4565e6b8 Merge pull request #109 from aras-p/glvbo-fixes
CpuGLVertexBuffer performance fix + glViewer fixes

reviewed, approved & much appreciated : thank you

takahito + manuelk
2013-02-06 18:27:48 -08:00
manuelk
45b38e5c6b fixes a problem on Linux where apparently there is no "primary" monitor returned (NULL)
fixes #113
2013-02-05 18:01:30 -08:00
Manuel Kraemer
91fddab7ef add some logic to enable full-screen mode with GLFW 3.0
confirmed working on Windows - needs checking on other
platforms / versions of GLFW

fixes #113
2013-02-05 16:28:20 -08:00
manuelk
e1f6486ce4 removing more #ifdef's related to adaptive tessellation ability
fixes #111
2013-02-05 15:25:46 -08:00
manuelk
6f5d1e34be partial solution to run-time environment configuration :
- add bool OsdGLDrawContext::SupportsAdaptiveTessellation() method
- modify glViewer to use that instead of #ifdefs

Note : this is not the final word on this as OSD really needs a more comprehensive
system to provide run-time information about available features to the client code.

fixes #111
2013-02-05 15:04:07 -08:00
Manuel Kraemer
2b12ffc447 build fixes :
- remove ptexViewer from the build on OSX (doesnt work)
- remove maya plugins from the build on OSX (until we have a compatible version available)

glViewer fixes :
- fix incorrect GLFW version check in #ifdefs (now done in cmake)
- fix default program GL version (downgraded to 1.5 where necessary)
- remove non core-profile GL calls (triggering errors)

this should allow OSX 10.7 builds to produce a functional, if restricted, glViewer.

fixes #111
2013-02-04 18:37:25 -08:00
Dirk Van Gelder
eed2d98a39 Merge of in-progress Eval API test code to the mainline. Not much
here yet.
2013-02-04 09:35:43 -08:00
Aras Pranckevicius
89a75f03fe glViewer: set sync off on all platforms 2013-02-04 11:59:53 +02:00
Aras Pranckevicius
7b77a08281 glViewer: don't generate GL errors with invalid UBO indices (happens on OSX since tessellation is not supported) 2013-02-04 09:11:10 +02:00
Aras Pranckevicius
9c9f00ef18 glViewer: line widths larger than 1.0 are deprecated in core GL (generates a GL error) 2013-02-04 09:10:27 +02:00
Aras Pranckevicius
54c7329ba4 gcd: files for GCD dispatcher (right now just copy of OMP one), add items to glViewer 2013-02-02 22:53:33 +02:00
manuelk
7a39b0ad7c - add cmake logic to parse package versions and include the correct headers
- add #ifdefs to work around the different versions of glfw
- add cmake logic to parse other packages versions and set minimum requirements
- fix X11 dependencies for static builds of glfw

- general Find.cmake cleanup

fixes #101
2013-01-31 15:34:35 -08:00
manuelk
a6bd013988 change access permissions on files 2013-01-31 15:29:45 -08:00
manuelk
1ba1f048e6 bail out of Rebuild call if the VBO / VAO have not been allocated yet.
fixes #100
2013-01-31 15:27:31 -08:00
manuelk
18e5ab5296 bail out of Rebuild call if the VBO / VAO have not been allocated yet.
fixes #100
2013-01-31 15:24:38 -08:00
Takahito Tejima
ab4f79c128 Remove deprecated GL calls, comply with 4.2/3.3 core profile. Use VAO, update glsl shaders, remove immediate draws, etc.
In example code, GLUT has been replaced with GLFW so that glViewer/ptexViewer can run on OSX (10.7 or later).

OSX note: still have some problem with clang, may need to explicitly specify gcc on cmake cmdline
 -DCMAKE_CXX_COMPILE=/usr/bin/g++

fixes #98
2013-01-29 15:54:18 -08:00
manuelk
d03a04d088 Fix OSD crash bug within CUDA & CL compute modules :
- remove the GL error check in cudaGLVertexBuffer :
  * unrelated GL errors left on the stack were triggering erroneous
  vertexBuffer allocation errors
  * we should not be checking for GL errors here anyway (as most other
  buffer allocations aren't checked either)

- add some pointer checking in the GL / D3D drawContexts in case the
  vertexBuffer pointers passed are NULL

- add some additional typedefs in OsdError to report some of the new
  CUDA / GL related errors
2013-01-25 18:31:40 -08:00
manuelk
f22c717e1c Merge branch 'master' of github.com:PixarAnimationStudios/OpenSubdiv 2013-01-24 14:17:25 -08:00