Web 3D-Development Library

taccgl™ Version 0.62

Introduces automatic allocation and packing of textures using a texture atlas. This saves texture space and removes various limitations

  • on page height and width and
  • on overlapping HTML elements.

It simpifies writing complex animations and elimiates the need to do manual texture allocation to save texture space.

Added method in this context is alloc.

Transitions created with the a method now per default do not have a texture space allocated. They have to either

  • call paint to implicitly allocate texture space and paint an HTML element on it,
  • use color (or bgColor and alpha(0)) to assign a color and to set the background opacity to 0 to go without a texture,
  • call alloc to explictly allocate texture space and to use 2D canvas drawing functions to create a texture, or
  • use material to reuse / share the texture space of another transition.

Old scripts that use a without one of these need an additional call to material.

The actor method now automatically allocates texture space by implicitely calling alloc. The canvas parameter of actor and paint is removed because the canvas number is now determined automatically, by the texture atlas allocation. mapActor now automatically allocates texture space.

Added methods opaqueShadow, clipFrom, clipTo, clipT, clipTFrom, clipTTo, clipR, clipRFrom, clipRTo. mapFrom, mapT, mapTFrom, mapTTo.

restrict was renamed to clip, map1 was renamed to mapTo, hvec was renamed to hV, hVFrom was added, hvec1 was renamed to hVTo wvec was renamed to wV, wVFrom was added, wvec1 was renamed to wVTo dvec was renamed to dV, dVFrom was added, dvec1 was renamed to dVTo. The old names are still available but should not be used for new projects. mapA and clipA are depricated and will be removed.

Clip and map functions now accept Position Specifications.

The methods acceleration, vBegin, and vEnd now accept vector and scalar arguments. So the scalarAcceleration method is no longer needed and will be removed.

Added and Changed matrix functions

The epilepsy warning message does no longer contain a checkbox (which was used in previous versions to suppress the message on subsequent page requests) since this functionality did require the use of cookies. Now the string parameter of the start method can be used.

taccgl™ Version 0.61

This release mainly contains many bug fixes and performance improvements. Also the tutorial was revised and many new pages added. New features are Position Specifications to simplify specification of coordinates and methods alpha and texCan. For taccgl_Multi the methods mult, getI, length, add, and union were added.

Changes for improving performance, mainly on mobile devices:

taccgl™ now automatically switches to per-vertex shading on slow GPUs and if this does not suffice also reduces rendering resolution. It also automatically enables and disables various features like shadows and per-fragment lighting, adjusts the 3D canvas size and selects among various shader versions.

taccgl™ uses the new disjoint_timer webGL extension, if available, to measure the GPU performance. Otherwise it constantly monitors the frame rate an adjust accordingly. See Performance.

taccgl™ now automatically detects device pixel ratio, browser zoom and pinch zoom and determines the required 3D-canvas and texture resolution. Texture resolution is automatically reduced to meet maximal texture size requirements of the GPU. taccgl™ also now detects a changed browser zoom level and triggers the onresize event, which is normally used to restart animations after resizing the window. If available taccgl™ uses the new visualViewport browser interface.

Various compatibility bugs were resolved, e.g. taccgl™ now detects the floating point precision of the GPU and adapts shaders accordingly.

Some parts of the interface were cleaned up: taccglShaderConfig.dynTex, and taccglOBJFile.read were newly introduced and functionality of taccgl.objFile was moved into taccglOBJFile.read. Methods flyIn and flyOut were renamed into from and to. color was renamed into bgColor, since this function actually sets the background color. A new version of color now makes sure that the color is indeed visible by setting alpha to 0.

taccgl™ Version 0.60 - Built 150902

Is a maintenance release fixing various bugs, adding normal calculation to the flip effect and a tutorial page on Using Custom Fragment Shaders.

taccgl™ Version 0.60

Besides various bug fixes, additional functionality for parallax scrolling and animations while scrolling have been added, see new blog article Parallax scrolling with 3D Acceleration:

taccgl™ Version 0.59

taccgl™ Version 0.58 09/15/2014

  • The transformController Class was added that allows the user to rotate and move an object or multiple objects as part of a scene with the mouse. This is demonstrated using the torus example on the home page.
  • A global/selected translation matrix (TM) was added that is useful for animating / transforming a set of transitions/elements/3D objects selected using useTM.
  • Some additional mathematical matrix operations were added. Most of the new and of the old not yet documented matrix operations were documented, see Matrix.
  • A taccgl_shadowFactor option was added to control darkness of the shadows, see Library Options
  • Some bug fixes and some fixes to the documentation.
  • A german version of the home page was published under www.taccgl.de.

taccgl™ Version 0.57 07/25/2014

Includes some important bug fixes, please update.

taccgl™ Version 0.56 New Features 06/19/2014

  • Now the development of mobile and responsive sites is explicitely supported and a beta, mobile version of the taccgl™ home page demonstrates this. Read more about development of Responsive and Mobile Layouts. Also the taccgl™ tutorial and most of the documentation pages now have a responsive layout.
  • The library now also works locally on file:/ / urls (see Installing the Library) and can so be tested without the need of a web server (local or remote).
  • The library now supports retina displays and can handle values of devicePixelRatio other than 1.
  • Newly documented methods NQCanvas, NQCanvas, LQCanvas and LQCanvas.

taccgl™ Version 0.55 New Features 05/20/2014

taccgl™ Version 0.54 11/14/2013

supports WebGL™ in Internet Explorer starting with IE 11. Also fixes a bug that made previous taccgl™ versions stop working with WebGL™ on Chrome version 31.

taccgl™ Version 0.53 10/29/2013 New Features

  • Display of shadows casted from 3D Objects on each other, from 3D Objects on HTML elements, and from HTML elements on each other and on 3D objects. See Shadows, Light and Shadow
  • Drawing of HTML elements with shadows thereon and drawing of shadows for being blended on top of HTML elements, see Shadow Only
  • Shadow control methods shadowOnly and castShadow
  • Methods for adjusting HTML elements in 3D space, posZ, resizeZ
  • LightSource Class with LightSource.setPos method
  • Improved taccgl.org homepage with examples using shadows
  • Various Bug Fixes

taccgl™ Version 0.52 8/27/2013 New Features

  • Updating of running animations: start can update animation steps while running begin no longer clears pending animation steps, but starts new steps running simultaneously. Animations can now be stopped with stop (taccgl Class) and animation steps with stop (taccglAnim Class).
  • Extended Mapping and Painting: allows you to paint elements on user defined coordinates (to animate long scrollable pages) and to paint enlarged elements to avoid quality degradation on resizing, see paint (see Note), mapScale.
  • Dynamic Resize of Vertex Buffers (in case the allocated size is too small)
  • Controller Class for processing of mouse events, new methods: useController, blockingController, forwardingController opacity, opacityatend, opacityFinal, instMouseOverFilter, instMouseOverFilterClass
  • Revised Home Page Layout and Revised Examples on Homepage, showing simultanous animations and stopping of animations
  • Various Bug Fixes

taccgl™ Ver. 0.51 7/30/2013 New Features

taccgl™ Ver 0.5, 05/21/2013 New Features

  • Automatic shader generation and Custom Shaders. Custom Shaders allow users to extend the built-in shaders and so to create a great variety of animations. See taccglShaderConfig Class, ssc, sc and ShaderGeneration
  • Improved Lighting with various configuration options, see defaultLighting,, Lighting Parameters for details.
  • Automatic handling of scroll and resize events to adjust a running animation, see setHandlers
  • Various additional methods: mSingle, defaultEye, adjustEye, setEndMode
  • Various bug fixes
  • New and improved examples
  • ZIP file now contains compressed version of the library. The current compressed library has about 119KB while the uncompressed version has about 174KB and about 4700 lines. Note that usually in addition the web server zips the file before transmission needing still significantly less bytes to transmit.

taccgl™ Version 0.4

Initial public beta version.

WebGL™ is a trademark of the Khronos Group Inc.

Next Page:Download
Previous Page: Performance