Time has come for taking a look at the CVS repository again; so many changes were committed since our last overview that here at BlenderNation we were thinking of turning this into a fixed appointment (i.e. 2 times a month) with more detailed information so that anyone can be aware of where Blender is being pushed by the devs and take on a fully functional testing build without having to dig into the developers' forum or battle against gcc complaints. Now sit back and relax, its a long way down, but its worth it, believe me.
First we'll take a look at the Ton's additions committed in the last 2 weeks, are you ready? Well, let's go:
- New preview panel available in the Image window, now a sub-rect of an image can be defined to be processed; works like the preview in 3D Window, just press SHIFT + P to get it activated.
- Added Select same group to the Select Group menu
- Lamp halos now can be rendered separately, just disable Solid in a layer and keep Halo option enabled
- Bump correction factor for when images get sampled on larger distance has been added, it flattens bump to avoid weird results
- The code that generated mipmaps was revised, it was ways too slow on 5k x 5k images
- Added ability to render Zbuffer to an image, just use SHIFT-F3 on the renderered image vire and save
- New Free Texture Images option in Render Output panel, it frees all images and mipmaps as used by textures after each render of each scene
- New Open Inventor exporter
- Improved stats drawing while rendering, it now draws each second the amount of verts/faces while preparing render data, while rendering the amount of finished and total parts are printed too
- Gameplayer will use blender materials automatically
- Improved OpenGL Shader Language support for game engine, the python interface has been simplified.
- More vehicle preparation and some bullet cleaning/reordering
- Preview render now remembers where it was before any mouse/key event and continues rendering
- Reviewed octree filling times, found a way to optimize some 10% of time, now can be 5-10 times faster, just remember to try higher octree resolutions (256 or 512) on more complex scenes; a per-second header print update to tell where octree is has been added too
- Blending type Overlay available for Mix node and ramp shaders
- Added printing stats back in commandline renders, it now prints a full log using 1 line per part rendered
- New Single option button in render-layer panel, it enables to render only the selected render-layer and skip compositing pass
- Memory management module has been totally reworked to avoid memory fragmentation, there was a maximum amount of allocatable memory equal to 2 Gigs, now it is 4 Gigs thanks to Unix (Linux/Mac OS) mapped memory routines, an equivalent system based on Win32 virtual memory has been submitted by me on the patch tracker, still awaiting some devs to review it. I've backed it in the testing build attached to this article for You guys to play with it ;-)
- Enabled Toolbox menu in Node editor replacing the SHIFT+A for adding nodes, just press SPACE; the nodes are automatically added to the menus, using the class category from the type definition
- New nodes for compositing:
- Separate RGBA - Separates an input RGBA image into its R, G, B and A channels
- Separate HSVA - Separates an input RGBA image into H, S, V and A channels
- Set Alpha - Takes an input RGBA image and an alpha value channel and combines them into a single RGBA image channel. You can also set the alpha for the entire image
- Hue Saturation - Works like the former post process menu. There's no gamma, brightness or multiply needed in this node, for that the Curves Node functions better
- Texture Node - Allows to use any Blender Texture block as input for masks or color blending, the texture node doesn't generate a real image, but adjusts to the size as mapped with during an operation. So it won't work to use it as Image input for Blur or Filter nodes
- Translation Node - Gives an offset in X or Y direction to any image
- Z Combine - Usefull to combine two images with comparing depth values
- Added Fac input for AlphaOver, so you can control amount.
- Copy size constraint has been added, it lets you constrain the size of an object/bone to another object/bone, with per axis restrictions
- Major Compositor upgrade - Links now can be made between any socket type, nodes recognize amount of channels and will convert types if needed, conversions only happen when required. Now you can blur an alpha channel, filter it, and put this in a 1-channel socket without any conversion to happen which saves memory & cpu time; everything is much stabler now
- Merge tools patch applied and extended with At First option when merging vertexes, those new tools are also UV aware (optional), the default behavior is to leave UVs alone, but if you hold CTRL while clicking on the menu entry, UV's will be merged
- Inclusive selection mode conversion system implemented, this feature does not change blenders default behavior but offers implicit selection mode conversion as an alternative; to access it, hold either the left or right CTRL keys and click on a selection mode in the view 3d selection mode header buttons, this can be accessed via the CTRL-TAB selection mode switching as well, simply hold CTRL while clicking the mode you want or entering its number on the keypad
- UndoMesh code has been improved to make selection mode switching undo-coherent
- Added Disable Sleeping option for rigidbodies.
- Added lighten/darken paint modes, works in both vertex paint mode and weight paint mode; usefull for painting in areas with values newar 0.5 without overwriting existing 1.0 weights
- Added UI numeric access to bone radius (for envelopes), needed to accsess the other day to make bones the same radius and had to guess.
- Threads library has been switched from SDL to PThreads, this solves any Linux problem with threaded code making it even faster at the same time, added PThreads library for win32 in CVS
Of course there's a plenty of important bug fixes and optimizations, not enough space to list them all, sorry; in exchange I'll give you some tips on what's next for us to be patient and wait for the upcoming final release (which probably will be marked by the version number 2.50 for the great amount of new features baked in).
With the release date of the Orange Project's animated short getting closer developers seem to have frozen the wish list for it and started to look forward the Blender release: Ton is actually playing with the render pass code in combination with OpenEXR baking since this graphic format enables saving multiple tiles without any limitation, this means that we'll have an easy and compact way to store all the rendered passes in one file and then read them back in the Compositor; Erwin is working at the new Vehicle simulation code for the Bullet engine, not so much infos about this one but it will cut the edge for sure as we cannot expect anything less cool than the Car-toy costraint that can be found in Max's Havok module; Nathan is keeping the new Scons build system highly updated (almost 2/3 commits this week), this makes me think that the final release is not so far away, why so much attention in the building system if not to get prepared for the official build?
As the last time I'm attaching a new Windows build of the CVS repository (we will start supplying a Linux version starting from Chapter III for you all Penguomaniacs) , but this time I've decided to do some tweakings for your "Blendering" pleasure, here's a list of the little additions:
- MMap for Win32 patch (supplied by me) has been applied enabling for up 4 Gigabytes memory allocation also on Redmond's OS
- Array Modifier patch
- New workspace layout and revised screens
- New GUI theme
- Customized Splash screen for Blendernation (hope you'll like it, I made it with this build)
- Handful Blendernation link in the Help menu
- PThreads Cygwin build (I had to tweak the makefiles for this; cygwin1.dll is not needed)
- Compiled with FFMpeg support
- Some good python scripts are bundled:
- Improved Layer Manager
- ProCAD 1.5 (only italian version right now, though not difficult to understand as it uses only technical terms that are really similar to English ones)
- Kerkythea improved exporter 1.02.2b (hey, I supplied this too :-P)
- DirectX 9 exporter
- DPI Calculator (I managed to improve it a little bit)
- Mesh Flatten Faces
- Solidify Mesh v2
- Widget Wizard (it gives a little warn but ignore it, I just don't have time to fix it or to contact the author right now)
You can download it here, have fun while playing with it ;-)