Revision c7ffe7f by Nicholas Bishop March 6, 2012, 02:40 (GMT) |
Draw individual face's material and shading correctly in the PBVH. Previously, the shading and material was set once per PBVHNode when drawing. This is still the case, but PBVHNodes are now built to contain only one material and shading mode. This is done with an extra partitioning step; once the number of primitives in the node falls below the PBVH leaf limit, it's primitives are checked for matching materials. If more than one material or shading mode is present in the node, it is split and partitioned (partitioned by material rather than 3D location.) Given a sufficiently 'annoying' input, like a dense mesh with thousands of materials randomly scattered across it, this could greatly increase PBVH build time (since nodes might end up containing a single primitive), but in general this shouldn't come up. In order to support materials for grids, the CCGDM is building another grid array (of DMFaceMat structs). This could be used to replace CCGDM.faceFlag for some small memory savings (TODO). |
Revision 9c7e8e8 by Nicholas Bishop March 6, 2012, 01:01 (GMT) |
Code cleanup: remove unused parameter from some ccgSubSurf accessors. Remove 'CCGSubSurf *ss' parameter from ccgSubSurf_getFaceFaceHandle, ccgSubSurf_getFaceVert, and ccgSubSurf_getFaceEdge. |
Revision c729d6a by Nicholas Bishop March 6, 2012, 00:17 (GMT) |
Bugfix and code cleanup: use better types for faceFlags in CCGDM. Previously this was just a character array that stored face/poly flags and mat_nr. Since mat_nr should be a short, this would have truncated for higher values. Replaced with a new DMFaceFlags struct. |
Revision 0114d78 by Bastien Montagne March 5, 2012, 23:30 (GMT) |
Code cleanup in rna files (huge, higly automated with py script). Addresses: * C++ comments. * Spaces after if/for/while/switch statements. * Spaces around assignment operators. |
Revision 1eb893a by Nicholas Bishop March 5, 2012, 22:24 (GMT) |
Code cleanup: factor out some common code from PBVH build_sub/build_leaf. |
Revision 190c233 by Nicholas Bishop March 5, 2012, 22:12 (GMT) |
Code cleanup: add comments for build_sub() and remove debug function. Remove the function (and call to) check_partitioning(), this was just a debug function. |
Revision 10d1079 by Nicholas Bishop March 5, 2012, 21:55 (GMT) |
Code cleanup: split PBVH build_sub() into two functions. Removes also a confusing else{} block that didn't make much sense. |
Revision 3f04564 by Sergey Sharybin March 5, 2012, 21:42 (GMT) |
Disable interpolation of customdata layers on edge slide This option might be useful in some cases like keeping UV coordinated in kind of "correct" state so sliding edge loop will also slide edges in UV. But for other layers like shapekeys and vertex colors it's arguable it's actually needed. The way it's currently done isn't actually acceptable because it doesn't take flags like UVCALC_TRANSFORM_CORRECT into account and also makes extra unwanted things like interpolating shapekeys which leads to propagating changes into basis keys and also results with slide applied twice for relative keys because offset is also applying on loading edit mesh. Also discussed with Brecht who agreed with marking this things as TODO and disabling for now. This should fix issue reported in #30387: Edge Slide propogates to Basis Shape Key |
Revision e2003f9 by Nicholas Bishop March 5, 2012, 21:27 (GMT) |
Code cleanup: remove unused drawFacesColored from DerivedMesh. This function pointer isn't called anymore, so removing it and the cddm/ccgdm/gpu code associated with it. |
Revision bd83487 by Campbell Barton March 5, 2012, 21:17 (GMT) |
fix [#30459] BMesh Edge Split Hangs. edge split result is still not correct in this case but at least avoid eternal loop. also - dont tag sharp edges with <2 faces for splitting. |
Revision e9eed19 by Tamito Kajiyama March 5, 2012, 19:01 (GMT) |
Another possible fix for degenerate triangles in imported mesh data. A motivating example of the problem the present solution aims to address is a quad face such that three of the four vertices are colinear (i.e., they are lying on a line). Depending on how this quad is separated into two triangles, one of them can be a degenerate triangle. Degenerate triangles of this form are easy to avoid by rotating the diagonal edge of quad faces without affecting the visual outcome. The fix implemented in this commit tries to address degenerate triangles in this way. |
Revision 1ae2714 by Sergey Sharybin March 5, 2012, 18:54 (GMT) |
Fix for OpenEXR half float save function resulting in dark images saved Float buffers of ImBuf are always supposed to be linear space a,d ImBuf's profile means how byte array was constructed from float buffer. |
Revision a5eadf1 by Campbell Barton March 5, 2012, 18:05 (GMT) |
copying a mesh was generating tessfaces which isnt needed |
Revision 03ebd20 by Sergey Sharybin March 5, 2012, 17:23 (GMT) |
Add stub needed for blenderplayer compilation. |
Revision 529b2a0 by Campbell Barton March 5, 2012, 16:21 (GMT) |
added check for DNA C syntax we cant parse: void*somepointer; .. this is valid C but breaks makesdna.c |
Revision 1e41b19 by Bastien Montagne March 5, 2012, 16:19 (GMT) |
tesselat -> tessellat in UI messages, + style edits. |
Revision aa0eb72 by Sergey Sharybin March 5, 2012, 14:25 (GMT) |
Fix for missed faces in mesh after switching active shape key in edit mode. |
Revision 0fe519f by Luca Bonavita March 5, 2012, 14:12 (GMT) |
== Python API docs == Adding two new command line options (-f = full rebuild, -t = testing) so that we don't have to edit the file each time |
Revision 4f44792 by Campbell Barton March 5, 2012, 13:02 (GMT) |
RegionView3D.update call, to address issue in report: [#30454] perspective_matrix not update in real time with bpy.ops.view3d.zoom This is so you can modifify the view settings and get the view matrix after without waiting for a redraw. |
Revision f6ddb79 by Campbell Barton March 5, 2012, 11:49 (GMT) |
fix [#30457] Smooth normals wrongly exported to wavefront mesh.calc_normals() wasnt calculating vertex normals (only face normals), now only calculate vertex normals. added a define incase we want to have poly normals back again. |
|
|
|


Master Commits
MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021