Skip to content

Releases: tooll3/t3

v3.6.0

07 May 22:41
Compare
Choose a tag to compare

Installation and setup

  • Download end extract the zip-file from the Assets below
  • and follow the installation guide

Updates to v3.6

This release focuses on improving stability, performance, and quality of work. By caching certain operations and only updating objects when required, we've been able to more than double the performance for complex projects. Additionally, @domportera has significantly optimized the startup speed.

In addition to these improvements, there are tons of other features and enhancements in the 400 commits since v3.5. Here are the highlights:

New Features:

  • Playback settings are now stored differently, making it easier to switch between projects with timelines or external audio devices
  • ImageFx shader template
  • The Symbol Browser now uses statistical analysis to sort suggestions depending on your current selection and project. Pressing space after a search instantly switches to searching presets, making creating new Operators much faster
  • Improved user interface scaling when using T3 with custom DPI display settings
  • Significant improvements to the Undo/Redo behavior of many operations, including modifying parameters, key frames, and connections
  • Ability to connect multiple selected outputs with the same output at once
  • The Color Picker now shows color swatches used in your project, making it easier to align your design
  • The render speed indicator in the application header now prints statistics like Face Count / Draw-Calls, etc.
  • Added the “auto pin keyframes” mode to the Timeline Toolbar
  • Operators using a file picker can filter their options by type
  • Improved layout of the parameter view, making it easier to scan operators with many parameters
  • Gradients now support cubic spline interpolation for smoother color transitions
  • Tweaks to the graph render, including highlighting connection lines when hovering and highlighting all incoming and outgoing connections when hovering an operator
  • Optimized startup performance so much that you barely have time to see the new splash screen!

New Operators:

  • lib.3d.mesh.modify.BlendVertices: This operator blends the vertices of a mesh with matching topology, making it especially powerful with the RangeBlendSmooth modes.
  • lib.3d.mesh.modify.TextureDisplaceMesh: Use projected planar textures to display a mesh.
  • lib.3d.mesh.modify.WarpMesh2d: A simple helper that assists with projection mapping.
  • lib.3d.transform.RotateAroundAxis: Rotate the subgraph around an axis.
  • lib.3d.transform.RotateTowards: Rotate the subgraph towards a position or camera.
  • lib.img.fx.BlendImages: Smoothly blend between two connected images.
  • lib.img.fx.CustomPixelShader: A super-fast way to write fragment shaders from a string input.
  • lib.img.fx.MosaicTiling: This operator subdivides the incoming image into recursive tiles.
  • lib.img.fx.RgbTV: A realistic TV glitch effect.
  • lib.img.use.RenderWithMotionBlur: Render multiple passes of the connected graphs, resulting in super-crisp motion blur.
  • lib.io.file.LineTextPoints: Read SVG line fonts so they can be used for line renderings and animation effects. Check the example for more details.
  • lib.io.input.NDIInput (preview): Connect to available NDI sources.
  • lib.io.midi.LinkToMidiTime: Control the playback time by MIDI timing events.
  • lib.math.bool.DelayTrigger: Hold or delay a trigger signal.
  • lib.math.bool.FlipFlop: Hold a boolean value until it is reset to its default value.
  • lib.math.float.SmoothStep: Create a smooth step blending.
  • lib.math.float.Lerp: Linear interpolation between two float values.
  • lib.point.draw.DrawBillboards: A highly versatile new option for drawing points with random variations. It supports different billboarding methods and atlas texture.
  • lib.point.modify.CustomPointShader: A very fast method to experiment with compute shaders to manipulate points.
  • lib.point.transform.PairPointForSplines: Connect pairs of points and use their orientation to connect them with splines (think airplane flight paths).
  • lib.point.transform.PolarTransformPoints: Transform a planar point set into a cylindrical or sphere coordinate system. With this, you could take a world map SVG and turn it into a globe.
  • lib.point.transform.TransformSomePoints: Transform a set of points allowing for gaps. This can be used, for example, to scale every second point.
  • lib.string.BuildRandomString: A very versatile method to create random text effects. Explore the presets and get inspired.
  • lib.3d.gizmo.PlotValueCurve: A simple value that renders a value curve of the history of a value.

Improved Operators

We have made improvements to over 100 operators. Here are some of the highlights:

  • lib.io.midi.MidiInput now supports controller and key events sent by the same device.
  • lib.img.fx.FractalNoise now supports displacement by normal maps.
  • lib.3d.draw.Layer2d has been completely refactored to support different scale modes, such as fit height, fit cover, cover, etc.
  • lib.img.generate.RadialGradient now supports polar layout.
  • lib.point.modify.SamplePointAttributes now supports different transform spaces for translations, scaling, and rotation.
  • We have aligned and improved the readability of the names for [GetIntVar], [SetFloatVar], and [GetFloatVar] on the graph.
  • lib.img.fx.Blend has new and improved blend modes.
  • lib.3d.transform.Transform now has a pivot parameter.
  • Many image generators and effects, such as [Ringes], [Blob], [RadialGradients], [LinearGradients], have received blend modes and overall improved render quality.

v3.5.1

11 Dec 00:58
Compare
Choose a tag to compare

Installation and setup

  • Download end extract the zip-file from the Assets below
  • and follow the installation guide

In the last three months of Tooll we focuses on usability, quality and life and stability. But of course we snug in plenty of new features and effects too. The list is long so let's jump right in:

Interface

  • We added a New dialog the provides a selection of Operator templates to get you started: from a simple empty project to a ready made compute shader setup. It will create, name and setup all dependencies and directories for you.

  • You can now migrate your projects from other versions of Tooll: Open the dialog with Files > Import, select a directory with a Tooll installation. Tooll will then use your nickname to detect Operators that can be imported. It will also copy all your resources from the other version.

  • We completely overhauled the interface system: Window panels can how be docked and grouped making it much more intuitive to setup the perfect layout.

  • We rewrote the parameter editing gizmo to improve usability and readability.

  • Gradients can now be stored as presets.

  • In the rare event that something prevents the correct startup, Tooll will offer to restore the last backup. Backups are stored every 3 minutes and kept with decreasing frequency so not to clutter your hard drive.

  • We improved the layout of the Symbol Browser window to make it easier to discover useful Operators.

  • The console log window now shows an unlimited amount of lines and can be easily filtered. Hovering over a console log line will show its source which then can be clicked and focused.

  • Required inputs with a missing connection have a small indicator.

  • We restructured the application menu to for better readability.

  • Parameters can now have format overrides to display indicators for degrees, units or factors.

  • Rendering Video Sequences or Videos can now use the selected loop range.

  • We improved the design and usability of the Settings window.

  • Pressing the BPM? button will try to detect the current bpm for an audio input.

  • We improved the pixel alignment of key-frames in the timeline.

  • The Symbol browser now fades out non-relevant internal or Operators by other users.

  • We improved countless smaller details like icons, colors and layout and we added a small application icon.

  • Fixes

  • preview thumbnails are now properly scaled

  • We added a cycle check to prevents crashes.

  • Invalid value inputs will fall back to default instead of NaN.

Relevant Operators changes

We restructured the namespaces for all operators, wrote documentation and

  • [AnimValue], [AnimVec2] and [AnimVec3] now have a consistent set of animation types and new modes like endless, random and noise.
  • [Value] now can be used like a slider.
  • You can share textures with other applications through[SpoutInput] and [SpoutOutput].
  • Updated [LoadSvg] to support more svg primitives, corner rounding, better closing on shapes and optimization factor and supports translation for rectangles.
  • [Camera] now supports viewport shifting for anaglyph rendering.
  • Add [CustomPointShader] for live editing compute shaders.
  • Add [PickColorFromImage] to pick colors from textures
  • [SliceViewPort] and [DrawAsSplitView] can be used to slice the rendering into rasters.
  • [Sketch] can be used for annotations, feedback and storyboarding.
  • [FadingSlideShow] plays back the images in a folder with transitions and other effects.
  • [Group] supports color override for the complete subgraph which can be used to fade out graphs.
  • [ReprojectToUV] can be used for complex project mapping.
  • Renamed [RandomCamera] to [OrbitCamera]
  • [TextSpritePoints], [DrawPointSprites] and [DrawPointSpritesShaded] can be used for GPU accelerated text animations.
  • [GridPoints] now supports triangular and honeycomb tiling.
  • Add [SimpleLiquid] and [SimpleLiquid2] simulation effects.
  • [GetPosition] can be used to reuse a world space location.
  • [Blend] now supports Resolume like 50% blending (I.e 0% - 50% using selected blend mode and blending to normal above.)
  • [RenderTarget] has a new .IsEnabled parameter that can be used for caching
  • [DepthOfField] has an improved behavior and additional parameters.
  • [SetPointW] now supports textures.

Internal & Development

  • We switch to .net6
  • We restructured all namespaces and added a project wide T3 namespace
  • We added additional statistics that calculates the usage and dependencies for operators so we can faster sort out not-used obsolete Operators.

v3.4.0

27 Sep 23:43
Compare
Choose a tag to compare

Release notes for v3.4

Despite the summer holidays we pushed the project forward, focusing on stability, usability and documentation.

The highlights

Operator/Types/ folders is structured by namespaces

This makes it much easier to migrate between versions. From now on you can copy "your namespace" to the new Tooll release to transfer all your projects. This is also the basis for automatic migration features planned for with v3.5.

Copying Older projects to new T3 version

You may copy your old files from Operators\Types\user\yournamespace to the same directory in the new version of Tooll3 once your namespace is created there..

Render Sequence and Video

We can finally render content, Video and Still images with arbitrary frame rates and higher resolutions!.

We're busy working on the documentation

We've added "HowTo..." playgrounds for animation, operator types, points image effects an many more. This makes it much easier to pick up the basics.

User Interface improvements

The user-interface can now be scaled dynamically

r3 4-scale-ui

Your personal workspace

Tooll now asks for your username at startup and automatically sorts it in new operator types, Add -> User -> yournamespace is where you will find all your Types created in Tooll, they will also of course show up when you press TAB and begin entering the name of your custom made operators.

Welcome

The new HomeCanvas operator welcomes users with a short introduction and a list of interactive starter "HowTo's".

Improved color picker

The Color picker now has a cleaner layout and supports hex values.

Improved value ladder

Users can now use a value ladder, to quickly manipulate parameters in the parameter window anywhere they find them in Tooll.

Better Gradients

Gradient interpolation can now be set with a context menu and gradient presets can be stored in user settings.

Fast Screenshots

You can now quickly take screenshots from the output window toolbar.

Minimap for graphs

Enable the new mini-map feature to keep the overview in large graphs, you'll never lose your operators on the graph again!.

Scroll Canvas with keyboard

You can now navigate the graph canvas with keyboard shortcuts WASD.

Give me examples!

Operator descriptions in the parameter window are now searched by the quick create widget (TAB key). This allows you to search for synonyms like "LFO" for [AnimValue] or "filter" for [Damp]. It also lists related operators below the description so you can drag them right into your graph.

Even more...

  • Dragging the transform gizmo is more stable now.
  • Working with nested time clips has been improved significantly.
  • Nested annotations are now moved with their parents.

Performance

  • Many compute shader buffers are now only rebuilt when required.

Stability

  • As always we're committed to making Tooll more stable and user friendly. We've fixed countless crashes, bugs, inconsistencies and documentation.

Project documentation

As more and more people are joining the project we're refining our documentation on the wiki pages. Yes, there is a long way to go (we could definitely use some help on that front) but we're making progress. We're also working hard on sorting and prioritizing bugs and feature-requests into the Roadmap. Check it out, if you are curious about what we have planned for the next release. And don't hesitate to submit feature requests or join the discussion on Discord.

New Operators

Here are some noteworthy new building blocks:

  • lib.3d.mesh.LoadGltf - is a first basic implementation the we're going to expand in the next versions.
  • lib.3d.mesh.Ngon - generate circular meshes.
  • lib.points.PointsOnMesh - a very powerful feature that uses CDF to evenly distribute points on arbitrary meshes. It also supports mesh selections.
  • lib.point.SetPointW - allows to control point weights from an input curve.
  • lib.point.OrientPoints - can be used to make points rotate towards a point.
  • lib.point.SnapPointsToGrid - moves points onto a virtual grid. The produces very interesting effect, esp. when partially applied and combined with [SelectPoints].
  • lib.point.MeshAsSpheres - draws points as PBR shaded spheres.
  • lib.anim.SequenceAnim - a very nice operator for procedural animations.
  • lib.img.fx.Combine3Images - a flexible swiss army knife for image combination.
  • lib.img.fx.BubbleZoom - a bubble zoom! try it out
  • lib.img.fx.ColorGradeDepth - a new color grading tool that uses depth buffer for advanced adjustment effects.
  • lib.exec.Group - combines the multiinput of [Execute] and with the transform parameters of [Transform].
  • lib.io.VideoClip - plays video clips and allows basic non-linear editing.
  • lib.io.MidiClip - a first proof-of-concept for importing and using value channel clips to drive animations.
  • lib.mesh.LoadObj - now supports quad-meshes without texture coordinates and a scale factor.
  • lib.math.bool.Trigger - shows up as nice little button on your graph canvas. Nice for testing.
  • lib.math.float.DetectPulse - can be helpful to detect sudden movements in sensor values like Osc or Audio levels,perfect to detect beats or hits.
  • examples.howto.HowToAnimate
  • examples.howto.HowToUseTooll
  • examples.howto.HowToUseOperators
  • examples.howto.HowToUseImageEffects
  • examples.howto.HowToDrawThings
  • examples.howto.HowToDrawPoint

Contributions

As the main contributor this release was everything I have hoped for! We now had 35 pull requests from 10 contributors with more and more sophisticated features like Video Playback, Video rendering, Midi file import, mesh generation, OSC performance, documentations and of course many many bug fixes.

Here are just and few: dddd, mrvux, noice, sphynxcolt, 1x, imdom, nodeus, hollyhook, r8bhavneet, Thomas Helzle, Alkama, and... wait for it... deadmau5.

We also want to thank the active, lovely community on discord with people like: Sense, Gaspode, rawr!, SonikBuster, dBiz, veiss, raztaman. It's incredible to be part of this crowd.

v3.3.0

15 Jul 21:14
Compare
Choose a tag to compare

v3.2.0 stand-alone preview

26 Jun 12:40
Compare
Choose a tag to compare
Pre-release

This is preview release of T3 that does not require and IDE Visual Studio. Its primary purpose is to check compatibility on various windows systems.

However you still need to install the following dependencies: