Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-01-182.5: uv editorBrecht Van Lommel
- mouse select, loop select, select linked, unlink selection operators. - added edge selection mode. - fix 2.45 bug with unitialized theme colors, which caused the active face and face centers to be not drawn.
2009-01-17Make sculpt data more like vpaint/weightpaint. SculptData is now in ↵Nicholas Bishop
scene->toolsettings, moved the RNA to reflect that too.
2009-01-172.5: Blender "Animato" - New Animation System Joshua Leung
Finally, here is the basic (functional) prototype of the new animation system which will allow for the infamous "everything is animatable", and which also addresses several of the more serious shortcomings of the old system. Unfortunately, this will break old animation files (especially right now, as I haven't written the version patching code yet), however, this is for the future. Highlights of the new system: * Scrapped IPO-Curves/IPO/(Action+Constraint-Channels)/Action system, and replaced it with F-Curve/Action. - F-Curves (animators from other packages will feel at home with this name) replace IPO-Curves. - The 'new' Actions, act as the containers for F-Curves, so that they can be reused. They are therefore more akin to the old 'IPO' blocks, except they do not have the blocktype restriction, so you can store materials/texture/geometry F-Curves in the same Action as Object transforms, etc. * F-Curves use RNA-paths for Data Access, hence allowing "every" (where sensible/editable that is) user-accessible setting from RNA to be animated. * Drivers are no longer mixed with Animation Data, so rigs will not be that easily broken and several dependency problems can be eliminated. (NOTE: drivers haven't been hooked up yet, but the code is in place) * F-Curve modifier system allows useful 'large-scale' manipulation of F-Curve values, including (I've only included implemented ones here): envelope deform (similar to lattices to allow broad-scale reshaping of curves), curve generator (polynomial or py-expression), cycles (replacing the old cyclic extrapolation modes, giving more control over this). (NOTE: currently this cannot be tested, as there's not access to them, but the code is all in place) * NLA system with 'tracks' (i.e. layers), and multiple strips per track. (NOTE: NLA system is not yet functional, as it's only partially coded still) There are more nice things that I will be preparing some nice docs for soon, but for now, check for more details: http://lists.blender.org/pipermail/bf-taskforce25/2009-January/000260.html So, what currently works: * I've implemented two basic operators for the 3D-view only to Insert and Delete Keyframes. These are tempolary ones only that will be replaced in due course with 'proper' code. * Object Loc/Rot/Scale can be keyframed. Also, the colour of the 'active' material (Note: this should really be for nth material instead, but that doesn't work yet in RNA) can also be keyframed into the same datablock. * Standard animation refresh (i.e. animation resulting from NLA and Action evaluation) is now done completely separate from drivers before anything else is done after a frame change. Drivers are handled after this in a separate pass, as dictated by depsgraph flags, etc. Notes: * Drivers haven't been hooked up yet * Only objects and data directly linked to objects can be animated. * Depsgraph will need further tweaks. Currently, I've only made sure that it will update some things in the most basic cases (i.e. frame change). * Animation Editors are currently broken (in terms of editing stuff). This will be my next target (priority to get Dopesheet working first, then F-Curve editor - i.e. old IPO Editor) * I've had to put in large chunks of XXX sandboxing for old animation system code all around the place. This will be cleaned up in due course, as some places need special review. In particular, the particles and sequencer code have far too many manual calls to calculate + flush animation info, which is really bad (this is a 'please explain yourselves' call to Physics coders!).
2009-01-172.5: various warning fixes.Brecht Van Lommel
2009-01-15RNABrecht Van Lommel
* Work around bScreen/Screen DNA name patching, so bScreen does not require manual callbacks to be written for properties. * Added SpaceLink and SpaceImage RNA. * Fix issue initializing ID property arrays with default values. DNA * Some DNA changes for space image. * And a fix for corrupt clone image pointer in reading brushes.
2009-01-142.5Ton Roosendaal
Another one back: editcurve.c - removed global editNurb everywhere (cu->editnurb now has listbase with edit data) - also added 'active bpoint' and 'active nurb' in Curve struct - editmode in/out works, mouse/border select works
2009-01-132.5 / NodesNathan Letwory
* add a list area for material/texture/scene selection.
2009-01-132.5 Joshua Leung
* Tweaked a few incorrect comments in Constraints code * Made Sequencer use View2D system correctly (only looked at the 'time-grid' thing so far).
2009-01-102.5Ton Roosendaal
- Weightpaint back (CTRL+TAB or menu) Also weightpaint is sortof non-modal, allowing to use all existing hotkeys while in paint mode. Only leftmouse is overridden. - Made vpaint and wpaint entirely local, stored in scene (and saved!) - Small bugfix (also in 2.48): on weightpaint mode, all armature objects in 3d window were drawing as active poses. Now only the armature deformer is. Nice point for the UI agenda: are paint modes on ACTION mouse? Only then you can combine it with SELECT mouse...
2009-01-092.5Ton Roosendaal
Vertex Paint back! Added WM level "paint cursor" system, which manages a custom painting cursor for tools or modes. - Activate it with WM_paint_cursor_activate(). That function wants two callbacks, a poll(C) to check whether there's a cursor in given context and ARegion, and a draw(C, x, y) which gets called when appropriate. - While paintcursor is active, the WM handles necessary redrawing events for all regions, also to nicely clear the cursor on region exit. - WM_paint_cursor_activate returns a handle, which you have to use to end the paint cursor. This handle also means you can register as many custom cursors as you want. At the moment, vertex paint mode registers only a mousemove handler, all other events are still normally handled. This is stuff for the future todo.
2009-01-07Changes/cleanup for sculptdata and brushes. Summary:Nicholas Bishop
* Removed texfade, wasn't a very useful option (same result can be created with the falloff curve) * Removed CurveMapping from sculptdata, moved instead to Brush * Removed rake field from sculptdata, moved to Brush.flag * Moved Anchored flag from sculpt to Brush, same for direction field * Removed BrushData, replaced usages with the regular Brush type * Removed hardcoded brushes and brush_type from sculptdata, replaced with a pointer to the current Brush * Made sculpt tool type settable in Brush * Changed symmetry and axis lock fields to flags
2009-01-072.5 filebrowserAndrea Weikert
fixes for crashes that seem to have been introduced by changes in context handling. TODO: initialization for windowtype pupmenu if a previous SpaceFile was there.
2009-01-06Fixed a warning (missing include)Nicholas Bishop
2009-01-06Got rid of old multires code, brought in multires modifier from Nicholas Bishop
soc-2008-nicholasbishop branch. Note: any old code with multires_test() or multires_level1_test() can just be deleted, not needed by the multires modifier.
2009-01-062.5 - Start of filebrowser.Andrea Weikert
- basic drawing of list and thumbnail view (switchable through 'favourits' icon in header) - selection of files and directories (bookmarks) works with the RMB (right mouse button) - load operator for files still unstable (no check for correct file type) and incomplete. (WM_operator_free missing) immediate TODOS: - fix load file operator - finish drawing of buttons in header - drawing of detailed list with all file info. - finish selection and execute operators (LMB and MMB execute) later todos: - parent dir - keymap for all the shortcuts - append/link and databrowse - ...
2009-01-052.5 - Various Cleanups/FixesJoshua Leung
* Animation channels - cleaned up the code for selecting channels (removed various TODO stuff that's going to be replaced by something better later). Also, added back the ctrl-shift select feature for groups, which should be extended for other channels too at some stage. * Outliner - added missing flags to do-versions, and replaced the width calculations with the rna-width version for now, as that uses constant width of 100 with OL_X*indention
2009-01-042.5 / CleanupNathan Letwory
- remove Verse support. This will be brought back in The Future (probably jiri + me) This means 5k lines less in blenkernel. - fix two small errors for global cleanup, now compiles properly with FFMPEG enabled too.
2009-01-042.5Ton Roosendaal
Think global, act local! The old favorite G.scene gone! Man... that took almost 2 days. Also removed G.curscreen and G.edbo. Not everything could get solved; here's some notes. - modifiers now store current scene in ModifierData. This is not meant for permanent, but it can probably stick there until we cleaned the anim system and depsgraph to cope better with timing issues. - Game engine G.scene should become an argument for staring it. Didn't solve this yet. - Texture nodes should get scene cfra, but the current implementation is too tightly wrapped to do it easily.
2009-01-032.5Nathan Letwory
- Make sure shader, composit and texture ntrees have an id.name. This is to ensure that node trees in Material, Scene and Texture are properly identified through RNA
2009-01-022.5Ton Roosendaal
From the anti-globalization department: G.obedit terminated! Wherever possible, use CTX_data_edit_object(C) to get this now. It's stored in scene now, and the screen context has it defined.
2009-01-022.5 - Silencing more MSVC warningsJoshua Leung
2009-01-022.5 - Animation and View2D Joshua Leung
* Added back deselect all (and invert all) tools for Animation Channels (i.e. channel list in Action Editor). * Resolved all MSVC warnings (I came across) in View2d code. Also, added a new API method to get the coordinates (in 'view' space) of a listview 'cell' given the row + column the cell is in. * Tidied up a few comments here and there
2009-01-012.5 - Assorted bugfixesJoshua Leung
* Dopesheet - clicking on keyframes in Object channels (if they came from Object-Data such as Lamps, etc.) would crash. I noticed this error in AnimSys2 yesterday * Action Editor - do versions code now totally reinitialises the Action Editor View2D data (for the timespace), since I found a few files where there appeared to be some weird settings set. * RNA Browser (Outliner->Datablocks) would crash when the Area was ripped (using Alt-R hotkey) as seen in mfoxdogg's 2.5 Tour 2
2008-12-312.5Ton Roosendaal
My last one for 2008: global undo/redo back :) Happy 2009 all!
2008-12-312.5Ton Roosendaal
So, editmode mesh is back! :) At the moment only TABkey works and mouse select, 1 vertex at a time. More will follow of course. Note for the devs: - G.editMesh has been removed, be careful with old code. - EditMesh now is property of Mesh itself Although it means unlimited editmodes, for migration purposes we better stick to 1 "obedit" per scene, which is in Context too - G.obedit will get removed soon, so use CTX_data_edit_object(C) Or if you can't, just scene->obedit for now - Also removed the CTX_data_edit_mesh(), this has no meaning anymore. EditMesh is not context senstitive anymore, only the edit-object for time being is. - Martin: I've already tucked some EditMesh pointer in T and removed all G.editMesh there.
2008-12-31RNABrecht Van Lommel
* Store RNA collections different in ID properties, using a generic ID property array, using the patch provided by Joe. * Fix bug accessing registered operator properties in the wm from the outliner. * In the outliner, only use the RNA icon for RNA data, and use dot again for unknown icon. * Also, show pointer properties data in the second column, and auto expand two levels when opening them. * Added small RNA_struct_defined_properties function to get only the defined properties without builtin and undefined id properties (for py operators).
2008-12-302.5: fix compile error on mac, and a few warnings.Brecht Van Lommel
2008-12-302.5 - Bugfix for old Outliner/Oops viewsJoshua Leung
Old oops views were not being converted to Outliner views), so the View menu was empty.
2008-12-292.5: Error reportingBrecht Van Lommel
* Added a report list to operator, to which they can report errors and warnings. When the operator ends, it will display them with a popup. For python these should become exceptions when calling operators. * Added a function to make a popup menu from a report list. * Also added a utility function to prepend a string before the reports to indicate what they relates to. Also made the report functions used BLI_dynstr to simplify the code. * Made file reading and writing report errors to the user again using this system, also replacing the left over uncommented bad level error() calls.
2008-12-292.5 / NodesNathan Letwory
* patch reading of old files so nodes open up properly.
2008-12-282.5 - Version patch for reading old .blend files (for some animsys2 changes) ↵Joshua Leung
was being done for the wrong sub-version.
2008-12-26RNA:Brecht Van Lommel
* Added support for using pointers + collections as operator properties, but with the restriction that they must point to other type derived from ID property groups. The "add" function for these properties will allocate a new ID property group and point to that. * Added support for arrays with type IDP_GROUP in ID properties. * Fix bug getting/setting float array values. Example code for collections, note the "OperatorMousePath" type is defined in rna_wm.c and has a float[2] property named "loc". Defining the operator property: prop= RNA_def_property(ot->srna, "path", PROP_COLLECTION, PROP_NONE); RNA_def_property_struct_runtime(prop, &RNA_OperatorMousePath); Adding values: PointerRNA itemptr; float loc[2] = {1, 1}, RNA_collection_add(op->ptr, "path", &itemptr); RNA_float_set_array(&itemptr, "loc", loc); Iterating: RNA_BEGIN(op->ptr, itemptr, "path") { float loc[2]; RNA_float_get_array(&itemptr, "loc", loc); printf("Location: %f %f\n", loc[0], loc[1]); } RNA_END;
2008-12-262.5Ton Roosendaal
Brought back 'smooth view'. Took some hours to untangle it all, code was spread all over, instead of localized in 1 call. Tsk! Still not perfect, but at least more in control. For the hackers; check void smooth_view() in view3d_view.c, here all 3d view stuff should be handled, so it can optionally use animating. For the users: 'smooth view' now plays at a maximum of 30 hz, and doesn't block anymore. So even slow animated views remain responsive if you press many numpad keys.
2008-12-262.5: various warning fixes. There was one actual bug in a few differentBrecht Van Lommel
places, using sprintf with strings like ID names as the format string (note that this name can contain a % character).
2008-12-26UI: PanelsBrecht Van Lommel
* API and usage is basically the same still. * Panels were moved to region level. I first thought of keeping them at area level, but having them at region level it's simpler to handle events and do drawing, and also to integrate with view2d. They can still become area level overlapping regions, if we make a floating (or docked) region that can contain panels. * Added back a few panels from the scene buttons for testing. Issues still: * The view2d handling and alignment refresh of panels is not correct yet in the buttons window. * I did not yet bring back the block handlers system. It was basically a system that stored which panel was open and where the events for that panel would go. Just a few functions, but not sure how it fits in 2.5. * There was a case where dragging panels would not properly remove the window level handler, but could not redo anymore even though I don't think I fixed it. * Some text in the panels goes past the end of the button, that is due to the checkmark button drawing, not related to this commit. Other UI code changes: * Renamed interface.h to interface_intern.h for consistency. * Fixed some issues with freeing of blocks when they changed due to context. * uiDrawBlock now takes a context pointer (mostly for block drawextra).
2008-12-242.5 / SConsNathan Letwory
New priorities for most libs, at least core. This is still for Blender proper, BGE and such still to come.
2008-12-232.5Ton Roosendaal
Object: converted the old horrible editobject.c, now as file: editors/object/object_edit.c Still lots of WIP, I've operatorified "Make Parent". Check here the new API at work: http://pasteall.org/3650/c IMPORTANT NOTE FOR BRECHT: game property defines were clashing with RNA, i've renamed game defines for now.
2008-12-222.5Ton Roosendaal
Better implementation of own window timers, not using ghost. That makes blender's WM nice in control, and gives callers of timers the opportunitie to evaluate time passed since previous step. This system also only generates one timer event per main loop (events - handlers - notifiers - draw) Small fix: allow keymap modifier to give KM_ANY to ignore modifier keys, this to have TIMER keymap work.
2008-12-212.5Ton Roosendaal
Added 'header print' feature back. ED_area_headerprint(ScrArea *sa, const char *str); Give it a NULL string to disable the feature. On each call it tags the header for redraw.
2008-12-21View2D - Vertical (within area) syncing for channel lists to stay in sync ↵Joshua Leung
with the relevant keyframes... I still need to work out how to get this to work correctly as soon as an Action Editor instance is created.
2008-12-212.5 - Animation Editors - common drawing stuffJoshua Leung
* Fixed current frame number drawing in Animation Editors, so that the little frame number indicator box gets shown (animsys2 feature). * Made all Animation Editors draw markers and preview range
2008-12-202.5 BLI_blenlib cleanupAndrea Weikert
DONE: * moved almost all declarations from BLI_blenlib.h into their own proper header files. * BLI_blenlib.h still includes all the declarations for convenience and to avoid changes in existing code * split util.c into several files, where it wasn't done already * DynamicList -> dynamiclist, * ListBase -> listbase, * String utility functions -> string.c * removed a few unused macros and functions, if they're needed back, they're still in svn ;) TODO: * btempdir global * further cleanup in the code of the different modules (especially util.c)
2008-12-192.5: globals cleanupBrecht Van Lommel
* G.version removed, use BLENDER_VERSION * G.order removed, ENDIAN_ORDER * G.vd, G.sipo, G.buts, G.sima, .. removed. * G.qual removed * G.simulf removed (was unused in 2.4x) * error() and some other unused stubs removed
2008-12-192.5: blenloader/ cleaning:Brecht Van Lommel
- removed context usage, should not be in this module - remove G.main usage, now is passed along - still some globals in use here, goal is to get rid of those too, so that it's possible to load/save blendfiles without having to think about some global state.
2008-12-192.5Joshua Leung
Merged 'backend' changes from AnimSys2. Many of these changes are necessary for the Dopesheet and other changes I'm currently still stabilising. Those will come in due course.
2008-12-192.5: Change blenloader module to use the Report system for reporting errors.Brecht Van Lommel
2008-12-192.5: fix for crash reading regions of inactive spaces in an area.Brecht Van Lommel
2008-12-192.5 - Assorted tweaks for anim editors before porting AnimSys2 stuff over to ↵Joshua Leung
this branch
2008-12-18View2D: More bugfixesJoshua Leung
* Added flags to View2D to specify whether the view should have pixel offsets applied (this is able to be specified per axis, just in case the need arises). Currently, this is only used for headers, where the UI elements were not as smooth + round as they could be * Fixed IPO/Action/NLA so that new instance will show channel lists by default and with scrollers * Fixed Outliner zoom-in/out on changing windowsize. I didn't notice this on my previous custom .B.blend file, but the problem was apparent in the default setup.
2008-12-182.5Brecht Van Lommel
Context API This adds the context API as described here. The main practical change now is that C is not longer directly accessible but has to be accessed through accessor functions. This basically adds the implementation of the API and adaption of existing code with some minor changes. The next task of course is to actually use this design to cleanup of bad level calls and global access, in blenkernel, blenloader. http://wiki.blender.org/index.php/BlenderDev/Blender2.5/Context Error, Warning and Debug Info Reporting This adds the error reporting API as described here. It should help clean up error() calls in non-ui code, but eventually can become used for gathering messages for a console window, and throwing exceptions in python scripts when an error happens executing something. http://wiki.blender.org/index.php/BlenderDev/Blender2.5/Reports