30 open-source projects similar to googlewebcomponents/model-viewer, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Model Viewer alternative.
model-viewer is a web-based 3D model viewer provided as a web component for rendering interactive three-dimensional assets and animations directly in a browser. It functions as a specialized GLTF web renderer designed to display GLTF and GLB files with settings optimized for performance and quality. The project includes a WebXR augmented reality player that projects 3D models into real-world environments using mobile device cameras and spatial tracking. It also features a visual regression testing tool capable of generating golden images and comparing renders to detect visual regressions in 3
A-Frame is a declarative 3D scene engine and WebXR framework used to build virtual and augmented reality experiences directly in the web browser. It utilizes an entity component system where generic objects are assigned behaviors through attachable components and lifecycle hooks. The framework allows the assembly of immersive environments using HTML-like markup to define geometries, lighting, and materials. It implements WebXR standards to ensure consistent playback across different hardware and browsers, including support for VR headsets, desktops, and mobile devices. The system covers a br
This project is a WebGL 3D game engine and comprehensive suite of tools for rendering high-performance 3D graphics and interactive scenes in the browser using WebGL and WebGPU. It provides a dedicated WebXR framework for building augmented and virtual reality experiences that run directly in a web browser. The engine includes a specialized Gaussian splatting renderer for displaying 3D point-cloud data to create photorealistic environmental captures. It utilizes a glTF asset pipeline to load and stream compressed 3D models and textures for efficient asset delivery. The system covers real-time
f3d is a fast 3D model viewer and rendering engine designed for visualizing 3D meshes, CAD files, and point clouds. It operates across multiple deployment profiles, functioning as a lightweight desktop application, a scientific data visualizer for volumetric and scalar datasets, a headless rendering engine for automated image generation, and a WebAssembly-based renderer for web applications. The project distinguishes itself through specialized support for Gaussian Splatting scene reconstructions and the ability to visualize complex scientific formats such as VTK, NetCDF, and HDF. It features
This project is a creative coding showcase and interactive 3D portfolio template. It utilizes JavaScript and ThreeJS to render a navigable browser environment for presenting professional projects and digital artwork. The project implements a WebGL interactive gallery and immersive digital showcases. These environments use hardware-accelerated graphics to provide 3D navigation and creative web animations. The technical implementation includes a 3D scene with camera movement and lighting, supported by GLTF model loading and raycaster-based interaction. The architecture employs an entity-compon
AR.js is a web-based augmented reality framework used to create immersive experiences directly in a browser using WebGL and WebRTC. It provides a cross-platform runtime that executes on mobile devices and head-mounted displays without requiring a dedicated application installation. The framework includes a marker-based engine for detecting physical patterns or barcodes to anchor digital overlays, a location-based tool for positioning entities via GPS coordinates, and a face tracking library for anchoring content to human facial features. It supports multi-marker simultaneous tracking, custom
Pannellum is a WebGL panorama viewer and virtual tour framework used to render equirectangular or cubemap images as immersive 360-degree environments. It functions as a multiresolution image renderer and a panoramic video player, supporting both static images and spherical video playback. The project distinguishes itself by its ability to handle extremely large, high-resolution panoramas through multiresolution tile generation and loading. It enables the creation of interactive virtual tours by linking multiple panoramic scenes together using transition fades and interactive hotspots. The sy
Kaolin is a PyTorch 3D deep learning library providing a comprehensive suite of tools for 3D geometry processing, physics simulation, data visualization, and gradient-based rendering for computer vision. The library includes a differentiable 3D renderer and a geometry processing toolkit for converting and transforming 3D representations such as meshes and point clouds. It also features a 3D physics simulation engine to calculate physical interactions and collisions between three-dimensional objects and scenes. The toolkit provides utilities for 3D data visualization, including the creation o
Panda3D is a cross-platform game engine and 3D graphics rendering system developed for Python and C++. It functions as a comprehensive framework for building interactive 3D applications, providing a real-time physics simulator and a specialized 3D asset pipeline tool. The engine distinguishes itself by combining a high-performance C++ core with interoperable Python language bindings. It utilizes a scene graph architecture to organize 3D objects and provides a pipeline-based asset conversion system to optimize models and textures for runtime loading. Its capability surface includes low-level
This project is a community-driven directory of software resources, libraries, and tools designed to support iOS application development. It serves as a centralized reference point for developers, organizing a vast ecosystem of third-party components into a searchable, structured index to facilitate discovery and project integration. The repository distinguishes itself through its collaborative curation model, which aggregates disparate utilities into a single, maintainable catalog. By leveraging a flat-file documentation structure, it provides a clear overview of the tools available for nati
ORB_SLAM2 is a visual simultaneous localization and mapping system that tracks camera movement and builds 3D environments from image data. It functions as a real-time visual odometry tool and sparse 3D reconstructor, computing the position and orientation of a camera while generating a point cloud map of a physical space. The system utilizes a camera relocalization engine to identify a camera's position within a known map after tracking failure or system restarts. It incorporates a spatial tracker to enable the precise insertion and composition of virtual 3D objects into real-world planar reg
This project provides a web component time element that extends the standard HTML time tag to display human-readable relative timestamps and countdowns. It functions as a relative time formatter and time duration calculator, converting timestamps into localized strings that update automatically in the browser. The tool enables dynamic timestamp displays that transition from relative phrases to absolute dates based on configurable time thresholds. It includes capabilities for date tense restriction, forcing timestamps to display exclusively as past or future dates, and supports precise duratio
AR.js is a JavaScript library for building augmented reality experiences that run directly in the web browser. It provides the core capability to render digital content overlaid on the real world using either the A-Frame HTML component system or the three.js JavaScript library, supporting both marker-based and location-based AR approaches. The library enables tracking of predefined 2D images, fiducial markers, and image targets through the device camera, allowing virtual objects such as 3D models, videos, or images to be positioned relative to recognized visual references. For location-based
Viser is a Python 3D visualization framework and remote scene server that renders 3D primitives, point clouds, and meshes in a web browser. It functions as a server-client system that synchronizes scene state and camera poses to a web client via WebSockets. The framework provides specialized capabilities for robotics and computer vision, including a URDF robot visualizer for loading robot models and joint states, as well as a GPU-accelerated Gaussian splatting viewer for high-fidelity volumetric rendering. It also supports the visualization of human body models and skinned meshes for pose ana
Rerun is a multimodal data visualizer and robotics data logger designed for rendering synchronized streams of 3D spatial data, images, and time-series metrics. It functions as a tool for capturing high-frequency sensor data and AI outputs into a queryable columnar format, providing a dedicated interface for viewing MCAP recording files and analyzing physical environments. The project distinguishes itself as a machine learning dataset streamer, capable of feeding logged recordings directly into GPU buffers and PyTorch training pipelines without intermediate exports. It supports a high-performa
This project is a GPU-accelerated fluid renderer and interactive WebGL visualizer. It functions as a fluid dynamics sandbox for experimenting with the real-time movement and behavior of liquids. The simulation calculates density, pressure, and vorticity using GPU shaders to maintain high performance. It includes atmospheric visual effects such as bloom and sunrays, alongside tools for capturing the simulation state as static images. The underlying architecture utilizes fragment-shader rendering and ping-pong texture buffering to manage fluid physics. Multi-pass post-processing is used to app
ubuntu-rockchip is a Rockchip Ubuntu distribution and GPU-accelerated Linux image designed for RK35XX series single-board computers. It provides a 64-bit ARM64 Linux environment that deploys a standard Ubuntu desktop on top of specialized board-support packages. The system features hardware drivers for 3D graphics acceleration and 4K video rendering and streaming. These optimizations allow for high-resolution media playback and increased rendering speeds for 3D applications on Rockchip hardware. The distribution includes tools for single-board computer administration, such as a guided first-
ComfyUI-3D-Pack is a suite of custom nodes for ComfyUI that enables 3D asset generation and rendering within a node-based workflow. It provides a set of tools for reconstructing textured three-dimensional meshes and volumetric scenes from single images, multi-view images, or text prompts. The system includes a Gaussian splatting generator for creating high-fidelity volumetric 3D scene representations and a multi-view image generator to produce consistent image sets for reconstruction. It also features a single image 3D mesh tool to build geometry from a single 2D source. The toolset covers 3
Sokol is a C hardware abstraction layer and cross-platform graphics library designed for managing windowing, input, and audio across different operating systems. It functions as a GPU resource manager and multimedia application framework, providing a unified API for rendering 2D and 3D graphics across WebGL, Metal, Direct3D, and OpenGL. The project is distinguished by its single-header implementation, which simplifies integration and portability. It utilizes a stateless render pass definition and a one-update-per-frame model to synchronize CPU data to GPU memory and manage resource lifecycles
react-native-godot is a communication layer and embedding system that integrates the Godot game engine into cross-platform mobile applications. It allows Godot game scenes and logic to be rendered as interactive visual components within a mobile user interface. The project provides a threaded logic bridge that executes engine functions on dedicated background threads using worklets. This ensures that game engine operations do not block the main application user interface. The system covers engine lifecycle management, including the ability to start, stop, and pause instances to load differen
GPAC is an open-source multimedia framework built around a pluggable filter graph pipeline, where modular processing units called filters connect into a directed graph to handle media workflows. At its core, the framework centers all media packaging and manipulation on the ISO Base Media File Format (ISOBMFF), with specialized tools for reading, writing, fragmenting, and encrypting MP4 and related containers. It also provides a declarative scene graph composition system for describing interactive multimedia scenes using MPEG-4 BIFS, X3D, SVG, or VRML syntax, alongside a hardware-accelerated re
Supersplat is a web-based suite for editing, optimizing, and viewing 3D Gaussian Splats. It functions as a visual editor for cleaning scenes and a converter for transforming splat data between different file formats to ensure compatibility across tools. The project provides specialized capabilities for 3D scene curation, allowing the configuration of cameras, animations, and annotations. It includes a data optimizer that compresses large spatial datasets into streamed formats to improve loading speeds on web pages. The system further supports the publishing of processed assets to a public ga
This project is a frontend visualization library and gallery of interactive web examples. It provides a collection of implementations that demonstrate advanced visual effects through the use of stylesheets, canvas drawing surfaces, and three-dimensional graphics libraries. The collection specifically features implementations for visualizing artificial intelligence outputs and complex data patterns. It includes specialized galleries for three-dimensional scenes and spatial objects, as well as a showreel of stylistic motion effects and interface designs. The library covers a broad range of ren
PyTorch3D is a 3D geometric deep learning library and mesh processing toolkit designed for learning from point clouds and complex 3D surface geometries. It provides a collection of reusable components and data structures for deep learning with 3D data, including a framework for training and evaluating neural radiance fields to enable photorealistic view synthesis. The project features a differentiable 3D renderer that converts meshes and point clouds into 2D images while allowing gradients to flow back into the geometry and textures. This enables 3D shape optimization, where mesh geometry, te
ECharts is a JavaScript data visualization library and web charting framework used to render interactive 2D and 3D data plots within a web browser. It functions as a visualization engine that transforms raw data into customizable charts and graphs. The project includes a WebGL-based hardware acceleration engine specifically for producing three-dimensional plots and globe visualizations. This allows the library to handle large and complex datasets through GPU-accelerated rendering. The framework supports both canvas-based raster rendering and SVG-based vector rendering. It provides capabiliti
ogl is a WebGL graphics library and 3D scene graph engine designed for rendering three-dimensional scenes. It provides a lightweight framework for managing geometries and coordinating spatial transformations within a hierarchical system. The project includes a PBR shader system for creating realistic materials and a GPGPU computation framework for performing large-scale general-purpose calculations and particle simulations on the graphics processor. It also features a post-processing suite for applying visual filters to rendered scenes via frame buffers. The library covers broader capabiliti
This project is a web-based 3D architectural editor used for creating and sharing building projects. It functions as a core architectural engine that combines a GPU-accelerated web renderer with parametric 3D design tools to visualize and navigate complex models within a browser. The editor features a parametric geometry engine that automates the creation of mitered wall corners and cutouts for doors and windows. It includes an IFC model importer to convert Industry Foundation Classes files into editable 3D scenes and a hierarchical spatial manager to organize building elements from the site
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
DiligentEngine is a cross-platform graphics abstraction layer and physically-based rendering engine. It provides a unified interface for executing 3D graphics commands across multiple low-level rendering backends from a single codebase, including a dedicated system for importing 3D assets via the GLTF 2.0 format. The engine features an HLSL shader cross-compiler that allows a single set of shaders to run across different graphics APIs and operating systems. It supports advanced rendering capabilities such as ray-tracing, mesh shaders, variable rate shading, and bindless resources. The framew
gsplat is a high-performance differentiable rasterization engine for 3D Gaussian splatting, designed for real-time novel view synthesis from 2D images. It provides a complete pipeline for reconstructing 3D scenes by optimizing differentiable Gaussian representations, training models from COLMAP-processed captures or proprietary device files, and generating new viewpoints through a CUDA-accelerated rendering backend. The framework distinguishes itself through memory-optimized CUDA kernels that reduce training memory usage by up to 4x compared to standard implementations while matching publishe