1.0.0.5 08/28/2017 Release

This commit is contained in:
Person 2017-08-28 20:45:58 -07:00
parent 5da944f589
commit 43dcdd4305
4 changed files with 76 additions and 6 deletions

View File

@ -13,7 +13,7 @@
<!--
Change this for every release.
-->
<?define ProductCode="{290BBFDC-BD1C-45F7-80AC-DE59BA4378F0}"?>
<?define ProductCode="{5A168AAA-9B7A-4803-9DA7-B7B053D27924}"?>
<Product Id="$(var.ProductCode)" Name="$(var.ProductName)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
<Package

View File

@ -1,3 +1,47 @@
1.0.0.5 08/28/2017
--User changes
-Add support for Exr files which use 32-bit floats for each RGBA channel.
-Allow for clearing an individual color curve.
-Allow for saving multiple image types in EmberRender and EmberAnimate. All writes are threaded.
-Remove --bpc command line argument. Add format png16 as a replacement.
-Remove --enable_jpg_comments and --enable_png_comments command line arguments, and replace them with --enable_comments which applies to jpg, png and exr.
-Add menu items to variations and affine spinners which allow for easy entry of specific numeric values like pi.
-Make final render dialog be wider rather than being so tall.
-Added panorama1 and panorama2 variations.
--Bug fixes
-Fix several OpenCL build errors that were occurring on Mac. Some still remain.
-Remove ability to save bitmap files on all platforms but Windows.
-Fix bug where clearing the final xform, but leaving it present, then editing it would crash the program.
-Disallow the use of synth when randomly generating xforms if the user has an Nvidia device present on their system.
-crackle had a bug with Nvidia GPUs.
-Only allow crackle_cellsize to be greater than 0.
-Typing in the xform color index spinner produced strange results.
-Returning from palette editor did not always update xform color indices.
-Cleaner exit on some failures.
-Better reporting of OpenCL errors.
--Code changes
-Improve the coloring code during final accum by getting rid of the last remnants of unnecessary scaling to 255 from flam3.
-New dependency on OpenEXR.
-Allow Curves class to interact with objects of a different template type.
-Make m_Curves member of Ember always use float as template type.
-Set the length of the curves array to always be 2^16 which should offer enough precision with new 32-bit float pixel types.
-Set pixel types to always be 32-bit float. This results in a major reduction of code in the final accumulation part of Renderer.h/cpp.
-Remove corresponding code from RendererCL and FinalAccumOpenCLKernelCreator.
-Remove Transparency, NumChannels and BytesPerPixel setters from Renderer.h/cpp.
-Add new global functions to format final image buffers and place all alpha calculation and scaling code in them.
-Blending is no longer needed in OpenGLWidget because of the new pixel type.
-Make new class, AffineDoubleSpinBox.
-Use static_partitioner in all parallel_for() calls.
-Use some CPU defines in CL code.
-Code in RendererClDevice::Init() to detect Nvidia was wrong even thought it technically worked.
-crackle now uses real_t* for cache rather than real2. This is what was causing the bug.
-Make the local offsets array used in crackle a precalc since it's the same for all. This reduces register pressure.
-Get rid of all usages of real3, just to be safe since Nvidia doesn't like them.
-#define TOTAL_GLOBAL_SIZE_END in the OpenCL iteration kernel just for debugging purposes to see how large the parvars buffer is.
-Remove some unused functions.
1.0.0.4 07/01/2017
--User changes
-Add support for adjusting xform color indices in the palette editor. Fixed palettes can now be displayed there, but they will have no color arrows as they are not editable.

View File

@ -904,7 +904,11 @@ eRenderStatus Renderer<T, bucketT>::LogScaleDensityFilter(bool forceOutput)
}
}
}
}, static_partitioner());
}
#if defined(_WIN32) || defined(__APPLE__)
, tbb::static_partitioner()
#endif
);
//t.Toc(__FUNCTION__);
return m_Abort ? eRenderStatus::RENDER_ABORT : eRenderStatus::RENDER_OK;
}
@ -1064,7 +1068,11 @@ eRenderStatus Renderer<T, bucketT>::GaussianDensityFilter()
}
}
}
}, static_partitioner());
}
#if defined(_WIN32) || defined(__APPLE__)
, tbb::static_partitioner()
#endif
);
if (m_Callback && !m_Abort)
m_Callback->ProgressFunc(m_Ember, m_ProgressParameter, 100.0, 1, 0);
@ -1123,7 +1131,11 @@ eRenderStatus Renderer<T, bucketT>::AccumulatorToFinalImage(v4F* pixels, size_t
GammaCorrection(*rowStart, background, g, linRange, vibrancy, false, glm::value_ptr(*rowStart));//Write back in place.
rowStart++;
}
}, static_partitioner());
}
#if defined(_WIN32) || defined(__APPLE__)
, tbb::static_partitioner()
#endif
);
}
if (m_Abort)
@ -1169,7 +1181,11 @@ eRenderStatus Renderer<T, bucketT>::AccumulatorToFinalImage(v4F* pixels, size_t
auto pf = reinterpret_cast<float*>(pv4T);
GammaCorrection(*(reinterpret_cast<tvec4<bucketT, glm::defaultp>*>(&newBucket)), background, g, linRange, vibrancy, true, pf);
}
}, static_partitioner());
}
#if defined(_WIN32) || defined(__APPLE__)
, tbb::static_partitioner()
#endif
);
//Insert the palette into the image for debugging purposes. Not implemented on the GPU.
if (m_InsertPalette)
@ -1307,7 +1323,11 @@ EmberStats Renderer<T, bucketT>::Iterate(size_t iterCount, size_t temporalSample
}
}
}
}, static_partitioner());
}
#if defined(_WIN32) || defined(__APPLE__)
, tbb::static_partitioner()
#endif
);
stats.m_Iters = std::accumulate(m_SubBatch.begin(), m_SubBatch.end(), 0ULL);//Sum of iter count of all threads.
stats.m_Badvals = std::accumulate(m_BadVals.begin(), m_BadVals.end(), 0ULL);
stats.m_IterMs = m_IterTimer.Toc();

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
fractorium (1.0.0.5-0ubuntu1) xenial; urgency=low
* release 1.0.0.5
-- Matt Feemster <matt.feemster@gmail.com> Mon, 28 Aug 2017 19:42:25 -0700
fractorium (1.0.0.4-0ubuntu1) xenial; urgency=low
* release 1.0.0.4