I am excited to share my latest (award-winning!!1!) hobby project, Rijkscollection, a virtual museum built using WebGL. This platform lets you explore paintings and drawings from the Rijksmuseum Amsterdam.
Rijkscollection doesn’t offer a tour of the Rijksmuseum. Instead, it creates unique rooms, each housing a different collection based on a selection of art from the Rijksmuseum. You can navigate through these rooms and zoom in on individual paintings and drawings, immersing yourself in the art.
Rijksmuseum Amsterdam API
The backbone of Rijkscollection is the Rijksmuseum Amsterdam API. It provides all the necessary data for the project, including high-resolution images of paintings and drawings from the Rijksmuseum. To limit the content, I only show the 24778 top pieces of the Rijksmuseum in my project. When using the API, I used an AI to translate Dutch text returned by the English API (about 80% of the content) into English.
Associative exploration
One of the key features of Rijkscollection is the exploration aspect. Not only can you navigate through virtual rooms and zoom into pieces, but every word in the titles and descriptions of the paintings also becomes a gateway to new collections.
Just as one Wikipedia article leads you to another, clicking on these links takes you on an associative journey through the museum’s art, continually discovering new collections and themes. This creates a dynamic and engaging experience, like a treasure hunt within the museum’s vast offerings.
Rijkscollection also offers a free search feature where you can enter a term and generate new collections. This feature allows you to explore themes, artists, or periods that interest you, leading to a more personalized exploration.
Dynamic loading of high-resolution images
Another feature of Rijkscollection is the dynamic loading of high-resolution images using the image tile pyramid provided by the Rijksmuseum API.
Each artwork is divided into tiles of different resolutions. For each frame, the system identifies visible tiles. It calculates a priority value for each visible tile based on its screen coverage, its position on the screen and the load status of other tiles in its pyramid. Tiles with the highest priority are loaded in the background. This approach ensures smooth transitions and detailed zoom-ins on artworks.
Ultra high resolution photos
The Rijksmuseum has captured ultra high resolution photos of several artworks, including the famous Night Watch by Rembrandt van Rijn. This photo is the largest and most detailed ever taken of a work of art, with 717 gigapixels or 717,000,000,000 pixels in size. You can find it here in the virtual museum.
Additionally, all paintings by Johannes Vermeer have been photographed in ultra high resolution. You can explore the Johannes Vermeer collection here.
Feedback
I invite you to visit and explore Rijkscollection and be a part of its ongoing development journey. Your feedback is invaluable—feel free to report bugs, suggest improvements, or request new features.
Similar posts
If you like this post, you may also like one of my other posts:
- Truchet Tiles: Simple Rules, Infinite Patterns
- Five years of Turtletoy: a minimalistic, generative art platform
- 3D Line Art Engine (port)
- WebGL Lightmapping Demo
- Dittytoy