June 28th, 2024

Show HN: Thermion, an open source 3D rendering toolkit for Flutter and/or Dart

Thermion is a Dart and Flutter framework for cross-platform 3D app development. It includes thermion_flutter for embedding rendering surfaces and thermion_dart for viewer creation, offering scene management, rendering control, and more.

Read original articleLink Icon
Show HN: Thermion, an open source 3D rendering toolkit for Flutter and/or Dart

Thermion is a framework designed for creating cross-platform 3D applications using Dart and/or Flutter. It consists of two main packages: thermion_flutter for embedding a rendering surface in a Flutter app, and thermion_dart containing the code for creating a viewer. This structure allows for flexibility in rendering within both Flutter and non-Flutter applications. The ThermionViewer class in thermion_dart offers functionalities like scene management, rendering control, camera manipulation, animation, entity transformation, collision detection, and input handling. Developers utilize this class to build and control the behavior of their 3D applications. The ThermionFlutterPlugin class manages platform-specific initialization to embed a Filament rendering surface in a Flutter Widget, handling texture creation and application lifecycle. ThermionWidget, a Flutter widget, displays 3D content rendered by a ThermionViewer, managing texture creation, platform adaption, initialization handling, seamless integration within the Flutter widget tree, and resize handling for correct scaling of 3D content.

Related

Tachyonfx: A library for creating shader-like effects in terminal UIs

Tachyonfx: A library for creating shader-like effects in terminal UIs

The "tachyonfx" library on GitHub enables shader-like effects in terminal UIs with color transformations, animations, and complex combinations. For more information or assistance, reach out for support.

HybridNeRF: Efficient Neural Rendering

HybridNeRF: Efficient Neural Rendering

HybridNeRF combines surface and volumetric representations for efficient neural rendering, achieving 15-30% error rate improvement over baselines. It enables real-time framerates of 36 FPS at 2K×2K resolutions, outperforming VR-NeRF in quality and speed on various datasets.

Niantic Studio: Free Browser-Based 3D and AR Game Engine in Beta

Niantic Studio: Free Browser-Based 3D and AR Game Engine in Beta

Niantic Studio in open beta improves features and documentation. It's a real-time XR visual editor and game engine for crafting immersive 3D and XR experiences on the web browser without software downloads.

Homegrown Rendering with Rust

Homegrown Rendering with Rust

Embark Studios develops a creative platform for user-generated content, emphasizing gameplay over graphics. They leverage Rust for 3D rendering, introducing the experimental "kajiya" renderer for learning purposes. The team aims to simplify rendering for user-generated content, utilizing Vulkan API and Rust's versatility for GPU programming. They seek to enhance Rust's ecosystem for GPU programming.

Show HN: I built a large JavaScript powered flipdisc display. Here's a guide

Show HN: I built a large JavaScript powered flipdisc display. Here's a guide

Flipdisc displays, or flip dots, use electromagnetic pulses to switch colors. A project details building a large interactive display for offices, covering construction, power, software, and design considerations. It aims to explore real-time visualizations and user interactions, hoping to make flipdisc technology more accessible.

Link Icon 5 comments
By @Hannnes - 7 months
Hi! The (front end) developer of prouder here.

I was really glad that I found this toolkit just before we released our app. We were previously relying on Google's other 3D viewer (because of course they have two), model-viewer, embedded in a web view.

Thermion has solved a lot of the problems we had with the old web view solution, (performance issues, load times, transparency, etc.) so I'm happy to contribute back to the project in any way I can!

By @satvikpendem - 7 months
Curious how this relates to Flutter's own 3D support they showed off in Impeller. Does this use a web view at all or does it natively embed into Flutter? I saw there were ports of three.js to Dart but that's basically embedding everything in a web view.
By @localfirst - 7 months
spent some time with flutter/dart and boy oh boy was it tough

you have to spend a lot of time deciding which state management to use theres a lot of packages you have to choose from and it was exhausting

this looks like it could produce smooth 3d experience but i ended up using babylon.js with electron

By @julienreszka - 7 months
I tried the playground it looked really slow/not performant. Is this only on my side?
By @zalnyx1984 - 7 months
What version of flutter does it require?