288 Commits

Author SHA1 Message Date
f9245d435a 24.24.12.1 release 2024-12-08 11:27:04 -07:00
6b0531718f -Fix template compiler error that worked in C++17, but not in C++20. 2024-11-24 10:53:45 -07:00
4c0f03a52a --User changes
-Add Ctrl+g shortcut for generating a sequence.

--Bug fixes
 -Fix indendation for variations because of type icon.
 -Fix bug when duplicating flame where the new flame wasn't being properly selected.
 -Fix bug where clearing a flame was changing size and quality when it shouldn't have.
 -Fix bug where reading an Xml palette was failing on linux.

--Code changes
 -No longer pad string with null terminator in ReadFile() because std::string already does it.
2024-05-08 07:31:55 -06:00
45d936b60c --Code changes
-Bump version to 23.23.8.103.
--This is only a dev version.
2024-03-16 10:28:30 -06:00
a0a205edd8 --User changes
-Users can now specify animation params on a per flame basis.
 --These get saved with the flame file.
 -Allow for rotating xforms around the world origin during animation.
 -Make the Clear Flame menu item be more comprehensive in how it clears a flame out.

--Bug fixes
 -Fix an extremely rare possible memory leak when using motion during animation, which is never used in Fractorium.
 -Do not skip to the current flame index, or attach a prefix in the Final Render Dialog when rendering an animation sequence.

--Code changes
 -Place all animation params in Ember.
2024-03-16 10:15:51 -06:00
26e075def5 --Bug fixes
-Another attempt to fix null termination bug with reading files for Xml processing.
2024-03-08 10:14:21 -07:00
47808b567d --Bug fixes
-Attempt to fix a null termination bug when reading Xml strings.
2024-03-04 07:49:22 -07:00
960f0e11be Revert "export raw histogram data"
This reverts commit a7b4cc70d6.
2024-01-30 14:24:56 -07:00
26f1cf8558 Merge remote-tracking branch 'mathr/claude' 2024-01-30 14:17:37 -07:00
a1f7455b97 add alternative for _strnicmp on non-Windows 2024-01-30 14:02:57 -07:00
9990d538f6 --User changes
-Show image index in the library and sequence trees.
 -Add progress bar showing when preview renders are complete.
 -Automatically show animation preview when sequence generation is done.
 -Add the ability in the final render dialog to start a render within a sequence from a given point, rather than always having to start from the beginning.
 --Allow using the image index as its name rather than the file name.
2023-12-19 13:24:50 -07:00
0cdfc207b5 add alternative for _strnicmp on non-Windows 2023-12-05 13:32:56 +00:00
a7b4cc70d6 export raw histogram data 2023-12-05 11:18:40 +00:00
c3078f018a --User changes
-Update various tooltips.
 -Increase precision of affine and xaos spinners.
 -Increase precision of fields written in Xml files to 8.

--Bug fixes
 -When rendering on the CPU, if the number of threads didn't divide evenly into the number of rows, it would leave a blank spot on the last few rows.
 -Fix numerous parsing bugs when reading .chaos files.
 -Added compatibility fixes and/or optimizations to the following variations: asteria, bcircle, bcollide, bipolar, blob2, btransform, cell, circlecrop, circlecrop2, collideoscope, cpow2, cropn, cross, curl, depth_ngon2, depth_sine2, edisc, eRotate, escher, fan2, hex_rand, hypershift, hypershift2, hypertile1, julia, julian, julian2, juliaq, juliascope, lazyjess, log, loonie2, murl, murl2, npolar, oscilloscope2, perspective, phoenix_julia, sphericaln, squish, starblur, starblur2, truchet, truchet_glyph, waffle, wavesn.
2023-11-29 15:47:31 -07:00
b3ad38020e --User changes
-Add a progress bar for sequence previews.

--Bug fixes
 -Attempt to prevent crash when dragging in a new file while the previews from the current file are still rendering.
2023-11-23 14:52:34 -07:00
745f06d29d --User changes
-Remove the Type field from the variations tree and instead just put the type indicator icon next to the variation name.
 -Double clicking to toggle variation parameter spinners now resets the value to the default if there is one, else it uses zero. If it is already using the default, it is toggled to 0.
 -Add a new button to toggle xaos on and off.
 -When duplicating a flame, insert it immediately after the one being duplicated instead of at the end of the file.
 -When switching between flames in a file, keep the same xform index selected rather than resetting it to the first xform each time.
 -Create a threaded writer for the final render and EmberAnimate so the rendering process does not get delayed by file saving which may take a long time.
 -Remove warning which said "Frames per rot cannot be greater than one while Rotations is zero" when generating a sequence.
 -Add the Circle_Rand variation from Chaotica.
 -Add tool tips to clarify the following items:
 --Auto Unique Filenames checkbox in the options dialog.
 --Xaos table headers.

--Bug fixes
 -Generating sequences using the following variations would be done incorrectly: circletrans1, collideoscope, crob, curlsp, glynnsim1, glynnsim2, hypercrop, julian, julian, mobiusn, nblur, waves2, wavesn.
 -Adding/removing nodes from the color curve had accidentally been disabled.
 -The applied xaos weight table was not showing normalized weight values.
 -Changing the size of a flame was not observing the Apply To All checkbox.
 -Do not clamp the Rotate field to +/-180, because this causes the rotation to switch from CW to CCW during sequence generation. Instead, leave it exactly as the user entered it so the rotations proceed in the same direction.
2023-11-21 22:58:22 -07:00
ec35cf92c7 final macOS 2023-07-18 22:50:43 -03:00
6db97a231a --Code changes
-Begin preparation for 23.23.8.1 release.
2023-07-17 10:16:51 -06:00
484b2e3123 --User changes
-Fix stylesheets.
-Make various fields in the options window be resettable via double click.
-Get stylesheets working properly on Windows and Linux with Qt6.
-Set default style to Fusion.

--Code changes
-Get build and deployment scripts working with latest versions of Qt6, AppImage, and various library dependencies.
-Add two new macros so it would build with the latest gcc: SINGLETON_DERIVED_DECL_T and SINGLETON_DERIVED_IMPL_T.
-Small changes to opencl.hpp.
-Center progress bars on Linux.
-Proper sizing of vertical header on the xaos visualization table on Linux.
2023-06-22 19:25:53 -06:00
1dfbd4eff2 --User changes
-Add new preset dimensions to the right click menu of the width and height fields in the editor.
-Change QSS stylesheets to properly handle tabs.
-Make tabs rectangular by default. For some reason, they had always been triangular.

--Bug fixes
 -Incremental rendering times in the editor were wrong.

--Code changes
 -Migrate to Qt6. There is probably more work to be done here.
-Migrate to VS2022.
-Migrate to Wix 4 installer.
-Change installer to install to program files for all users.
-Fix many VS2022 code analysis warnings.
-No longer use byte typedef, because std::byte is now a type. Revert all back to unsigned char.
-Upgrade OpenCL headers to version 3.0 and keep locally now rather than trying to look for system files.
-No longer link to Nvidia or AMD specific OpenCL libraries. Use the generic installer located at OCL_ROOT too.
-Add the ability to change OpenCL grid dimensions. This was attempted for investigating possible performance improvments, but made no difference.

This has not been verified on Linux or Mac yet.
2023-04-25 17:59:54 -06:00
2909af2408 --Code changes
-Cleanup and small bug fix for the new animation preview feature.
2022-02-28 20:36:11 -07:00
4bbc8466e2 Merged animate_review_prework_part2 into master 2022-02-28 06:07:56 +00:00
9558f81e69 --Code Change
-Remove unused `varIndex = IndexInXform;`
    Removes 2087 instances of  [-Wunused-variable] warnings
2022-02-27 20:42:31 -08:00
344c8c6457 --Code Change
-Fix compiler warnings in XmlToEmber
2022-02-27 20:39:13 -08:00
ee7ca7065e --Code changes
-Remove all dependencies on Intel Threading Building Blocks.
 -Write our own version of parallel_for().
2021-12-29 23:10:54 -07:00
f476afa545 --Bug fixes
-Numbering of rendered files was wrong.
 -Truchet_hex_fill was not compiling with some newer Nvidia drivers.

--Code changes
 -Update Wix installer to use VS 2019.
2021-08-08 15:20:09 -06:00
a726b99dea --Code changes
-Modernize some C++ code.
2021-04-19 21:53:25 -06:00
8086cfa731 22.21.4.2 4/19/2021
--User changes
 -Allow users to set the Exp value when using the Exp temporal filter type.
 -Set the default temporal filter type to be Box, which does not alter the palette values at all during animation. This is done to avoid confusion when using Gaussian or Exp which can produce darkened images.

--Bug fixes
 -Sending a sequence to the final render dialog when the keyframes had non zero rotate and center Y values would produce off center animations when rendered.
 -Temporal filters were being unnecessarily recreated many times when rendering or generating sequences.
 -Exp filter was always treated like a Box filter.

--Code changes
 -Add a new member function SaveCurrentAsXml(QString filename = "") to the controllers which is only used for testing.
 -Modernize some C++ code.
2021-04-19 21:07:24 -06:00
f411c355f3 21.21.4.1 Release 2021-04-07 08:49:35 -06:00
0956cd6592 --User changes
-Allow for specifying linear or smooth interpolation when generating a sequence in the Library tab (was formerly hardcoded to smooth). This has the effect of exposing the --unsmoother option used in EmberGenome in the GUI.
 -Clarify tool tips of the sequence interpolation fields in the animation group on the Flame tab.
 -Change caption of the Bounds tab to be Bounds & Log.
2021-03-28 20:37:02 -06:00
6156036370 --Bug fixes
-depth_blur2 was wrong.
2021-02-04 23:49:06 -08:00
e3e5120130 --Bug fixes
-Sequence generation was generating the wrong color curves when a non-default curve had less than 5 nodes in it.
2021-02-03 00:49:10 -08:00
c23d2ad049 --Bug fixes
-ETA in the final render dialog was not correct when doing incremental renders.
2021-01-21 20:48:45 -08:00
b31f45251c --Bug fixes
-bcircle was not properly setting output values to zero when the bcircle_borderwidth was zero.
2021-01-13 21:43:10 -08:00
81253863cc --Bug fixes -Pixel_flow sincos x,y was inverted 2021-01-03 13:32:04 +00:00
47b6614c8a --Bug fixes
-Fix improper usage of rand() in cpow2, cpow3, hypertile1, hypertile3D1, hypertile3D2, juliac, juliaq.
 -Fix program crashing during density filtering on some Nvidia cards.
 -hypertile3D1 was wrong.
 -Parsing phoenix_julia when coming from Apophysis was wrong.
 -Density filtering was freezing on certain Nvidia cards.

--Code changes
 -Optimize juliac, npolar.
 -Add a new function Crand() which behaves like the legacy C rand() which returns an integer between 0 and 32766, inclusive.
 -Use RandBit() in some places.
 -Remove Zeps() from vignette, it's not needed.
 -Restructure OpenCL code for density filtering such that it does not hang after being compiled on some Nvidia cards, such as the gtx 1660. Remove barriers from conditionals where possible.
2020-12-28 21:46:55 -08:00
36b71278ec --Bug fixes
-Fix bug in previous vignette variation.
2020-08-01 18:05:14 -07:00
99cc597abc --Code changes
-Add vignette variation.
2020-07-30 19:55:37 -07:00
c0a1395a2b --Bug fixes
-Add support for Chaotica files which specify xform weight as "Base weight" instead of "base_weight".
 -Fix bug where Fractorium would crash when a new file was dragged in while previews were still rendering.
  --This was done by changing the TreeItemChanged() events in the library tab use a direct connection rather than a queued connection.
  --This obviated the need for QCoreApplication::processEvents() calls in the library tree code.
 -Fix bug where renaming a flame within a file, then tabbing away did not commit the name change.

--Code changes
 -Clean up some warnings about const variables in the latest version of Visual Studio 2019.
 -Upgrade installer to latest update of Visual Studio 2019.
2020-07-14 17:45:07 -07:00
39414b2263 --Bug fixes
-Fix possible OpenCL bugs in cubic3D, cubicLattice3D, dc_cube, falloff, falloff2, falloff3, waffle.

--Code changes
 -Upgrade to Visual Studio 2019.
2020-04-11 20:07:12 -07:00
e741ba880e Fixed cubic3D and cubicLattice_3D variations for AMD GPUs 2020-04-10 15:46:51 +00:00
b9ce48f649 --Bug fixes
-ETA time was wrong with incremental final renders after waiting for a period of time.

--Code changes
 -Small change to prevent parsing error when using tbb on some systems.
2020-04-09 15:41:49 -07:00
d2893010f0 1.0.0.19 Re-release
--Bug fixes
 -Blur Cuve never worked with strips.
 -Images with temporal filter width values below 0.6 would sometimes create blank images.
2020-03-18 19:34:56 -07:00
58d5124a05 --Bug fixes
-Previous commit removing a field ruined strips renders.
2020-03-17 07:16:14 -07:00
0323d035bf 1.0.0.19 Re-release
--Bug fixes
 -New Blur Curve math was not applied on the CPU.
2020-03-15 23:51:25 -07:00
f170811e09 --Code changes
-Remove the unused field m_RotCenterY from Ember.
 -Make a #define for fma() testing, but seems to make no difference.
 -Optimize some of the OpenCL iteration kernel generation code.
 -Possible fix to an OpenCL compilation bug when using blur curve on AMD on Mac.
2020-03-15 00:40:57 -07:00
61ddc06151 --User changes
-Allow dragging in folders which will be recursively traversed for flame files.
 -Allow for adjusting scale via keyboard with the < and > keys.
 -Show the count of opened flames on the header of the library tree.

--Bug fixes
 -Attempt to preserve xaos when pasting xforms.

--Code changes
 -Default flam3 compatibility mode to true.
2020-03-08 14:17:13 -07:00
ea649bbda6 --User changes
-Add backward compatibility option for the following variations: cos, cosh, cot, coth, csc, csch, sec, sech, sin, sinh, tan, tanh.
 -Add the ability to re-order variations by dragging them in the Info tab.
2020-03-04 22:30:08 -08:00
c50568a98b --Bug fixes
-Custom palettes were not being read correctly on non ANSI machines.

--Code changes
 -Prepare files for next release.
2020-02-25 18:31:44 -08:00
8c66fa2c24 --Bug fixes
-Fix crash on palette editor when opening it with certain palette files in a particular order.
 -An xform with only a post variation in it might have showed up wrong.
 -The xforms combo box was obscuring the name of the xforms by not being wide enough.
 -Make variation state preservation be a little bit more correct in OpenCL.

--Code changes
 -Make all iterators on the CPU use a temporary point.
2020-02-17 18:45:02 -08:00