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
2011-10-10header cleanup (no functional changes)Campbell Barton
2011-05-19Fix some compile warnings.Brecht Van Lommel
2011-05-19Add localize_lamp and localize_world functions as already existed for materialsBrecht Van Lommel
and textures, unused still.
2011-04-26fix [#27178] Material links lost when making mesh data localCampbell Barton
- making local object data - Curve/Mesh/MBall lost references to linked materials. - joining a linked mesh object into a local one lost the link. As well as these reported bugs, checked all local functions for consistency/correctness and found other cases which would also fail. - making local metaball didn't ensure unique ID name. - make_local_armature() was missing check for object users - main body of code would never run. - local particles didn't set the dupli-group or textures to extern. checked all local functions for consistency/correctness.
2011-03-03replace 0 with NULL when used as a pointerCampbell Barton
2011-02-27doxygen: blender/blenkernel tagged.Nathan Letwory
2011-02-13fix for warnings from Sparse static source code checker, mostly BKE/BLI and ↵Campbell Barton
python functions. - use NULL rather then 0 where possible (makes code & function calls more readable IMHO). - set static variables and functions (exposed some unused vars/funcs). - use func(void) rather then func() for definitions.
2010-11-17use 'const char *' by default with RNA functions except when the value is ↵Campbell Barton
flagged as PROP_THICK_WRAP. Also use const char in many other parts of blenders code. Currently this gives warnings for setting operator id, label and description since these are an exception and allocated beforehand.
2010-08-16- remove unused includes IMB_*, BIF_* & MEM_*Campbell Barton
- remove MEM_guardedalloc.h from header files (include directly)
2010-08-132.5: more removal of G.main.Brecht Van Lommel
2010-08-04include cleanup, no functional changesCampbell Barton
- removed DNA_brush_types.h from DNA_scene_types.h (and some other similar cases) - removed DNA_wave_types.h (never used) - removed Main.wave
2010-07-132.5: startup.blend changes, these should all be consistent with new datablocks,Brecht Van Lommel
mostly the startup.blend was trailing behind. Also renamed B.blend.c. * Lamp shadow buffer was Classical instead of Classical Halfway. * Point Lamp was named "Spot". * Render resolution is 50% 1080p. * Scene and material bake/use tangent space normal maps. * Remove empty text datablock. * Enable auto ray bias on material. * Change default material diffuse color to match new material. * Mist start/depth from 0/0 to 5/25 so it does something. * AO uses Add instead of Multiply. * Change world colors for new world same as startup.blend. * Default cube rotation was 0,-0,0 now 0,0,0. * Enable relative/filter/hide files in user preferences.
2010-04-18remove config.h references, was added for automake build system rev around ↵Campbell Barton
124-126 but isnt used by any build systems now.
2010-03-22spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text)Campbell Barton
2010-03-21removed unused includes, except for physics and particle related filesCampbell Barton
2010-02-12correct fsf addressCampbell Barton
2010-01-28Ambient Occlusion split up into:Brecht Van Lommel
Ambient occlusion: multiplied with direct lighting by default, add is also still available and more blending methods might be added if they are useful. This is fundamentally a non physical effect. Environment lighting: always added as you would expect (though you can subtract by specifying negative energy). This can be just white or take colors or textures from the world. Indirect lighting: only supported for AAO at the moment (and is still too approximate), and also is always added. A factor is available to specify how much is added, though value 1.0 is correct. Also: * Material ambient value now defaults to 1.0. * Added Environment, Indirect and Emit pass. * "Both" blending method is no longer available. * Attenuation, sampling parameters are still shared, some could be split up, though if they are different this would affect performance.
2009-11-10Math LibBrecht Van Lommel
* Convert all code to use new functions. * Branch maintainers may want to skip this commit, and run this conversion script instead, if they use a lot of math functions in new code: http://www.pasteall.org/9052/python
2009-10-02Fix #19311: adding/opening datablocks did not always make the rightBrecht Van Lommel
one active. Now there's a function to get the pointer + property from the UI, just like for the animation operators. Also two fixes for fileselect events, regions are now preserved so that context is restored to the old region, and the cancel callback is called when the operator is cancelled.
2009-07-22remove scriptlinks,Campbell Barton
they were not working and we have plans for better script integration in 2.5
2009-07-21BGE panels: wipDalai Felinto
Logic Panel: - world settings (moved from world) ... that includes physic engine selection + gravity - game player (from gamesettings, it wasn't wrapped) - stereo/dome (from gamesettings, it wasn't wrapped) ... separated stereom into stereoflag and stereomode - properties ... (didn't touch it) Buttons Game Panel: (wip panel) - Physics (moved from Logic Panel) ... it will be a datablock in the future (right Campbell ?) - Material Physics (not currently implemented) ... a datablock link to the materials of an object + the dynamic physic variables * NOTE: in readfile.c::do_version I couldn't do if(scene->world). There is something wrong with scenes with an unlinked world. So so far we are ignoring the old values....
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-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-14BGE: Occlusion culling and other performance improvements.Benoit Bolsee
Added occlusion culling capability in the BGE. More info: http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.49/Game_Engine#BGE_Scenegraph_improvement MSVC, scons, cmake, Makefile updated. Other minor performance improvements: - The rasterizer was computing the openGL model matrix of the objects too many times - DBVT view frustrum culling was not properly culling behind the near plane: Large objects behind the camera were sent to the GPU - Remove all references to mesh split/join feature as it is not yet functional
2009-04-08BGE Scenegraph and View frustrum culling improvement.Benoit Bolsee
This commit contains a number of performance improvements for the BGE in the Scenegraph (parent relation between objects in the scene) and view frustrum culling. The scenegraph improvement consists in avoiding position update if the object has not moved since last update and the removal of redundant updates and synchronization with the physics engine. The view frustrum culling improvement consists in using the DBVT broadphase facility of Bullet to build a tree of graphical objects in the scene. The elements of the tree are Aabb boxes (Aligned Axis Bounding Boxes) enclosing the objects. This provides good precision in closed and opened scenes. This new culling system is enabled by default but just in case, it can be disabled with a button in the World settings. There is no do_version in this commit but it will be added before the 2.49 release. For now you must manually enable the DBVT culling option in World settings when you open an old file. The above improvements speed up scenegraph and culling up to 5x. However, this performance improvement is only visible when you have hundreds or thousands of objects. The main interest of the DBVT tree is to allow easy occlusion culling and automatic LOD system. This will be the object of further improvements.
2009-01-182.5 - AnimSys Data management stuff...Joshua Leung
* Removed nAction struct. We'll be using good ol' bAction structs again, but putting new data in a different list. Apart from that, the data is similar enough to do so. * Rearranged code in DNA_action_types.h while renaming the structs to avoid confusion over what is currently in use... * Added freeing and AnimData execution loops for many other ID-types too. (NOTE: I've added AnimData in NodeTree struct too, but it's not clear to me where the relevant data-management calls should go in Nodes code). * File writing code should now only write the new data to files
2009-01-172.5: Blender "Animato" - New Animation System Joshua Leung
Finally, here is the basic (functional) prototype of the new animation system which will allow for the infamous "everything is animatable", and which also addresses several of the more serious shortcomings of the old system. Unfortunately, this will break old animation files (especially right now, as I haven't written the version patching code yet), however, this is for the future. Highlights of the new system: * Scrapped IPO-Curves/IPO/(Action+Constraint-Channels)/Action system, and replaced it with F-Curve/Action. - F-Curves (animators from other packages will feel at home with this name) replace IPO-Curves. - The 'new' Actions, act as the containers for F-Curves, so that they can be reused. They are therefore more akin to the old 'IPO' blocks, except they do not have the blocktype restriction, so you can store materials/texture/geometry F-Curves in the same Action as Object transforms, etc. * F-Curves use RNA-paths for Data Access, hence allowing "every" (where sensible/editable that is) user-accessible setting from RNA to be animated. * Drivers are no longer mixed with Animation Data, so rigs will not be that easily broken and several dependency problems can be eliminated. (NOTE: drivers haven't been hooked up yet, but the code is in place) * F-Curve modifier system allows useful 'large-scale' manipulation of F-Curve values, including (I've only included implemented ones here): envelope deform (similar to lattices to allow broad-scale reshaping of curves), curve generator (polynomial or py-expression), cycles (replacing the old cyclic extrapolation modes, giving more control over this). (NOTE: currently this cannot be tested, as there's not access to them, but the code is all in place) * NLA system with 'tracks' (i.e. layers), and multiple strips per track. (NOTE: NLA system is not yet functional, as it's only partially coded still) There are more nice things that I will be preparing some nice docs for soon, but for now, check for more details: http://lists.blender.org/pipermail/bf-taskforce25/2009-January/000260.html So, what currently works: * I've implemented two basic operators for the 3D-view only to Insert and Delete Keyframes. These are tempolary ones only that will be replaced in due course with 'proper' code. * Object Loc/Rot/Scale can be keyframed. Also, the colour of the 'active' material (Note: this should really be for nth material instead, but that doesn't work yet in RNA) can also be keyframed into the same datablock. * Standard animation refresh (i.e. animation resulting from NLA and Action evaluation) is now done completely separate from drivers before anything else is done after a frame change. Drivers are handled after this in a separate pass, as dictated by depsgraph flags, etc. Notes: * Drivers haven't been hooked up yet * Only objects and data directly linked to objects can be animated. * Depsgraph will need further tweaks. Currently, I've only made sure that it will update some things in the most basic cases (i.e. frame change). * Animation Editors are currently broken (in terms of editing stuff). This will be my next target (priority to get Dopesheet working first, then F-Curve editor - i.e. old IPO Editor) * I've had to put in large chunks of XXX sandboxing for old animation system code all around the place. This will be cleaned up in due course, as some places need special review. In particular, the particles and sequencer code have far too many manual calls to calculate + flush animation info, which is really bad (this is a 'please explain yourselves' call to Physics coders!).
2008-11-13Merge of trunk into blender 2.5:Brecht Van Lommel
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r12987:17416 Issues: * GHOST/X11 had conflicting changes. Some code was added in 2.5, which was later added in trunk also, but reverted partially, specifically revision 16683. I have left out this reversion in the 2.5 branch since I think it is needed there. http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=16683 * Scons had various conflicting changes, I decided to go with trunk version for everything except priorities and some library renaming. * In creator.c, there were various fixes and fixes for fixes related to the -w -W and -p options. In 2.5 -w and -W is not coded yet, and -p is done differently. Since this is changed so much, and I don't think those fixes would be needed in 2.5, I've left them out. * Also in creator.c: there was code for a python bugfix where the screen was not initialized when running with -P. The code that initializes the screen there I had to disable, that can't work in 2.5 anymore but left it commented as a reminder. Further I had to disable some new function calls. using src/ and python/, as was done already in this branch, disabled function calls: * bpath.c: error reporting * BME_conversions.c: editmesh conversion functions. * SHD_dynamic: disabled almost completely, there is no python/. * KX_PythonInit.cpp and Ketsji/ build files: Mathutils is not there, disabled. * text.c: clipboard copy call. * object.c: OB_SUPPORT_MATERIAL. * DerivedMesh.c and subsurf_ccg, stipple_quarttone. Still to be done: * Go over files and functions that were moved to a different location but could still use changes that were done in trunk.
2008-10-28added scons option BF_WITH_PYTHON (defined as DISABLE_PYTHON)Campbell Barton
2008-04-17Patch from GSR that a) fixes a whole bunch of GPL/BL licenseChris Want
blocks that were previously missed; and b) greatly increase my ohloh stats!
2008-01-17Approximate Ambient OcclusionBrecht Van Lommel
============================= A new approximate ambient occlusion method has been added, next to the existing one based on raytracing. This method is specifically targetted at use in animations, since it is inherently noise free, and so will not flicker across frames. http://www.blender.org/development/current-projects/changes-since-244/approximate-ambient-occlusion/ http://peach.blender.org/index.php/approximate-ambient-occlusion/ Further improvements are still needed, but it can be tested already. There are still a number of known issues: - Bias errors on backfaces. - For performance, instanced object do not occlude currently. - Sky textures don't work well, the derivatives for texture evaluation are not correct. - Multiple passes do not work entirely correct (they are not accurate to begin with, but could be better).
2008-01-07Patch to change license to GPL only, from GSR.Chris Want
2008-01-01removed blenderdef.h, BIF_*, BDR_* and BSE_* header files (except for ↵Campbell Barton
BIF_gl.h and BIF_glutil.h)
2007-09-07* QMC RaytracingMatt Ebb
This introduces QMC sampling for use in glossy reflections/refractions, soft raytraced shadows, and ambient occlusion. This work includes many new features and speed-ups, so check out the nice docs here: Glossy Reflection/Refraction http://www.blender.org/development/current-projects/changes-since-244/glossy-reflectionrefraction/ Raytraced Soft Shadows http://www.blender.org/development/current-projects/changes-since-244/raytraced-soft-shadows/ QMC Sampling http://www.blender.org/development/current-projects/changes-since-244/qmc-sampling/ Many thanks to Brecht van Lommel for some initial code snippets and for reviewing the patch, and especially to Alfredo de Greef who gave me a lot of guidance and help along the way!
2007-09-02== imagebrowser ==Andrea Weikert
Initial commit of imagebrowser in trunk. BIG COMMIT! Main changes: * completely reworked imasel space * creation and storage of the preview images for materials, textures, world and lamp * thumbnails of images and movie files when browsing in the file system * loading previews from external .blend when linking or appending * thumbnail caching according to the Thumbnail Managing Standard: http://jens.triq.net/thumbnail-spec/ * for now just kept imasel access mostly as old imgbrowser (CTRL+F4, CTRL+F1) a bit hidden still. * filtering of file types (images, movies, .blend, py,...) * preliminary managing of bookmarks ('B' button to add, XKEY while bookmark active to delete) More detailed info which will be updated here: http://wiki.blender.org/index.php/User:Elubie/PreviewImageBrowser Places that need special review (and probably fixes): * BLO_blendhandle_get_previews in readblenentry * readfile.c: do_version and refactorings of do_library_append * UI integration TODO and known issues still: * Accented characters do not display correctly with international fonts * Crash was reported when browsing in directory with movie files * Bookmark management still needs some UI work (second scrollbar?), feedback here is welcome! Credits: Samir Bharadwaj (samirbharadwaj@yahoo.com) for the icon images. Many thanks to everyone who gave feedback and helped so far!
2006-04-27make Bullet default physics engine. However, it still loads some default ↵Erwin Coumans
.blend that set's sumo default. todo: find out about this. commented out some code that makes Blender crashing, after leaving the game engine (armature deletes some pose, which deletes constraints, which are still in the dependency graph. Ask Charlie)
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!
2005-12-22Big commit in orange: Interface icons for materials, texturesAndrea Weikert
world and lamp. Also for images in pupmenus. Also preparation for work on using preview images in imagebrowser. -- Andrea
2005-06-02Bug fix #2660Ton Roosendaal
When number of OSA samples is larger than number of AO samples, the AO loop doesn't function well. Since rendering 16 OSA samples with only 9 AO samples isn't very useful, I've made the AO render level to become at least equal or larger than amount of OSA samples. Is first bug in 2.37 that worked in 2.36...
2005-01-30Fixed old annoyance; enabling true Ortho render in Blender.Ton Roosendaal
It used to be a simple hack, scaling lens with 100, and moving the camera to the back with an equivalent amount. Because of the hack, making it 100% compatible with older files I could not achieve (yet?). To help reminding users, I've added a print when reading old files with Ortho cameras. Full description of how it works can be found here; http://www.blender3d.com/cms/Render_changes.515.0.html
2004-12-05Special bf-committers request; Lamp/World/Material now each have 10Ton Roosendaal
channels to link texture to. The amount of code changes seems large, but is mostly getting rind of hardcoded values (6 and 8) for channels, replacing it with MAX_MTEX. Further did some fixes; - Ipo for Lamp showed too many mapping channels - Texture MapTo buttons for lamp missed the slider to blend texture color - Lamp texture mapping "View" only worked for Spot, now it uses lamp- view vector for all types. (Nice for projections!)
2004-04-29World->physicsEngine is SUMO when you create new one.Ton Roosendaal
2004-04-26Solved AO smooth rendering, by introducing a "Bias" value for smoothedTon Roosendaal
rendered faces. http://www.blender3d.org/cms/Ambient_Occlusion.231.0.html ALso removed prints when allocating new 'face groups' etc, which wasn't informative at all.
2004-04-19- world init for AO settings added.Ton Roosendaal
2004-04-12More AO fun to play with:Ton Roosendaal
- AO energy slider to control amount - option "Use sky color" for colored AO. The horizon color will define bottom diffuse color, the zenith works on top - option "Use sky texture" will do a full sky render to define AO color Please note that AO energy and color only is found when a ray does not intersect. So for interior scenes make sure 'Dist' value is sufficient low. New also is: - World "Map input" allows "Ang Map" (Angular mapping) which can be used for 360 degree spherical maps, aka as Light Probes. Check samples here: http://www.debevec.org/Probes/ Note that Blender doesn't support HDRI images yet, but option "Use sky tex" already gives intersting results with such images - World sky rendering with Image Textures now correctly filters and uses antialiasing. Also noticable for raytrace mirror reflections - World preview render for sky type "Real" now gives correct view as defined by current used camera. I tried to speed up AO tracing with coherence systems, none of it really worked yet... time to tackle octree itself i guess!
2004-04-06Eeshlo AO patch, revisedTon Roosendaal
- Ambient Occlusion is a more sophisticated ambient trick, which takes nearby faces into account by firing a hemisphere of shadow-rays around. AKA 'dirt shader'. - Eeshlo made it a Lamp type, which doesn't fit well. I've moved the settings to the World menu, and let the Material->ambient value control the amount it contributes - currently, the AO value is added/subtracted/mixed with the 'diffuse' factor while shading, before it is multiplied with Material color Buttons are in new Panel 'Amb Occ" in F8 menu. Note: - "Dist:" by shortening the length of rays you get subtler effects and it renders faster too - "DistF:" the attennuation factor gives control over how the 'shadow' spreads out. Further it's just raytracing, so tends to be slooooow.... :) Here same tricks as for other raytraced scenes apply, especially try to keep the environment as small as possible (exclude faces from Octree by giving them no Material Traceable). I still have to think over a couple of aspects, will await feedback on it: - AO color? Now it just adds 'white' - other sampling patterns? I tried dithering, which was so-so - method of controlling final 'samples' in F10? Might be useful for other oversampling too (area light) to have it reacting to a percentage or so..
2004-01-06- decided to use a new variable for the new exposure option, instead ofTon Roosendaal
re-using old one. New one = 'exp'. - at first I used the old 'exposure' value, and just mapped it to 0. this causes a problem with upward compatibility, old blenders then render a black picture. is too confusing! - warning; exposure values saved with commit of last week will get lost.
2003-12-30Added improved exposure calculationTon Roosendaal
- based at 1.0-exp(-color) trick in Yafray. But to guarantee backwards compatibility, and some more control, Stefano Selleri hacked a useful formula for it. - We now have 2 values to set: - "exp": the exponential correction value (0-1) - "range": the light range that maps on color 1.0 (0-5) - Using exp(x) (is e^x) we can much better prevent overflows from render, which are currently hard-clipped in Blender. Setting a small 'exp' value wil efficiently smooth out high energy and map that back to a color for display. - total formula: newcol= linfac*(1.0-exp(col*logfac)) col, newcol are colors linfac= 1.0 + 1.0/((2.0*wrld.exp +0.5)^10) logfac= log( (linfac-1.0)/linfac )/wrld.range wrld.exp and wrld.range are the button values - default setting: exp=0.0 and range=1.0 give results extremely close to previous rendering. - graph: http://www.selleri.org/Blender/buffer/Image1.png for 'exp' setting ranging from 0-1, and with 'range'=2 Thanks Stefano for the help!
2003-11-23Added all necessary BPY_extern.h include files to the .c files.Michel Selten
Updated the Make environment to point to the correct location. The include paths were still pointing to source/blender/bpython/include while it should be source/blender/python. I did not encounter the build problems because I'm always working with the autoconf build environment.
2003-11-22Got rid of many #include "BPY_extern.h"Chris Want
Homework from Michel: do grep BPY source/blender/src/* and see if there is anything that needs fixing.