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
2006-12-21Packing Images fix:Ton Roosendaal
- a 'procedural image' like 'UV Test Grid' now can be directly packed, it does ask first for confirming to pack it as PNG
2006-12-21MultiLayer images: added support for choosing compression type.Ton Roosendaal
Without setting anything, it uses ZIP now as default, which gives the best lossless compression and works nice fast.
2006-12-21Bug in new "generated image": when you save it, it didn't set the type toTon Roosendaal
'non generated' correctly. Also: tooltip fix for radio pass.
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-11-27IRC reported bug:Ton Roosendaal
When linking a referenced (Library) Image to a texture face, it wasn't tagged to become saved in file. So you lost data. Also fixed: tooltip for the "Li" icons was wrong.
2006-11-20Added custom vertex/edge/face data for meshes:Brecht Van Lommel
All data layers, including MVert/MEdge/MFace, are now managed as custom data layers. The pointers like Mesh.mvert, Mesh.dvert or Mesh.mcol are still used of course, but allocating, copying or freeing these arrays should be done through the CustomData API. Work in progress documentation on this is here: http://mediawiki.blender.org/index.php/BlenderDev/BlenderArchitecture/CustomData Replaced TFace by MTFace: This is the same struct, except that it does not contain color, that now always stays separated in MCol. This was not a good design decision to begin with, and it is needed for adding multiple color layers later. Note that this does mean older Blender versions will not be able to read UV coordinates from the next release, due to an SDNA limitation. Removed DispListMesh: This now fully replaced by DerivedMesh. To provide access to arrays of vertices, edges and faces, like DispListMesh does. The semantics of the DerivedMesh.getVertArray() and similar functions were changed to return a pointer to an array if one exists, or otherwise allocate a temporary one. On releasing the DerivedMesh, this temporary array will be removed automatically. Removed ssDM and meshDM DerivedMesh backends: The ssDM backend was for DispListMesh, so that became obsolete automatically. The meshDM backend was replaced by the custom data backend, that now figures out which layers need to be modified, and only duplicates those. This changes code in many places, and overall removes 2514 lines of code. So, there's a good chance this might break some stuff, although I've been testing it for a few days now. The good news is, adding multiple color and uv layers should now become easy.
2006-11-07move SPACE_* (enum) and SPACEICONMAX to DNA_space_types (being the more ↵Nathan Letwory
logical place than DNA_screen_types). SPACEICONMAX gets its value now through this enum, so it is not anymore easy to forget to update it correctly :)
2006-11-03Bugfix #5057Ton Roosendaal
Added undo push after "create UV grid image". Note that it won't help much, since the Imbuf is freed on undo... that's for another project, to have a fixed Image cache to use in Blender.
2006-09-26Some UV/Image window changes:Brecht Van Lommel
- A new Save image function, next to the existing Save As. - Shortcut keys Alt+S, Alt+R, Alt+O and Alt+N for Save, Reload, Open and New image respectively, consistent with the text editor window. - Hide Select and UVs menus when UV editing isn't active. - Removed duplicate and unused code, also moved some functions.
2006-07-31Siggraph show commit!Ton Roosendaal
- pending commit for OSX intel systems, with intel graphics. These now call an extra swapbuffers after glFlush(). Code is ifdeffed, and doesnt affect other systems. - show-off commit: option to have transparent nodes over the composite result. Only draws Image for active Viewer Node now, and image doesnt translate nor zoom (which isnt bad though). Set in themes the alpha color of "node backdrop" to make nodes transparent.
2006-03-12==UV Editor==Brecht Van Lommel
Ctrl+RMB in local sticky mode now selects as if in sticky mode. This used to work only in non-sticky mode, but now with local sticky as default, it's nice to have this functionality working there also.
2006-02-05UV Editor Tweaks:Brecht Van Lommel
- Set local sticky in the uv editor as default. - Don't do live unwrap on fully selected charts or charts with no pins selected. - Fixed bug with live unwrap not respecting transform cancel in some cases. - "View Home" didn't work without an image. - Move UV Calculation settings (cube size, cylinder radius, ..) into the scene toolsettings, instead of global variables - Remove the name LSCM from the UI (and python docs on seams), and replace it with 'Unwrap', with upcoming ABF this didn't make sense anymore. - Move the Old/New LSCM switch into the UV Calculation panel. New LSCM is the default now. Also renamed LSCM there to "Conformal". - Made some room in the UV Calculation panel by removing the buttons to execute the UV calculation, only leaving the settings. Fill Holes: - LSCM now has an option to fill holes in the chart before unwrapping. This on by default, and enables two things: - Prevent internal overlaps (e.g. eyes, mouth) for LSCM unwrapping. - Allow the internal boundaries to move freely during stretch minimize. - The possibility to switch it off is there because it is not always possible to define which the outer boundary is. For example with an open cylinder where there are two identical holes.
2006-01-12Orange:Ton Roosendaal
- cleanup of color curves code; goes at least twice faster now! (includes black/white point stuff) - When using 'Curves' in image window on a byte rect, it creates a (temp) float rect to operate on. So curves work for regular pictures too now.
2006-01-12Orange;Ton Roosendaal
Until now, the zbuffer was written straight from the internal zbuffer, which has values that are inverse-proportional (like 1.0/z) which makes it very hard to use it for postprocess, like zblur or other composit effects that require Z. Based on info from ILM, the values stored for Z in exr files is the actual distance from a camera. I think that's about time to migrate to that convention! By default now, after render, the z values are converted to floats. This saves in exr files now, but not in the Iris Z files. That latter was a blender-only anyway, so might be not a real hassle to drop. :) You can see the difference in the image window, but notice the range now is linear mapped from camera clipstart to clipend. Note; I just discover that ortho Z values need a different correction...
2006-01-11Orange: ImageWindow goodiesTon Roosendaal
- options to show with alpha-over (checkered backdrop), only alpha (BW) and when available: the zbuffer. Note: it's icons in the header, I just re-used existing ones, no time now for fancy design. :) Also: recoded the way alpha-only draws, also in renderwindow. Mucho faster! Oh, and sampling the buffer with LMB now displays z values in float range of 0.0 to 1.0. Note that we still save signed int in files for Z...
2006-01-11Tuesday merger of bf-blender into orange branch.Ton Roosendaal
2006-01-11Orange: more work on float/exr buffers;Ton Roosendaal
- EXR now saves and reads Zbuffers correctly - EXR reading didn't set alpha to 1 yet when no alpha buffer was present - ImageWindow: the "black point" only checked for the r value... now is OK - ImageWindow: Curves panal has button "reset" - ImageWindow: hold LMB drag shows rgba and z values. With SHIFT or CTRL it applies black/white point whilte dragging too - ImageWindow: saving file copied the entire buffer... removed that. Also made the header print clear; this save only saves in own file type. - Curves: zoom and drag now gets clamped by the Clipping value - Imbuf: duplicate buffer only copied one quarter of to new buffer
2006-01-10Apply Subsurf to UV's.Brecht Van Lommel
This fixes most of the UV distortion issues with subsurf. Near seams however there might still be some distortion, but this should at least not be worse than before. Subsurf UV is enabled by default on new meshes, and can be enabled in the modifier panel for existing ones. Before and after: http://users.pandora.be/blendix/notsmooth.png http://users.pandora.be/blendix/smooth.png
2006-01-10Orange: and now for the real exr fun: float buffer support in Image window!Ton Roosendaal
Image as loaded in Blender (from openexr.com): http://www.blender.org/bf/exrcurve1.jpg Image with different white point: http://www.blender.org/bf/exrcurve2.jpg Image with white and black point and a curve: http://www.blender.org/bf/exrcurve3.jpg Use SHIFT+click to set the black point, and CTRL+click for white point. The buttons in the panel work too, of course. The curves work after the black/white range was corrected, so you can stick to curves with a normal 0-1 range. There's also now a general color curve, marked with 'C' button. Note; this currently only maps the float colors to a visible 8 bits per channel rect. You can save it, but when the blender file loads the curve or mapping is not executed until you click in the curves... have to look at that still. Speed for this is also quite unoptimized... still WIP, but fun!
2005-10-21Bugfix: #3189, #3208, UV Mirror (MKEY) didn't work.Brecht Van Lommel
2005-10-20Adding some simple but very convenient selectionMatt Ebb
functionality for the UV editor: * A "Select->Pinned UVs" command (Shift P) that selects all the visible pinned UVs * A "Select->Border Select Pinned" tool (Shift B) that works just like the normal border select tool, but only acts on pinned UVs This is really useful when using LSCM, I only want to touch the pinned UVs and then recalculate.
2005-09-03Fix for bug #2974:Brecht Van Lommel
Circle select in uv editor crashed when an image was assigned but not loaded.
2005-08-23Bretch's patch for 2D transform. ThanksMartin Poirier
Using new transform code to handle UV window. With the ground work done, Transform could more easily be extended to handle IPO window now. Tracker item: http://projects.blender.org/tracker/?func=detail&atid=127&aid=2946&group_id=9
2005-08-22 - sillyness... added drawMappedEdges for meshDaniel Dunbar
- revert to drawLooseEdges instead of general drawEdgesFlag - ditched TFace edge flags, done dynamically now which also means don't need to recalc surface on flag changes - added BLI_edgehash, guess what it does
2005-08-21 - added mesh_strip_loose_faces, works in conjunction with make_edgesDaniel Dunbar
to get rid of faces with MFace.v3==0 - change all Mesh's to have ->medge now. This is forced by make_edges on readfile, and in the various exotic important routines, and on conversion back in python. - make python NMesh structure always have medges now (needs testing) - with above two changes it is guarenteed that mf->v3 is never ==0 in main blender code (i.e., all MFace's are actually triangles or quads) and so I went through and removed all the historic tests to deal with MFace.v3==0. Equals lots of deleting, I am in heaven! - removed MEdge edcode flag, no longer needed - added experimental replacement for edge flag system Still are some inconsistencies in FACESELECT mode edge drawing to be ironed out. NOTE: This commit adds an experimental edge flag calc system, based on 10-seconds-of-thought algorithm by yours truly. Would appreciate feedback on how this system works, esp compared to old one and esp on complex or interesting models. To Use: New system is enabled by setting G.rt to a value between 1 and 1000 (Value of 0 uses old system). Value 1000 is reserved for "auto" edge, which is more or less identical to old system but also makes sure that at least 10% of edges are drawn (solves errors for super subdivided meshes). Values between 1 and 999 act as percent (out of 1000) of edges that should be drawn, starting with "most interesting" edges first. Please try it and comment!
2005-08-20 - bug fix, apply modifier removed modifier even on certainDaniel Dunbar
errors - change drawimagespace to check and update object data if it needs a recalc. this fixes errors with a recalc being flushed but not actually being done before spaceimage redraws. Updates typically actually happen in draw loop, which is not a great design... - make shared vertexcol didn't flush update
2005-08-18 - added DerivedMesh.drawUVEdges function & implementationsDaniel Dunbar
- removed DerivedMesh.drawLooseEdges and replaced with much more general drawEdgesFlag function that draws based edge flags. - switch DerivedMesh.drawFacesTex to give user control over which faces are drawn - added object_uvs_changed and object_tface_flags_changed functions to do object recalc flag flush/redraw queueing and added calls in appropriate places - added various edge flags to mark TFace information. This is used by the drawEdgesFlag routine and was the best way I could come up with to deal with drawing TFace information from modifier stack. Unfortunate side effects are (1) uses a lot of MEdge flags (although not needed in file so thats fine) and (2) requires recalculation of modifier stack on UV selection changes. #2 is disappointing but I could not find a better solution. - update UV mesh shadow drawing to use modifier result. At the moment just uses the final result but probably should be integrated with the editmode cage option. - convert draw_tfaces3D to use drawEdgesFlag routine which cleaned up the code quite a bit. - convert draw_tface_mesh to draw using result of modifier stack. Same comment about which result actually gets draw in FACESELECT mode as for UV editor shadow drawing applies. There is a still a bug in that selection is using the wrong mesh to draw.
2005-08-12Added the 4 new proportional editing modes also to the uv editor transform.Brecht Van Lommel
Eventually the uv editor should use the new transform code and get these automatically, but until that's done this might fix bug #2920.
2005-07-15 - more signedness warning fixes in editsimaDaniel Dunbar
- added mesh_get_active_key and replaced code in editmesh to use this - removed obsolete code in object_deform
2005-07-15 - switch em_{vert,solid,wire}offs to be unsignedDaniel Dunbar
- some other twiddles to fix mixed signedness compiler warnings And from the "Dear lazy programmers" file: After you have extern declared a variable 5 or more times at the top a function, you would have actually saved a lot of effort by just putting it in the header where it belonged. Or perhaps you thought by hiding it no one else would notice you were using global variables to pass information around. Tsk tsk.
2005-07-14 - switch to using DAG_object_flush_update instead of mesh_changedDaniel Dunbar
- mesh drawing calculated derived surface before clipping to view matrix, waste for offscreen objects
2005-07-14 - split makeDispList into makeDispList{Mesh,MBall,CurveTypes}, there isDaniel Dunbar
still a makeDispList that dispatches to the appropriate one. makeDispList is on the way out and this makes it easier to track down exactly which places use makedispList and for what types of objects. - switch calls to makeDispList to appropriate more specific function (if the object type is known by caller). - added mesh_changed function that invalidates cached mesh data (but does not rebuild, mesh data gets rebuilt on access). Most old calls to makeDispListMesh use this instead now.
2005-06-26Patch by Martin Poirier: display normalized coordinates in image window, withBrecht Van Lommel
a few small modifications: - also display normalized coords while transforming - adapt step size & precision for button - moved option to 'View' menu Also made sure pixel snapping when transforming uv's is off by default.
2005-06-04new round of warning fixes. we are now down to 24 with Xcode on blenderJean-Luc Peurière
alone with the following flags : -Wall -Wno-char-subscripts -Wno-missing-braces. the only one still worrying me is in rand.c line 57 : rand.c:57: integer constant is too large for "long" type but i have no clue about how correct cross-compiler and 32/64 bits friendly see also my mail to commiter list for signed/unsigned issues
2005-05-03UI cleanup work;Ton Roosendaal
Proportional edit: - Proportional mode added to header as button/menu. Including new option to have only connected geometry influenced. - Added icons for proportional & proportional modes - Make proportional edit data part of Scene, so all gets saved. The Global flag G_PROPORTIONAL was removed - Made sure #defines get used properly, also tweaked order for proportional so it starts with regular 'smooth' by default. - Use ALT+O in editmode to switch to new proportional 'connected' mode Other UI stuff: - in EditMode, the layer buttons get hidden... the amount of icons in 3d header grows to fast. :) - made less ugly icons for the Manipulators. Still can be better. - Added alpha-filter for pre-processing Icon-image, giving nicer display of icon-antialising on dark or bright backdrops - disabled Manipulators when in editmode, and current layers don't show the edited data. - Added the value used to define Normal size (editmode draw) in Scene too, so it gets saved.
2005-05-01Removal of old transform() <sob> part one.Ton Roosendaal
- added in new transform the (not so useful but yah) old feature that does scrollwheel zoom during transform - had to change transform call arguments for uv-window/sequence/oops to match new transform for mouse callback TODO (for martin?) - pulldown menu support to call with local axes compliant as for pressing it with hotkey - mirrormenu() still uses old transform stuff...
2005-04-23Merging over some uv editor tweaks from tuhopuu:Brecht Van Lommel
- Moved Weld/Align out of transform code, now it's a menu. - Removed confirmation popups for LSCM unwrapping in the uv editor, didn't make sense anymore now we have undo. - Extended select linked, to work more like it does in edit mode: - L: select linked uvs/faces under the mouse - Shift+L: select/deselect linked uvs/faces under the mouse (like shift+click for selecting single uvs/faces) - Ctrl+L: how L worked before - More accurate uv selection: when selecting one uv from a group of uvs that are in the same position, it now selects the uv belonging to the face the mouse is over, instead of a random uv. - 'View Selected' (numpad .-key) for both faceselect mode and the uv editor.
2005-04-23Add "View Selected" (numpad .-key) for faceselect mode and the uv editor.Brecht Van Lommel
Also includes some 2d vector operations (subtract, dot, normalise).
2005-03-20 - remove all obsolete inclusions of BLI_winstuff.h (due to recent changes)Daniel Dunbar
NOTE: BLI_winstuff.h was meant to be a wrapper around windows.h to handle undefining various crap that windows.h defines. Platform specific headers should only have to be included in a few places. This reduces the number of inclusions of BLI_winstuff.h to 16 which is a much more reasonable number (than the 144 or whatever it used to be)
2005-03-09big warning hunt commitJean-Luc Peurière
lot of casts, added prototypes, missing includes and some true errors
2004-12-27Biiig commit! Thanks to 2-3 weeks of cvs freeze...Ton Roosendaal
Render: - New; support for dual CPU render (SDL thread) Currently only works with alternating scanlines, but gives excellent performance. For both normal render as unified implemented. Note the "mutex" locks on z-transp buffer render and imbuf loads. - This has been made possible by major cleanups in render code, especially getting rid of globals (example Tin Tr Tg Tb Ta for textures) or struct OSA or using Materials or Texture data to write to. - Made normal render fully 4x32 floats too, and removed all old optimizes with chars or shorts. - Made normal render and unified render use same code for sky and halo render, giving equal (and better) results for halo render. Old render now also uses PostProcess options (brightness, mul, gamma) - Added option ("FBuf") in F10 Output Panel, this keeps a 4x32 bits buffer after render. Using PostProcess menu you will note an immediate re- display of image too (32 bits RGBA) - Added "Hue" and "Saturation" sliders to PostProcess options - Render module is still not having a "nice" API, but amount of dependencies went down a lot. Next todo: remove abusive "previewrender" code. The last main global in Render (struct Render) now can be re-used for fully controlling a render, to allow multiple "instances" of render to open. - Renderwindow now displays a smal bar on top with the stats, and keeps the stats after render too. Including "spare" page support. Not only easier visible that way, but also to remove the awkward code that was drawing stats in the Info header (extreme slow on some ATIs too) - Cleaned up blendef.h and BKE_utildefines.h, these two had overlapping defines. - I might have forgotten stuff... and will write a nice doc on the architecture!
2004-11-07Tweaked the force_draw() calls, to allow headerprint() to work whileTon Roosendaal
doing a transform. Solves bug reported by Brecht about this.
2004-11-07Added undo in UV FaceSelect mode (3d window) and in UV Image window.Ton Roosendaal
Brecht; can you give it a good test :)
2004-10-12Do better checking for hidden faces in uv editor, sometimes unwanted uv's gotBrecht Van Lommel
pinned.
2004-07-14LSCM:Brecht Van Lommel
Fixed a bug where the projection axis for the initial solution was wrong, causing the solution to collapse into one point. Made packing denser (by reducing the padding between face groups).
2004-07-13Added LSCM UV Unwrapping:Brecht Van Lommel
http://www.loria.fr/~levy/Galleries/LSCM/index.html http://www.loria.fr/~levy/Papers/2002/s2002_lscm.pdf Implementation Least Squares Conformal Maps parameterization, based on chapter 2 of: Bruno Levy, Sylvain Petitjean, Nicolas Ray, Jerome Maillot. Least Squares Conformal Maps for Automatic Texture Atlas Generation. In Siggraph 2002, July 2002. Seams: Stored as a flag (ME_SEAM) in the new MEdge struct, these seams define where a mesh will be cut when executing LSCM unwrapping. Seams can be marked and cleared in Edit Mode. Ctrl+EKEY will pop up a menu allowing to Clear or Mark the selected edges as seams. Select Linked in Face Select Mode now only selects linked faces if no seams separate them. So if seams are defined, this will now select the 'face group' defined by the seams. Hotkey is still LKEY. LSCM Unwrap: unwrap UV's by calculating a conformal mapping (preserving local angles). Based on seams, the selected faces will be 'cut'. If multiple 'face groups' are selected, they will be unwrapped separately and packed in the image rectangle in the UV Editor. Packing uses a simple and fast algorithm, only designed to avoid having overlapping faces. LSCM can be found in the Unwrap menu (UKEY), and the UV Calculation panel. Pinning: UV's can be pinned in the UV Editor. When LSCM Unwrap is then executed, these UV's will stay in place, allowing to tweak the solution. PKEY and ALT+PKEY will respectively pin and unpin selected UV's. Face Select Mode Drawing Changes: - Draw Seams option to enable disable drawing of seams - Draw Faces option to enable drawing of selected faces in transparent purple - Draw Hidden Edges option to enable drawing of edges of hidden faces - Draw Edges option to enable drawing of edges of visible faces The colors for these seams, faces and edges are themeable.
2004-06-05* Big, mundane clean up and edit of (error/ok/etc)Matt Ebb
messages and pupmenu()s. Edited spelling and grammar, stylistic consistency, etc. I added the guidelines and rationale that I used to the CMS here: http://www.blender3d.org/cms/Language_and_terminology.338.0.html Next step is to get icons in there, to make it easier to see at a glance what sort of message (and how much attention should be paid to it, or if it can be dismissed with a flick of the mouse, eg. boring remove doubles notifications) mockup: http://mke3.net:9000/blender/ui/controls/error_ok_icons.png
2004-05-25Fixed a potential bug in the uv editor transform function, a check if the tfaceBrecht Van Lommel
might be only an edge was missing in one of the loops. Fix a crash that would sometimes happen when clicking the texture painting button in the image window header. Made headerbuttons_packdummy a static variable again. The uiDefBut call for the texture painting button stores a reference to it, so it must be kept in memory.
2004-04-24The Anim and Tiles settings in the Image Window are now available again, in theBrecht Van Lommel
new Properties panel (was first called Transform Properties). They include the same settings as were previously found in the window header: Anim toggle, Start/End frame, Speed, Tiles toggle, X repeat and Y repeat. The Tiles button used to work incorrectly in 2.25, this is now fixed too. The drawing of the UV Vertex transform buttons in the Properties panel used to give popup error messages when in Edit Mode (uv_tface_editing_is_allowed is not silent). Also these buttons would still draw in Edit Mode. Both are problems are solved now.
2004-04-20Preparations to have Panels in all window types. Also implementedTon Roosendaal
it for the UV Image window (as Nkey replacement). Blendix can take this further now. Other little improvement: vertices in UV window now draw unselected first, and then selected over it. Less confusing! Next spaces: Action and Nla.