Revision 6fefc76 by Daniel Dunbar July 14, 2005, 15:58 (GMT) |
- declare Mesh.mface and Mesh.tface to be of proper type instead of void* |
Revision d22d9ab by Daniel Dunbar July 14, 2005, 15:57 (GMT) |
- switch to new mesh_set_smooth_flag call (takes mesh object argument instead of raw mesh) |
Revision a2694df by Daniel Dunbar July 14, 2005, 15:50 (GMT) |
- removed line that slipped in by accident |
Revision f265d49 by Ton Roosendaal July 14, 2005, 15:49 (GMT) |
Bug reported by Guillaume LeCocq Setting both 'xray' and 'transp' did not work proper. Had to add one extra check, and switch drawing order. Now a transparent object gets drawn OK as Xray too. :) |
Revision befc2bb by Daniel Dunbar July 14, 2005, 15:48 (GMT) |
- split makeDispList into makeDispList{Mesh,MBall,CurveTypes}, there is still a makeDispList that dispatches to the appropriate one. makeDispList is on the way out and this makes it easier to track down exactly which places use makedispList and for what types of objects. - switch calls to makeDispList to appropriate more specific function (if the object type is known by caller). - added mesh_changed function that invalidates cached mesh data (but does not rebuild, mesh data gets rebuilt on access). Most old calls to makeDispListMesh use this instead now. |
Revision 1261dc7 by Daniel Dunbar July 14, 2005, 15:30 (GMT) |
- part of DerivedMesh interface change from yesterday that got left out |
Revision 274e4f5 by Ton Roosendaal July 14, 2005, 13:50 (GMT) |
Bug fix #2799 Sequence effect "gamma cross" didn't work since 2.36. Caused by not initialized gamma tables... |
Revision 4a14cb6 by Ton Roosendaal July 14, 2005, 13:44 (GMT) |
Bugfix for #2826 Initialize shadow buffer lamp accidentally altered the ob->obmat for the lamp. Never showed up before until now (depgraph). |
Revision 120427e by Ton Roosendaal July 14, 2005, 13:12 (GMT) |
Fix for a *very* nasty bug... somewhere in the ancient past - I tracked it back to 1.4 - comparing pointers apparently gave warnings or errors... I don't really have a memory of that. Could be the Irix compiler. What it was used for is sorting edges in arrays or hash lists, like: if( ((long)v1) > ((long)v2) ) long is defined to be pointer size, so that should work 32/64 bits, where it not that the long cast makes the value SIGNED! :) Ken Hughes discovered this... noting that when his system uses a calloc, the returned pointer had an uncommon address making the long negative. It was a very hard bug to track, since (apparently) most OS's have an address space being still in the lower part of an long... Anyhoo; I have removed a couple of (long) casts from pointer comparing now, need to get compile feedback if that's compliant for all our OS's. If so, quite a lot of such hacks have to be removed from our code, or make them casting to an unsigned long... This has been confirmed to fix bugs #2709 and #2710. Thanks Ken! |
Revision e5a639a by Ton Roosendaal July 14, 2005, 12:44 (GMT) |
New: - XRAY draw for armatures now is generic "Draw Extra" option for any Object type. This feature just moves drawing to the end, after clearing the zbuffer again. - Solid draw mode now displays materials with Alpha, with the new "Draw extra" option "Transp" set. This also moves drawing transparent to the end, but it doesn't sort the transparent faces. Still looks OK. Note: this is not enabled in mesh editmode. Here all the fancy extra drawing just makes it nearly impossible to do OK. - Re-ordered Object Buttons -> "Draw" panel Fixes: - do_versions had check for the UserDef in it (new ogl texture cache). that can't be there, should be in usiblender.c (stupid exception). - same error caused reading older files to not always fix version changes on armatures (commit yesterday). - Outline select drawing happened also on picking-select draw, needless slowdown. |
Revision 256a5cd by Martin Poirier July 14, 2005, 06:25 (GMT) |
Databrowse needed new code to handle the hide dot file correctly. Added a comment explaining what and why. Also added a couple of explicit cast to make compiler whine less (double to float mostly). |
Revision b890359 by Joseph Gilbert July 14, 2005, 03:34 (GMT) |
Mathutils update - also included is some fixes for preprocessor inclues and some clean up of the previous commit -rewrite and bugfixes ---------------------------------- Here's my changelog: -fixed Rand() so that it doesn't seed everytime and should generate better random numbers - changed a few error return types to something more appropriate - clean up of uninitialized variables & removal of unneccessary objects - NMesh returns wrapped vectors now - World returns wrapped matrices now - Object.getEuler() and Object.getBoundingBox() return Wrapped data when data is present - Object.getMatrix() returns wrapped data if it's worldspace, 'localspace' returns a new matrix - Vector, Euler, Mat, Quat, call all now internally wrap object without destroying internal datablocks - Removed memory allocation (unneeded) from all methods - Vector's resize methods are only applicable to new vectors not wrapped data. - Matrix(), Quat(), Euler(), Vector() now accepts ANY sequence list, including tuples, list, or a self object to copy - matrices accept multiple sequences - Fixed Slerp() so that it now works correctly values are clamped between 0 and 1 - Euler.rotate does internal rotation now - Slice assignment now works better for all types - Vector * Vector and Quat * Quat are defined and return the DOT product - Mat * Vec and Vec * Mat are defined now - Moved #includes to .c file from headers. Also fixed prototypes in mathutils - Added new helper functions for incref'ing to genutils - Major cleanup of header files includes - include Mathutils.h for access to math types - matrix.toQuat() and .toEuler() now fixed take appropriate matrix sizes - Matrix() with no parameters now returns an identity matrix by default not a zero matrix - printf() now prints with 6 digits instead of 4 - printf() now prints output with object descriptor - Matrices now support [x][y] assignment (e.g. matrix[x][y] = 5.4) - Matrix[index] = value now expectes a sequence not an integer. This will now set a ROW of the matrix through a sequence. index cannot go above the row size of the matrix. - slice operations on matrices work with sequences now (rows of the matrix) example: mymatrix[0:2] returns a list of 2 wrapped vectors with access to the matrix data. - slice assignment will no longer modify the data if the assignment operation fails - fixed error in matrix * scalar multiplication - euler.toMatrix(), toQuat() no longer causes "creep" from repeated use - Wrapped data will generate wrapped objects when toEuler(), toQuat(), toMatrix() is used - Quats can be created with angle/axis, axis/angle - 4x4 matrices can be multiplied by 3D vectors (by popular demand :)) - vec *quat / quat * vec is now defined - vec.magnitude alias for vec.length - all self, internal methods return a pointer to self now so you can do print vector.internalmethod() or vector.internalmethod().nextmethod() (no more print matrix.inverse() returning 'none') - these methods have been deprecated (still functioning but suggested to use the corrected functionality): * CopyVec() - replaced by Vector() functionality * CopyMat() - replaced by Matrix() functionality * CopyQuat() - replace by Quaternion() functionality * CopyEuler() - replaced by Euler() functionality * RotateEuler() - replaced by Euler.rotate() funtionality * MatMultVec() - replaced by matrix * vector * VecMultMat() - replaced by vector * matrix - New struct containers references to python object data or internally allocated blender data for wrapping * Explaination here: math structs now function as a 'simple wrapper' or a 'py_object' - data that is created on the fly will now be a 'py_object' with its memory managed by python * otherwise if the data is returned by blender's G.main then the math object is a 'simple wrapper' and data can be accessed directly from the struct just like other python objects. |
Revision 1bfd0ea by Johnny Matthews July 14, 2005, 02:52 (GMT) |
A few additions/changes suggested by Chris Burt 1. Return and PADENTER confirm loopcut and edgeslide 2. When choosing loop to cut in loopcut, can use numeric entry for number of cuts (less than 130) 3. Number of Cuts in loopcut printed in header |
Revision 76b89fb by Joseph Gilbert July 14, 2005, 01:58 (GMT) |
Added drawarmature to src project |
Revision 967e294 by Ton Roosendaal July 13, 2005, 21:28 (GMT) |
Three fixes; - Armature editmode, while armature was deforming children, was very slow because it kept making subsurfs... this goes still hackish :) - CTRL+A on armatures used loadsa old code, removed all of it! Still works. - Using "Set smooth" or "Set solid" on file loaded without 3d window crashed |
Revision 682c516 by Ton Roosendaal July 13, 2005, 20:21 (GMT) |
Previous commit for Xray bones disabled selection of bones. Overlooked one if()... |
Revision 2bde650 by Daniel Dunbar July 13, 2005, 20:16 (GMT) |
- Change DerivedMesh.drawSolidFaces setMaterial argument to return boolean value indicating whether faces with that material should be drawn or not. |
Revision 75ae1ae by Ton Roosendaal July 13, 2005, 19:42 (GMT) |
Armature "XRay mode" now draws nicely with solid too. For it to work, I had to add a new feature to the 3d window, to collect "after draw" objects, which get drawn as last, after a clear of the zbuffer. Same method can be used for nice OpenGL transparent draw, the system is ready for it, do that later. The huge commit is caused by cleaning up globals from struct Global. Many variables were unused or just not needed anymore. Did that to move the ugly G.zbuf to where it belongs, in the View3D space struct. :) |
Revision 64af8d0 by Johnny Matthews July 13, 2005, 19:39 (GMT) |
If loopcut was cancelled, the screen was not refreshed to get rid of the last preview line. Thanks to Desoto for reporting. |
Revision cb69445 by Johnny Matthews July 13, 2005, 16:33 (GMT) |
A warning cleanup from the last commit. Added some explicit casts. Should just be double to float warnings left here now. Will do more later Also made edgeslide move a little faster for the time being. |
|
|
|


Master Commits
MiikaHweb | 2003-2021