Commit Graph

175 Commits

Author SHA1 Message Date
df64fb4b1e Merge branch 'master' into travis 2015-07-28 16:39:55 +01:00
0e8e63202d Merge pull request #25 from gh2k/char-exceptions
Display char* excptions when Something Bad happens
2015-07-27 06:40:08 -07:00
84c87c966a Display char* excptions when Something Bad happens
When these are raised on osx (and Linux?) the program crashes with no error.
This displays the message in a fatal error box and then quits slightly more
gracefully.
2015-07-26 21:02:23 +01:00
3928000f55 Merge branch 'master' into travis 2015-07-24 16:31:32 +01:00
c005755a50 Merge pull request #24 from gh2k/menu-hotkeys
Change hotkeys for copy/paste selected xforms
2015-07-24 08:05:00 -07:00
24ce030c2f Change hotkeys for copy/paste selected xforms
Apple users will very much expect command-Q to exit the app.

I'm not sure if it's possible to change these just for mac... People may be used to them being on Q/W on Windows?
2015-07-24 15:57:05 +01:00
ad7d4a3b4f Merge pull request #22 from gh2k/opencl-hole
Fix opencl crash in 'hole' variation
2015-07-24 06:41:42 -07:00
e81dfc3000 Merge branch 'master' into travis 2015-07-24 13:05:31 +01:00
328a413c59 Fix opencl crash in 'hole' variation 2015-07-24 13:00:28 +01:00
e16c6a825f --User changes
-Add variations filter/selection dialog.

--Bug fixes
 -Fix summary window not properly indicating the presence of pose affine.
 -Remove a file named Fractorium.aps which had been erroneously committed a year ago.

--Code changes
 -Use qobject_cast instead of dynamic_cast where appropriate.
 -Add more override keyword where appropriate.
 -Add variations list to settings for filter dialog.
2015-07-23 18:16:36 -07:00
63f52759ea Merge branch 'master' into travis 2015-07-23 15:56:56 +01:00
2019dcb605 --Code changes
-Forgot EmberMotion.h
2015-07-22 17:06:14 -07:00
fc7923e8af Merge branch 'master' into travis 2015-07-22 14:14:37 +01:00
3aa9e13194 --User changes
-Add Summary tab to the info dock, place existing bounds related info in a new Bounds tab.
 -Add a toolbar with the most common actions on it.
 -Remove old toolbar at the top of the library tab.

--Code changes
 -Refactor code to make a color visible on a background into VisibleColor() in FractoriumCommon.h
 -Add IsXformLinked() to determine if an xform is linked to another.
 -Remove SetPaletteRefTable() and GetQRgbFromPaletteIndex() from FractoriumEmberControllerBase and its derivations, unused.
 -Add FillSummary() to FractoriumEmberController. Call in Update(), UpdateXform() and other places where values are changed to force an update of the summary view.
 -Add export statements to FractoriumInfo.cpp.
 -Remove image parameter from SetPaletteTableItem(), it was a bad design.
 -InitToolbarUI() is now empty since toolbar initialization happens automatically. Leave as a placeholder.
 -Refactor code to get a palette color at a given index and convert it to a QColor to ColorIndexToQColor().
2015-07-15 20:27:32 -07:00
fb262c2469 --User changes
-Add motion support from Simon Detheridge at the ember level instead of just individual xforms:
  Add the ability to manipulate camera pitch, yaw and other goodies during flame rotation using a new element specified at the top-level of the flame.
  Create a new 'saw' motion function, so that these values can effectively be looped (e.g. yaw -1 to +1) over the course of a rotation.
  Add an offset to existing motion elements, to start them partway through their cycle. This would (for example) enable creating circular motion of xform affines, by combining two offset sine waves, one with an offset of 0.25 or 0.75.
  Fix loops in EmberGenome (they only had an on/off effect - this was broken in flame-genome as well) and make the loop count floating-point as well. For sequence animations, it's not necessary for clips to loop precisely if they're not designed specifically for the ES project.
  Similarly, there's no need for motion_frequency to be an integer value either so this was changed to allow motion that doesn't necessarily start or end at the loop boundary.
  I've attempted to keep each bit of functionality in its own commit.
  There's an argument as to whether to call the new flame motion elements <flame_motion/> (to differentiate programmatically) or just <motion/> (for consistency within the file) -- I opted for the former because it was easier to modify the xml parser that way.

--Code changes
 -Change FlameMotion.h to EmberMotion.h to keep the naming convention consistent.
 -Made elements of EmberMotion.m_MotionParams into their own type, MotionParam, which allows for CopyVec() to work.
 -Change m_FlameMotionElements to m_EmberMotionElements in Ember.
 -Use CopyVec() for EmberMotion instead of manual copy in copy constructors.
 -Add exports in Ember.cpp for EmberMotion.
 -Format eEmberMotionParam enum with one entry per line since it has many entries.
 -Use fabs() in XmlToEmber instead of glm::abs.
 -Minor formatting.
2015-07-06 21:36:46 -07:00
3a9ce0928f Merge branch 'motion-goodies' of https://github.com/gh2k/fractorium 2015-07-06 20:22:52 -07:00
0839d610c1 Merge branch 'master' of https://github.com/mfeemster/fractorium.git 2015-07-06 20:05:05 -07:00
570331adb5 --Bug fixes
-Allow for empty fields in template files.

--Code changes
 -When parsing, a boolean is not available to specify whether to use the default values if they are not present. This will be false for template files.
2015-07-06 20:04:38 -07:00
3fa59be990 Add new 'motion_offset' parameter to motion elements 2015-07-06 16:29:03 +01:00
efb39f8160 Make 'loops' param to EmberGenome work correcly, and convert to double 2015-07-06 16:15:58 +01:00
f606986b7d Apply flame motion elements when generating flame sequence for animation 2015-07-06 16:15:58 +01:00
679a8b4129 Serialise FlameMotion elements to/from XML 2015-07-06 16:15:54 +01:00
9d5f3e8578 Add new class to store flame motion parameters 2015-07-06 16:10:00 +01:00
d75a15136d Convert motion_frequency to floating point 2015-07-06 16:09:14 +01:00
1a37504b09 Add 'saw' motion function 2015-07-06 16:09:05 +01:00
40ff655be0 Merge branch 'master' into travis 2015-07-02 16:23:06 +01:00
957779639f Merge pull request #19 from gh2k/interference2-pow
Fix ambiguous call to 'pow' in 'Interface2' variation
2015-07-02 08:18:54 -07:00
9c7bd807b4 Fix ambiguous call to 'pow' in 'Interface2' variation
Fixes #8
2015-07-02 16:15:43 +01:00
448840f32b Merge branch 'master' into travis 2015-06-30 14:46:13 +01:00
fa3175aad1 --Code changes
-Better use of const functions.
 -Ember.pro should not define BUILDING_EMBERCL, instead define BUILDING_EMBER.
2015-06-29 20:13:53 -07:00
41a886fdac Merge branch 'master' into travis 2015-06-29 10:56:38 +01:00
770ff4622c --User changes
-Allow for continuous update during interactive rendering.

--Code changes
 -Make some variation related functions const where appropriate.
 -Use auto keyword more.
2015-06-28 17:48:26 -07:00
e8af1050b3 --User changes
-Eliminate delay when switching between single and double precision.

--Code changes
 -Variation tree and associated widgets no longer actually contain variation objects, only IDs.
2015-06-28 14:04:30 -07:00
4a235c7491 Merge branch 'master' into travis 2015-06-26 21:24:11 +01:00
3cd970a347 --User changes
Add linked xform support, with new button and icon on the xforms tab.
2015-06-24 20:49:09 -07:00
c43dfb6786 Merge pull request #18 from gh2k/osx-pthread-schedprio
Replace pthread_setschedprio for osx, as it doesn't exist
2015-06-22 07:26:02 -07:00
f51ff1e051 Replace pthread_setschedprio for osx, as it doesn't exist 2015-06-22 15:05:09 +01:00
3fc1645b7a Merge branch 'master' into travis 2015-06-21 09:51:58 +01:00
d80343a28b --User changes
-Better default/min/max sizes for docks/tabs.
 -Add a reset workspace menu item.

--Bug fixes
 -Order of affine scale up/down buttons was reversed from what's intuitive.
 -Projection was not properly being set when animating flames with 3D parameters.
2015-06-20 11:35:08 -07:00
5f3e70c6a8 --User changes
Allow for detaching of top level tabs in the dock widget so workspaces can be customized.
 Save workspace between runs.
 Only correct variation names/params during parsing when the source of the Xml file is not from Ember/Fractorium.
2015-06-17 20:05:53 -07:00
91006edf34 Merge branch 'master' into travis 2015-06-04 17:24:42 +01:00
5bd593b42f --User changes
Allow for setting rendering thread priorities from the command line and final render dialog. Currently only implemented on Windows.
 Show estimated time left on the final render dialog.
 Sort palette list by name, instead of by index in the palette file.
 Sorting can be flipped by clicking the column headers of the palette table.

--Code changes
 Remove unnecessary connect() statement in Variations tab.
2015-05-30 22:14:34 -07:00
1e88aa740c Merge branch 'master' into travis 2015-05-30 10:17:09 +01:00
c97946c660 --Code changes
Add DoubleSpinBoxTableItemDelegate.h to Fractorium.pro to get it building on Linux.
2015-05-29 21:57:09 -07:00
83ad93aadf --User changes
More efficient table on the Xaos tab when using xaos on a flame with a large number of xforms.

--Code changes
Use QTableView instead of QTableWidget for the xaos table.
Add custom DoubleSpinBoxTableItemDelegate for this.
Make row and column toggling functions work for QTableView and QTableWidget.
Remove some dead code from Fractorium.h/cpp
Miscellaneous hacks to keep it building on Linux.
2015-05-29 21:08:44 -07:00
64fdcbdfb2 Add travis config
This adds a travis config to build everyting on 12.04. Because 12.04 is quite old, there are a certain number of hoops that need to be jumped through in order to get things working. As a result, the build script is more complex than I'd like.
2015-05-28 14:23:35 +01:00
74056d4c31 Merge pull request #15 from gh2k/gcc-template-pedantism
Fix pedantic gcc error about missing template keyword
2015-05-27 08:09:15 -07:00
5707617312 Fix pedantic gcc error about missing template keyword 2015-05-27 15:51:21 +01:00
cb54605878 --User changes
Implement copying and pasting xforms between flames.

--Code changes
 Make palette filename be a shared_ptr<string> to avoid duplication.
 Ensure random seeds in RendererCL have no duplicates and are not zero.
2015-05-19 19:31:33 -07:00
48ccce69f6 Merge pull request #14 from gh2k/missing-qmake-file
Add missing FractoriumXformsSelect.cpp to qmake build
2015-05-18 06:45:05 -07:00