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-12-04add define for deprecated DNA struct members: DNA_DEPRECATED,Campbell Barton
this means use of deprecated struct members gives a warning. - makesdna.c preprocessor skips this. - DNA_DEPRECATED_ALLOW is used so readfile.c can do versioning without warnings. - this exposes some use of deprecated struct members, will deal with this after.
2011-11-02Nodes: add support for shader nodes on world and lamps, in addition to ↵Brecht Van Lommel
materials. The internal render engine does not support them, and they are not accesible in the UI yet, but cycles will use them.
2011-10-23remove $Id: tags after discussion on the mailign list: ↵Campbell Barton
http://markmail.org/message/fp7ozcywxum3ar7n
2011-02-17DNA header files are now grouped under the same module. No further ↵Nathan Letwory
documentation done.
2011-01-17remove/comment unused defines, also zero FileGlobal.filename to quiet valgrind.Campbell Barton
2010-06-14remove unused yafray lamp settingsCampbell Barton
2010-03-22spaces -> tabs, (4 spaces == 1 tab, only for white space preceding text)Campbell Barton
2010-02-17Animation Editors - Texture Animation:Joshua Leung
Texture animation is now shown in the animation editors. Texture stacks are shown for each Material/Lamp/World block that uses them. There is currently still a bit of a bug with this which means that unless the owner of the texture stack is animated too, the animation data for the textures won't show up. This will get rectified soon though.
2010-02-12correct fsf addressCampbell Barton
2010-01-25Show Cone option for spot lamps, to visualize which objects are being affected.Brecht Van Lommel
2010-01-03[#20455] Spotlight halo with deep buffers: render crashesCampbell Barton
2009-10-12Deep Shadow BufferBrecht Van Lommel
Since the deep shadow buffer summer of code project is not actively under development anymore, I decided to build my own DSM implementation from scratch, based on reusing as much existing shadow buffer code as possible. It's not very advanced, but implements the basic algorithm. Just enough so we can do shading tests with it, optimizations and other improvements can be done later. Supported: * Classical shadow buffer options: filter, soft, bias, .. * Multiple sample buffers, merged into one. * Halfway trick to support lower bias. * Compression with user defined threshold. * Non-textured alpha transparency, using Casting Alpha value. * Strand render. Not Supported: * Tiling disk cache, so can use a lot of memory. * Per part rendering for lower memory usage during creation. * Colored shadow. * Textured color/alpha shadow. * Mipmaps for faster filtering. * Volume shadows. Usage Hints: * Use sample buffers + smaller size rather than large size. * For example 512 size x 9 sample buffers instead of 2048 x 1. * Compression threshold 0.05 works, but is on the conservative side.
2009-07-22remove scriptlinks,Campbell Barton
they were not working and we have plans for better script integration in 2.5
2009-07-212.5: Texture ButtonsBrecht Van Lommel
* World and Lamp previews now working here too. * Experiment with list template, showing only icons. Unfortunately texture icon render crashes combined with preview render so it shows all icons the same. * Influence panels updated, with slider for each option. The values are still linked though, will fix that later. * Image texture controls a bit more complete, still WIP. * Color ramp back.
2009-01-172.5 - AnimData fixesJoshua Leung
* Made AnimData blocks be stored as pointer instead of directly in the ID-datablock, so that fewer files will need to be recompiled everytime some animation settings change. * Tried to fix some of the compiler errors that pop up in Yafray code. If this commit doesn't fix it, just disable Yafray code for now (WITH_BF_YAFRAY=0 for scons)...
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-12-192.5Joshua Leung
Merged 'backend' changes from AnimSys2. Many of these changes are necessary for the Dopesheet and other changes I'm currently still stabilising. Those will come in due course.
2008-09-29Updated color calculus for sunskyTon Roosendaal
- removed ugly clamping function (it was dividing XYZ based on max of one of the values) - added option to use Exposure, this only works for brightness (Y). results look very pleasant, foggy and hazy results are possible. with exposre==0, no exposure happens for HDR extreme range skies, this is how yafray rendered it. - added menu for choosing color spaces (CIE = modern lcds) Please review! (and yes i know it's still not in World :)
2008-09-21Sunsky / Atmoshphere:Ton Roosendaal
- Added blending mode and factor option, so it's more clear and controllable what happens with it. Also nice for crazy effects of course! - Preview render now shows preview for it too On the todos: - have this in World buttons (as well) for quicker sky setups - review math of color clamping and scaling, this is definitely not good... but a fix will make old files look very different.
2008-09-19Patch #13422, By Roland Hess, Shadow ColorTon Roosendaal
Finally, after a long time new render candy for the non-game peoples! :) Good doc is here: (url splits in two) http://www.harkyman.com/2008/08/06/controllable-shadow-intensity- and-color/ Note the colorpicker for shadow is in "Shadow and Spot" panel. A bit hidden, could get more attention. For later. :)
2008-09-05Merge of first part of changes from the apricot branch, especiallyBrecht Van Lommel
the features that are needed to run the game. Compile tested with scons, make, but not cmake, that seems to have an issue not related to these changes. The changes include: * GLSL support in the viewport and game engine, enable in the game menu in textured draw mode. * Synced and merged part of the duplicated blender and gameengine/ gameplayer drawing code. * Further refactoring of game engine drawing code, especially mesh storage changed a lot. * Optimizations in game engine armatures to avoid recomputations. * A python function to get the framerate estimate in game. * An option take object color into account in materials. * An option to restrict shadow casters to a lamp's layers. * Increase from 10 to 18 texture slots for materials, lamps, word. An extra texture slot shows up once the last slot is used. * Memory limit for undo, not enabled by default yet because it needs the .B.blend to be changed. * Multiple undo for image painting. * An offset for dupligroups, so not all objects in a group have to be at the origin.
2008-07-03Sun,Sky and atmosphere for lamps(sun type), PATCH#8063 ↵Hamed Zaghaghi
http://projects.blender.org/tracker/?func=detail&atid=127&aid=8063&group_id=9
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!
2007-09-16* Extra lamp falloff options, including custom curve!Matt Ebb
This adds some new lamp attenuation options to the Lamp panel, replacing the old 'Quad' button. Yes, the panel layout is still nasty here, but I've ignored it for now to address properly in the panels cleanup work. * Constant http://mke3.net/blender/devel/rendering/falloff-constant.jpg Lamp doesn't decay with distance * Inverse Linear http://mke3.net/blender/devel/rendering/falloff-invlinear.jpg Default, and same as in older Blender without 'Quad' on. Decays linearly, with 'Dist' value as the lamp's half-energy-distance * Inverse Square http://mke3.net/blender/devel/rendering/falloff-invsquare.jpg A sharper, more realistic decay, good for most electric lights (i.e. not sunlight). This is similar to the old Quad option with slight changes. * Lin/Quad weighted Exactly the same as in older Blenders with the old 'Quad' button enabled. When this setting is chosen, two sliders are shown, 'Linear' and 'Quad' (previously Quad1 and Quad2), which controls the 'linearness' or 'quadraticness' of the falloff curve. Lamps in old files with the 'Quad' button on will be initialised to this setting. But much better for precise control over the lamp falloff now is: * Custom Curve This shows an extra 'Falloff Curve' panel, where you can use the standard Blender curve UI control to precisely control how the light falls off. The Y axis is intensity, and the X axis is distance, stretched over the length of the 'Dist' value. Some example curves and renders: http://mke3.net/blender/devel/rendering/falloff-curve1-curve.png http://mke3.net/blender/devel/rendering/falloff-curve1.jpg http://mke3.net/blender/devel/rendering/falloff-curve2-curve.png http://mke3.net/blender/devel/rendering/falloff-curve2.jpg http://mke3.net/blender/devel/rendering/falloff-curve3-curve.png http://mke3.net/blender/devel/rendering/falloff-curve3.jpg (whee)
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!
2007-07-19added commends to some DNA_*.h files - as well as some TODO's for removal.Campbell Barton
header_view3d.c was doign an implicit declaration also.
2006-10-15Another shadowbuffer goodie: the "Halfway trick"Ton Roosendaal
http://www.blender3d.org/cms/Shadow_buffer__Halfway.786.0.html Simply said: by using the average of the nearest and 2nd nearest Z value in Shadowbuffers you can reduce bias errors very well. For backwards compatibility it is a new buffer type though.
2006-10-14New shadow feature: Irregular Shadow BuffersTon Roosendaal
Full log: http://www.blender3d.org/cms/Irregular_Shadow_Buffe.785.0.html In short: this is a shadow buffer approach that always results in crispy shadows, independent of lamp buffer size or zoom level. This shadow buffer system also supports transparent shadow. This is part of work on refreshing Shadow Buffers in Blender. You now can choose of two types (Classical, Irregular). More types will follow. Also quality issues for Classical shadow buffers are going to be reviewed, especially to solve the lousy Biasing. For the CVS log record; it is based on articles: Gregory Johnson et al, University of Texas, Austin. (Regular grid method). Timo Aila and Samuli Laine, Helsinki University of Technology. (BSP method).
2006-08-31Render feature request:Ton Roosendaal
Auto-clip Lamp Buffer Setting a good range for clipping start/end for Lamp buffers is important for good quality shadow (depth details). That can be quite a hassle, when many lamps or animated objects are involved. This option allows to have the clipping range calculated based on the visible vertices in the spotbundle. For clip start and clip end it can be set individually. Typically the clip start defines quality most. The shadow buffer 'bias' value is corrected for this automatic clipping too, to ensure that ranges that differ give same biasing appearance. (If this wasn't done, you would see lighted areas become darker or lighter, or even artefacts, when the range changes suddenly NOTE: since it only checks for vertices, be aware that large planes can give errors. Implementation note: zbuffer values are non-linear (1/z) because that allows linear interpolation while filling scanlines. That's the main reason for the precision to be highest close to the eye (or lamp). It's even a useful feature, since you want details to be precise when they're closeby. Since these values are also in the -1 to 1 range, using floats here wouldn't solve problems a lot. Maybe trying a 64 bits Z once might be an interesting coding job.
2006-02-12Work on shadowbuffer system... right now only new filtertypes forTon Roosendaal
sampling have been activated for UI. Check the pictures here: http://www.blender.org/bf/filters/index2.html I also did do tests with anti-aliased shadowbuffers: http://www.blender.org/bf/filters/index3.html But this needs more thinking over still...
2005-05-27Added some backward compatibility with old yafray blendershader. Because of ↵Alfredo de Greef
missing parameters the material preset menu won't be as useful. Both glass presets will look the same because there is no 'filter' parameter in the old yafray for instance. So using the new Blender version with an old yafray version should work a bit better, though the other way around, using the new yafray with an old blender version, will generally not work as well. I added a few extra things. In 'yafray' panel re-arranged some buttons, and added a new button 'Clamp RGB'. This button will be enabled by default and helps to improve AA on high contrast edges in the image. When using bokeh however, it is best to switch this off, otherwise lens shaped highlights will be quite a bit less visible. Changed the 'extinction' parameter name to the probably more correct term 'absorption', though mathematically it works out the same. Also changed the behaviour of this color, it no longer specifies a color that will be removed as I wrote in the previous commit, but instead the actual color at one (blender) unit of distance. The 'Ds' (distance scale) button below the color sliders controls the scaling of this unit distance. What this means is that if you take the standard blender cube, which covers two units of distance by default, setting the distance scale button to 2.0 will make sure that the color you specified is exactly that color at that distance (provided the base color itself is white of course, or 'filter' is 0, otherwise it will be filtered by the base color too). Beyond this distance the color will get darker. The glow option for point/soft/sphere lights has a new parameter 'GloOfs', or glow offset. Setting this to a higher value then 0 will soften the central peak of the glow. Another unreported bug fix: For xml export, when yafray failed to render the xml file for some unknown reason, or because of other problems, the export code would still load the previously rendered image, this causes problems however if the image resolution is not the same as the current Blender buffer, and so could cause memory corruption or crashes. This is now taken into account. World image backgrounds now use the blender mapping settings as well, but only the 'AngMap', 'Sphere' and 'Tube' settings. But in yafray those last two, unlike Blender, cover the whole view, not just the upper half, so is not really fully compatible with yafray. So now you have to set one of these buttons too when loading a hdr lightprobe image. btw, something I forgot to mention in previous commits is that the exposure control using the texture brightness slider is no longer restricted to integer values. It is now a floating point value, so you're not restricted to the 0 1 and 2 slider positions anymore, anything in between will work too. And finally, display updating is now more like Blender, using the mouse cursor as frame counter for animation, etc.
2005-05-23Second and final commit for this version of the yafray export code ↵Alfredo de Greef
(probably, you never know of course...) Not quite complete, but due to lack of time as good as it will get for now. From the previous commit, forgot to report that basic fog is supported as well. Though because I had not much time to complete the code, it is sort of unfinished, and you will have to tweak parameters specifically for yafray again. It uses only the world horizon color, and only uses the Blender mist distance setting. Textures now support checker clip mode. Fixed possibly all 'duplilist non-empty' errors, though it could hide the real cause of the error. AA is no longer enabled automatically for certain GI quality settings, I thought it best to leave it to the user to decide. SkyDome GI mode now supports cache as well. There is a new option in the GI quality menu 'Use Blender AO settings', which will as it says use the most important AO settings for the skydome parameters. The only AO parameters used are 'Samples', 'Dist' and the random sampling switch, which unlike in Blender you might want to use more often, since the QMC sampling used in yafray can result in visible patterns or a dithering type look. 'Random' is not completely random in yafray however, it is actually jittered (stratified) sampling. Using an occlusion cache, doesn't necessarily mean that you will always get much shorter render times. As with 'full' GI and cache, one problem is bumpmaps, when using bump (or normal) maps, the sampling will be much more dense, using lots more rendertime. As a temporary fix there is a button 'NoBump', but this also has the side effect that in areas of total indirect light (or when used with SkyDome cache) no bumpmapping will be visible. It is therefor best used with some direct light as well. For SkyDome with cache, and strong bumpmapping it might actually not make much difference, since for low distance values you can usually get away with low sample values as well. The entire material panel is now replaced by another panel to show only the parameters important to yafray and add some new ones as well. Since lots of users (especially yafray beginners) have had problems getting certain material aspects right, there is now a material preset menu available to hopefully solve some of the most common "How do I do this? It doesn't work!" questions seen in various forums. Choosing an option from this menu will set the required parameters to default values for yafray, and you can work your way from there to tweak it something you want. Most buttons are copies of the same Blender parameters, with some variations. Just like Blender 'Ray Mirror' enables reflection, 'Ray Transp' enables refraction. You can use 'ZTransp' for materials that have texture maps with alpha channels. Again, same as Blender 'rayMir' sets the amount of reflection. Next button 'frsOfs' however controls fresnel offset, meaning that when this is set to 1, you will get no fresnel effect and when set to 5, reflection is totally determined by fresnel, which is important for realistic glass/metals/etc. IOR is self-explanatory (...), same as Blender. When you have 'Ray Transp' enabled, the blender 'filter' button will appear next to the IOR button. This has the same effect as in Blender. Below that there are some new parameters, 'Ext.Color' sets the extinction color for transparent materials. Usually, in real transparent materials, light loses some of it's energy the further it has to travel through the object. This effect can be simulated with this parameter. Thing to look out for is that it specifies the color which will be REMOVED after traveling through the object. What this means is that say you have a clear white glass sphere, and set the extinction color to a strong blue, the result will be a very yellow object when rendered. Next to the color sliders, there is another set of three parameters, with which you can enable color dispersion for transparent objects. 'Pwr' sets the amount of dispersion, the higher, the more dispersion (the more colorful the result). (For real world materials, this number can be found or derived from data in various glass catalogues) The 'Samples' button below that sets the number of samples used, minimum values are around 7-10, and for very strong dispersion you might need a lot more. As usual, this also means an increase in render time of course, but to simulate realistic materials, you shouldn't really need more than 25 samples. In addition to that, when using low sample numbers, but to still get a good spread of colors, you can enable the jitter button, but this will also add noise. Point/soft(point with shadowbuffer) or sphere lights (light with radius), have a new option to add a simple glow effect, so that lights can be made visible. NOTE: just like spotlight halo's, glow is not visible against the background, there must be another object behind it. Simplest solution is to use a large black shadeless plane behind your scene. The glow intensity can be set with the 'GlowInt' parameter (use very low values around 0.01 even lower), and you can choose from two different types with the 'GlowType' button (which don't look much different, but type 1 is probably better, type 0 faster). And that's it, with apologies for the still missing features and full support in general, but this will have to do for now.
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-07-29Major update, all implemented a bit in a hurry, and probably will need ↵Alfredo de Greef
bugfixes at some point. Extended the range of the depth and cdepth parameters as reqested by leope. Bumpmapping should now be a bit more similar to the Blender render. Added support for all remaining lightsources in yafray, tried to make use of as much of the existing Blender parameters as possible. Blender Lamp: added switch to enable rendering with shadowbuffer ('softlight' in yafray). All other parameters are similar to the Blender settings, for yafray both the bias parameter and the shadowbuffer size can be lower than equivalent Blender settings, since the yafray buffer is floating point. Remember that 6 shadowmaps are created in this case, so can use quite a bit of memory with large buffer settings. When 'ray shadow' is enabled for this lamp type, it is possible to set a light radius to create a spherical arealight source ('spherelight' in yafray), when this is 0, it is exported as a pointlight instead. Blender Spot: as in Blender now supports 'halo' rendering. Halo spots always use shadowbuffers, so when enabled the buttons for shadowmap settings will appear. The 'ray shadow' button can still be used to disable shadows cast onto other objects, independent of halo shadows. One thing to remember, halo's don't work with empty backgrounds, something must be behind the spotlight for it to be visible. And finally, the photonlight: probably the most confusing (as more things related to yafray), the photonlight is not a real lightsource, it is only used as a source to shoot photons from. Since indirect lighting is already supported (and looks better as well) only caustics mode is supported. So to be able to use this properly other lightsources must be used with it. For the photonlighting to be 'correct' similar lightsettings as for the 'source' light are needed. Probably the best way to do this, when you are happy with the lighting setup you have, and want to add caustics, copy the light you want to enable for caustics (shift-D) and leave everything as is, then change the mode to 'Photon'. To not waiste any photons, the photonlight behaves similar to the spotlight, you can set the width of the beam with the 'angle' parameter. Make sure that any object that needs to cast caustics is within that beam, make the beam width as small as possible to tightly fit the object. The following other parameters can be set: -photons: the number of photons to shoot. -search: the number of photons to search when rendering, the higher, the blurrier the caustics. -depth: the amount of photon bounces allowed, since the primary use is for caustics, you probably best set this to the same level as the 'ray depth' parameter. -Blur: this controls the amount of caustics blur (in addition to the search parameter), very low values will cause very sharp caustics, which when used with a low photonnumber, probably lead to only some noisy specks being rendered. -Use QMC: Use quasi monte carlo sampling, can lead to cleaner results, but also can sometimes cause patterns. Since the photonlight has no meaning to Blender, when using photonlights and switching back to the internal render, the light doesn't do anything, and no type button will be selected. The lightsource can still be selected, but unless switching to yafray, no parameters can set. Apologies to Anexus, I had no time to really do something with your code, I'll still look at it later, to see if I can improve anything in my implementation.
2003-12-29Area lights and more...Ton Roosendaal
- New lamp type added "Area". This uses the radiosity formula (Stoke) to calculate the amount of energy which is received from a plane. Result is very nice local light, which nicely spreads out. - Area lamps have a 'gamma' option to control the light spread - Area lamp builtin sizes: square, rect, cube & box. Only first 2 are implemented. Set a type, and define area size - Button area size won't affect the amount of energy. But scaling the lamp in 3d window will do. This is to cover the case when you scale an entire scene, the light then will remain identical If you just want to change area lamp size, use buttons when you dont want to make the scene too bright or too dark - Since area lights realistically are sensitive for distance (quadratic), the effect it has is quickly too much, or too less. For this the "Dist" value in Lamp can be used. Set it at Dist=10 to have reasonable light on distance 10 Blender units (assumed you didnt scale lamp object). - I tried square sized specularity, but this looked totally weird. Not committed - Plan is to extend area light with 3d dimensions, boxes and cubes. - Note that area light is one-sided, towards negative Z. I need to design a nice drawing method for it. Area Shadow - Since there are a lot of variables associated with soft shadow, they now only are available for Area lights. Allowing spot & normal lamp to have soft shadow is possible though, but will require a reorganisation of the Lamp buttons. Is a point of research & feedback still. - Apart from area size, you now can individually set amount of samples in X and Y direction (for area lamp type 'Rect'). For box type area lamp, this will become 3 dimensions - Area shadows have four options: "Clip circle" : only uses a circular shape of samples, gives smoother results "Dither" : use a 2x2 dither mask "Jitter" : applys a pseudo-random offset to samples "Umbra" : extra emphasis on area that's fully in shadow. Raytrace speedup - improved filling in faces in Octree. Large faces occupied too many nodes - added a coherence check; rays fired sequentially that begin and end in same octree nodes, and that don't intersect, are quickly rejected - rendering shadow scenes benefits from this 20-40%. My statue test monkey file now renders in 19 seconds (was 30). Plus: - adjusted specular max to 511, and made sure Blinn spec has again this incredible small spec size - for UI rounded theme: the color "button" displayed RGB color too dark - fixed countall() function, to also include Subsurf totals - removed setting the 'near' clipping for pressing dot-key numpad - when you press the buttons-window icon for 'Shading Context' the context automaticilly switches as with F5 hotkey Please be warned that this is not a release... settings in files might not work as it did, nor guaranteed to work when we do a release. :)
2003-12-10- Xmas special: shiny mirroring bells & whistles!Ton Roosendaal
This is a revision of the old NeoGeo raytracer, dusted off, improved quite a lot, and nicely integrated in the rest of rendering pipeline. Enable it with F10-"Ray", and set either a 'ray-shadow' lamp or give the Material a "RayMirror" value. It has been added for 2 reasons: - get feedback on validity... I need artists to play around with it if it's actually useful. It still *is* raytracing, meaning complex scenes will easily become slow. - for educational purposes. All raytracing happens in ray.c, which can be quite easily adjusted for other effects. When too many disasters pop up with this, I'll make it a compile #ifdef. But so far, it seems to do a decent job. Demo files: http://www.blender.org/docs/ray_test.tgz An article (tech) about how it works, and about the new octree invention will be posted soon. :) Note: it doesn't work with unified render yet.
2003-07-20- added the 'no diffuse' and 'no specularity' options for Lamps, as wereTon Roosendaal
in Tuhopuu - added the Tuhopuu feature which displays material-buttons and lamp- buttons integrated. saves button presses that way!
2003-05-20Slightly Modified version of Kester Maddock's Lamps patch to up theKent Mein
max from 256 to 32766. I removed the duplicate define and updated the files that needed it. Kent
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