This is includes numerous changes, the most noticeable of which is the object list/editor on the left and the introduction of the RotatePoint.
1. The object list now uses one editor control for all objects. You can manually click the objects in the list or use Page Up, Page Down, Home, and End to navigate.
2. I’ve added the new Rotate Point type. This uses two points. The first point is the center of the area where the rotation will be displayed and the second point defines the center point of the source of the rotated image. By default these are the same unless you select the (X2,Y2) button to separate them. (The radius is currently fixed at 128 pixels.)
3. The source point will be displayed as a reticle without the circle around it.
4. Use the dropdown box to choose which type you want to add to the list.
5. The majority of the changes are refactoring/rearchitecting the render engine code and making it more extensible for future object types as this moves away from being a research project.
I spent a fair amount of work this release in moving to an MVC pattern with the UI in the hopes of making this a Win10 app to put in the store soon. Due to the buffer caching for performance reasons it’s still a memory hog.
I have a lot of ideas for new object types and effects but let me know if there are any in particular you’d like to see.
While I was testing my latest release (1.2) of Vibratium I encountered a puzzling error. It took me a while to track this one down. Hopefully someone else can learn from this.
TL;DR: solution is at the end.
Vibratium worked fine on my dev box, but on my laptop as soon as I added a Render Object the application would crash.
In the Application event log I got Application Error 1005:
“Windows cannot access the file for one of the following reasons: there is a problem with the network connection, the disk that the file is stored on, or the storage drivers installed on this computer; or the disk is missing. Windows closed the program Vibratium because of this error.”
This is primarily a performance update with a few changes visible to users.
1. The crosshairs button is labeled and indicates if it is active.
2. The app will now attempt to choose a ‘best’ drawing size to accommodate your screen size.
3. The project format is now XML. Unfortunately old projects will be unusable with newer versions of the app. If you want to keep them then open them in your current version and copy down the settings by hand. This should be a one-time breaking change, so it’s better to do it now with fewer users.
4. There is now only one file to copy – Vibratium.exe – and it’s smaller than previous versions. You can safely delete the old binary files (*.exe, *.dll).
5. You can control the individual gamma channels.
6. Frame rate, render time, and screen drawing times are now displayed in the status bar.
7. Memory usage is much more stable and smaller now.
8. SSE 4.1 support is detected upon startup. If the processor doesn’t support it a message will be displayed and the app will exit gracefully
Vibratium allows you to generate unique animations that would be impossible to do manually. This is done by combining the output of “render points,” which are wave-based animations, each centered at a single point.
Click the images above to view the 800×800 versions in new tabs. I especially like the red one as I somehow generated a triangle fractal pattern. (Note that it links to the bmp version which is ~2.4MB.)