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
2007-04-04moved source and text to american spellingCampbell Barton
* colour -> color * centre -> center * normalise -> normalize * modelling -> modeling
2007-01-07=== Transform Snapping ===Martin Poirier
Snap/Grid icon button in 3D view header (edit mesh). FIXME NOTICE: make nice looking icons (yes, that's for you Matt) When snap is on, a drop down appears for the target method (closest, median, center) Hotkey to toggle snap is Shift-Tab (this was previously used for a not totally equivalent to Tab. Ton said OK to scrap it). That hotkey is currently restricted to edit mesh (where snap is currently restricted). Changed a couple of ugliness on how snap settings are stored.
2006-12-20The Big Image refactor!Ton Roosendaal
Please read: http://www.blender3d.org/cms/Imaging.834.0.html Or in short: - adding MultiLayer Image support - recoded entire Image API - better integration of movie/sequence Images Was a whole load of work... went down for a week to do this. So, will need a lot of testing! Will be in irc all evening.
2006-12-20=== Transform Snap ===Martin Poirier
Draw a circle around the snapping point for visual aid. Different snapping target method, switchable in the 3d view header menu in the Transform menu. * Closest: Snaps the closest vertex to the point * Median: Snaps the median of the selection to the point * Center: Snaps the transform center to the point (this is different from median because you can use Cursor/Boundbox as center) Fix a bug with constraints/snap handling.
2006-11-27Bugfix #5313Ton Roosendaal
3D Window "Transform properties" was using bad globals for buttons, this caused things not work with multiple 3d windows open, and (in editmode) set one panel to "Local" and the other to "Global". Also: - added undo push for moving bone to a layer - protected Ikey for posemode to not show a menu without selection
2006-11-07Long wanted feature for animators: option to lock a view to always showTon Roosendaal
a specific object, so you can see long walkcycles or actions well. Option is per 3d window, in "View Properties" panel. It also can optional lock a view to a single bone even! Temporal movie for fun: http://www.blender.org/bf/0001_0060.avi
2006-11-06Merged Google Summer of Code sculptmode/multires/retopo tools.Nicholas Bishop
From the tracker: https://projects.blender.org/tracker/index.php?func=detail&aid=5018&group_id=9&atid=127
2006-10-26== Transform ==Martin Poirier
Embryon functionnality for snapping. - Only snaps to grid on translations (grab) - Transform constraints are supported but header display is wrong. - Can be turned on/off in the Object/Mesh header menu under Transform Properties (tentative spot, will have to integrate better and in other object type menus too) - Can be turned on/off during transform with ` (Back Quote, also tentative) This is, of course, very much Work in Progress. This implements part of the structural ideas for the transform cleanup I've been juggling around with.
2006-10-26== 3D View ==Martin Poirier
Customizable Grid Subdivisions This commit adds a numbut to the View Properties panel that lets you specify how the grid is subdivided. This affects snapping in translations, obviously. Default: 10 (behavior doesn't change) That means people still stuck in feet and inches (shudders) can set it to 12 and have 1 unit = 1 foot. That also means you can work in "heads" when doing body proportions or whatnot (don't think of it as being limite to "CAD" uses).
2006-07-19Bugfix #4724Ton Roosendaal
Actually a bug since dark ages... the code that tries to find the view correction (zoom) factor for grabbing stored result in a global. With multiple 3d windows open, with different views, that could result in wrong correction. Just made the factor a local property in View3D.
2006-06-08Replaced old fly mode for a fly mode that works in all 3 view types - ortho, ↵Campbell Barton
perspective and camera (cheating, but its still usefull) This one uses the 3d perspective view rather then the camera, and is nicer and easier to control then the old fly mode. it also gives some help in the header. Shift+F to try it.
2006-04-25* patch #3876: Rotating view iconMatt Ebb
submitted by Davide Vercelli This replaces (as a user preference) the static icon shown in the bottom-left of the 3D View with a small rotating axis that updates live in all ortho/perspective modes I made several modifications to the original patch. In the patch, it displayed the axis on top of the 'object info' text since when floating panels are minimised, they sit in the bottom corner and cover the axis up. This annoyance is not limited to the axis, it also covers the frame number and info text, which can be frustrating. Sending them to the bottom is not that useful either, since it's quicker (with esc) and just as much movement to close and re-open them again. I decided to solve this problem at the cause: Now when using the disclosure triangle on floating panels, they 'minimise in place' rather than going to the bottom. User preferences are in the 'View & controls' section to: - Display either the 3D axis or the old icon - The size of the axis - the brightness of the axis (colours are taken from grid theme settings) * patch #3801: Option to show view direction in 3D View submitted by Daniele Fornaciari Simple one, just adds an user pref to show the name of the view's direction as text in the top left corner.
2006-04-10Bugfix #3702Ton Roosendaal
Background image in 3d window didn't react on "reload image" options in UV WIndow or Buttons Window.
2006-01-24Giant commit!Ton Roosendaal
A full detailed description of this will be done later... is several days of work. Here's a summary: Render: - Full cleanup of render code, removing *all* globals and bad level calls all over blender. Render module is now not called abusive anymore - API-fied calls to rendering - Full recode of internal render pipeline. Is now rendering tiles by default, prepared for much smarter 'bucket' render later. - Each thread now can render a full part - Renders were tested with 4 threads, goes fine, apart from some lookup tables in softshadow and AO still - Rendering is prepared to do multiple layers and passes - No single 32 bits trick in render code anymore, all 100% floats now. Writing images/movies - moved writing images to blender kernel (bye bye 'schrijfplaatje'!) - made a new Movie handle system, also in kernel. This will enable much easier use of movies in Blender PreviewRender: - Using new render API, previewrender (in buttons) now uses regular render code to generate images. - new datafile 'preview.blend.c' has the preview scenes in it - previews get rendered in exact displayed size (1 pixel = 1 pixel) 3D Preview render - new; press Pkey in 3d window, for a panel that continuously renders (pkey is for games, i know... but we dont do that in orange now!) - this render works nearly identical to buttons-preview render, so it stops rendering on any event (mouse, keyboard, etc) - on moving/scaling the panel, the render code doesn't recreate all geometry - same for shifting/panning view - all other operations (now) regenerate the full render database still. - this is WIP... but big fun, especially for simple scenes! Compositor - Using same node system as now in use for shaders, you can composit images - works pretty straightforward... needs much more options/tools and integration with rendering still - is not threaded yet, nor is so smart to only recalculate changes... will be done soon! - the "Render Result" node will get all layers/passes as output sockets - The "Output" node renders to a builtin image, which you can view in the Image window. (yes, output nodes to render-result, and to files, is on the list!) The Bad News - "Unified Render" is removed. It might come back in some stage, but this system should be built from scratch. I can't really understand this code... I expect it is not much needed, especially with advanced layer/passes control - Panorama render, Field render, Motion blur, is not coded yet... (I had to recode every single feature in render, so...!) - Lens Flare is also not back... needs total revision, might become composit effect though (using zbuffer for visibility) - Part render is gone! (well, thats obvious, its default now). - The render window is only restored with limited functionality... I am going to check first the option to render to a Image window, so Blender can become a true single-window application. :) For example, the 'Spare render buffer' (jkey) doesnt work. - Render with border, now default creates a smaller image - No zbuffers are written yet... on the todo! - Scons files and MSVC will need work to get compiling again OK... thats what I can quickly recall. Now go compiling!
2006-01-11Orange: Added an option in View Properties panel to disable drawing of ↵Matt Ebb
'relationship lines' - i.e. the dashed lines that connect objects in parent/constraint/hook/IK relationships. After talking to the others I rolled the Armature-specific one into the same setting for simplicity's sake. We can see how it goes, always possible to put it back.
2006-01-05Orange: Hold SHIFT+MMB in camera view shifts the viewports around.Ton Roosendaal
2005-12-11Big commit with work on Groups & Libraries:Ton Roosendaal
-> Any Group Duplicate now can get local timing and local NLA override. This enables to control the entire animation system of the Group. Two methods for this have been implemented. 1) The quick way: just give the duplicator a "Startframe" offset. 2) Advanced: in the NLA Editor you can add ActionStrips to the duplicator to override NLA/action of any Grouped Object. For "Group NLA" to work, an ActionStrip needs to know which Object in a group it controls. On adding a strip, the code checks if an Action was already used by an Object in the Group, and assigns it automatic to that Object. You can also set this in the Nkey "Properties" panel for the strip. Change in NLA: the SHIFT+A "Add strip" command now always adds strips to the active Object. (It used to check where mouse was). This allows to add NLA strips to Objects that didn't have actions/nla yet. Important note: In Blender, duplicates are fully procedural and generated on the fly for each redraw. This means that redraw speed equals to stepping through frames, when using animated Duplicated Groups. -> Recoded entire duplicator system The old method was antique and clumsy, using globals and full temporal copies of Object. The new system is nicer in control, faster, and since it doesn't use temporal object copies anymore, it works better with Derived Mesh and DisplayList and rendering. By centralizing the code for duplicating, more options can be easier added. Features to note: - Duplicates now draw selected/unselected based on its Duplicator setting. - Same goes for the drawtype (wire, solid, selection outline, etc) - Duplicated Groups can be normally selected too Bonus goodie: SHIFT+A (Toolbox) now has entry "Add group" too, with a listing of all groups, allowing to add Group instances immediate. -> Library System - SHIFT+F4 data browse now shows the entire path for linked data - Outliner draws Library Icons to denote linked data - Outliner operation added: "Make Local" for library data. - Outliner now also draws Groups in regular view, allowing to unlink too. -> Fixes - depsgraph missed signal update for bone-parented Objects - on reading file, the entire database was tagged to "recalc" fully, causing unnecessary slowdown on reading. Might have missed stuff... :)
2005-11-19Finally switched to porting UI stuff from tuhopuu!Ton Roosendaal
This commit is based on the patch & cool design work of Matt. It includes the new Lamp drawing style, and replaces the Object center dots with a similar styled OpenGL drawn dot. Important side-note is that removing the old glDrawPixels() for centers or lamps will not only make Blender faster, but also prevents crashing on a couple of cheaper 3d cards (as reported for S3 and Intel on-board cards) Notes: - The new default only draws Object centers when selected or active. If you like to see them always, use the View Properties Panel. You can also save that in the .B.blend - The size for centers (and lamps) is in the User settings "View & Controls" - Unselected Lamps, and their offset lines from zero Z, are drawn in a new Theme color Changes and additions in Matt's patch: - Lamps and centers are drawn fixed size, in pixels. Also the 'sun' lamp draws screen aligned now. - Center dots now also draw in blue to denote Library linkage or to show that an Object has been linked to other scenes. - When objects are empty (no vertices) they will always draw a center dot. Otherwise these objects would never be selectable anymore! - Added theme setting for center size, and initialization - Removed the old redundant code for drawing centers - Cleanup of drawing routines, made center dots faster - Started removing calls to glBlendFunc(). Regular alpha drawing should become standard, and the (very) occasional exception should return this to default after usage.
2005-10-30New: Write Protection for transform values.Ton Roosendaal
You now can set, in NKEY Transform Properties Panel, per XYZ rot/loc/size, a protection for Transform tools to not change these values anymore. This now works for Objects or for Bones in PoseMode. Usage is especially for character animation, to give Bones in a Pose defaults for rotation axes, so you don't have to worry about the correct limitations (or setup complex IK limits). Of course, this feature doesn't influence the animation system. As an extra also the Transform Widgets then draw less handles. Note this is based on the actual locked value, and depends still on Manipulator orientation whether it can be used really. Implementation warning: I had to remove the 'return' in the middle of the editobject.c compatible_eul() call. It now makes nice compatible eulers when they're simple (single axis rotations). Unfortunately there was no note in the code why it was ever removed... ALso: fix for crash in using Crease Transform and Mirror modifier.
2005-08-20New feature; User definable Clipping Planes.Ton Roosendaal
Press ALT+B in 3d window, draw a rect, and it becomes a clipping volume of 4 planes. You then can rotate the view anyway you like. Works for each 3d window individually. Disable it with another ALT+B press. Commit is huge because it had to change all selection code as well. The user-clipping planes are in 'eye space', the other clipping happens in projected 'viewport space'. Nice to notice is that the 'x=3200' convention (to denote a coordinate is clipped) now is a define. Define value is still a number though... but we now can get up to screens of 12000 pixels without issues! Known issue; here it refuses to draw the 'object centers' or Lamp icons within the clipping region. Can't find any reason for it... however, we might move to non-pixmaps for it anyway. Testing might reveil numerous issues, will be standby for it. Curious? Check this http://www.blender.org/bf/rt4.jpg
2005-08-15 - added view3d_get_object_project_mat function, returns mat to projectDaniel Dunbar
object cos into screenspace without mucking with gl matrices. - added view3d_project_ functions, take arguments instead of using globals - removed View3D.{mx,my,mxo,myo} - switch drawobject foreachScreenVert functions to use new projection functions - switch edge slide to use new projection functions, fixes erratic behavior (project was using wrong mat I believe) - bug fix in edgeslide, nearest edge to start was one-off
2005-07-24Missing include file from commits. (tsk)Martin Poirier
2005-07-13Armature "XRay mode" now draws nicely with solid too. For it to work, ITon Roosendaal
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. :)
2005-05-08Added: new Pivot option, "Around active object".Ton Roosendaal
Works nice quick to rotate a group of Objects around a defined center, without hassle with the 3d cursor. Especially for the 3D Manipulator. In EditMode/PoseMode this option falls back to "Centroid", as does the "Individual centers" option already.
2005-04-29More stats-junk stuff!Ton Roosendaal
Added in Nkey panel (transform properties) option to show in editmode at choice the global or local coordinate values. Same option works for the "Tech draw" options. :)
2005-03-28Cleanup of widget code;Ton Roosendaal
- made more general calls with args for drawing types - made it accept transparency for all modes (used while transform now) - added argument to detect 'combo' mode, gave offsets to translate/scale handles in combos. - added 'pie chart' on view-aligned rotate for widget - made trackball for rotate widget rt==4 behave compatible - removed redundant code for 'ghosting'
2005-03-23New feature, since long on todo;Ton Roosendaal
The grid function (transform translate, snap-to) now uses the grid step as displayed in the 3d window, so it depends on how much you zoomed in/out. The threshold for it is a bit tricky... it follows the drawing, but the blending in/out of grid makes it sometimes not obvious. might need slight tweak?
2005-03-19Transform widgets; Scale and Rotate versionsTon Roosendaal
To use; press the (temporal) icon in header. Switching widget types is by pressing G, R or S once, if current widget type is different it switches, otherwise it goes to normal Transform(). Widgets need a bit test for picking accuracy, correct drawing etc. The rotate widget has a center button for 'trackball' rotate. That latter can also be used for hotkey-based rotate. In current code, all widgets remain in "Global" space, also in editmode. Also widget updates while using normal transform has to be done. 2 Bugfixes: - rotate in PoseMode had error for 2d 'around' center - transform in postemode could crash, due to typo (& or |)
2005-03-18So! Finally a show-off of the *power* of Martin P's work! :)Ton Roosendaal
- Made framework for 3d Transform Manipulators (widgets) - The Manipulators act like '2d buttons', by default with LeftMouse and with while-hold-move-release - Implemented now: Translation Widget, which allows: - four hotspots for axis grab or view-aligned grab - center defined by 'around' setting - SHIFT+LMB gives planar constraint on other 2 axes - works in Object mode and Edit mode (not posemode yet) Enable it with (temporal) icon in 3D header. All other 'normal' transforms then keeps working btw. On the todo for this widget: - choice for Global, Local or Normal orientation The way the widgets are going to work is in review still. Commit is also for Matt for his proposal/paper on topic. Some notes regarding this project; - no life updates (on mouse over) like 3DS, I think that's neurotic - on click, dominant axis changes to theme defined "Transform" color, other axes disappear, like maya - manipulater size is fixed preset, independent zoom. - manipulator follows selection, and is located based on 'around' mode Unresolved; - in maya, when you select 2 or more objects, the manipulator draws on the 'active' object, also interesting - what to do with G,R,S hotkeys? It could switch the manipulator "mode"... - header button/menu for manipulator mode?
2004-09-25Two nice workflow improvements;Ton Roosendaal
- Zbuffer clipped selection Based on same algos as for drawing (blender polygon offset) vertices, edges and faces now are clipped for draw and selection when Zbuffer is used. Note that it works for endpoint vertices of edges, and for facecenters. Also works for border and circle-select - Optimal draw subsurfs This now draws optimal with faces and edges selected/unselected, hiding the original 'cage' (mesh) completely. TODO: edge select, which still uses original (invisible) edge. http://www.blender3d.org/cms/Mesh_editing_rewrite.425.0.html
2004-07-28Oops, include file belonging to previous commit...Ton Roosendaal
Plus: moved particle interaction and effect buttons back to a single Object context. The proposed solution (sub context) has workflow issues, (adds another click (no hotkey) to view settings) whilst almost all Object buttons nicely fit in single view still. This was on todo since first particle commit, actually the idea was to move particle related issues to a special sub-context, but leave the effects themselves in the Object main menu. Splitting off Particles from the Effect system isn't in the scope of what is feasible now. Also note; the current panel 'particle interaction' actually should be a generic 'forces and collision' panel, since it's also relevant for soft body feature (WIP)... that can be changed later.
2004-07-181) Change the way "Align mode" is accessed in the UI: It's now a globalAlexander Ewering
toggle for all pivot modes. The 2 new pivot modes have been removed from the popup. Instead, a new toggle button is added to the 3d view header. 2) Grab cursor mode. Cursor can be grabbed (and constrained to axis, grid, etc. while moving) like any other object. If no object is selected, GKEY alone grabs the cursor, otherwise pressing CKEY while in GKEY mode moves the cursor.
2004-07-15This adds two modes to the 'around' drop down in 3d headerJohnny Matthews
3d Cursor, only Ob Centers Median Point, only Ob Centers They prevent rotation/scaling from effecting the scale/rotation of the objects and just effects their position. This is handy for aligning objects if you constrain to an axis and scale, as well as other neato things :) Intrr came up with the code and I hacked it into the GUI
2004-07-15Commit for the 4 aforementioned "features":Alexander Ewering
- "Global Pivot": Maintains a global Pivot and Align mode setting for all 3d views when enabled, instead of seperate settings per 3d view - "Auto Perspective": Switch to ortho mode automatically on 1/3/7, and to Perspective when the view is rotated with the mouse - "Align mode": As suggested on the list, when enabled, transformations on several objects only transform their locations, not their sizes or rotations. - Grid dotted when not 1:1 ***ATTENTION***! The User Interface parts of these features have not been committed, as I work on my own modified UI here. The three features need toggle buttons to turn them on and off. I used the following 3 buttons (first two features are in userprefs, third as a 3d view setting): uiDefButBitS(block, TOG, USER_AUTOPERSP, B_DRAWINFO, "Auto Persp", (xpos+edgespace+(3*medprefbut)+(3*midspace)+smallprefbut+2),y3+10,smallprefbut,buth, &(U.uiflag), 0, 0, 0, 0, "Automatically switch between orthographic and perspective"); uiDefButBitS(block, TOG, USER_LOCKAROUND, B_DRAWINFO, "Global Pivot", (xpos+edgespace+(4*midspace)+(4*medprefbut)),y3+10,smallprefbut,buth, &(U.uiflag), 0, 0, 0, 0, "Use global pivot setting for all 3d views"); uiDefIconButS(block, TOG|BIT|10, B_AROUND, ICON_ALIGN, xco+=XIC,0,XIC,YIC, &G.vd->flag, 0, 0, 0, 0, "Translate only (align)"); Someone needs to add these to the interface in an appropriate manner! Thanks.
2004-01-24* Preferences for displaying the grid floor, X axis, Y axis,Matt Ebb
Z axis. (ported from tuhopuu2) Controls are found in the 3D View Properties panel (with the rest of the grid settings). This is more flexible for people like me who hate the grid getting in the way when modelling - turning off the grid floor and turning on the Z axis gives a setup like in Wings 3D or Clay. * Cleaned up the 3D View Properties and Background Image panel's layout while I was adding the new buttons (including change over to UiDefButBit).
2003-12-31- bug fix #828Ton Roosendaal
Blender crashed when assigning background image to 3d window, when no buttons window was visible. This caused by copying code from old location with still using some variables of the 'button space' struct. Solved by creating these variables in View3d 'space' as well, and using these instead. Could also remove old coder /* comment */ that there was a unknown bug in the code there. :)
2003-10-16- fixed editing vertices again!Ton Roosendaal
I had to clean up very old calls to switch matrices for 3d windows. To make it more clear, I've introduced defines for the infamous persp() function: persp(PERSP_WIN); sets matrices at pixel level window persp(PERSP_VIEW); restores matrices back to 3d drawing persp(PERSP_STORE); only called once, to store correct matrices I will now check on frontbuffer drawing of vertices... it's very doubtful if it's used still correctly, was only meant for visual speed in the early nineties you know. :)
2003-10-15- expanded internal windowmanager that it allows button panels in anyTon Roosendaal
window (type) - each SpaceData struct (not the window!) can get 'block handlers' assigned, basically event codes that invoke drawing button panels. - this is saved in files, and Panels behave in any window like it does now in buttonswindow - it also means that a 'space window' should leave with a matrix set for buttons level - try it in view3d header menu, 'view'->'backdrop'. this opens the old viewbuttons - it all works non blocking! instant updates of viewbuttons visible in 3d window now. Not done yet: - checking and fixing frontbuffer drawing (select a wireframe draws over) - temporally vertices cannot be selected, is my next project - closing or hiding Panels... - styling stuff... i committed for others to review as well. Have fun. this is certainly a huge improvement over the old viewbuttons!
2003-10-05huge commit, sorry!Ton Roosendaal
this is part 1 of the UI makeover. It has: - menu system from Matt integrated - buttons drawing from Matt - generic button panel system implemented - converted displaybuttons (not the rest yet) - cleaned up a lot in drawing spaces itself, to make it aligned and pixel exact. - cleaned loads of little compiler warnings, protos... still a lot of work needed, will all be in next week i hope! (warn: 2 new c files! butspace.c and buttons_scene.c)
2003-04-27More translations of c comments, now also include files!Ton Roosendaal
2002-12-27Removed the config.h thing from the .h's in the source dir.Kent Mein
So we should be all set now :) Kent -- mein@cs.umn.edu
2002-11-25Did all of the .h's in sourceKent Mein
(adding) #ifdef HAVE_CONFIG_H #include <config.h> #endif also the Makefile.in's were from previous patch adding the system depend stuff to configure.ac Kent -- mein@cs.umn.edu
2002-10-30fixed spacing in the headers to get rid of some warnings and some otherKent Mein
little minor spacing issues.
2002-10-12Initial revisionv2.25Hans Lambermont