テンプレート:Release Notes/2.42/Misc

提供: wiki
移動先: 案内検索

Make Local

"Make Local" menu (Lkey) now has as first option to make only Objects local, keeping all Data stuff (Mesh, Materials) from Library.

The animation stuff on Object becomes local though; - Ipo - Action - NLA

Union

This commit enhances the support for temporary storage for the structs EditVert, EditEdge, and EditFace. The field "EditVert *vn" has been removed and replaced by a union called "tmp" that can hold:

v,an EditVert pointer;
e,an EditEdge pointer;
f,an EditFace pointer;
fp, a float pointer;
p,a void pointer;
l,a long;

Please see the mailing list post here for more information about this:

http://projects.blender.org/pipermail/bf-committers/2005-December/012877.html

Orange empties

Display types and variable size for Empties.

New options are in edit buttons for empties to control the display style and the size. New styles are easy to add, too. Just needs useful ideas and minor effort from anyone who wants to.

Support for copying these values has also been added to the Copy Attributes->Drawtype menu command.


Wave drawing

  • Fixed a few problems with wave drawing-
  • Optimized so only samples inside the screens bounds are drawn.
  • Wave display detail is based on zoom - so you can view realy large wave files as well as indervidual samples.
  • Changed logic so an approximation of the wave is displayed rather then just the symetrical amplitude of the sound. Triangles at start and end were annoying and obscured the start of the sound. made them alpha. 0.7 for sound clips only.
  • a whole CD of music should display well and zoom smoothly now.

Release Notes Notes242 wave display.gif

softbody

 -- fast softbody collision /* caching colliding 

objects & some global bounding boxes */

 -- to compare .. set rt to 666


hack

 Log:
 yet another temporary strange but straightforward 

hack for a script at orange to work! that is: while

Joseph is working on the actual Constraint API for

bones etc., this allows our armature script to set

influences with a simple call:

armatureobject.setConstraintInfluenceForBone(bonename,

constraintname, influence); fails silently at failure

('cause the c calls used do and no retvals are

checked) and is in the strange place (as the current

api is largely not object level) but works for us for

now (e.g. next few weeks).


images

 If Images have relative path, and come from a 

library, it uses the library

 path as reference for loading the image.



memcache limiter

 Adds generic memcache limitor (used by the new 

sequencer to cache

 only a certain amount of frames).

particle

 Log:
 Appending a single object with particle system, will 

now also expand to

 append its group and objects.
 * If an empty is a forcefield, scale the 3D 

forcefield shape with the empty drawsize

autosmooth

 Log:
 - Autosmooth now calculates smoothing based on 

original object-space

   vertex locations, not global coordinates. This 

ensures consistant

   autosmoothing for each frame. Also fixes missing 

vectorblur for parts.

   Nice task for a dev: put autosmooth code in end of 

modifier stack... then

   it also shows in 3D window
 

paths

 - Appending Images now re-assigns relative paths, to match with the file
   as currently being used

large textures

Interesting commit for artists using huge textures;

 The code that generated mipmaps took a real long time to do it... on a
 5k x 5k image it took here (no optim, debug compile) 32.5 sec.
 
 Recoded the very old filtering routine, which already brought it down to
 2.8 seconds. Then tested if we even need this filtering... in many cases
 the images are painted or photographs, which is filtered OK already.
 Without the filter, the mipmap timing went down to 0.39 second. :)
 
 http://www.blender.org/bf/filters/index1.html
 
 Here's an example of two 'mips' generated with or without gauss filter.
 Note that aliasing in an image remains there... which can be a wanted
 effect anyway.
 
 So; added the gauss filter as option in making mipmaps. Also had to
 reshuffle the buttons there in a more logical manner.
 There's also disabled code in the do_versions to set 'gauss' on in older
 files. Will be enabled during release time.


Translations

  * Use newest French translation from Erwan Jacq


misc

 - Improved stats drawing while rendering, it now draws - while preparing
   renderdata -  each second the amount of verts/faces.
   Also while rendering, the amount of finished and total parts are printed.
 
 - Added ESC in loop that generated Group render data
 
 - On deleting Render Layers, the nodes that use them are now checked and
   corrected.
 
 - Restored drawing all scanlines in renderwindow... this wasn't the bug!


os x icons

 Updated Mac OS X icons courtesy of Erik Mendoza, re. this thread on blender.org:
 http://www.blender.org/forum/viewtopic.php?t=8121

memory management

 Added new malloc type in our MEM module; using the unix feature 'mmap'.
 
 In Orange we've been fighting the past weeks with memory usage a lot...
 at the moment incredible huge scenes are being rendered, with multiple
 layers and all compositing, stressing limits of memory a lot.
 I had hoped that less frequently used blocks would be swapped away
 nicely, so fragmented memory could survive. Unfortunately (in OSX) the
 malloc range is limited to 2 GB only (upped half of address space).
 Other OS's have a limit too, but typically larger afaik.
 
 Now here's mmap to the rescue! It has a very nice feature to map to
 a virtual (non existing) file, allowing to allocate disk-mapped memory
 on the fly. For as long there's real memory it works nearly as fast as
 a regular malloc, and when you go to the swap boundary, it knows nicely
 what to swap first.
 
 The upcoming commit will use mmap for all large memory blocks, like
 the composit stack, render layers, lamp buffers and images. Tested here
 on my 1 GB system, and compositing huge images with a total of 2.5 gig
 still works acceptable here. :)
 
 http://www.blender.org/bf/memory.jpg
 This is a silly composit test, using 64 MB images with a load of nodes.
 Check the header print... the (2323.33M) is the mmap disk-cache in use.
 
 BTW: note that is still limited to the virtual address space of 4 GB.
 
 The new call is:
 MEM_mapalloc()
 
 Per definition, mmap() returns zero'ed memory, so a calloc isn't required.
 
 For Windows there's no mmap() available, but I'm pretty sure there's an
 equivalent. Windows gurus here are invited to insert that here in code! At
 the moment it's nicely ifdeffed, so for Windows the mmap defaults to a
 regular alloc.
 Log:
 Belonging to previous commit; mmapped memory for large datablocks.


spotlamps

 Log:
 Adding new SpotLamps should get 'buffers' set to 1. Was in the do_version()
 check, but not in adding lamps... this will fix crashing shadowbuffers.


bugfix

 Log:
 patch #3830 Fix for commenting a block of text with highlight enabled
 
 Highlighting would not update when you un/commented a block of code.
 Contributed by Ricki Myers (themyers).

Replacing SDL threads with pthread.

 For some reason I thought SDL thread handling would be much simpler... but
 the migration to posix pthread went very smooth and painless. Less code
 even, and I even notice a slight performance increase!
 
 All threading code is still wrapped in blenlib/intern/threads.c
 Only real change was making the callback functions to return void pointer,
 instead of an int.
 
 The mutex handling is also different... there's no test anymore if a
 mutex was initialized, which is a bit confusing. But it appears to run
 all fine still. :)
 
 Nathan Letwory has been signalled already to provide the Windows pthread
 library and make/scons linking. For MSVC we might need help from someone
 else later though.


Sofbody bake "Local"

 Sofbody simulation happens in global coordinate space, and this was also
 used for baking softbodies. Too bad you cannot re-use or further animate
 the baked softbody then... :)
 
 If you now use the new "Local" button in the Bake menu, it will allow to
 animate or move the baked object.


copy autosmooth settings

 New copy option in CTRL+C menu: copy autosmooth settings.


code cleanup

 Replacing strcpy with BLI_strncpy where it's safe.
 Was part of patch #2840 - thanks Eric Forsythe.

text editor

 Adds menu item in text editor under format menu to convert whitespace to
 Spaces or to tabs.
 Adds function void convert_tabs(struct SpaceText *st, int tab)
 int tab is eather 0 or 1; 1 if converting to tabs
 I was going to make this auto run when running a script but did not know what that would do to the GE or any thing else.


move

 Rather then just complaining it cant be done, made M move objects out of the current localview.
 This is quicker then switching to non localview, de-selecting and going back into localview.
   Test by pressing Mkey in localview.


bake all selected softbody

 Baking all selected softbody: press ctrl+b in 3d window!

Bugfix

very ancient one even. When you use multiple screens in a project
 with each having different scenes, changing screens didn't call the proper
 set_scene() call, which left quite some stuff improperly initialized.
 
 With depsgraph code even causes crashing.


grouping

 Improved CTRL+G grouping menu; it now offers a choice to add to any
 existing group, using a 2nd menu.


nurbs

With the commit last week to have curve bevels nice circular (when no

 front/back is selected), the UV coordinates for curves should also be
 corrected.
 This commit re-uses the same code as for Nurbs, to make sure UV coordinates
 wrap around nicely.
 
 BUT! I've noticed that Daniel's commit of august in this code actually
 broke this UV correction... in his craze to cleanup old code, he missed
 the actual functionality. Meaning that in 2.40 and 2.41, "UV orco" texture
 coordinates wrap around ugly in Nurbs Surfaces, something that was fixed
 in NaN days.
 
 Got no time for tracker now... but I'm sure it's in there! :)

UV Editor

 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.


security patch #3910

provided by Joerg Sonnenberger on Os X
 file opening


copy

 CTRL+C copy menu now has "Copy UV orco" for curves/surfaces

fileseletor

 patch #2554: My Documents and Desktop folder automaticly added to the Folders
 pulldown of the filesector
 
 Only affects Windows builds.
 
 Uses shell functions to correctly get the My Documents and Desktop folders and
 then add them to the fsmenu, right below the drive letters.
 
 Needs shell32.lib linked, which is already linked by default for VS7 project files.
 Platform maintainer please check if it has to be added to scons and MSVC6 project files.
 
 Patch provided by Martin Poirier (theeth) - many thanks!


paint

 -some knitpicking on low scale brushes
 -- should do 'alpha' right now ..  down to brushes of 2 pixel size
 -making AUX1/2 real air brushes .. must have been lost by brechts 

'cleaning'


vertex paint

 Added better safety in vertex/weight paint, so it survives painting 

outside

 the window edge. Also did a paranoia larger memory allocation... weird
 reports I got.


Vertex Paint Blend Modes

Added lighten/darken paint modes, works in vertex paint mode and weight Usefull for painting in areas with ~0.5 values without overwriting existing 1.0 weights.

brush hotspot

 Log:
 Moved to brush cursors hotspot to be at the tip of the brush.


paint vertex clear

 Log:
 Made vertex clear work for selected faces from the menu, to be the same as 

Shift+K.

 Also makde Shift+K work in weightpaint mode.


library

 Log:
 Tweaked library link/append rules for groups a bit further;
 
 - append group: appends group + puts objects in scene
 - link group: only links group, doesn't put objects in scene
 
 - append particle system with group: appends group + objects in scene
 - link particle system with group: only links group



paint

change CKEY to toggle paint on or off in image paint patch by Stephan Kassemeyer

fonts

New option for convert-menu font->curve: "Curve (Single filling group)".

 Since the text-object remake, it was not possible anymore to 'cut out'
 text from, say, a box made by a polycurve, by converting text to curve
 and then joining - only the first character would be cut out.
 
 This is because of the filling groups (nu/dl->charidx)
 I introduced for getting the vast speedup and the possibility
 of overlapping characters.
 
 The new convert menu option now assigns filling group 0 to all of
 the nurbs generated.
 
 Maybe filling groups should be exposed in the UI in general for curves -
 there are various occasions where they are useful.
 
 (Hint to the UI mafia! ;)

translations

 update to the italian translation, thanks Gianluca Faletti and the other translators


modifiers

Basic support in modifiers_isDeformedByArmature for multiple armatures per mesh- use Selected armature object first, if no armatures are selected then return the last/only found armature.

recent files

 Log:
 As nobody else ever felt like doing it, and I work too much with official
 CVS these days in order not to be terribly annoyed by its absence, here it
 is: instinctive-blender's "Recent files list".
 
 It's in the CTRL-O menu. No UI / muscle memory changes -- the first entry is
 the same as the only entry that used to be in the former popup.
 .