Difference between revisions of "Documentation:ToDo ChangeListReview"

From POV-Wiki
Jump to navigation Jump to search
m (updates)
m (updates)
 
(44 intermediate revisions by the same user not shown)
Line 1: Line 1:
====Change Log Extracts====
+
==Change Log Extracts==
These are [http://www.povray.org/beta/changes.txt change-log] extracts that might be useful with helping to update the documentation. Items still to be done are in reverse chronological order, while items that have been [[Documentation:ToDo\CLReview#Completed Items|completed]] are at the bottom of this page.
+
The [http://www.povray.org/beta/changes.txt change-log] has been reviewed and these items below have been added into the documentation.  --[[User:Jholsenback|jholsenback]] 19:35, 27 October 2010 (UTC)
=====Beta 37=====
+
===Whats New===
======Photon changes======
+
* A platform independent change summary has been completed
* Refer FS#93 (Photons are unnaturally amplified by pass_through objects)
+
:* See it [[Doc:Tutorial Section 1#Changes and New Features Summary|here]]: --[[User:Jholsenback|jholsenback]] 16:21, 23 August 2010 (UTC)  
<p> As the error is also present in POV-Ray 3.6, behavior has necessarily changed with this fix; pass_through objects will now affect the color of photons on their way to their target, according to pigment filter/transmit, interior fade, and media (which implies that opaque objects will block photons even when declared pass_through); it needs to be seen whether this new behavior will be accepted by the users, or whether some additional mechanism will have to be implemented to choose between old and new behavior for compatibility with legacy scenes. At present, behavior can only be changed at compile time with the preprocessor defines PT_FILTER_BEFORE_TARGET and PT_AMPLIFY_BUG in photons.cpp.</p>
+
* The Windows change summary has been completed
=====Beta 35=====
+
:* See it [[Doc:Windows Section 1#What's new in POV-Ray for Windows|here]]: --[[User:Jholsenback|jholsenback]] 18:37, 22 October 2010 (UTC)
* Added "out-of-the-box" transparency support for GIF files.
+
* Setup (WIP) a Mac OS change summary
* Added support for PNG sRGB chunks.
+
:* See it [[Doc:Mac OS Section 1#What's new in POV-Ray for Mac OS|here]]: --[[User:Jholsenback|jholsenback]] 19:35, 27 October 2010 (UTC)
=====Beta 34=====
+
* Setup (WIP) a Unix change summary
* Windows console version now sends stream output to stderr by default.
+
:* See it [[Doc:Unix Section 2#What's new in POV-Ray for Unix|here]]: --[[User:Jholsenback|jholsenback]] 19:35, 27 October 2010 (UTC)
=====Beta 32=====
+
===Radiosity===
* Added ARRAYS_WriteDF3 macro to arrays.inc for writing an array to a df3 file.
+
* Speed up radiosity pretrace option
* Added binary #write capability
+
:* See it [[Doc:Reference_Section_1.3#Radiosity_Vain_Pretrace|here]]: --[[User:Jholsenback|jholsenback]] 18:38, 23 May 2010 (UTC)
<p>It is now possible to write 8, 16 and 32-bit words to an external file. These words may be arranged in either little or big-endian fashion.</p>
+
* Revival of Radiosity Load/Save
<p>Placing one of the following keywords in the argument list of a <code>#write</code> statement causes the values up to the next comma to be written in binary format, using 2's complement integer representation, rounded to the nearest integer in the representable range:</p>
+
:* See it [[Doc:Reference_Section_1.3#Radiosity_Load_and_Save|here]]: --[[User:Jholsenback|jholsenback]] 18:39, 23 May 2010 (UTC)
<pre>
+
* New radiosity &quot;high reproducibility&quot; mode
  uint8              - unsigned byte (0..255)
+
:* See it [[Doc:Reference_Section_1.3#Radiosity_High_Reproducibility|here]]: --[[User:Jholsenback|jholsenback]] 18:39, 23 May 2010 (UTC)
  sint8              - signed byte (-128..127)
+
* Radiosity <code>maximum_reuse</code> parameter
  uint16be, uint16le - unsigned 16-bit word (0..65535)
+
:* See it [[Doc:Reference_Section_3.2#maximum_reuse|here]]: --[[User:Jholsenback|jholsenback]] 15:12, 31 May 2010 (UTC)
  sint16be, sint16le - signed 16-bit word (-32768..32767)
+
* Added <code>no_radiosity</code> keyword
  sint32be, sint32le - signed 32-bit word (-2^31..2^31-1)
+
:* See it [[Doc:Reference_Section_3.2#No Radiosity|here]]: --[[User:Jholsenback|jholsenback]] 15:14, 31 May 2010 (UTC)
</pre>
+
* Implemented adaptive radiosity pretrace.
<p>As of now, unsigned 32-bit words are not supported.</p>
+
:* See it [[Doc:Reference_Section_3.2#nearest_count|here]]: --[[User:Jholsenback|jholsenback]] 15:25, 6 August 2010 (UTC)
<p>Keywords ending in &quot;be&quot; will cause the values to be written most significant byte first (&quot;big endian&quot;, aka network byte order) while those ending in &quot;le&quot; will instead write the least significant byte first (&quot;little endian&quot;, Intel format).</p>
+
* Parser now checks for plausible relation between radiosity <code>minimum_reuse</code> and <code>maximum_reuse</code>:
<p class="Note"><strong>Note:</strong> See the sample macro <code>ARRAYS_WriteDF3</code> in arrays.inc  to see how this feature may be used.</p>
+
:* See it [[Doc:Reference_Section_3.2#maximum_reuse|here]]: --[[User:Jholsenback|jholsenback]] 15:25, 6 August 2010 (UTC)
=====Beta 26=====
+
 
* Re-enable Include_Header (see <[email protected]>)
+
===New Features===
=====Beta 25=====
+
* Diffuse backside illumination
* Linux: add auto setting of thread count and rework <code>--benchmark</code>.
+
:* See it [[Doc:Reference_Section_5.1#Diffuse|here]]:--[[User:Jholsenback|jholsenback]] 13:39, 6 April 2010 (UTC)
<p>The number of threads is now set as the number of detected CPUs, or 4 otherwise. The built-in benchmark now accepts <code>+L<path></code> command-line options and does no longer read any INI file but the provided one.</p>
+
* Added a new list pattern type: <code>cubic</code>
=====Beta 24=====
+
:* See it [[Doc:Reference_Section_5.3#Cubic|here]]: --[[User:Jholsenback|jholsenback]] 19:11, 15 April 2010 (UTC)
* Added multiple-thread support to photon shooting code.
+
* Added a new warp type: <code>cubic</code>
<p>To take advantage of this at the moment, your scene will need multiple light sources.</p>
+
:* See it [[Doc:Reference_Section_5.6#Mapping_using_warps|here]]: --[[User:Jholsenback|jholsenback]] 19:11, 15 April 2010 (UTC)
* Added experimental support for full area light diffuse and specular illumination.
+
*AOI Pattern
<p>By default this is off and thus area lights will work as previously, but the new feature can be turned on by specifying the new <code>area_illumination</code> keyword (followed by an optional on/off keyword) in the light source definition. The settings which determine the quality of the lighting are the Size_1 and Size_2 parameters of the area light (similarly to how they determine the quality of the shadows).</p>
+
:* See it [[Doc:Reference_Section_5.3#Aoi|here]]: --[[User:Jholsenback|jholsenback]] 01:50, 18 May 2010 (UTC)
* Added experimental support for reading the pixel resolution of an image map.
+
* Slope Pattern extension
<p>This is done by giving an image map pigment identifier to <code>max_extent()</code>, which will then return the resolution of the image map as the x and y values of the returned vector.</p>
+
:* See it  [[Doc:Reference_Section_5.5#Slope|here]]: --[[User:Jholsenback|jholsenback]] 11:40, 19 May 2010 (UTC)
=====Beta 22=====
+
* Subsurface scattering
* Added Control-A support in windows version commandline input box (select all).
+
:* See it [[Doc:Reference_Section_5.1#Subsurface_Light_Transport|here]]: --[[User:Jholsenback|jholsenback]] 17:55, 27 May 2010 (UTC)
* Changed render window keypress code
+
* Added support for full area light diffuse and specular illumination
<p>Changed windows version render window keypress code to hand focus to main window for any key, not just escape.</p>
+
:* See it [[Doc:Reference_Section_4.4#Area_Lights|here]]: --[[User:Jholsenback|jholsenback]] 14:36, 14 June 2010 (UTC)
=====Beta 20=====
+
* Added <code>emission</code> parameter to the finish block
* Added 'alternate render file' feature to povwin IDE. See comments below.
+
:* See it [[Doc:Reference_Section_5.1#Emission|here]]: --[[User:Jholsenback|jholsenback]] 13:16, 13 July 2010 (UTC)
* Added extensions .MCR and .MAC
+
* Added RTR (real-time raytracing), clockless animation, and video capture support
<p>To the list of files povwin considers include files (i.e. which are filtered as such in the various file dialogs and assigned the POV file type for the editor syntax highlighting).</p>
+
:* See it [[Doc:Reference_Section_1#Real-Time_Raytracing|here]]: --[[User:Jholsenback|jholsenback]] 18:44, 14 July 2010 (UTC)
* Added .INI file type to povwin editor syntax highlighting.
+
* Added <code>atand</code> function to &quot;math.inc&quot;.
* Added window menu to povwin IDE. Entries are MRU-sorted.
+
:* See it [[Doc:Reference_Section_7.2#Float_functions_and_macros|here]]: --[[User:Jholsenback|jholsenback]] 15:25, 6 August 2010 (UTC)
======Windows Editor Changes======
+
* You now have the ability to specify the render block size
<p>This beta introduces two notable changes to the POVWIN IDE.</p>
+
:* See it [[Doc:Reference_Section_1.3#Render_Block_Size|here]]: --[[User:Jholsenback|jholsenback]] 15:25, 6 August 2010 (UTC)
<p>Firstly, it now has a Window menu, which is located where the GUIEXT menu used to be (the latter has moved to within the Options menu).</p>
 
<p>While technically a Window menu is not necessary, as all open files are visible in tabs, the addition of this menu provides two advantages:</p>
 
<ol>
 
<li>We can provide the option of showing all tabs on a single line, with a scroller to view non-visible ones. This has not yet been added but will be at a later point.</li>
 
<li><p>The MRU arrangement of the window menu makes it trivial to toggle between files without taking your eyes off the text or using the mouse. The most recently view window (i.e. the current one) will always be entry 1 in the list. The second most recently viewed (i.e. the last window viewed before switching to the current one) will always be entry 2 in the list, and so forth. Given that entries 1 through 10 in the list are given the menu mnemonics 1 through 0 respectively, it is therefore clear that to toggle between the current and previous files all you need to do is hit Alt-W then 2. To go to the third oldest, Alt-W then 3, and so forth.</p>
 
<p>Currently, the MRU list is not saved on exit. This will be added. We may also add keyboard accelerators (e.g. ALT-2, ALT-3 etc) as a shortcut for Alt-W 2, etc.</p></li>
 
</ol>
 
<p>Secondly, there is now an 'alternate render file' feature. This is intended to make things easier when editing macro or include files. While it is possible to use SDL to detect whether a macro/include file is being rendered directly and to pull in supporting code, that approach is not very flexible.</p>
 
<p>The alternate render file feature allows a render to be started on an include file, and instead of the include file being rendered directly (as would have happened previously), the source file that most recently included that file in a render will be rendered instead.</p>
 
<p class="Note"><strong>Note:</strong> by 'source file', we mean either a .POV or .INI file.</p>
 
<p>For this feature to work, you need to have rendered a file which includes the target file during the current editing session (the association between include files and source files is not persisted when POVWIN exits). Additionally you need to have requested to render a source file which does not have the .POV or .INI extension. When you request the render, a message box will appear asking you what to do. You can choose to render the alternate file this time only, to render the alternate file each time you render this one, or to render this one each time (i.e. disable the alternate file option).</p>
 
<p>In all cases, the choice you give only persists for the current editing session; it is not restored when you re-launch POVWIN. this is by design.</p>
 
* Added preliminary Linux support for these two features
 
:* CPU timer; might return incorrect results depending on the platform.
 
:* signal catching (e.g. when aborting a render by hitting Ctrl+C).
 
* Added these POVWIN features
 
:* 'file modified' indicator to filename shown in POVWIN main window caption.
 
:* notification for when auto-reload results in files being auto-saved.
 
* Added support for <code>--benchmark</code> on unix
 
<p>works together with <code>+wt</code> and print built-in features with <code>--version</code></p>
 
=====Beta 17=====
 
* Unix default file gamma changed from from 1.0 to 2.2.
 
* Added RTR (real-time raytracing), clockless animation, and video capture support (windows only).
 
======Real-Time Raytracing======
 
<p>POV-Ray now has some highly experimental support for a real-time raytracing loop. This is basically a mode where a single pre-parsed scene is rendered multiple times with no re-parsing inbetween frames. The camera is moved according to camera definitions provided in the main scene file. Additionally, on windows, a live video stream (e.g. from a webcam) may be mapped into the image in exactly the same way that a normal image map may be.</p>
 
<p> Please refer to the full [http://www.povray.org/beta/rtr/ documentation] on these features.</p>
 
=====Beta 16=====
 
* Added support for 'pause when done' in linux build.
 
* Changed alpha handling when version is set to 3.7 (see below).
 
* Changed WorkThreads INI option to <code>Work_Threads</code> for consistency.
 
* Changed bounding method command-line option from <code>+b2</code> to <code>+bm2</code> for the same reason.
 
* Added ability to close edit tab in windows version:
 
<p>by middle-clicking on it. (NB this means on the tab itself, not the contents of the tab). Also, Ctrl-W now defaults to closing the current editor file.</p>
 
* Added <code>/EDITDLLPATH</code> command-line parameter:
 
<p>which overrides the default edit DLL locations for the windows version.</p>
 
* Added SEH and minidump generation to windows code:
 
<p>After an unhandled exception POVWIN will now offer the option of creating a minidump (brief or full) for submission to the team to assist in tracking down crashes.</p>
 
======Photon Changes======
 
<p>We are re-working some areas of the photon support, and as such photons will not work as well as in the previous beta.</p>
 
======Alpha Changes======
 
<p>Some changes have been made to the way alpha is handled when <code>+UA</code> is activated.</p>
 
<p>Firstly, in previous versions, specifying a background with the <code>background</code> keyword would by default supply a background with transmit set to 1.0 (i.e. fully transparent provided that <code>+ua</code> is being used). This is no longer the case.</p>
 
<p>While the default background is transparent, any background specified in a scene file (unless 3.6 or earlier compatibility is being used) will now be opaque unless transmit is explicitly given. (In other words, use rgbft<> rather than rgb<> in the background statement if you want the old behaviour).</p>
 
<p>Secondly, the way that objects are blended with the background has changed.</p>
 
<p>Previously the color of the background was not taken into account when calculating effects of transmission through translucent objects when <code>+ua</code> is in effect (i.e. where the background could otherwise have been seen through the object). Now, however, the background color is taken into account, even if it is not otherwise visible. (In other words, blending is performed in the same way regardless of the presence of background transparency).</p>
 
<p class="Note"><strong>Note:</strong> that this change is not affected by the <code>#version</code> directive, so it may change the appearance of scenes written for version 3.6 and earlier. We will monitor feedback on this from beta testers to evaluate the impact of this.</p>
 
=====Beta 15=====
 
* Added ability to specify thread count from Windows version render menu (unsaved setting)
 
=====Beta 14=====
 
* Added <code>radiosity</code> on/off flag for objects
 
* Added <code>WorkThreads</code> INI option and <code>WT</code> command-line option
 
* Added <code>File_Gamma</code> INI option
 
* Added gamma correction to file output
 
=====Beta 12=====
 
======Render Window======
 
<p>Due to issues with CPU usage, the new render window is now by default off. To work well this feature requires that hardware-assisted alpha blending is available on the target system, and as of the time of writing this is not common enough to justify turning it on by default.</p>
 
<p class="Note"><strong>Note:</strong> it will remain turned on if you already had it on (e.g. from a previous beta).</p>
 
======BSP Bounding======
 
<p>BSP (Binary Space Partitioning) tree bounding is now available. To turn it on use <code>+B2</code> or <code>Bounding_Method=2</code> in the INI file or on the command-line. When it is in use you will get some additional statistics in the output pane regarding the built tree.</p>
 
<p>Please keep in mind that this implementation of BSP is highly beta and will not speed up scenes in many cases (and in fact may slow some down). In particular the building of the tree can take a long time and lots of memory in severe cases. Using the BSP tree rather than our traditional BVH system (default or <code>+B1</code>) is a choice best made for specific scenes that will benefit from the way the BSP operates, and in particular if the render is long enough to offset the build time. (The BSP tree build time will be constant for a given scene and set of BSP parameters, regardless of the output resolution. A 30-second BSP build may not be a good choice on a 60-second test render but may be acceptable for a 60-minute final render if the use of BSP adds a few PPS).</p>
 
<p>On some scenes the difference however will be dramatic, with short build times and radically increased render speed.</p>
 
<p>We have provided some BSP-related options via the INI file and encourage you to experiment with them to see if you can get better results than the default values built in to POV-Ray. We will listen to feedback from this and if necessary tweak the defaults. We do not guarantee that all of the following INI file settings will remain in the final release of 3.7:</p>
 
<pre>
 
  BSP_MaxDepth=128
 
  BSP_BaseAccessCost=1.0
 
  BSP_ChildAccessCost=1.5
 
  BSP_IsectCost=150.0
 
  BSP_MissChance=0.2
 
</pre>
 
<p>The values shown above are the default. You can also get the defaults if you use a value of 0 for any of the above (or of course just by not specifying the option at all). For an explanation of what the values mean you may refer to Ray Tracing News v17n1 (look for Eric Haines'  article on BSP), or follow the discussion on BSP that is sure to crop up in the beta-test group.</p>
 
======Example BSP scene======
 
<p>There is a scene included with this release called 'Tango.pov' which is a good example of a scene that benefits from the BSP bounding.</p>
 
<p>Tango.pov rendered at 800x600, no AA -</p>
 
<ul>
 
<li>With +B1 : 70 seconds total</li>
 
<li>With +B2 : 48 seconds total</li>
 
</ul>
 
=====Beta 11=====
 
======Render Window======
 
<p>The new render window mode is only available on Windows 2000 or later. The presence of this code may case the beta to be unable to load on Windows 9x systems; if this occurs it will be fixed in the next beta.</p>
 
<p class="Note"><strong>Note:</strong> that we have not tested this new code on a Windows 2000 system, so we can't comment on how well it will work on those systems.</p>
 
<p>To activate the new render window, open the 'Render Window' sub-menu in the 'Options' menu, and select the 'Use New-style Render Window' entry.</p>
 
<p>The new render window is designed to help users get around the issue of the render window getting in the way when doing edit/render/fix cycles. It supports a 'transparency' mode that is in effect two things: both optical transparency (or more specifically translucency), and input transparency (more specifically, the Windows WS_EX_TRANSPARENT style).</p>
 
<p>'Input transparency' means that the window is transparent to input - so if you move your mouse over it or attempt to click on it, the mouse messages are in fact sent to whatever is underneath the window. In effect therefore it is as if the window were not there - even if you can still see it.</p>
 
<p>The effect of this is that, coupled with translucency, you can both see what is under the window (e.g. the POV-Ray editor), and also work with it (typing or selecting with the mouse, etc).</p>
 
<p>'Input Transparency' is enabled whenever you set the translucency of the render window to 25% or more (see below). At settings less than this, the render window will behave more or less as normal (though without some of the features of the classic render window, such as the ability to be de-coupled from the main window such that it does not get hidden when the main window is minimized).</p>
 
<p>To set the translucency of the render window, either rotate your mouse wheel when the render window has focus (this is the preferred method), or alternatively right-click on the window's title bar and choose a setting from the context menu that is provided.</p>
 
<p>When the render window has input focus, translucency is removed and it becomes opaque. It will switch back once another window gets focus, or if you adjust the translucency using one of the above methods.</p>
 
<p>If you want to work with input transparency, it is important that you understand that this means you can't work with the render window in the manner you are accustomed to, since of course the window will pass input to the application below it. To allow for interaction with the window in this circumstance, we have added a feature whereby hovering the mouse over the render window's caption for a short time, or clicking on the title bar, will activate the window, make it opaque, and allow input to be processed normally.</p>
 
<p>Of course the ability to click on the caption means that it's not completely input transparent, and we might disable this feature later if the hover feature works out well.</p>
 
<p>You will know if your mouse is over the appropriate area of the window since the cursor will turn to a hourglass shape during the 'hover' time.</p>
 
<p>Provided that the window is left in input transparency mode, if you move your mouse out of the window for a short time, it will automatically snap back into its former translucent mode.</p>
 
<p>You can tell if the window is in input transparency mode by looking for a '[T]' at the start of the render window caption. If present, then it's going to pass input to the application underneath it. While adjusting the translucency with the mouse wheel, the caption will display the new translucency setting and, if appropriate, a comment that the window has switched to passing input. (Recall however that this doesn't kick in until you switch focus to another window).</p>
 
=====Beta 10=====
 
* Added gamma correction support.
 
<p>The way POV-Ray 3.7 handles the <code>assumed_gamma</code> keyword has changed. Previously the presence of this keyword in <code>global_settings</code> caused a 'possible error' warning and its presence was ignored. In addition no gamma correction was available in previous betas. Starting with beta.10 however, gamma correction is performed on both the display and file output, subject to the following criteria:</p>
 
<ul>
 
<li>If the scene language version is set to 3.7 (or not set at all), then gamma correction will default to ON, with the value used being set by the <code>display_gamma</code> INI file setting.
 
<p class="Note"><strong>Note:</strong> that in previous versions of POV-Ray gamma correction was OFF by default but otherwise this is the same.</p></li>
 
<li>If the scene language version is set to earlier than 3.7, then gamma will be OFF by default.</li>
 
<li>Notwithstanding the above, if the keyword <code>assumed_gamma</code> is present in the scene's global_settings, then POV will take one of the following actions:</li>
 
<ul>
 
<li>If <code>assumed_gamma 2.2</code> is present, gamma correction will be turned OFF and a warning issued. the same thing will happen if the value specified is not 2.2 but happens to be the default for the platform setting given to POV-Ray when it was compiled (e.g. Windows is 2.2).</li>
 
<li>If <code>assumed_gamma 1.0</code> is present, gamma correction will be turned ON (if it's not already on) and in any case a warning will be issued.</li>
 
<li>If a value other than the above is specified, it is ignored and a 'possible error' message is issued.</li>
 
</ul>
 
</ul>
 
<p>You will note from the above that therefore it is no longer possible to adjust the amount of gamma correction from a scene file. This is as designed since scene files should be as much as possible be platform independent, and the gamma of particular display hardware does not belong in the scene file. If you really need to specify <code>assumed_gamma</code> you can do so in an INI file or on the command-line; however in those cases you may as well just use <code>display_gamma</code> in its place.</p>
 
<p>When writing file formats that support gamma specification, the inverse of the assumed_gamma value will be embedded in the file headers, so that an appropriately equipped display program can 'undo' the gamma correction if it is so desired. This is as per previous versions of POV-Ray.</p>
 
=====Beta 9=====
 
* Moved <code>assumed_gamma</code> to command-line or INI-file only option (causes warning if found in scene).
 
======Render block size======
 
<p>You now have the ability to specify the render block size via either an INI-style option <code>Render_Block_Size=n</code> or on the command-line <code>+BSn</code>, where 'n' is an integer larger than or equal to 4. This represents the edge size of the square used to distribute work to the render threads, and thus the number of pixels in each block will be n squared.</p>
 
<p>The default value is 32. If you specify a value that is greater than the larger of the width or height of the image being rendered, it is clipped to that value.</p>
 
<p>Using render block sizes of less than eight can impact performance, particularly on large images that render quickly, as it significantly increases the amount of message traffic between the render backend and the graphical frontend (which communicate using a shared-memory queue).</p>
 
======Mosaic Preview======
 
<p>Mosaic preview now works again. The same issue as mentioned in the above section on render block size apply; we don't recommend using an end preview size of less than 8. Note that unless you specify an end preview size the code will default to using <code>+ep2</code>, so it is strongly recommended that you do provide it.</p>
 
<p class="BeAware">Be aware that when using mosaic preview, the count of rendered pixels shown in the status bar will be wrong. This will be fixed later.</p>
 
=====Beta 7=====
 
* New thread-safe random number generator added.
 
=====Beta 2=====
 
<p>The version directive and command-line setting no longer provide compatibility with most rendering bugs in versions prior to POV-Ray 3.5. However, compatibility with the scene language is provided for scenes as old as POV-Ray 1.0 just as in all previous versions of POV-Ray. Nevertheless, we strongly recommend you update scenes at least to POV-Ray 3.5 syntax if you plan to use them in future versions of POV-Ray.</p>
 
<p>This version uses multi-threaded rendering by default. The ability to render in more than one thread is primarily of use to those users who have SMP machines (i.e. more than one CPU). There have been reports of benefits for users of hyperthreading systems, particularly with higher thread counts (e.g. 16 threads).</p>
 
<p>You can render in only one thread by using the <code>/THREADS 1</code> switch in the Windows version. Note that parsing and photon building will only use one thread no matter how many are specified. However photon scenes will benefit from multiple threads once photon building has completed.</p>
 
  
====Completed Items====
+
===Gamma===
=====Beta 37=====
+
* Non-legacy scene default gamma handling for image input files
======Radiosity changes======
+
:* See it [[Doc:Reference_Section_3.1#Image_File_Gamma|here]]: --[[User:Jholsenback|jholsenback]] 09:49, 5 May 2010 (UTC)
<p>When a new sample has been gathered after sample lookup returned insufficient samples, sample lookup is no longer run again; instead, the new sample is interpolated with the results of the earlier lookup. The actual number of samples required to satisfy the reuse_count setting is now influenced by sample quality, with high-quality samples reducing the effective number of samples required (down to 1/4 of the parameter value in extreme cases) and low-quality samples increasing the number. Note that this may change the balance between speed and quality for some scenes.</p>
+
* <code>assumed_gamma</code> and <code>File_Gamma</code>
:* Radiosity <code>maximum_reuse</code> parameter now governs the maximum effective radius of a sample more directly.
+
:* See it [[Doc:Reference_Section_3.1#Global_Settings|here]], [[Doc:Reference_Section_3.1#Assumed_Gamma|here]], [[Doc:Reference_Section_3.1#Image_File_Gamma|here]] and [[Doc:Reference_Section_3.1#Scene_File_Gamma|here]]: --[[User:Jholsenback|jholsenback]] 13:32, 11 June 2010 (UTC)
:* Trimmed down radiosity sample memory footprint a bit.
+
* <code>gamma</code> keyword to specify gamma pre-corrected colours
:* Improved pretrace "pixel" coordinates computation.
+
:* See it [[Doc:Reference_Section_2.1#Specifying_Colors|here]]: --[[User:Jholsenback|jholsenback]] 14:51, 9 July 2010 (UTC)
  
::* radiosity done: --[[User:Jholsenback|jholsenback]] 15:12, 31 May 2010 (UTC)
+
=== SDL===
======New Features======
+
* Added ability to declare an identifier as deprecated
*AOI Pattern:Implemented AOI pattern the syntax is as follows:
+
:* See it [[Doc:Reference_Section_2.4#Deprecation_Support|here]]: --[[User:Jholsenback|jholsenback]] 13:21, 31 March 2010 (UTC)
<pre>
+
* Added comparison (<code>=</code>, <code>!=</code>, <code><</code>, <code><=</code>, <code>></code>, <code>>=</code>) support for strings
pigment { aoi pigment_map { ... } }
+
:* See it [[Doc:Reference_Section_2.3#String_Relational_Operators|here]]: --[[User:Jholsenback|jholsenback]] 14:15, 6 April 2010 (UTC)
normal { aoi normal_map { ... } }
+
* <code>#break</code> directive behavior
texture { aoi texture_map { ... } }
+
:* See it [[Doc:Reference_Section_2.5#The_.23switch.2C_.23case.2C_.23range_and_.23break_Directives|here]]: --[[User:Jholsenback|jholsenback]] 18:11, 26 May 2010 (UTC)
</pre>
+
* ARRAYS_WriteDF3 macro
<p>The pattern gives a value proportional to the angle between the ray and the  surface; for consistency with the slope pattern, values range from 0.5 where ray is tangent to the surface, to 1.0 where perpendicular; in practice, values below 0.5 may occur in conjunction with smooth triangles or meshes.</p>
+
:* See it [[Doc:Reference_Section_7#arrays.inc|here]]: --[[User:Jholsenback|jholsenback]] 17:26, 3 June 2010 (UTC)
<p class="Note"><strong>Note:</strong> This differs from the current MegaPOV implementation, where the values range from 0.5 down to 0.0 instead. If compatibility with MegaPOV is desired, it is recommended to mirror the gradient at 0.5, e.g.:</p>
+
* Added binary <code>#write</code> capability
<pre>
+
:* See it [[Doc:Reference_Section_2.5#The_.23write_Directive|here]]: --[[User:Jholsenback|jholsenback]] 17:26, 3 June 2010 (UTC)
pigment { aoi pigment_map {
+
* Changed bounding method command-line option from <code>+b2</code> to <code>+bm2</code>
  [0.0 MyPigment3]
+
:* See it [[Doc:Reference_Section_1.3#BSP_Bounding|here]]: --[[User:Jholsenback|jholsenback]] 12:37, 15 June 2010 (UTC)
  [0.2 MyPigment2]
+
* BSP (Binary Space Partitioning) tree bounding is now available
  [0.5 MyPigment1]
+
:* See it [[Doc:Reference_Section_1.3#BSP_Bounding|here]]: --[[User:Jholsenback|jholsenback]] 12:37, 15 June 2010 (UTC)
  [0.8 MyPigment2]
+
* Changed WorkThreads INI option to <code>Work_Threads</code> for consistency
  [1.0 MyPigment3]
+
:* See it [[Doc:Reference_Section_1.3#Symmetric_MultiProcessing|here]]: --[[User:Jholsenback|jholsenback]] 18:53, 16 June 2010 (UTC)
} }
+
* The version directive, command-line setting no longer provide compatibility
</pre>
+
:* See it [[Doc:Reference_Section_2.5#The_.23version_Directive|here]]: --[[User:Jholsenback|jholsenback]] 13:16, 13 July 2010 (UTC)
:* aoi entry done, except in keywords and identifiers table --[[User:Jholsenback|jholsenback]] 01:50, 18 May 2010 (UTC)
+
* Added <code>#elseif</code> directive
 +
:* See it [[Doc:Reference_Section_2.5#The_.23if....23else....23end_Directives|here]] and [[Doc:Reference_Section_2.5#The_.23ifdef_and_.23ifndef_Directives|here]]: --[[User:Jholsenback|jholsenback]] 13:39, 1 August 2010 (UTC)
 +
* The following keywords have been added to the identifiers and keywords list
 +
:* See them [[Doc:Reference_Section_2#Identifiers_and_Keywords|here]]: --[[User:Jholsenback|jholsenback]] 09:52, 17 August 2010 (UTC)  
 +
# aoi
 +
# area_illumination
 +
# atand
 +
# cubic <em>pattern</em>
 +
# cubic <em>warp</em>
 +
# deprecated
 +
# elseif
 +
# emission <em>finish</em>
 +
# file_gamma
 +
# for
 +
# gamma
 +
# maximum_reuse
 +
# mm_per_unit
 +
# no_radiosity
 +
# premultiplied
 +
# sint8, sint16be, sint16le
 +
# sint32be, sint32le
 +
# srgb
 +
# subsurface
 +
# uint8
 +
# uint16be, uint16le
  
* Slope Pattern extension:
+
===Images and Image Related===
<p>Extended slope pattern to specify a reference point instead of a direction; the new syntax variant is as follows:</p>
+
* Added HDR file support (RGBE, as used in Radiance)and EXR file support
<pre>
+
:* See it [[Doc:Reference_Section_1.1#Output_File_Type|here]]: --[[User:Jholsenback|jholsenback]] 08:01, 8 April 2010 (UTC)
slope { point_at <ReferencePoint> [, Lo_Slope, Hi_Slope] }
+
* PPM and 16-bit greyscale output
</pre>
+
:* See it [[Doc:Reference_Section_3.1#HF_Gray_16|here]]: --[[User:Jholsenback|jholsenback]] 09:47, 5 May 2010 (UTC)
<p class="Note"><strong>Note:</strong> This variant currently does ''not'' allow for the <code>altitude</code> keyword to be used.</p>
+
* bicubic image interpolation
<p>The functionality is similar to MegaPOV's <code>aoi <ReferencePoint></code> pattern, except that the values are reversed, i.e. range from 0.0 for surfaces facing away from the point in question, to 1.0 for surfaces facing towards that point; thus, <code>slope { <Vector> }</code> and <code>slope { point_at <Vector>*VeryLargeNumber }</code> have virtually the same effect.</p>
+
:* See it [[Doc:Reference_Section_5.6#The_interpolate_Option|here]]: --[[User:Jholsenback|jholsenback]] 11:37, 8 July 2010 (UTC)
:* slope entry done --[[User:Jholsenback|jholsenback]] 11:40, 19 May 2010 (UTC)
+
* chroma sub-sampling in JPEG output
======Other SDL changes======
+
:* See it [[Doc:Reference_Section_1.1#Output_File_Type|here]]: --[[User:Jholsenback|jholsenback]] 11:37, 8 July 2010 (UTC)
<p>The <code>#break</code> directive can now be used: entry done: --[[User:Jholsenback|jholsenback]] 18:11, 26 May 2010 (UTC)</p>
+
* Default output file type is now PNG
<ul>
+
:* See it [[Doc:Reference_Section_1.1#Output_File_Type|here]]: --[[User:Jholsenback|jholsenback]] 11:44, 8 July 2010 (UTC)
<li>anywhere within a <code>#case</code> or <code>#range</code> block, to skip to the end of the <code>#switch</code> directive (previously, <code>#break</code> was only useful right before the next <code>#case</code>, <code>#range</code> or <code>#else</code> directive, to indicate that a slip-through was not desired).</li>
+
* <code>background</code> alpha handling
<li>anywhere within a loop block (both <code>#while</code> and <code>#for</code>), to terminate the loop.</li>
+
:* See it [[Doc:Reference_Section_3.1#Background|here]]: --[[User:Jholsenback|jholsenback]] 13:54, 16 July 2010 (UTC)
<li>anywhere within a <code>#macro</code> to preliminarily terminate the macro.</li>
+
* <code>sky_sphere</code>  with layered pigment and filter
</ul>
+
:* See it [[Doc:Reference_Section_3.1#Sky_Sphere|here]]: --[[User:Jholsenback|jholsenback]] 13:54, 16 July 2010 (UTC)
<p>Example for the use in a loop:</p>
+
* Changed alpha handling for image file input and output
<pre>
+
:* See it [[Doc:Reference_Section_5#Using_the_Alpha_Channel|here]]: --[[User:Jholsenback|jholsenback]] 12:31, 25 July 2010 (UTC)
#local R = seed(4711);
+
* Changed input file gamma syntax for individual files
#for (I, 1, 100)
+
:* See it [[Doc:Reference_Section_5#The_Gamma_Option|here]]: --[[User:Jholsenback|jholsenback]] 10:59, 30 July 2010 (UTC)
  #if (rand(R) < I/1000)
+
* Added <code>premultiplied</code> BOOL parameter to input image file syntax
    #break // terminate loop early
+
:* See it [[Doc:Reference_Section_5#Using_the_Alpha_Channel|here]]: --[[User:Jholsenback|jholsenback]] 10:59, 30 July 2010 (UTC)
  #end
+
* Added experimental support for reading the pixel resolution of an image map.
  #debug concat(str(I,0,0), " iterations and counting\n")
+
:* See it [[Doc:Reference_Section_2.1#Functions|here]]: --[[User:Jholsenback|jholsenback]] 13:48, 31 July 2010 (UTC)
#end
+
* Added <code>Antialias_Gamma=</code><em>n.n</em>
</pre>
+
:* See it [[Doc:Reference_Section_1.3#Anti-Aliasing_Options|here]]: --[[User:Jholsenback|jholsenback]] 19:04, 1 August 2010 (UTC)
<p>Where multiple <code>#switch</code>, loop and/or <code>#macro</code> blocks are nested, <code>#break</code> will leave only the innermost of these.</p>
+
* Changes to input image transparency handling for <code>material_map</code>, <code>bump_map</code> and <code>image_pattern</code>
*Implemented a <code>#for</code> loop construct; the following syntax- entry done --[[User:Jholsenback|jholsenback]] 18:11, 26 May 2010 (UTC)
+
:* See it [[Doc:Reference_Section_5#Using_the_Alpha_Channel|here]]: --[[User:Jholsenback|jholsenback]] 12:43, 4 August 2010 (UTC)
<pre>
+
* Added support for using the sRGB transfer function for output file gamma.
#for (Identifier, Start, End [, Step])
+
:* See it [[Doc:Reference_Section_3.1#Scene_File_Gamma|here]]: --[[User:Jholsenback|jholsenback]] 12:43, 4 August 2010 (UTC)
  //...
+
* Mosaic preview performance note
#end
+
:* See it [[Doc:Reference_Section_1.1#Mosaic_Preview|here]]: --[[User:Jholsenback|jholsenback]] 15:25, 6 August 2010 (UTC)
</pre>
 
<p>is now available for simple loops incrementing Identifier from Start to End (inclusive) with the given Step size (default: +1.0). Basically, it works the same as the classic <code>#while</code> pattern:</p>
 
<pre>
 
#local Identifier = Start;
 
#while (Identifier <= End)
 
  //...
 
  #local Identifier = Identifier + Step;
 
#end
 
</pre>
 
<p>
 
Some additional notes:
 
<ul>
 
<li>If Step is negative, comparison will be automatically adjusted to match a  <em>countdown</em> pattern.</li>
 
<li>Start, End and Step are evaluated only <em>once</em>.</li>
 
<li>The loop counter is a full-fledged local variable. Any local variable of the same name already defined before the loop <em>will</em> be overwritten without warning (note that in the main scene file, all local variables outside of macros are effectively global); inside the loop, any tampering with the variable is possible for effect, as long as it is defined as a local numeric variable at the end of each iteration.</li>
 
<li>After the loop has terminated, the variable will remain defined, typically holding the value End+Step.</li>
 
<li>The loop counter must <em>not</em> be an array element.</li>
 
</ul>
 
</p>
 
====== Image output changes======
 
<p>PPM image output now supports 16-bit greyscale output (effectively writing a PGM file instead), to be activated via the <code>Greyscale_Output=on</code> option or  the <code>+FPg</code> file type switch.</p>
 
:* PPM ... done --[[User:Jholsenback|jholsenback]] 09:47, 5 May 2010 (UTC)
 
=====Beta 35=====
 
<p class="Note"><strong>Note:</strong> Non-legacy scene default gamma handling for image input files has changed significantly from previous betas, affecting all file formats except OpenEXR, Radiance HDR and (with minor differences) most flavors of PNG; there will be NO corresponding warnings. See below for more detail.</p>
 
<p>Input image files not carrying unambiguous gamma information will now be assumed to match a common gamma setting, and gamma-adjusted accordingly; this common input file gamma setting can be specified in the scene file using the following syntax:</p>
 
<pre>
 
global_settings {
 
  file_gamma GAMMA
 
  }
 
</pre>
 
<p>where GAMMA is either a numeric expression specifying the approximate display gamma for which input files are assumed to be gamma pre-corrected, or the keyword <code>srgb</code> indicating that input files are assumed to match the sRGB standard. (In the latter case, gamma adjustment is applied according to the sRGB standard, instead of approximating with a gamma 2.2 power-law function.) The default setting is sRGB.</p>
 
<p>Regardless of this global setting, gamma correction is not applied if the image input file is obviously used as a mere data container, such as when immediately used in a height field.</p>
 
<p>Default gamma handling rules for any image input file can be overridden by specifying <code>file_gamma</code> GAMMA immediately after the file name, e.g.:</p>
 
<pre>
 
image_map {
 
  jpeg "foobar.jpg" file_gamma 1.8
 
  interpolate 2
 
  }
 
</pre>
 
<p>This also applies to contexts where gamma adjustment is not normally applied, e.g. file formats that are defined to be encoded linearly, or files used in height fields, to simplify handling of files not conforming to standards.</p>
 
<p class="Note"><strong>Note:</strong> Gamma handling for PNG input files has changed as follows in legacy <code>#version 3.6</code> scenes:</p>
 
<ol>
 
<li>In the absence of an <code>assumed_gamma</code> statement, non-indexed PNG files with a gAMA chunk (i.e. virtually all PNG files) will appear far brighter than with POV-Ray 3.6</li>
 
<li>In the presence of an <code>assumed_gamma 1.0</code> statement, indexed PNG files (uncommon) will appear darker than with POV-Ray 3.6</li>
 
<li>In the presence of an <code>assumed_gamma 2.2</code> statement, PNG files with a gAMA lower than 2.2 (uncommon) will appear darker than with POV-Ray 3.6</li>
 
<li>PNG files with an sRGB chunk but no gAMA chunk may appear significantly different than with POV-Ray 3.6</li>
 
<li>PNG files may generally appear slightly different than with POV-Ray 3.6</li>
 
</ol>
 
<p>A warning will be printed in these cases, except for the latter.</p>
 
:* gamma done --[[User:Jholsenback|jholsenback]] 09:49, 5 May 2010 (UTC)
 
=====Beta 34=====
 
* Added support for diffuse backside illumination: added:--[[User:Jholsenback|jholsenback]] 13:39, 6 April 2010 (UTC)
 
<p>To model thin, diffusely-translucent objects (e.g. paper, curtains, leaves etc.), an optional 2nd float parameter has been added to the <code>diffuse</code> finish statement to control the effect of illumination from the back of the surface. The default value is 0.0, i.e. no diffuse backside illumination. For realistic results, the sum of both parameters should be between 0.0 and 1.0, and the 2nd parameter should be the smaller of the two.</p>
 
<p class="Note"><strong>Note:</strong> This feature is currently experimental and may be subject to change. In particular, the syntax as well as interoperation with <code>double_illuminate</code>, multi-layered textures or <code>conserve_energy</code> are still under investigation.</p>
 
<p>A new sample scene, &quot;advanced/diffuse_back.pov&quot;, has been provided to illustrate this new feature. </p>
 
* New option added speed up radiosity pretrace: added:--[[User:Jholsenback|jholsenback]] 18:38, 23 May 2010 (UTC)
 
<p>As some computations don't contribute to the generation of radiosity samples, they can safely be skipped during radiosity pretrace to gain some speed if the pretrace's other role as a coarse preview is not required.</p>
 
<p>The following .ini file/command line options control whether pretrace performs all computations so it can double-feature as a coarse preview (&quot;vain pretrace&quot;):</p>
 
<pre>
 
Radiosity_Vain_Pretrace=bool turns vain pretrace on/off
 
+RVP turns vain pretrace on (default)
 
-RVP turns vain pretrace off
 
</pre>
 
<p class="Note"><strong>Note:</strong> with vain pretrace off, preview will look remarkably odd during the radiosity pretrace phase; this is normal, and no reason to be alarmed.</p>
 
<p>At the moment, turning vain pretrace off will affect only classic lighting computations (diffuse lighting, higlights and iridescence); other features expendable during pretrace may follow in future versions.</p>
 
=====Beta 33=====
 
* Added <code>no_radiosity</code> keyword, as known from MegaPOV: done --[[User:Jholsenback|jholsenback]] 15:14, 31 May 2010 (UTC)
 
<p>Specifying <code>no_radiosity</code> in an object block makes that object invisible to radiosity rays, in the same way as <code>no_image</code>, <code>no_reflection</code> and <code>no_shadow</code> make an object invisible to primary, reflected and shadow test rays, respectively.</p>
 
* Revival of Radiosity Load/Save + various other radiosity code changes: added:--[[User:Jholsenback|jholsenback]] 18:39, 23 May 2010 (UTC)
 
<p>The following .ini / command line parameters are recognized:</p>
 
<pre>
 
Radiosity_File_Name="<name>" or +RF"<name>" to set the cache file name;
 
Radiosity_From_File=<on/off> or +RF to enable reading the radiosity file at startup
 
Radiosity_To_File=<on/off> or +RFO to enable writing new samples to the radiosity file
 
</pre>
 
<p class="Note"><strong>Note:</strong> The parameter names are preliminary, and may still be subject to change; there is a potential conflict between the shorthand forms)</p>
 
<p>If both <code>+RFI</code> and <code>+RFO</code> are specified, new samples gathered are appended; otherwise, <code>+RFO</code> causes the file to be overwritten if it exists.</p>
 
<p>New samples gathered are written whenever an SMP block is completed. Tests indicate that this is almost neutral regarding performance, compared to operation with radiosity file output disabled.</p>
 
* New radiosity &quot;high reproducibility&quot; mode: added: --[[User:Jholsenback|jholsenback]] 18:39, 23 May 2010 (UTC)
 
<p>When specifying <code>High_Reproducibility</code> or <code>+HR</code> on the command line, POV-Ray will spend extra effort to make sure renders are deterministic despite SMP (currently, radiosity is the only code to use this flag; in HR mode, radiosity pretrace starts out with fewer threads, and some extra rules are imposed on sample re-use that may cause surplus samples to be gathered).</p>
 
=====Beta 31=====
 
* Adds experimental support for subsurface light transport (aka subsurface scattering) ... done: except keyword table entry --[[User:Jholsenback|jholsenback]] 17:55, 27 May 2010 (UTC)
 
<p>Currently, SSLT is activated for a particular object by adding the following statement to its finish.</p>
 
<p class="BeAware"><strong>Be Aware:</strong> this is very likely to change!</p>
 
<pre>
 
  subsurface { COLOR, COLOR }
 
</pre>
 
<p>Specifying the (reduced) scattering coefficients (sigma'[s]) and absorption coefficients (sigma[a]), respectively, in units of 1/mm, for each of the three basic colors. The object's IOR will also affect the results.</p>
 
<p>The algorithm is designed to give realistic results at a scale of 10 mm per POV-Ray unit by default; for other scales, place the following statement in the <code>global_settings</code> section:</p>
 
<pre>
 
  mm_per_unit NUMBER
 
</pre>
 
<p>To tune the algorithm for quality or performance, the number of samples for the diffuse scattering and single-scattering approximation, respectively, can be specified by placing the following statement in the <code>global_settings</code> section:</p>
 
<pre>
 
  subsurface { samples NUMBER, NUMBER }
 
</pre>
 
<p>See the sample SSLT scene in scenes/subsurface/subsurface.pov for more information</p>
 
<p class="Warning"><strong>Warning:</strong> SSLT is still in alpha stage.</p>
 
=====Beta 29=====
 
* Added ability to declare an identifier as deprecated.  added:--[[User:Jholsenback|jholsenback]] 13:21, 31 March 2010 (UTC)
 
=====Beta 27=====
 
* Added support for specifying grayscale output via INI file or command-line.
 
<p>This is intended to replace the use of <code>hf_gray_16</code> in <code>global_settings</code>. If encountered, <code>hf_gray_16</code> has no effect on the output type and will additionally generate a warning message (as before).</p>
 
<p>Currently only PNG file support is provided with grayscale output; others will be added over time.</p>
 
<p class="Note"><strong>Update:</strong> As of beta 37, PPM (or rather, effectively PGM) file support has been added for this feature.</p>
 
<p>Grayscale output may be specified via <code>Grayscale_Output=true</code> as an INI option, or <code>+Fxg</code> (for output type 'x') as a command-line option. For example, <code>+Fng</code> for PNG grayscale output.</p>
 
<p class="Warning"><strong>Caveat:</strong> grayscale output implies the maximum bit-depth the format supports for PNG this is 16. it is not valid to specify bits per color channel with 'g' (e.g. <code>+Fng16</code> is not allowed, and nor for that matter is <code>+Fn16g</code>). If bits per channel is provided via an INI option, it is ignored.</p>
 
:* section done --[[User:Jholsenback|jholsenback]] 09:50, 5 May 2010 (UTC)
 
=====Beta 24=====
 
* Added a new list pattern type: <code>cubic</code>.
 
<p>It takes six texture elements and maps each one to each of the six pyramids centered at each half-axis (thus effectively mapping each texture element to each side of a origin-centered cube).</p>
 
* Added a new warp type: <code>cubic</code>.
 
<p> It takes no parameters, and maps an area in the x-y plane between <0,0> and <1,1> around the origin in the same way as uv-mapping an origin-centered cube-shaped box would. Naturally the warp works with any object whereas the uv-mapping only works for the box object.</p>
 
<p>See the documentation of box uv-mapping for details.</p>
 
* BOTH cubic descriptive entries have been done, except the keyword & identifiers entries --[[User:Jholsenback|jholsenback]] 19:11, 15 April 2010 (UTC)
 
=====Beta 23=====
 
* Added comparison (<code>=</code>, <code>!=</code>, <code><</code>, <code><=</code>, <code>></code>, <code>>=</code>) support for strings. added: --[[User:Jholsenback|jholsenback]] 14:15, 6 April 2010 (UTC)
 
=====Beta 8=====
 
* Added HDR file support (RGBE, as used in Radiance).
 
* Added EXR file support using [http://www.openexr.org OpenEXR] library.
 
:* both these have been done --[[User:Jholsenback|jholsenback]] 08:01, 8 April 2010 (UTC)
 

Latest revision as of 19:35, 27 October 2010

Change Log Extracts

The change-log has been reviewed and these items below have been added into the documentation. --jholsenback 19:35, 27 October 2010 (UTC)

Whats New

  • A platform independent change summary has been completed
  • The Windows change summary has been completed
  • Setup (WIP) a Mac OS change summary
  • Setup (WIP) a Unix change summary

Radiosity

  • Speed up radiosity pretrace option
  • Revival of Radiosity Load/Save
  • New radiosity "high reproducibility" mode
  • Radiosity maximum_reuse parameter
  • Added no_radiosity keyword
  • Implemented adaptive radiosity pretrace.
  • Parser now checks for plausible relation between radiosity minimum_reuse and maximum_reuse:

New Features

  • Diffuse backside illumination
  • Added a new list pattern type: cubic
  • Added a new warp type: cubic
  • AOI Pattern
  • Slope Pattern extension
  • Subsurface scattering
  • Added support for full area light diffuse and specular illumination
  • Added emission parameter to the finish block
  • Added RTR (real-time raytracing), clockless animation, and video capture support
  • Added atand function to "math.inc".
  • You now have the ability to specify the render block size

Gamma

  • Non-legacy scene default gamma handling for image input files
  • assumed_gamma and File_Gamma
  • gamma keyword to specify gamma pre-corrected colours

SDL

  • Added ability to declare an identifier as deprecated
  • Added comparison (=, !=, <, <=, >, >=) support for strings
  • #break directive behavior
  • ARRAYS_WriteDF3 macro
  • Added binary #write capability
  • Changed bounding method command-line option from +b2 to +bm2
  • BSP (Binary Space Partitioning) tree bounding is now available
  • Changed WorkThreads INI option to Work_Threads for consistency
  • The version directive, command-line setting no longer provide compatibility
  • Added #elseif directive
  • The following keywords have been added to the identifiers and keywords list
  1. aoi
  2. area_illumination
  3. atand
  4. cubic pattern
  5. cubic warp
  6. deprecated
  7. elseif
  8. emission finish
  9. file_gamma
  10. for
  11. gamma
  12. maximum_reuse
  13. mm_per_unit
  14. no_radiosity
  15. premultiplied
  16. sint8, sint16be, sint16le
  17. sint32be, sint32le
  18. srgb
  19. subsurface
  20. uint8
  21. uint16be, uint16le

Images and Image Related

  • Added HDR file support (RGBE, as used in Radiance)and EXR file support
  • PPM and 16-bit greyscale output
  • bicubic image interpolation
  • chroma sub-sampling in JPEG output
  • Default output file type is now PNG
  • background alpha handling
  • sky_sphere with layered pigment and filter
  • Changed alpha handling for image file input and output
  • Changed input file gamma syntax for individual files
  • Added premultiplied BOOL parameter to input image file syntax
  • Added experimental support for reading the pixel resolution of an image map.
  • Added Antialias_Gamma=n.n
  • Changes to input image transparency handling for material_map, bump_map and image_pattern
  • Added support for using the sRGB transfer function for output file gamma.
  • Mosaic preview performance note