Go back to index

Abstract Maze Changelog

Generates 2D line in random directions
Draws curve down the line
Set distance between points

Generates forks starting from any point in the first line
Extra list added for each fork to have it's own curve

Rewrote code to allow for overlap checking
Added in an extra few lines to allow 3D generation

Added playback options, to see the generation of the lines
Added delete cube option

Added option to keep generation within an area
Stops the loop if the cube can't go anywhere
Turned cube movement into a function

Added minimum generation values with error messages
Added keying options
Set end time to the last calculation

Merged the playback and keying options
Set end time to the highest calculation
Added in a workaround to stop large values appearing before frame 0

Fixed workaround to work with the cubeSkip option

Fixed workaround to work with extreme values
Attempted rewriting the area code to optimise it (theoretically should have worked, but didn't)
Merged primary and secondary fork lengths

Added in calculation to automatically generate timing based on the inputs
Rewrote workaround code again to work with more extreme values
Added option to set seed

Added option for loops
Loops are generated at random time offsets
Each loop has a different prefix, up to a maximum of 12356630 (can be increased easily if needed)

Rewrote keying options
Area disables if using loops
Added levels of message output
Added option to automatically set the area new objects will be created in
Amount of loops changes speed of animation

Merged new keying with old keying to get better result
Improved auto keying options
Added time offset on new fork creation
Made the time offset decrease in maximum value as the generation nears the end

Edited the time offset to allow the opposite negative values
Removed option of playback during generation

Added option to set size of cube
Fixed the auto spacing calculation for multiple loops to work with different sizes

Grouped objects
Added option to offset the prefix by a certain amount

Added code to allow multiple generations in the same scene

Designed a basic user interface
Curves will no longer be created for single points
Starting key now based on the current position of time slider

Fixed grouping code
Output grouping messages

Added checkbox to group objects
Added randomly chosen tips to user interface
Fixed the start time of the animation
Disabled decimal points for generation

Optimised grouping
Optimised keying
Added option to make cubes only appear for a certain number of frames

Added option to allow the cubes to decrease in size
Set each fork to slowly decrease in length based on the amount

Fixed decreasing sizes to work with lower values
Outputs time taken
Optimised location lookup
Fixed branching to work with loops
Switched the grouping checkbox to branching
Added code to automatically set branching values

Wrote code to create sequence of colours
Added validation to check for existing materials
Modified branching code to work with colours
Assign colours to cubes

User can choose colour

Any number of colours can now be chosen
Fixed single colours not working
Ignores invalid values
Added validation to stop user submitting empty values
Fixed to work with loops and delete cube option

Added option to max out the range of values
Added option to change the ratio of colours
Added option to choose direction of generation
Calculates minimum values for colour exponential value
Updated colour detail to change based on number of colours

Optimised prefix calculation
Allows for the auto set loop distance to be set for individual directions
Updated user interface to select directions
If one colour is chosen, only creates a single shader
Invalid colour values now don't influence the smoothness

Added option to get the location of selected objects
Added validation to stop invalid objects from crashing the code
Improved the check for already existing cubes to work after the reduce size option was added
Fixed starting location to be accurate
Fixed colours to work with different cube sizes
Maxing out the range of colour values no longer crashes code when setting ratio

Added help messages to UI
Separated create shader function to allow other use of colours
Right clicking on colour input displays list of colours to enter
Added script to create appropiate submenus

Added variable to make direction more weighted
Updated to allow it to work in reverse
Added maximum range to randomise it for each fork
Turning generation to 2d now disables up and down directions
Fixed the check to stop two cubes being placed in the same spot
Added option to use older less accurate placement for speed increase
Displays an estimated speed increase from the quick generation

Option to set up viewport added (viewport 2.0 + ssao + motion blur + msaa)
Calculates overall percent complete
Percent updated to include assigning colours
Option to skip curve creation added
Percent code rewrote to allow for future additions
Percent updated to include deleting the cubes

Displays percentage in lower left box
Allows cancellation of code
Cancelling code will now cause jump to next section
Added display options to right click menu of generate
Added clear command to right click menu of entering colours

Added code to stop quick transitions in colour
Changed to run multiple times in a loop
Put in check to stop values too high
Added colour groups to dropdown menu
Disabling 3D will tick the create curve checkbox acordingly unless the user sets something
Viewport set code changed from checkbox to run when clicked
Added custom direction selection options to user interface

Created a camera which will follow a circle motion path around the generation
Circle now changed to a spiral going outwards
Option for multiple circle loops at the end added so camera won't stop
Unlinks the X rotation and points towards the centre
Added option to toggle the grid
Tracking now works on individual loops
Improved camera tracking code to work with most sizes
Moved key cube code to allow the camera to update when not using an animation
Fixed camera tracking to always point towards object

Moved prefix calculation into different function
Moved colour assigning into different function
Created file reading function
Store values for colour creation inside file
Colour can now be re-assigned after a generation
Added preview generation option into user interface

Locator stores number of cubes per generation
Cubes contain colour information for remapping colours
Improved efficiency so groups store all generation info and locator stores global info
Stored colour value within each cube
Replaced update shader code to work with any of the generations
Added option to list all cube groups
Set variable height based on amount of groups
Added validation messages for if updating colour does not work
Succesfully added loops to change colour on multiple generations at once

To do:
    match smoothness with smoothoverride
    >Store fork completion percent
    >Create new fork only when over 50%
Return to top