Skip to content

Releases: brianchirls/Seriously.js

Release 2015-09-08

08 Sep 14:38
Compare
Choose a tag to compare

New Features/Improvements

  • Correct Gamma blending applied to select plugins (#86) (accumulator, blend, blur, directional blur, split)
  • Change canvas output to premultiplied alpha (#88)
  • Added barsRate parameter to TV Glitch effect (#82)
  • Displacement Map effect: ability to select source channels for horizontal and vertical displacement (options: 'red', 'green', 'blue', 'alpha', 'luma', 'lightness', 'none')
  • All plugins with time input standardized as time rather than timer (#90)
  • Add startColor input to Accumulator effect (#23)
  • Move base shader strings outside of Seriously constructor
  • Channel mapping example is now mobile friendly
  • Modified Three.js target example to demonstrate transparency
  • Three.js examples use PlaneBufferGeometry instead of PlaneGeometry
  • Added a name to all shaders for debugging with Chrome Shader Editor Extension
  • More verbose shader linking errors
  • Added mod option to number inputs
  • Time parameters passed through a modulo operation. Noise functions don't like very large numbers provided by Date.now(). (#90)
  • Refactor color validator functions for performance and code clean-up

Bug fixes

  • Broken canvas option in three.js target plugin
  • Divide-by-zero bug in chroma effect shader #80
  • Common shaders failed to rebuild when restoring lost WebGL context
  • Destorying Seriously instance fails to clean up node objects (#92)
  • Changed UMD header for all files so they work with CommonJS (#85)
  • Three.js source example: fix NPOT texture
  • Sources and targets now accept elements in same-origin iframes #102
  • Correctly set colors by name - was broken in upcoming versions of Chrome

New Plugins

  • Color Temperature effect
  • Color Look-Up Table effect (#96)
  • Optical Flow effect (#97)

New Examples

  • Color Look-Up Table (#96)
  • Optical Flow (#97)

Misc.

  • Update included version of three.js to r71
  • Code clean-up

Release 2014-10-26

26 Oct 19:49
Compare
Choose a tag to compare
  • Update version of Three.js to r69
  • Patch Three.js Target example to work with r69

The latest release of Three.js keeps its own record of the latest shader program assigned to the WebGL context, and it does not update the shader if it thinks it hasn't changed. Seriously.js uses the same context and uses its own shaders. So it is necessary to call the resetGLState method on the THREE.WebGLRenderer instance before each render pass to force it to update the shader program.

Release 2014-10-13

13 Oct 14:22
Compare
Choose a tag to compare

New Plugins

  • Crop effect
  • Pixelate effect
  • Three.js texture target (#61)

New Examples

  • Crop example
  • Three.js texture target (#61)

New Features/Improvements

  • Workaround for lack of video texture support in Internet Explorer (#68)
  • Validate Transform node inputs (#40)
  • Target node type plugins (#60)
  • Added utility methods to Seriously for detecting whether an object is a node of any given type
  • Optimize enum validator
  • Better/more unit tests for blocking reserved names
  • Retain id property on destroyed nodes
  • More robust handling of lost WebGL test context
  • Added unit test for Chroma Key effect
  • Remove redundant memory copy in Array source
  • Optimize Emboss effect, added min/max to amount
  • Improve enum input setup and validation
  • Default input values work for transform nodes (#59)
  • Refactor video source rendering. Cleaner code, more reliable.

Bug fixes

  • Secondary WebGL target was failing to render
  • Target node .inputs changed to a method to match other nodes
  • Transform .inputs() no longer reports methods
  • Fix case-insensitive enum validation
  • Multiple Canvas Targets unit test was not cleaning up after itself
  • Blur was not rendering when amount <= 0.1
  • Secondary WebGL targets were rendering at wrong size/aspect if placed after a transform
  • Fixed texture shape/size in mirror effect
  • Remove branching from split shader (#69)
  • Remove branching from Chrome Key shader (#69)
  • Linear Transfer example works in IE11 ('input' event not supported)
  • Fix broken hex values for color input elements
  • Make sure asynchronous unit tests don't leak plugins
  • Sizing wasn't working for Layers effect when sizeMode set to a specific layer
  • OpenGL blendFuncSeparate now support ZERO
  • Fixed lost context unit test in IE11

Misc.

  • Fixed index page for Internet Explorer
  • Update included version of three.js
  • Clean out unnecessary code and junk comments

Release 2014-07-25

25 Jul 20:04
Compare
Choose a tag to compare

New Features/Improvements

  • Ability to set default input values on any effect as an option #59
  • Changed TV Glitch time to be based on seconds, not milliseconds
  • Auto scaling for Camera Shake #44
  • Allow effects to become "ready" even if unneeded sources are not ready
  • Don't need to resize Select effect and all subsequent nodes on every draw
  • Callback function in go provides high-precision time as first parameter
  • Exposure effect makes more sense

New Plugins

  • Color Select effect
  • Mirror effect
  • Three.js source plugin
  • Fast Approximate Anti-Aliasing (FXAA) effect
  • Gradient Wipe effect

New Examples

  • Mirror examples, image and camera
  • Three.js source example
  • Gradient Wipe example

Bug fixes

  • Fixed broken scanlines effect
  • Update Source node when src changes (#63)
  • Fix incorrect value from checkboxes
  • Safer handling of lost context

Misc.

  • Remove html5slider (#47)
  • Move video source into a plugin

Release 2014-05-06

06 May 18:26
Compare
Choose a tag to compare

New Features/Improvements

  • Recover from lost WebGL context (#14)
  • Blur example animated to test speed of blur
  • Edge effect optimized
  • MediaLoader utility library for loading video/image via drag/drop or file input
  • Allow setting of colors for Simplex Noise output
  • False Color effect can account for alpha values in target colors
  • Add height and width to color generator effect (#57)
  • Advanced Color adjustment blend modes (#53)

New Plugins

  • Depth Map source loads for Android camera Lens Blur mode
  • Displacement Effect
  • Vibrance Effect (similar to saturation, but more subtle and cleaner)
  • Spherical Panorama Effect

New Examples

  • Depth Map and Displacement
  • Dynamic Fog, with depth map
  • Color Generator
  • Spherical Panorama
  • Multiple Canvas Targets (#55)

Bug fixes

  • Target and Effect nodes do not render if they're not ready (#56)
  • Correct rendering to secondary WebGL target nodes (#55)
  • readPixels working for all node types, including transform
  • Remove webglcontextlost listener on discarded test canvas
  • Unit tests were not passing when WebGL not supported
  • Fix broken "channels" effect
  • Dirty state will not push from any node connected to 2+ inputs on the same node.
  • Blur effect should not destroy the baseShader
  • TV Glitch breaks if resized before initialized
  • Fix name of "subtract" blend mode in accumulator effect
  • Fix subtract blend mode to match actual photoshop behavior
  • Fix blend effect crash on resize if either source is missing

Misc.

  • Unit test for secondary WebGL target nodes
  • Added misc. unit tests
  • Clean up shader code
  • Added CONTRIBUTING.md
  • Misc. code lint fixes

Release 2014-04-08

08 Apr 17:44
Compare
Choose a tag to compare

New Features/Improvements

  • Effect and Transform nodes are more inspectable
    • title and type properties
    • inputs method for reporting details on all inputs
  • Added width and height read-only properties on source nodes
  • Camera source accepts getUserMedia constraints
  • "resize" event fires whenever a node is resized, either explicitly or by a source node
  • Debug logging improved to use warn and error where appropriate
  • logging methods can be overridden for suppressing errors or logging to a server
  • Errors throw proper objects, not strings
  • Added 'none' scaling mode to "reformat" transform

New Plugins

  • Accumulator effect
  • Freeze Frame effect
  • Throttle frame rate effect

Bug fixes

  • checkSource returns false if image fails to load
  • Fixed missing and incorrect values for some color names
  • Fixed UMD wrapper for all modules
  • Fixed blend effect shaders that were failing compilation
  • Blend effect was completely broken in IE11
  • Blend effect was rendering incorrectly at low opacity setting

New Examples

  • Blend: test all blend modes
  • Accumulator
  • "Drunk Video" example, demos accumulator and camera shake

Unit Tests

  • Check for all CSS3 color names
  • Added tests for target node getters
  • Unit tests pass without WebGL support
  • Added tests for error/warning logging
  • Added test for "resize" event
  • Added tests for node info methods/properties

Misc.

  • Updated documentation to reflect better WebGL and CORS support in browsers
  • Updated copyright year
  • Cleaned up shader code for consistency and readability

Release 2014-01-14

15 Jan 04:04
Compare
Choose a tag to compare

New Features/Improvements

  • Node event listeners (ready, unready, resize, render)
  • Support string input types
  • Initialize node shaders earlier to eliminate jank when connecting nodes
  • Reduce jank and GPU resource usage with shared effect shaders
  • Transform node inputs can now watch form elements
  • Source type plugins
  • Every instance of Seriously now has an id
  • resize callback in Transform plugins

New Plugins

  • Expression effect
  • Polar Coordinates effect
  • Checkerboard generator effect
  • Select effect (pick one of multiple inputs)
  • Camera Source
  • Array/Typed Array and ImageData moved into Source plugins

Bug fixes

  • Fixed clean-up of destroyed transform and effect nodes
  • Do not set image source as ready if image fails to load
  • Fix TV Glitch effect bug when dimensions are not set correctly or early enough
  • A node cannot be its own source - throw error to avoid infinite loop
  • Improved alpha blending
  • Node dimensions are rounded down to integer
  • Add black to pre-computed color names that Chrome doesn't provide
  • Better loading when mixing AMD and non-AMD environment
  • Fix compatibility test in Safari
  • Fix cross-origin security check in Safari (#37)
  • Workaround for Firefox webcam/getUserMedia bug (#38)

New Examples

  • Camera Source
  • Select Effect