diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2010-08-05 04:53:02 +0400 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2010-08-05 04:53:02 +0400 |
commit | 04e6a8c7a21085a3ea52c8222d3eb803cadb24ea (patch) | |
tree | 0c73a3fadbbfd6869f62cd6c112c3fcd3a08f69b /source/blender/editors/sculpt_paint/paint_intern.h | |
parent | d4f91858f2c681cdae753876d7ddc81d9701beaf (diff) |
== Ptex ==
initial ptex integration
* added the ptex C++ library to extern
* wrote a small C api for the library; just the functions I've used so
far are in the C api, but easy to add more
* added a new CustomData type (face data), stored as struct MPtex
* added RNA for CD_MPTEX
* each MPtex stores:
** the U- and V-resolution (always a power of two)
** the number of color channels (e.g. RGB or RGBA)
** the data type (can be bytes, shorts, or floats)
** the number of subfaces (for triangles now, will work also for ngons)
* for drawing ptex, one power of two texture is assigned to each face
** for quads, the texture is mapped normally across the full face
** for triangles, the face is split into four quads for drawing, and each
subface gets an equal-sized portion of the texture
** the texture is created with the same internal format as the ptex layer
* added an operator for loading ptex files
* added an operator for creating ptex layers; takes data type, number of
channels, and texel density as inputs. has some hackish code to allocate
texels based on a faces catmull-clark limit surface area
* added a simple ptex UI, shows ptex layers in the mesh data panel
* modified vpaint to paint on ptex instead of mcols
partial todo list:
* VBO drawing (make sure to turn VBO off before testing ptex for now)
* ptex saving
* better texel allocation
* upsampling/downsampling faces
* UI for setting individual faces' resolutions
Diffstat (limited to 'source/blender/editors/sculpt_paint/paint_intern.h')
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_intern.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_intern.h b/source/blender/editors/sculpt_paint/paint_intern.h index 3c92089a258..d57bc346387 100644 --- a/source/blender/editors/sculpt_paint/paint_intern.h +++ b/source/blender/editors/sculpt_paint/paint_intern.h @@ -243,5 +243,9 @@ pbvh_undo_s3 pbvh_undo_node_no(PBVHUndoNode *unode); float *pbvh_undo_node_layer_disp(PBVHUndoNode *unode); void pbvh_undo_node_set_layer_disp(PBVHUndoNode *unode, float *layer_disp); +/* ptex.c */ +void PTEX_OT_layer_add(struct wmOperatorType *ot); +void PTEX_OT_open(struct wmOperatorType *ot); + #endif /* ED_PAINT_INTERN_H */ |