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 - AnimData fixesJoshua Leung
* Made AnimData blocks be stored as pointer instead of directly in the ID-datablock, so that fewer files will need to be recompiled everytime some animation settings change. * Tried to fix some of the compiler errors that pop up in Yafray code. If this commit doesn't fix it, just disable Yafray code for now (WITH_BF_YAFRAY=0 for scons)...
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-152.5Ton Roosendaal
- Depricated another bunch of globals; all the totobj, totmesh, totvert, and so on. - All code that needs such totals now count it themselves, these stats were not supposed to be reliable - Editmesh now stores and manages own totals. - Todo: make a scene->stats that tracks notifiers. Bugfix: selecting failed in editmesh, backbuffer stuff was too late, already using index ranges before it was set.
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-112.5Ton Roosendaal
Testing commit; this puts back support for swap-exchange graphics cards, which I had hoped to have faded out... but it appears it still does it for intel and some atis. This only swap-exchanges properly for areas/regions, not for menus or the 'action zone triange'. Let's see if it works! You enable it with starting with commandline option -E
2009-01-102.5Ton Roosendaal
Bugfix; 64 bits alignment error in vpaint. tsk to me!
2009-01-102.5Ton Roosendaal
Removed another bad global "editbutvweight", a value from buttons used to paint weights with, or to set weights. Is now part of weightpaint struct in scene.
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-08RNABrecht Van Lommel
* DNA_userdef_types.h, done. Patch by Nathaniel Garbutt, thanks!
2009-01-072.5Ton Roosendaal
More globals discovered; lattice deform stored static deform array and a matrix. Tsk!
2009-01-072.5Ton Roosendaal
Finished a couple of XXX todo's in drawing code, attempt to fix subsurf crash... didnt work yet!
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-062.5 filebrowserAndrea Weikert
fix for error in sdna building, wrongly recognized struct and alignment fix.
2009-01-062.5 filebrowserAndrea Weikert
further cleanup: - moved struct FileList* back to SpaceFile - fix for memory related errors and freeing operator in file_free - removed wmSubWindowSet, we're not doing OpenGL select in filebrowser - removed drawing of load button when invoked from windowtype pupmenu 2.5 MSVC projectfiles: - slipped in removal of multires_firstlevel.c in blenkernel
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-04RNABrecht Van Lommel
* DNA_cloth_types.h, patch by Roelf de Kock. The gravity[3] member is not being parsed correct by makesdna.c and will give issues even when trying to fix it. Worked around it for now in RNA by wrapping it manually, but this should really be fixed in the DNA genetics code, added a comment about it in DNA_cloth_types.h. * Handle vertex groups and uv layers more consistent now. They are all exposed as strings now. Reason is that indices don't really say much, and a direct pointer is not always possible because for example a uv layer in a material can be used for multiple objects and so there is no single pointer. In python it is not too hard to use either since the strings works as a key for lookups. For the user interface we can later think of some method to generate popup menus in a way that works for vertex groups, uv layers, bones etc. * This also fixes the XXX's in rna_modifier.c, I think that can be marked done.
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
WM: added area-listener, which can be used to tag refreshes for either the drawing call, or use the new ED_area_tag_refresh() function which will automatically call, after all notifiers were handled, an the spacetype->refresh() you provided. Added for Joshua, after reviewing Action/Dopesheet requirements. Joshua: I've made two dummy functions in space_action.c: - action_listener() - action_refresh() Wich now does a printf on activating a new object.
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.5Joshua Leung
* Start of Action/Pose syncing code (in anim_deps.c) This is currently not hooked up yet, as we still need to figure out where these should get called (due to a few dependencies they have - i.e. visibility syncing of channels is turned on/off by setting in appropriate views). * Also added assorted comments/changes to rna/dna
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-02RNABrecht Van Lommel
* Added skeleton code for particle/object_force/userdef. * More Object properties wrapped. * Added User Preferences display in outliner.
2009-01-01RNABrecht Van Lommel
* Object has some more properties wrapped, mostly game related. * Scene frame changes now send a notifier. * Added functions to create/free operator properties for calling operators. This also simplifies some duplicated code that did this. Ideally though this kind of thing should use the properties pointer provided by buttons and keymap items. Example code: PointerRNA ptr; WM_operator_properties_create(&ptr, "SOME_OT_name"); RNA_int_set(&ptr, "value", 42); WM_operator_name_call(C, "SOME_OT_name", WM_OP_EXEC_DEFAULT, &ptr); WM_operator_properties_free(&ptr);
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-31Finally got CMake compilation to work.Nicholas Bishop
Made sdna and srna work more like how the scons build system is doing it, with separate bf_rna and bf_dna libs being built.
2008-12-31RNABrecht Van Lommel
* The RNA viewer is now more integrated with the outliner, as a "Datablocks" view, with a tree structure. * Still some issues to be solved with persistence, and also memory usage is problematic when expanding a million vertices in a mesh for example, though it will not build closed parts of the tree.
2008-12-302.5Ton Roosendaal
Editmesh code cleaned and compiling/linking. A whopping 20k lines back! :) Not that it does stuff... editmode in/out has to be done, and loads of operators. Also linking/exporting editmesh calls has to be reviewed. Also: added a blender_test_break() mechanism in BKE.
2008-12-29RNABrecht Van Lommel
* DNA_object_fluidsim.h: done, patch by Nathaniel Garbutt, thanks! Some changes to make it more complete and adding inheritance to better hide irrelevant and reused properties. * Also added all derived types for modifiers, but only fluid is filled in currently. * Some files converted from DOS to UNIX line endings.
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 - Action Editor / Animation Stuff:Joshua Leung
* Brought back clean (OKEY), sample (Shift-OKEY), and delete (XKEY/DELKEY) tools for the Action Editor. Currently clean uses a predefined threshold (as a rna-prop, though it's still lacking the popup to set this when it is called) * Added new file for 'destructive' keyframe operations/tools. * Got keyframing.c compiling. Now, some of these tools need to be operatorised. Also, the API there might change when enough of the system is stable for RNA-IPO work to take place (so that it can be tested).
2008-12-27python operators (in bpy_opwrapper.*)Campbell Barton
This means you can define an operator in python that is called from C or Python - like any other operator. Python functions for invoke and exec can be registered with an operator name. keywords are read from the python exec() function, then used to create operator properties. The default python values are used to set the property type and defaults. def exec(size=2.0, text="blah"): ... is equivalent to... prop = RNA_def_property(ot->srna, "size", PROP_FLOAT, PROP_NONE); RNA_def_property_float_default(prop, 2.0f); prop = RNA_def_property(ot->srna, "size", PROP_STRING, PROP_NONE); RNA_def_property_string_default(prop, "blah"); TODO - * make use of events * return OPERATOR_CANCELLED/OPERATOR_FINISHED.. etc * add support for array args * more testing
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-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.5 / SConsNathan Letwory
Blender builds and links on Linux. For now without BGE and its player, but that will come. Priorities are still a mess, so expect more commits soon.
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-232.5 / SConsNathan Letwory
I did a very drastic cleanup for the different libgroups, there's now only a few left. It compiled with scons/msvc, will be testing in a bit on linux, too. If you get any problems, please reply to this commit message on the taskforce ML.
2008-12-232.5Ton Roosendaal
View3D Numpad operator, by Michael Foxx. Yay! Todo: use same call for view3d pulldown.
2008-12-232.5: Data ContextBrecht Van Lommel
* Worked out data context implementation more, now with initial context callbacks implemented for the screen and 3d view. * For collections, switch from iterators to simpler ListBase. Though that still means it uses LinkData* rather than the actual Object* for example, since those can only be part of one list. So I added a macro as well to make iteration easier when possible. CTX_DATA_BEGIN(C, Object*, ob, selected_objects) { printf("object name: %s\n", ob->id.name); } CTX_DATA_END;
2008-12-222.5Ton Roosendaal
Our precious outliner is back! :) Currently no operations are active there, nor notifiers to refresh other windows. Be patient! You can switch to RNA with the 'view' menu. Later we'll sort out how much of both get integrated in 1 system, or have both options, or make designated 'data view' for rna? ALso the old Oops... bring back?
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-222.5Ton Roosendaal
Cleanup - for portablity we can keep the old ugly defines for retrieving active object, cfra and so on. But, they will use 'scene' not G.scene. - fixed code that uses those defines. - some unused variables/functions removed
2008-12-222.5 - Action Editor / DopesheetJoshua Leung
Initial commit of drawing code for Action Editor / Dopesheet. By default, the Dopesheet is now enabled (like in AnimSys2). There are still a few unresolved problems (like bad alpha blending for icons, and keyframes still not being drawn). However, these will be resolved in due course.