manuelk
87188355f1
fix the last bugs in the GregoryBoundary EvalLimit CPU kernel
2013-05-30 18:12:09 -07:00
manuelk
49b710ee77
bug fixes to cpuEvalLimitKernel.cpp (use unsinge ivalence in the correct places)
...
minor code cleanup
Note : there is still a resilient bug in the Gregory Boundary patch case
2013-05-28 16:37:45 -07:00
manuelk
2849965f59
bug fixes for Gregory Boundary patches in cpuEvelLimitKernel.cpp
2013-05-28 13:54:37 -07:00
manuelk
262a0d43a1
fix some MSVC++ build warnings (mostly float precision literals)
2013-05-24 16:51:13 -07:00
manuelk
85a3001120
Work in progress on EvalLimit : added Gregory & GregoryBoundary kernels.
...
Note : GregoryBoundary does not generate the correct surface yet (bug to be squashed soon)
2013-05-24 16:29:28 -07:00
manuelk
f617cdd6ed
Work in Progress : checkin in function kernels for boundary and corner patches.
...
Casual testing doesn't reveal any bug within our sample shapes.
Remaining : gregory & gregory boundary patches.
2013-05-22 18:56:27 -07:00
manuelk
f25e89b745
Work-in-progress check-in for EvalLimit :
...
- added boundary / corner kernel code
- bug fixes for Gregory patch kernel
- wired the new kernels in the controller class
Note 1 : corner / gregory kernels are not working yet
Note 2 : the vertex mirroring solution used for boundary / corner kernels could be incorrect...
2013-05-22 12:10:49 -07:00
Takahito Tejima
0e99d69b40
Added cuda runtime error check.
2013-05-21 19:19:00 -07:00
manuelk
2a298442f4
minor refactor : move PatchMap and PatchHandles into FarPatchTables where they belong (instead of OsdLimitEval)
2013-05-17 15:46:29 -07:00
David G Yu
17199885f1
Updated GCD kernel interfaces.
2013-05-17 15:29:05 -07:00
manuelk
209239c7c0
adding a missing 'static' to an internal function
2013-05-17 14:56:39 -07:00
manuelk
5dd23e8e27
more doxy comment fixes
2013-05-17 14:39:07 -07:00
manuelk
5ed3488493
more doxy / comment fixes
2013-05-17 14:07:53 -07:00
Takahito Tejima
317962697a
fix d3d11DrawContext and dxViewer to follow API changes
2013-05-17 13:30:43 -07:00
manuelk
1b80f01ee3
style cleanup + doxy comments
2013-05-17 10:21:38 -07:00
manuelk
3869be18b7
Renaming PtexCoord as PatchParam and general cleanup of the ptex name where it
...
doesn't belong
2013-05-17 09:47:44 -07:00
manuelk
c2cec239cd
removing osd/patch.h (and cleaning up attending dependencies)
2013-05-17 09:06:40 -07:00
manuelk
dbdde33bef
make the use of OsdVertexDescriptor consistent across all classes (and doxy / typo fixes)
2013-05-16 19:53:49 -07:00
manuelk
6256010296
re-factoring the EvalLimit portion of the code (and other minor comment / typo fixes)
2013-05-16 14:21:11 -07:00
manuelk
ad3bacbbbb
remove topology data from FarMesh and refactor uniform / adaptive
...
code paths using FarPatchTables for all serialized topological data.
2013-05-15 17:53:40 -07:00
Takahito Tejima
b16272d6a5
more msvc fixes. make dxViewer working.
2013-05-14 10:48:48 -07:00
Takahito Tejima
d8734690b7
msvc build fixes
2013-05-13 18:43:05 -07:00
Takahito Tejima
1a2b71d929
Refactor OsdGLDrawContext to be constructed from FarPatchTables, instead of FarMesh.
...
Removed reference to FarMesh from OsdUtilMeshBatch.
Added const qualifier to ComputeContext constructor.
2013-05-10 19:35:25 -07:00
manuelk
8d8e0e9a24
- doxy doc
...
- inlining critical operators
2013-05-10 11:18:41 -07:00
Takahito Tejima
b7814266c9
Add OpenCL specialized batching class
2013-05-10 09:20:45 -07:00
Takahito Tejima
7632489758
bug fix of OsdGLVertexBuffer::UpdateData. the starting index was wrong.
2013-05-10 08:53:06 -07:00
Takahito Tejima
1b879d706f
fix FarMultiMeshFactory to work with refactored FarPatchTables.
2013-05-09 19:16:51 -07:00
Takahito Tejima
42f84b78d0
add levelBaseUniform and gregoryQuadOffsetBaseUniform locations as default member
2013-05-09 19:15:50 -07:00
Takahito Tejima
7b6630cf40
fix simpleCpu and ptexViewer to be compilable with new patch tables.
2013-05-09 13:48:00 -07:00
Takahito Tejima
3eaf0362bd
split patch descriptor into two parts, far intrinsic properties and osd's.
...
more OsdGLDrawContext clean up.
2013-05-09 13:14:02 -07:00
Takahito Tejima
ecced51814
factor out createPatchArray function into drawContext.
...
cleanup glDrawContext
2013-05-09 10:53:58 -07:00
Takahito Tejima
f592e90067
fix OsdGLDrawContext to follow far patchtables refactoring.
2013-05-09 09:23:01 -07:00
manuelk
cd380e0a1a
Refactoring :
...
- moving the SubdivisionTables enum from osd/tables.h to FarSubdivisionTables
- renaming various buffer names to _devicePtr for consistency
2013-05-07 15:25:49 -07:00
manuelk
5ec2320d9a
adding doxy comments to Compute Controllers
...
fixes #138
2013-05-07 13:55:14 -07:00
David G Yu
9e371e4e89
Fixed DX11 build errors from KernelBatch refactoring
2013-05-06 23:59:58 -07:00
David G Yu
6b96d531bd
Fixed GCD build errors from KernelBatch refactoring
2013-05-06 23:59:54 -07:00
manuelk
3ea2a3e472
fixing / adding doxy comments
...
fixes #138
2013-05-06 19:05:50 -07:00
manuelk
aed197628c
KernelBatch tables refactor / cleanup :
...
- FarKernelBatch becomes a class w/ accessors
- split the FarKernelBatchFactory to its own header file
- add doxy doc
- propagate fallout to the rest of the code base
2013-05-06 17:50:58 -07:00
manuelk
65c92bbe72
oops : osd_dynamic_gpu and osd_dynamic_cpu don't always build under windows, so they
...
don't always have an install target.
fixes #154
2013-05-02 12:02:52 -07:00
manuelk
b815aff333
First pass at fixing the installation part of the Cmake build : now CMAKE_INSTALL_PREFIX can
...
be used as intended to specify an installation directory, which can be located anywhere on the
file system.
Also improved the doxygen target and made the doxy build "quiet".
fixes #154
2013-04-22 19:35:41 -07:00
manuelk
eadd1b3ce4
fixing some doxygen @param tags not matching variable names in the code
...
fixes #138
2013-04-22 18:26:53 -07:00
manuelk
4bf24d9b95
First pass at our "Eval" API : this checkin is a mileston and is still missing
...
code paths for certain types of feature adaptive patches.
The check-in adds a new "limitEval" code example.
More to come soon...
fixes #45
2013-04-18 19:55:05 -07:00
manuelk
24356cc680
making MSVC++ happy...
...
fixes #153
2013-04-18 19:22:20 -07:00
manuelk
7e63b20c58
Small refactoring of the DrawContext code to remove duplication of vertex / patch counting code.
...
fixes #153
2013-04-18 17:54:12 -07:00
David G Yu
4a6ba2de64
Fixed function proto mismatch in d3d11DrawContext
...
Fixes #143
2013-03-25 10:54:40 -07:00
manuelk
e6e7c96a52
We need to leverage our per-patch ptex indexing scheme in the EvalLimit API.
...
- replace ptex indexing with the FarPtexCoord structure as a way to pass per-patch
ptex data to the shaders.
We are replacing a vector<int> arranged as :
int[0] : ptex face index
int[1] : (u,v) as 16 bits encoding the log2 coordinate of the top left corner
Instead we are now using a struct arranged as :
int[0] : ptex face index
int[1] : is a bit-field containing u,v, rotation, depth and non-quad
The u,v coordinates have been reduced to 10 bits instead of 16, which still
gives us a lot of margin.
- Replace OsdVertexBufferDescriptor with something more adequate for general
primvar representation (this name will probably eventually change...)
- Improve OsdPatchDescriptor
- add a "loop" boolean (true if the patch is of loop type)
- add a GetPatchSize() accessor
- OsdPatchArray :
- remove some redundant elements (still more to do there)
- Fix all shader / examples / regressions & stuff to make this all work.
fixes #143
2013-03-22 18:20:50 -07:00
Manuel Kraemer
95f326eed1
add OpenCL include directories when Cmake detects CL for the OSD build
2013-03-16 18:41:49 -07:00
Manuel Kraemer
5c9ae5537c
fix build error : size_t requires stdlib.h
2013-03-16 18:40:53 -07:00
Takahito Tejima
f745aa2807
add paint test example
2013-03-15 12:39:44 -07:00
David G Yu
500bebefb4
Fixed VS2010 build warnings/errors
2013-03-08 12:07:09 -08:00