Skip to content

Repository files navigation

Skia-AliveGrid

A high-performance, custom-rendered FMX component for Delphi that provides a fluid, physics-based list interface. Built entirely on the Skia4Delphi graphics pipeline, it breaks away from traditional UI constraints to deliver a smooth, modern, and highly interactive user experience.

Prototype v0.2

Ask DeepWiki

2026-08-11.22-47-23_1_2_3.mp4
aymsoy

https://youtu.be/CmzZGL12WWs

✨ Key Features
-Real-Time Fluid Physics: The list items are not simple rectangles. They are constructed from a grid of interconnected particles using Verlet integration and constraint solving, creating a liquid, jelly-like wobble effect.
-Magnetic Control Dots: Each item features a magnetic indicator dot that snaps to the cursor when approached, providing tactile and intuitive feedback.
-Interactive Repulsion: Move your mouse over the grid, and the fluid items dynamically repel away from the cursor, settling smoothly back into place when the cursor leaves.
-Smooth Drag & Drop: Grab any item to drag it. The surrounding items fluidly swap positions to make room, and the dragged item snaps softly into its new slot upon release.
-Dynamic Intro & Outro Animations: New items organically flows up from the bottom of the screen into their correct positions and unfolds there to its final form. Removed items gracefully fall away.
-Optimized Rendering Pipeline:
Runs entirely on a separate background thread to keep the main UI thread at 0% load.
Uses a centralized ISkSurface caching system. Only dirty/changed regions are redrawn.
Achieves 0% CPU usage when idle.
-Flawless Resizing: Synchronized rendering prevents white screens, flickering, or crashes during window resizes. The fluid grid dynamically adds or removes particles to perfectly fit the new width in real-time.
-Media Support:
Load custom thumbnails for each item automatically.
KeepAspect (Letterbox) Cropping: Images are intelligently scaled to fit the thumbnail area without distortion, padding the edges smoothly.
-Integrated Text Caching for ultra-fast rendering of captions and file paths.
-1,8k lines so far…

📦 Installation & Usage

No manual code installation is required.
Zipped exe and sample project included.

Latest changes:
v0.2:
- Scrolling Support: Added full vertical scrolling logic,
including mouse wheel interaction.
- Custom Scrollbar: Implemented a dynamic,
smoothly fading scrollbar button for visual scroll indication
and direct dragging.
- Virtualized Slide Pool: Added a dynamic pooling system that
recycles slides based on the current scroll offset to handle
large item lists efficiently.
- Smooth Scroll Physics: Integrated fast-snap logic for slides
during fast scrolling, pausing heavy physics calculations to
maintain high frame rates.

🎨 Skia4Delphi Components:
Alive Progress/Loading circle https://github.com/LaMitaOne/SkiaAliveProgress
Audio Visualizer https://github.com/LaMitaOne/SkiaAVisualizer
CustomThreadedBase (this i use mostly) https://github.com/LaMitaOne/SkiaCustomThreadedBase
Skia-Flowmotion animated image grid https://github.com/LaMitaOne/skia-flowmotion
Skia-Slideshow https://github.com/LaMitaOne/Skia-Slideshow
Skia-Circlepopup https://github.com/LaMitaOne/skia-circlepopup
Skia-CubesPopup https://github.com/LaMitaOne/SkiaCubesPopup
Skia-Button https://github.com/LaMitaOne/SkiaButton
Skia Desktop Pet https://github.com/LaMitaOne/SkiaDesktopPetBase

🧪 Skia4Delphi experimental Components:
CustomMultithreadedBase https://github.com/LaMitaOne/SkiaCustomMultiThreadedBase
Page Control https://github.com/LaMitaOne/SkiaPageControl
Surface Widget/modules rendering engine https://github.com/LaMitaOne/MRX-Skia-Surface
LCARS fluid engine https://github.com/LaMitaOne/Skia-LCARS-Fluid-Engine
Fluid Magma effect https://github.com/LaMitaOne/Fluid-Magma-Effect

About

A high-performance, custom-rendered FMX component for Delphi that provides a fluid, physics-based list interface. Built entirely on the Skia4Delphi graphics pipeline, it breaks away from traditional UI constraints to deliver a smooth, modern, and highly interactive user experience.

Topics

Resources

Stars

7 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages