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-10-23merge with trunk/2.5 at r23876Joseph Eagar
[[Split portion of a mixed commit.]]
2009-09-16merge with 2.5/trunk at r23271Joseph Eagar
2009-08-26merge with 2.5 at r22793Joseph Eagar
2009-08-192.5:Nicholas Bishop
* Fixed CMake includes for blenkernel * Fixed an RNA property read that was causing failures in a couple paint modes
2009-08-172.5 Particle edit:Nicholas Bishop
* Fixed cursor poll, so the cursor won't show up outside the 3d view
2009-08-162.5/Particle edit:Nicholas Bishop
* Made particle edit object-localized.
2009-08-152.5: warning fixesBrecht Van Lommel
Directories intern/ and source/blender/ now compile warning free again here with scons/gcc.
2009-08-12New point cache file format:Janne Karhu
- HEADER (beginning of each file) * general header: + 8 char: "BPHYSICS" + 1 int: simulation type (same as PTCacheID->type) * custom header (same for sb, particles and cloth, but can be different for new dynamics) + 1 int: totpoint (number of points) + 1 int: data_types (bit flags for what the stored data is) - DATA (directly after header) *totpoint times the data as specified in data_types flags - simulation type soft body = 0, particles = 1, cloth = 2 - data types (more can be added easily when needed) data flag contains ---------------------------------------- index (1<<0) 1 int (index of current point) location (1<<1) 3 float velocity (1<<2) 3 float rotation (1<<3) 4 float (quaternion) avelocity (1<<4) 3 float (used for particles) xconst (1<<4) 3 float (used for cloth) size (1<<5) 1 float times (1<<6) 3 float (birth, die & lifetime of particle) boids (1<<7) 1 BoidData Notes: - Every frame is not nescessary since data is interpolated for the inbetween frames. - For now every point is needed for every cached frame, the "index" data type is reserved for future usage. - For loading external particle caches only "location" data is necessary, other needed values are determined from the given data. - Non-dynamic data should be written into an info file if external usage is desired. * Info file is named as normal cache files, but with frame number 0; * "Non-dynamic" means data such as particle times. * Written automatically when baking to disk so basically a library of particle simulations should be possible. - Old disk cache format is supported for reading, so pre 2.5 files shouldn't break. However old style memory cache (added during 2.5 development) is not supported. To keep memory cached simulations convert the cache to disk cache before svn update and save the blend. - External sb and cloth caches should be perfectly possible, but due to lack of testing these are not yet enabled in ui. Other changes: - Multiple point caches per dynamics system. * In the future these will hopefully be nla editable etc, but for now things are simple and the current (selected) point cache is used. * Changing the amount of cached points (for example particle count) is allowed, but might not give correct results if multiple caches are present. - Generalization of point cache baking etc operator & rna code. - Comb brushing particle hair didn't work smoothly.
2009-08-06merge with 2.5 (not trunk, last merge message said that on accident) at r22252Joseph Eagar
2009-08-02Softbody now uses the new pointcache code.Janne Karhu
Note: Rna access to softbody point cache is through softbody modifier although the point cache is in softbody settings. This is to make it similar to cloth. Bugfix: Softbody rna was trying to get "ob->soft->softflag" instead of the correct "ob->softflag".
2009-07-31fix for warnings and implicit declarationsCampbell Barton
also fixed smoke comparing a float's mem-location rather then its value.
2009-07-262.5: PaintingBrecht Van Lommel
Various fixes for painting, sculpting and particle edit, still much to be done... * Move RNA paint and sculpt structs into rna_sculpt_paint.c, * Added Particle Edit RNA. * Some tweaks to existing Paint RNA. * Put texture paint and particle edit object in context. * Fix some errors in the brush layout, properly doing None checks, fixing some wrong property identifiers. * Added tool enum for texture paint and particle edit in panels. * Allow editing brush textures in the texture buttons, still with a stupid toggle, ideas for how to make the connection better are welcome.
2009-07-22merge with trunk at r21785, and also fixed stupid ngon normals bugJoseph Eagar
2009-07-21Initial code for boids v2Janne Karhu
Too many new features to list! But here are the biggies: - Boids can move on air and/or land, or climb a goal object. - Proper interaction with collision objects. * Closest collision object in negative z direction is considered as ground. * Other collision objects are obstacles and boids collide with them. - Boid behavior rules are now added to a dynamic list. * Many new rules and many still not implemented. * Different rule evaluation modes (fuzzy, random, average). - Only particle systems defined by per system "boid relations" are considered for simulation of that system. * This is in addition to the boids own system of course. * Relations define other systems as "neutral", "friend" or "enemy". - All effectors now effect boid physics, not boid brains. * This allows forcing boids somewhere. * Exception to this is new "boid" effector, which defines boid predators (positive strength) and goals (negative strength). Known issue: - Boid health isn't yet stored in pointcache so simulations with "fight" rule are not be read from cache properly. - Object/Group visualization object's animation is not played in "particle time". This is definately the wanted behavior, but isn't possible with the current state of dupliobject code. Other new features: - Particle systems can now be named separately from particle settings. * Default name for particle settings is now "ParticleSettings" instead of "PSys" - Per particle system list of particle effector weights. * Enables different effection strengths for particles from different particle systems with without messing around with effector group setting. Other code changes: - KDTree now supports range search as it's needed for new boids. - "Keyed particle targets" renamed as general "particle targets", as they're needed for boids too. (this might break some files saved with new keyed particles) Bug fixes: - Object & group visualizations didn't work. - Interpolating pointcache didn't do rotation.
2009-07-16merge with 2.5 at r21568Joseph Eagar
2009-07-162.5 - Silencing various compiler warnings (mingw)Joshua Leung
2009-07-112.5: X11Brecht Van Lommel
* Cursor grabbing is now done only if the OPTYPE_BLOCKING flag is set for the operator, since for e.g. render it should not block.
2009-07-092.5Ton Roosendaal
Monthly cleaning round to make it compile warning free. Mostly it was const stuff (strings, Context), but also a couple useful fixes, like wrong use of temp pointers. Only Mathutils callback struct I left alone... design issue.
2009-07-082.5: Various FixesBrecht Van Lommel
* Context panel now draws without header, with arrows, no scene name. * Softbody vertex group search popup. * Improve names for autogenerated shortcut keys in menus. * Make most Select menus in the 3D view header work. * Fix armature border select selection syncing. * Add POSE_OT_select_constraint_target, MESH_OT_select_by_number_vertices, MESH_OT_select_vertex_path. * Merge mesh select similar into one operator. * Don't give MESH_OT_select_random Space hotkey. * Add DAG_object_flush_update to many mesh edit tools, not calling this will crash with modifiers. * RNA_def_enum_funcs for dynamic enums in operators, but not very useful without context yet. * Fix refresh issue with image window header + editmode. * Fix drawing of shadow mesh for image painting. * Remove deprecated uiDefMenuButO and uiDefMenuSep functions. * Remove keyval.c, code is in wm_keymap.c already. * Rename WM_operator_redo to WM_operator_props_popup.
2009-07-04Rendering animations with particle trails cached.Janne Karhu
2009-07-022.5: Physics ButtonsBrecht Van Lommel
All kinds of changes to get it ready for UI layouts. This means RNA and operators should be working correct, but most buttons are still not actually there yet. * Added near empty soft body, fluid, field and collision panels, tweaks to cloth panels. * Fluid bake works, but without escape or showing any progress. * Fluid/Softbody/Cloth/Collision can now be both added as modifiers or in the physics panels. * Missing: fields & soft body for particles. * Missing: proper updating softbodies, guess this code still needs updates after pointcache refactor?
2009-06-27Pointcache refresh part 2Janne Karhu
* Based on what happens during simulation the cache is marked (also in cache panel, this could possibly be extended to 3d view as well) as: - exact (not marked) - outdated (simulation is not done completely with current settings) - non-exact (frames were skipped during simulation) * The parameter "cache step" effects the number of frames between saved cache frames. - This can save a lot of memory (or disk space) if absolutely frame accurate simulation is not required. - Speeds up the "quick caching" very much. - Frames between cached frames are interpolated from the cached frames. - Current default value of 10 frames works nicely with up/down-arrows (skip 10 frames forwards/backwards on timeline), but can be changed if wanted. * The caching can work in normal or "quick" mode: [Normal cache] - Basic: Calculate what even happens (settings change, big frame steps etc.) and cache results, if possible try to use "cache step" when saving cache frames. - Becomes non-exact: After larger than 1 frame steps. - Becomes outdated: After any change effecting the simulation other than frame steps. - Pros/cons: Freedom of doing anything and playing with particles, but exact results have to calculated from the beginning. [Quick cache] - Basic: Calculate simulation up to current frame automatically on changes with cache step sized jumps in simulation. With multiple "quick cached" simulations the smallest cache step is used. - Becomes non-exact: Always from frame 1 (unless cache step = 1). - Becomes outdated: Never. - Pros/cons: Not very accurate, but super fast! - Todo: Transform of any animated (non-autokeyed) object is locked! Probably needs some tinkering with anim sys overrides. * The simulation can be run forwards or backwards even if it's cache is outdated or non-exact, the following rules apply in these situations: - step forwards (to unknown) -> simulate from last exact frame, store result - step backwards (to known) -> result is interpolated from existing frames, store result, clear cache forwards if current frame is after last exact frame * "Calculate to current frame" runs the simulation from start to current frame with a frame steps of 1. - Baking does the same, but runs the simulation all the way to the end of simulation. - Rendering does this automatically if the simulation is outdated of non-exact, so all rendered simulations will always be updated and exact. * Every cache panel also holds buttons to "Bake all dynamics", "Free all dynamics" and "Update all dynamics to current frame". * Cloth simulation supports the new cache too.
2009-06-242.5Ton Roosendaal
- Added ND_SHADING notifier on linking materials, so it gives refreshes in UI - Removed reduntant debug prints Crucial fixes in other code while checking warnings; - Particle buttons were assigned to short, whilst data was int - Filesel border select used float rect API, on an int rect.
2009-06-232.5: Tool SettingsBrecht Van Lommel
* Moved proportional edit, snap, autokey mode, and a few others from Scene to ToolSettings. * RNA wrapped properties in ToolSettings for the UV editor: proportional edit, snap settings, selection modes.
2009-06-23SVN maintenance.Guillermo S. Romero
2009-06-21Pointcache refresh part 1:Janne Karhu
* Particles support larger than 1 frame changes, bigger frame changes can result in inaccurate results, but it's super fast and you get a nice feeling of how the particles behave! * "Cache to current frame" button calculates the exact result of particles at current frame. * Current state of cache can be protected by making it a bake. * Cache is now in memory by default, disk cache is an option. * Only "viewport %" number of particles are calculated and cached in viewport, baking and rendering calculate all particles. * Info on cached frames and memory usage given in ui. * Support for exact "autocaching" of changes and large frame changes(disabled for now until exact place in event system is decided) * "Continue physics" is probably deprecated after this and should be removed once sb & cloth use the new cache code. Todo: * Make softbody & cloth use the new cache things. Other changes: * Some cleanup of particle buttons.
2009-06-16RNABrecht Van Lommel
* Added icon to property and enum property items. The latter is responsible for the large number of files changed. * For RNA functions, added PROP_RNAPTR flag to ask for a PointerRNA as argument instead of a C pointer, instead of doing it implicitly with the AnyType type. * Material: properly wrap diffuse/specular param variables, and rename some things for consistency. * MaterialTextureSlot: added "enabled" property (ma->septex). * Image: make animated property editable. * Image Editor: make some things editable, notifiers, respect state. * Context: fix issue with screen not being set as ID.
2009-06-10merge with 2.5 at r20783Joseph Eagar
2009-06-10(NOTE: DO NOT TEST)Joseph Eagar
Start of planned DerivedMesh refactoring. The mface interfaces in DerivedMesh have been renamed to reflect their new status as tesselated face interfaces (rather then the primary ones, which are now stored in mpolys). short review: mpolys store "primary" face data, while mfaces store the tesselated form of the mesh (generally as triangles). mpolys are defined by mloops, and each mpoly defines a range of loops it "owns" in the main mloop array. I've also added basic read-only face iterators, which are implemented for CDDM, ccgsubsurf, and the bmeditmesh derivedmesh. Since faces are now variable-length things, trying to implement the same interface as mfaces would not have worked well (especially since faces are stored as an mpoly + a range of mloops). I figure first we can evaluate these simple read-only face iterators, then decide if a) we like using iterators in DerivedMesh, b) how much of it should use them, and c) if we want write-capable iterators. I plan to write official docs on this design after I get it more stable; I'm committing now because there's a rather lot of changes, and I might do a merge soon.
2009-06-092.50:Brecht Van Lommel
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r19820:HEAD Notes: * Game and sequencer RNA, and sequencer header are now out of date a bit after changes in trunk. * I didn't know how to port these bugfixes, most likely they are not needed anymore. * Fix "duplicate strip" always increase the user count for ipo. * IPO pinning on sequencer strips was lost during Undo.
2009-06-06First new particle code:Janne Karhu
-Many things not yet working properly :) -Experimental new (hopefully more logical) categorization of buttons, feedback on this is very welcome. -Separate render & draw types, for example now there is actually a render option "halo" instead of all the different point draw types. -Particles get recalculated only from buttons that actually change something that has to be recalculated, for example changing visualization doesn't reset particles any more. -Boid physics buttons are still missing as I'm currently redoing the whole boids code. -Point caching is still very wip, so baking is not possible for example, but I added a few cache baking flags for rna that were/will be needed for particle buttons logic.
2009-05-23merge with 2.5 at r20307. note there were some python hacking necassary for ↵Joseph Eagar
this to work, so um hopefully there's not too much cruft from that. [[Split portion of a mixed commit.]]
2009-05-15UI: Layout EngineBrecht Van Lommel
* Buttons are now created first, and after that the layout is computed. This means the layout engine now works at button level, and makes it easier to write templates. Otherwise you had to store all info and create the buttons later. * Added interface_templates.c as a separate file to put templates in. These can contain regular buttons, and can be put in a Free layout, which means you can specify manual coordinates, but still get nested correct inside other layouts. * API was changed to allow better nesting. Previously items were added in the last added layout specifier, i.e. one level up in the layout hierarchy. This doesn't work well in always, so now when creating things like rows or columns it always returns a layout which you have to add the items in. All py scripts were updated to follow this. * Computing the layout now goes in two passes, first estimating the required width/height of all nested layouts, and then in the second pass using the results of that to decide on the actual locations. * Enum and array buttons now follow the direction of the layout, i.e. they are vertical or horizontal depending if they are in a column or row. * Color properties now get a color picker, and only get the additional RGB sliders with Expand=True. * File/directory string properties now get a button next to them for opening the file browse, though this is not implemented yet. * Layout items can now be aligned, set align=True when creating a column, row, etc. * Buttons now get a minimum width of one icon (avoids squashing icon buttons). * Moved some more space variables into Style.
2009-05-06Big, big commit!!Diego Borghetti
1) Remove WITH_FREETYPE2 from code, so now blender always need freetype2 2) Remove the old bmfont 3) Remove ftfont and bFTGL library 4) Implement a new BLF_draw_default function for place that still need/use the old BMF api. I try to update both, scons and cmake, but I only can test with make, so hope all work fine. MSVC is broken, but I don't have Windows, things to search and fix are any reference to WITH_FREETYPE2, FTGL and BMFONT (take in care that blenkernel also have a BKE_bmfont.h, this don't have anything to do with bmfont). Always have to link/include the freetype2 library Remove any reference to libbmfont Remove any reference to libftfont Remove any reference to libbftgl (or libbFTGL)
2009-04-22UIBrecht Van Lommel
* Headers and menus can now be created in python. * Replaced the uiMenuItem functions to create menus with equivalent uiItem functions using a layout, removing duplicated code. * More uiItem functions are now exposed to python. * The text editor header, panels and one of its menus are now created in space_text.py. * Buttons window data context icon new changes depending on active object. Issues * Icons are not wrapped yet, hardcoded ints at the moment. * The ID browse template is unfinished.
2009-04-202.50: svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender ↵Brecht Van Lommel
-r19323:HEAD Notes: * blenderbuttons and ICON_SNAP_PEEL_OBJECT were not merged.
2009-04-012.5: added generic WM_operator_redo for use as invoke callback, similarBrecht Van Lommel
to WM_operator_menu for example, but popping up the redo menu. This is useful for operators like particles rekey, which makes no sense without specifying the number of keys.
2009-03-29- use clear, set, add, enable, disable and toggle as a prefix in operator namesCampbell Barton
- use select as a suffix eg UV_OT_loop_select -> UV_OT_select_loop - Each select all operator was using slightly different wording... select_all, deselect_all, de_select_all, select_de_select_all -> select_all_toggle - selection -> select - POSE_OT_select_connected -> POSE_OT_select_linked to match other operators - NODE_OT_delete_selection -> NODE_OT_delete since its not used in other operators - ANIM_OT_previewrange_define -> ANIM_OT_previewrange_set to match other operators - NODE_OT_fit_all -> NODE_OT_view_all to match other operators - View2D_OT_* -> VIEW2D_OT_* to match VIEW3D - View2D_OT_view_downscroll -> VIEW2D_OT_scroll_down more logical - removed MARKER_OT_mouseselect_extend and made extend a boolean property of MARKER_OT_mouseselect - MARKER_OT_mouseselect -> MARKER_OT_select - GROUP_OT_group_remove -> GROUP_OT_objects_remove more logical since its removing objects from groups - MESH_OT_removedoublesflag -> MESH_OT_remove_doubles - redundant words MESH_OT_split_mesh -> MESH_OT_split, OBJECT_OT_object_delete -> OBJECT_OT_delete renamed selection operator properties extend_select -> extend column_select -> column select_children_only -> children_only ... Since these are all in the context of selection operators there is no need for the extra 'select' in the property name. Updated docs http://www.graphicall.org/ftp/ideasman42/html/bpyoperator-module.html
2009-03-11Simplified vpaint/wpaint radial control calls. Removed also some unused ↵Nicholas Bishop
radial control code.
2009-02-252.5: Particle edit mode more functional now. Transform, brushBrecht Van Lommel
editing, paint cursor, radial control, mouse/border/circle/lasso select, mirroring, bad level calls fixed, etc.
2009-02-202.5: Particle Edit, work in progress commit.Brecht Van Lommel
* Still incomplete and some operators don't work, refresh issues, etc. * Made Hide/Reveal operators consistent for various modes.
2009-02-112.5Ton Roosendaal
Smaller jobs, all in one commit! - Moved object_do_update out of view3d drawing, into the event system (currently after notifiers). Depsgraph calls for setting update flags will have to keep track of each Screen's needs, so a UI showing only a Sequencer doesn't do objects. - Added button in "Properties region" in 3D window to set or disable 4-split, including the 3 options it has. (lock, box, clip) - Restored legacy code for UI, to make things work like bone rename, autocomplete. - Node editor now shows Curves widgets again - Bugfix: composite job increased Viewer user id count - Bugfix: Node editor, not "Enable nodes" still called a Job, which didn't do anything - Various code cleaning, unused vars and prototypes.
2009-02-112.5: Image window operators, quite a few of these still haveBrecht Van Lommel
missing parts and are work in progress. Set 3D Cursor Set Tile Sample Color New Open Replace Reload Save (As) Save Sequence Pack Unpack Record Composite The file select operators have context issues still. They need to get the image space in the context on exec() but it's not there currently, not sure how to solve that yet. Also added name parameter to uiMenuItemEnumO, and fixed "mute" argument in ED_update_for_newframe calls in fluidsim bake.
2009-01-25fix syntax errorCampbell Barton
2009-01-242.5Ton Roosendaal
- writeimage.c back, put in space_file now... - renamed fluidsim.c to distinguish from bke version
2009-01-242.5Ton Roosendaal
- Brought back code for particle edit and fluidsim - Sanitized code from globals and bad level calls, so its ready to come back working. - Fixed cirle selecting (Ckey now) - Enabled undo for editmode curve, armature, particle and lattice (another commit following)
2009-01-132.5Ton Roosendaal
Added last few remaining modules in editors. Then the msvc maintainer can already start typing! Only uv_paint is not added, not sure how far Brecht is locally already.