Skip to content

Releases: tooll3/t3

v3.9.3

08 Sep 17:11
Compare
Choose a tag to compare

Download

Installation and Setup

v3.9.3

This release adds an improved parameter window, profiler and and keyframe editing. And host of new and improved effects.

New Features

New Parameter Window

We completely redesigned the parameter window, making it easier to arrange and define parameter properties. The parameter order can now be adjusted via drag-and-drop, and features like scaling or parameter documentation are now more intuitive:

v3 9 3-parameter-settings

Improved Keyframe Editing

We greatly improved the usability of keyframe editing with the dope sheet view:

  • Clicking a layer now focuses on the animated operator.
  • Clicking to clear the selection no longer jumps the timeline.
  • All keyframes of an animated parameter can be selected by holding the SHIFT or CTRL keys while clicking.

This tutorial video highlights these improvements.

Snapping to timeline elements is now more precise.

Working with Time Clip Elements

We gave extra attention to the design of time clips. They are now randomly colored to make visual navigation easier. Snapping is more precise, and the context menu offers features like cutting a time clip.

Profiler

v3 9 3-profiler

The new IO Events view now supports profiling events and is extremely useful for analyzing performance, timing of log messages, and async events. It also supports logging OSC and MIDI events and exporting a range as a CSV file for use in spreadsheets.

Other Improvements:

  • Fixed accidental dragging of canvases when moving across the edge of a window panel.
  • The Parameter window and timeline area can now be dragged with the right mouse button.
  • The Gradient context menu is no longer cut off at the window border.
  • Changes to keyframe interpolation modes (hold, smooth, linear) can now be undone.
  • The curve edit popup can be dragged and resized.
  • Scalable canvases can now be zoomed with the middle mouse button if enabled in settings. This is especially useful when working with a tablet and pen.
  • The infinity slider can now be dragged with the right mouse button, which is useful when working near the window border.
  • Dialog and popup window sizes now correctly adjust to UI scaling.
  • Multi-input slots are now more intuitive and display a warning indicator if required inputs are missing.
  • Added hotkeys B and N to define a loop region.
  • Fixed incorrect scaling in the curve editor when using custom UI scaling.
  • Cleaned up the layout of the Render Video window slightly.
  • Output nodes are now easier to identify.

New Operators:

NDI Output

Thanks to MrVux for contributing the [NdiOutput] operator.

Using Game Controllers

Thanks to contributions by MrVux, you can now use [Gamepad] to receive input from game controllers, allowing for more interactive projects. This supports up to four controllers, perfect for multi-user experiences.

Newemka also contributed an excellent [GamePadExample].

More Operators

  • Sharpen: A great new image effect (thanks to Thomas Helzle).

  • ScreenCapture: Similar to [NdiInput], you can now use [ScreenCapture] to capture a display's content as a texture.

  • BoxGradient: A versatile new operator for generating shapes and patterns with rounded corners:
    v3 9 3 boxGradient

  • NgonGradient: Creates shapes with N sides and uses a Gradient parameter to define shading.

  • SetAttributeWithPointFields: Dynamically creates fields from points and uses them to modify other points.

  • CollapseVertices: A new method for distorting meshes.

Reading Variables

[GetIntVar] and [GetFloatVar] now feature type-ahead search for selecting context variables, and they display the variable name on the graph.

Improved MIDI Output

Thomas Helzle contributed several new [MidiOutput] operators for Control, Note, and Pitch Bend outputs, as well as an excellent [MidiNoteOutputExample].

Mesh Chunks

[LoadGltfScene] now supports mesh chunks, which can be used for rendering instances with different meshes.

[FollowMeshSurfaceForce] allows particles to follow a mesh surface, useful for effects like growing plants.

Operator Improvements

Video Playback

We completely rewrote the [PlayVideo] operator. While it still uses Multimedia Foundation, video seeking and rendering have been greatly improved.

Other Operator Improvements

  • Fixed [TransformPoints] rotation and stretch attributes; it now correctly handles the selection attribute.
  • [OrbitCamera] now features an OffsetPosition camera.
  • [TransformImage] now includes a .ResolutionFactor for proportional image resolution changes.
  • [WorleyNoise] cells can now be colorized with a texture.
  • [RenderWithMotionBlur] now supports content with an alpha channel.
  • [SSAO] now uses the render buffer's aspect ratio to avoid stretching.

Other Adjusted Operators

We used the new Parameter Window to improve the layout and formatting of many operators.

Under the Hood

  • We improved data recording, especially with OSC and MIDI inputs.
  • We added a [HitFilmComposite] importer that allows loading CamTrackAR videos with AR capture tracking information.
  • On mobile computers, mirroring a display with Windows can unexpectedly consume a significant amount of GPU resources (up to 30% on a Razer with an RTX 2080). We added an experimental setting to share the user interface on the second render view, ideal for giving talks or demos.

v3.9.2

01 Jul 19:25
Compare
Choose a tag to compare

Download

Installation and Setup

3.9.2

This release adds many improvements in stability and features. It also introduces a selection of new operators and effects.

Documentation

  • General improvements to documentation and parameter formatting for many operators

OSC Improvements

We completely rethought how OSC can be used in Tooll3:

  • Added [OscOutput] and completely redesigned [OscInput]
  • We can record and visualize OSC input in the IO window and improve the selection of OSC channels.
  • The Settings window now contains an OSC section that allows automatically listening for incoming OSC messages on a selected port. This can be super useful for debugging.
  • OscOutput now supports sending multiple floats and strings and can reconnect with a trigger parameter.
  • [OscInput] allows grouping and filtering of keys in key/value pair mode, which is especially useful when working with SuperCollider.

Added Midi Controller Support

  • Improved Apc40MkII adapter
  • Added APC Mini MKII

UI Fixes and Improvements

  • Allow zooming with the middle mouse button
  • Tweak layout of parameter popup in focus mode; add bypass and disable actions
  • Presets can include gradients that are blended with interpolation and step counts match
  • Rewrote beat tapping to increase precision when retiming with measure sync. Also added rounding when clicking with Ctrl
  • Messages in the console window can be copied to the clipboard by clicking on them
  • Improved pinning interaction

New Operators

New Image and Effects

  • [SubdivisionStretch] effect creates nice image distortions
  • [Pixelate] is a nice mosaic effect
  • [PlayAtlas] can be used to play a sequence from an atlas texture
  • [BoxGradient], [NGonGradient] generate abstract shape textures
  • [TextOutlines2] is a nice effect for drawing texts as MSDF outlines

String and Number Operators

  • [Spring], [SpringDampVec2], [SpringDampVec3], [DampFloatList] are great
  • [PickBool]
  • [FlipBool]
  • [SnapToMultiple]
  • [KeepStrings] can collect strings in a list
  • [BlendStrings] can mix with a nice scramble effect
  • [SubString] gets a section of a string
  • [PlayAudioClip] (experimental)

Improved Operators

  • Fix [SequenceAnim] timing with connected OverrideTime
  • Adjust [RepeatAtPoints] interwoven mode
  • [TextureMapForce]
  • Fix [ExtrudeCurves], [CombineMeshes] for some GPUs
  • Fix [RecomputeNormals]
  • [MidiOutput] now uses duration trigger to send off event
  • Optimize performance of [SetEnvironment] (especially with live update)
  • Add [OrbitCamera] override time parameter
  • Fix [DrawBillboard] Random rotation
  • Add [Blend] scale mode options for stretch (default), fit, or contain if images have different aspects
  • Improve [KeyColors] and add choke parameter
  • Add [SetRequestedResolution]
  • Add [MirrorRepeat] EdgeOffset parameter
  • Fix [TextSprites] update issue
  • [AbletonLinkSync] has an isConnected output
  • Add new [MakeTileableImageAdvanced] operator
  • Add [ProceduralMaterialExample] scene
  • Add [MakeTileableImage] operator
  • Improve [ParticleSystem] lifetime with automatic particle
  • Remove obsolete [TextOutline] and rename [RandomString] to [AnimRandomString]
  • Improve [PointsOnImage] performance and stability for larger images
  • [SequenceAnim] applies rate if override time is connected
  • Rewrote [SnapPointsToGrid] effect
  • [TimeClip] supports multiple inputs
  • The Phase parameter of [AnimValue] is now normalized to the Rate parameter
  • [SequenceAnim] allows easier recording of tapping (e.g., by connecting a [MidiInput] to .RecordValue)
  • Automatically disable rendering of [Group]s with zero opacity
  • [GetPointLightOcclusion] and fix [LensFlareSetupAdvanced]

New Examples and Tutorials

  • Added many Community Showcase operators and a set of [LookDevExamples]
  • [ProceduralMoon1x]
  • [CameraExample] and Views presets
  • [SnapToAnglesForceExample]
  • [DeformMesh] with Beta Spherize, Taper, Twist
  • [SamplePointColorAttributes]
  • [ShadowPlane]
  • New [UvsViewer] operator
  • [BoundingBoxPoints]
  • [TryParseInt] and [TryParseFloat]
  • Add [KeepPreviousFrame]

Further Fixes and Improvements

  • Fix bypassed operator sometimes broken after duplication or reload
  • Fix Space mouse interpolation
  • Fix accidental dragging of neighboring canvases
  • Disabled auto-scrolling in the console log window because it wasn't stable (you now have to enable it with the button)
  • Show new lines in the console log window
  • Fix MouseWheel edit for integer inputs
  • Fix audio output when rendering videos
  • AAC audio codec for video export
  • Fix rendering of image sequences if Render to Video window is open
  • Fixed crashes and improved stability
  • Fix inconsistent timeline scaling with non-default UI scale
  • Fix possible exception when using [PlayVideo] with incorrect video footage
  • Fix editing problems with tabbing through parameters with custom formatting
  • Fix shake detection if playback mode is not timeline
  • Fix clicking on snapshot and preset thumbnail if zoomed in

v3.9.1

14 Feb 22:46
Compare
Choose a tag to compare

Download

tooll-screenshot

Installation and setup

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

Highlights

Documentation Improvements

As more and more users discover Tooll3, we recognize the need to enhance the discoverability of its features. Despite having numerous video tutorials (with @a1x-unicorn doing a commendable job of adding even more), many of the awesome possibilities remain obscure due to inadequate documentation.

Initiated by @alixcarolan to address this issue, we invested significant time in polishing the documentation interface and content. Now, when hovering over the help icon, operators present their help. We've increased font size and contrast, and now provide detailed documentation for parameters.

While it's possible to create impressive projects without delving into the documentation, you might be surprised by the power and flexibility of many Tooll's operators. With the luxury problem of having too many cool operators, we've made a start with contributions from @ylmrx, @a1x-unicorn, @newemka, and many others for the most important building blocks. We'll continue this effort in future releases.

Wiki-page: Realtime rendering for artists

While documenting the building blocks, we realized that there's a lot of terminology that might be unclear or intimidating to artists. Fear not! We've created the [Realtime rendering for artists](https://github.com/tooll3/t3/wiki/help.RealtimeRendering) page to guide you through everything you need to know. And if you still have questions, join us on Discord. We'll answer your questions and add them to the page.

New Features

Super Fast Rendering with Audio

We've implemented a compute shader to automatically convert image buffers into a format optimal for rendering MP4s and screenshots. This results in a 10× performance improvement and, depending on your hard drive speed, allows rendering MP4s in real-time. Additionally, @HolgerFoerterer has implemented audio support for export, enabling the rendering of audio-reactive videos without the need to stitch them with ffmpeg.

To enhance the video rendering experience, we've added an increment version number checkbox. Now, you can keep the render video window open as a docked window and repeatedly hit "Start Render" to render out intermediate work steps.

Support for glTF File Format

With glTF steadily becoming the de facto file format for exporting 3D file assets, we've expanded Tooll3's capabilities beyond the traditional OBJ format. Powered by the [SharpGLTF package](https://github.com/vpenades/SharpGLTF), Tooll now supports a wide variety of glTF formats and features. We automatically load and combine textures into correct channel maps for [Physically Based Rendering (PBR)](https://github.com/tooll3/t3/wiki/help.RealtimeRendering#physically-based-rendering-pbr) shading. To support scenes with multiple materials, we've introduced the [DrawScene] operator, which handles the required draw calls to the graphics card.

Based on this first implementation, we plan to support more features, especially animation, rigging and driving the position and animation of mesh with by Points. We also plan to extend the SceneSetup handling to the OBJ-file format.

We really recommend checking out the official [Gltf examples](https://github.com/KhronosGroup/glTF-Sample-Models).

Synching to Ableton Link™

You can now use the [AbletonLinkSync] operator to connect to any application in your network that sends Ableton-Link™ synchronization. Because Ableton made this protocol available as a free standard, there is now a [wide range of applications](https://www.ableton.com/en/link/products/) that support this feature. Besides Ableton Live, there are Traktor, BitWig, Touch Designer, VVVV, and DJ hardware by Denon, Numark, Akai, Native Instruments, and many more.

This is huge, because AbletonLink not only sends the tempo (I.e. BPM rate) but also the syncing within a measure. And because all timing in Tooll3 is using bars, everything(!) now is syncing perfectly: Connect a [AnimValue] to a [Blob.Radius] -> voila: perfect sync. No more tapping at VJ acts!

Enhanced Point Structure

We've completely overhauled the point structure to support colors and stretching. This expansion significantly broadens the possibilities by combining various point operators. Read all about it [here](update.BetterPoints).

Bias and Gain + Vector2 Controls

What might initially seem like technical jargon for math enthusiasts actually reveals itself as a highly adaptable parameter that can be utilized across various operators. Its versatility is such that it would be nearly impractical to use without the addition of a fantastic new user interface we've integrated into the Parameter window. This interface allows for simultaneous dragging of both parameters and provides visual representations of the settings through distribution curves and weights.

We've already incorporated BiasAndGain into [Remap], [RandomizePoints], [FractalNoise], [RemapColors], [Tint], [LinePoints], [RadialPoints], [PerlinNoise], [ImageBasedForce], and numerous other operators. For a more comprehensive understanding of its application and potential, please refer to the linked video above.

Further Interface Improvements

  • You can now rename input parameters from the Editor.
  • Beat tapping interaction has been improved with added keyboard shortcuts Z (tap) and X (resync measure start).
  • UI scale and display scale settings have been improved for better compatibility with Windows' display scale settings like 125%.
  • Evenly distributing gradient steps with Hold interpolation now also shows the last step.
  • Formatting presets have been added to float and vector parameters for quick optimization of display, scale, and ranges.
  • Parameter window layout has been redesigned for easier reading, with parameter groups and long parameter names no longer cut off.
  • Switching between foreground and background control in focus mode is now easier.
  • Midi-Devices can be rescanned from the settings window without restarting Tooll.
  • Duplicating a symbol now keeps dropdown definitions.
  • A new Multiply Alpha blend mode has been added to most image operators for powerful masking.
  • Gradient manipulation now supports undo/redo.
  • Default camera position precision has been increased to perfectly align [Layer2d] pixels for feedback effects.

New and improved Operators

Image and Effects

  • [Dither] - Converts images into bitmap graphics.

  • [AdvancedFeedback2] - An alternative 2D feedback for fluid-like animations.

  • [ShardNoise], [WorleyNoise] - Generates abstract patterns.

  • [NdiInput] @mrvux contributed significant performance improvement and stability.

  • [RemapColors] now supports cycling and the new Bias parameter.

  • [ChromaKey] supports new output modes and improved quality.

  • [Tint] is enhanced with Bias and Gain for flexible color adjustment.

  • [GodRays] avoids stretching by the render target aspect ratio.

  • [DefineLensFlare] and [DrawLensFlares], [DrawLensGlares] these operators where previously hidden behind the [LensFlareSetup]. We cleaned them up and added documentation and presets to make it much easier to build customized lens flares.

Rendering

  • [LoadGltfScene] - Loads a glTF scene with all materials as a SceneSetup

  • [DrawScene] - Draws a scene.

  • [DefineMaterials], [UseMaterial] allow for more flexible material graphs.

  • [KeepBoolean] - Maintains the status of a boolean until reset to a default.

  • [FindKeyframes] - Allows access to keyframe positions and values for queue management.

  • [ConvertTime] - Converts between bars, seconds, and frames using the current BPM.

  • [DampAngle], [SubVec3], [Vec3Distance] - Vector manipulation operators.

  • [IndexOf] - Returns the position of a search string.

Points and Particles

  • [ParticleSystem] we overhauled the live-time and aging behavior of particles to make it more intuitive.
  • [RandomizePoints] - is a new super powerful method to apply deterministic variations to a point buffer. We built it from scratch to avoid homogenous non-periodic distributions (a fancy term for "no patterns or artifacts for large set of points"). To keep backwards compatibility for old projects, the we keep
  • [SnapVelocityForce] can be added to particle systems to snap align points to 45° or 60° angles which resulting in fancy looks especially when combined with [PointTrail].
  • [VolumeForce] now supports a cylinder type.
  • [RepeatMeshAtPoints] now supports stretching.

Utilities

  • [AbletonLink] - see above
  • [HasVec2Changed] - returns true is the change of a vector exceeds a threshold.
  • [RemapVec2] - remaps the value range of a vector

Internal Improvements

  • @domportera is making tremendous progress on refactoring Tooll to allow for more stable and flexible project setups. Eventually, this will enable the use of package management and the separation of user operators and resources.
  • We have made progress on the new magnetic graph that will be included in an upcoming version.
  • We have sped up keyframe acces...
Read more

v3.8.2

27 Nov 00:28
Compare
Choose a tag to compare

v 3.8.2 includes a couple of hot fixes and minor improvements.

Installation and setup

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

New Features

  • InfinitySlider for value manipulation
  • We added our new shader-based particle system. Check the [HowToUseParticles] and other examples to get started.
  • We aligned PBR rendering and material settings with Blender.
  • Fullscreen can be toggled with F11.
  • Focus Mode can be toggled with F12.

Documentation and Help

We understand that documentation and help are essential to getting the most out of Tooll3. That's why we spent significant time on this release improving the situation:

  • Comments can be added to operators. We completely reworked all howtos and added hundreds of comments that explain in more detail what's going on and what to pay attention to.
  • Operators can have external links to tutorial videos or documentation.
  • We made a new introduction video and tweaked a lot of usability features on the fly.
  • Cleaned up documentation for all [HowTos] tutorials.
  • We implemented an exporter to utilize machine learning-based spelling correction on all description and documentation texts.
  • We aligned the namespaces and names of many operators to make them more accessible.

Working with Graphs...

We spent a lot of time perfecting the graph workflow:

  • Clicking operators in the Symbol Library will insert them into the graph.
  • Operator inputs can be clicked to open the symbol browser.
  • Scroll canvas to avoid the open browser close to the edge.
  • Console log now shows startup messages.
  • Improved tooltips for many data types (show buffer size, types, and other details).
  • Improved design of annotations.
  • Improved font scaling of operator nodes.
  • Operators with string, Vec2, and Vec3 can be bypassed.
  • Tweak visual design of interactive operators such as Gradient, Value, String, SampleCurve.
  • Connected values are now correctly displayed.
  • Parameter values, curves, and AnimValue shapes are now correctly displayed on the graph before the first update.
  • Add a user setting to (disable) suspend rendering when the editor window is minimized.
  • Update Roboto font files to improve font rendering in the editor and tweak font sizes.
  • List keyboard shortcuts in settings.
  • Improve switching of focus mode.
  • Show playback speed multiplier when pressing L or J multiple times.

Further Improvements

  • Improve the layout of Settings windows to make it easier to navigate and scan.
  • Clicking a parameter resets to default and removes animations.
  • Drastically (10x) improve video export performance with the BRGA format converter.
  • Show helpful warning messages if Windows Diagnostic Tools are not installed.
  • Show a warning if "T3Editor.exe" is started instead of "StartT3.exe."
  • Add a popup editor for sample curve.
  • Add a user setting to reset playback position after stop.
  • Clear the parameter name after adding with the parameter dialog.

Fixes

  • Fix saving after "Fix files."
  • Fix 20+ crashes and exceptions reported by crash reports.
  • Restore window size after toggling fullscreen.
  • Fix the visibility of the time marker on 4k displays.

Development

  • Cleanup Utilities window and implement asset management with usage and renaming.
  • Align consistency of all shaders and folders.
  • Cleanup default images and folders.

New Operators

  • [ParticleSystem] with tons of forces and examples.
  • [MidiOutput].
  • [StartGlowStreak].
  • [GetBpm].
  • [DrawMeshCelShading].
  • [DisplaceMesh].
  • [CombineMaterialChannels] can be used to combine multiple images for Metallic, Reflectivity, and AmbientOcclusion into packed image for [SetMaterial]

Improved Operators

  • [Boolean] features color and improved design and usability.
  • [DirectionalBlur] now offers a refine pass for nicer creation of abstract designs. Also, check the new example.
  • [ImageLevels] now visualizes negative colors.
  • [PairPointsForSplines] computes orientation along the spline.
  • [Steps] has improved highlighting and offset.
  • [Blob] With improved scaling.
  • [SetMaterial], [DrawMesh], [DrawMeshAtPoints] now feature much improved rendering.

Noteworthy New Examples

  • [HowToUseParticles].
  • [BooleanExample].
  • [DirectionalBlurExample].
  • [CamPositionExamples].
  • [ParticleCollisionExample].

Fixes

  • [SSOA] now uses correct default values for new/far clipping.
  • [Camera] roll parameter now uses degrees.

v3.8.1

14 Nov 02:01
Compare
Choose a tag to compare

New Features

  • InfinitySlider for value manipulation
  • We added our new shader-based particle system. Check the [HowToUseParticles] and other examples to get started.
  • We aligned PBR rendering and material settings with Blender.
  • Fullscreen can be toggled with F11.
  • Focus Mode can be toggled with F12.

Documentation and Help

We understand that documentation and help are essential to getting the most out of Tooll3. That's why we spent significant time on this release improving the situation:

  • Comments can be added to operators. We completely reworked all howtos and added hundreds of comments that explain in more detail what's going on and what to pay attention to.
  • Operators can have external links to tutorial videos or documentation.
  • We made a new introduction video and tweaked a lot of usability features on the fly.
  • Cleaned up documentation for all [HowTos] tutorials.
  • We implemented an exporter to utilize machine learning-based spelling correction on all description and documentation texts.
  • We aligned the namespaces and names of many operators to make them more accessible.

Working with Graphs...

We spent a lot of time perfecting the graph workflow:

  • Clicking operators in the Symbol Library will insert them into the graph.
  • Operator inputs can be clicked to open the symbol browser.
  • Scroll canvas to avoid the open browser close to the edge.
  • Console log now shows startup messages.
  • Improved tooltips for many data types (show buffer size, types, and other details).
  • Improved design of annotations.
  • Improved font scaling of operator nodes.
  • Operators with string, Vec2, and Vec3 can be bypassed.
  • Tweak visual design of interactive operators such as Gradient, Value, String, SampleCurve.
  • Connected values are now correctly displayed.
  • Parameter values, curves, and AnimValue shapes are now correctly displayed on the graph before the first update.
  • Add a user setting to (disable) suspend rendering when the editor window is minimized.
  • Update Roboto font files to improve font rendering in the editor and tweak font sizes.
  • List keyboard shortcuts in settings.
  • Improve switching of focus mode.
  • Show playback speed multiplier when pressing L or J multiple times.

Further Improvements

  • Improve the layout of Settings windows to make it easier to navigate and scan.
  • Clicking a parameter resets to default and removes animations.
  • Drastically (10x) improve video export performance with the BRGA format converter.
  • Show helpful warning messages if Windows Diagnostic Tools are not installed.
  • Show a warning if "T3Editor.exe" is started instead of "StartT3.exe."
  • Add a popup editor for sample curve.
  • Add a user setting to reset playback position after stop.
  • Clear the parameter name after adding with the parameter dialog.

Fixes

  • Fix saving after "Fix files."
  • Fix 20+ crashes and exceptions reported by crash reports.
  • Restore window size after toggling fullscreen.
  • Fix the visibility of the time marker on 4k displays.

Development

  • Cleanup Utilities window and implement asset management with usage and renaming.
  • Align consistency of all shaders and folders.
  • Cleanup default images and folders.

New Operators

  • [ParticleSystem] with tons of forces and examples.
  • [MidiOutput].
  • [StartGlowStreak].
  • [GetBpm].
  • [DrawMeshCelShading].
  • [DisplaceMesh].
  • [CombineMaterialChannels] can be used to combine multiple images for Metallic, Reflectivity, and AmbientOcclusion into packed image for [SetMaterial]

Improved Operators

  • [Boolean] features color and improved design and usability.
  • [DirectionalBlur] now offers a refine pass for nicer creation of abstract designs. Also, check the new example.
  • [ImageLevels] now visualizes negative colors.
  • [PairPointsForSplines] computes orientation along the spline.
  • [Steps] has improved highlighting and offset.
  • [Blob] With improved scaling.
  • [SetMaterial], [DrawMesh], [DrawMeshAtPoints] now feature much improved rendering.

Noteworthy New Examples

  • [HowToUseParticles].
  • [BooleanExample].
  • [DirectionalBlurExample].
  • [CamPositionExamples].
  • [ParticleCollisionExample].

Fixes

  • [SSOA] now uses correct default values for new/far clipping.
  • [Camera] roll parameter now uses degrees.

v3.8.0

09 Nov 21:43
Compare
Choose a tag to compare
v3.8.0 Pre-release
Pre-release

Release notes pending

v3.7.1

23 Aug 21:21
Compare
Choose a tag to compare

This release fixes a number of possible exceptions and introduces some new features:

  • It now ships with a selection of gradient presets.
  • It allow create custom output resolutions.
  • You can enable an interaction overlay that visualizes pressed mouse or keyboard buttons which can be useful for recording tutorials.

V3.7.0

13 Aug 14: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

v3.7 Highlights

Improved Exporting

The player exporter now uses a published combined .NET binary. Although this binary is slightly larger, it contains all .NET references and dependencies, greatly improving the compatibility of the exported project.

Search Dialog

Ctrl+F now opens the search dialog, which allows you to quickly search the current composition, your project, or everything and quickly navigate between the results.

Quick Navigation

In Focus mode, you can use the cursor keys to quickly navigate between operators.

Midi Indicator and "IO Events" Window

The new IO indicator shows if any Midi devices send signals. On hover, you see a nice visualization of the inputs. Clicking the indicator will open the new "IO Events" window, allowing you to further inspect the data. We plan to extend this to OSC data and allow saving and replaying this data as animation tracks in the timeline.

Themes

You can now switch between different UI themes or customize the colors to your own taste:

Warning Indicators

We show small warning indicators on operator problems like shader compile errors or missing resources:

Crash Reporting (Safety First)

Well, sometimes things go bust. To improve stability, we now integrate sentry.io crash reporting. When you decide to submit a crash report, we will receive an email and look into the problem. As a bonus, we slightly improve the user experience by letting you know that there are always backups and where to find them.

Fixes and Improvements

  • Improved layout and usability of Add Input and Add Output dialogs.
  • Improved snapping to selected elements in Timeline.
  • Fixed accidental dragging of canvas elements when adjusting colors.
  • The activated blend snapshots are now highlighted.
  • In user settings, you can now prevent midi devices from being captured. This can be useful when working with DAWs while running Tooll.
  • You can set the step-through time speed in the user settings.
  • We fixed the save screenshot tool in the output window.
  • Improved the usability of curve editing.
  • Fixed the opening of the hidden main menu in Focus Mode.
  • Long strings and string lists can be scrolled in the output window.

More Notable Fixes

  • #279
  • We fixed file hooks and shader updating if those resources were not valid on startup.

Operators

Trigger Animations with MIDI

[MidiInput] has a new WasHit output that is useful for triggering animations.

New Operators

  • [GodRays]
  • You can use [CombineMeshes] to combine meshes and then use those for other effects like [DrawMeshAtPoints].
  • [VisualizeMesh] shows vertex IDs, normals, and other details.
  • [OpticalFlow] and [KeepPreviousFrame] can be used for nice effects. See example.

Operator Improvements

  • [MouseInput] now supports different output ranges for viewport or world space and the XY plane.
  • Many image Operators now support BlendModes like ColorDodge.
  • [ParticleSimulation] uses a better cycling algorithm.
  • Fixed line endings in [LoadObjAsPoints].
  • Renamed [PickPoints] -> [FilterPoints].
  • Improved the performance of [SimpleLiquid2].
  • Fixed the random distribution of [DrawBillboard].
  • [MidiInput] now shows a warning indicator if the selected device is currently not connected.
  • We greatly improved the precision of [PlayVideo]. This works especially well with frame-wise time stepping (see above). Rendering projects with videos will now produce consistent results.
  • [RandomizePoints] now supports a consistent RandomPhase parameter that is great for fast deterministic animations.
  • [VisualizePoints] is now visible by default (not just when toggling Gizmo Visibility in the output window).
  • [DrawLines] now supports parameters to implement dashed lines.
  • [VisualizePoints] now supports options to indicate vertex IDs.
  • Fixed the spreading of atlas texture in [DrawBillboards].

Behind the Scenes

  • We're continuing our effort to restructure the code into packages that will bring us closer to a Vulcan port. This will open the way to bring T3 to Linux and MacOS.
  • We're in the process of refactoring the particle simulation to support collisions and other effects.

v3.6.1

11 Jun 19:21
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
  • Operators can be bypassed
  • 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.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.