Hey dev.to! 👋
I'm excited to share a project I've been working on: the Pokemon3D API! This API makes it incredibly simple to bring interactive 3D Pokémon models into your web applications. If you're a Pokémon fan, a web developer, or just curious about 3D graphics, this project is for you!
What is Pokemon3D?
Pokemon3D is a project that aims to provide easy access to 3D models of Pokémon. It consists of two main parts:
- The Pokemon3D API: This RESTful API serves the 3D model data. It's what this post is all about!
- The Pokemon3D Web Viewer: A web application that showcases the 3D models. You can preview the models in your browser here.
Why build a Pokemon3D API?
The Pokemon3D API opens up exciting possibilities for a variety of projects:
- Pokémon Fan Sites: Create immersive fan experiences with interactive 3D model viewers.
- Games: Integrate 3D Pokémon into web-based games or AR/VR experiences.
- AR/VR Development: Explore augmented and virtual reality applications with Pokémon models.
- Educational Projects: Use 3D models for learning about Pokémon anatomy or evolution.
- ThreeJS Experiments: A perfect resource for experimenting with 3D graphics in ThreeJS.
Whatever your vision, the Pokemon3D API provides the building blocks you need to bring your Pokémon-related projects to the next dimension.
Exploring the API
The API is still in beta, and we're actively working on adding more models and features. You can explore the available endpoints and their documentation in Postman: Pokemon3D API Postman Docs
How does it work?
The API provides endpoints for retrieving 3D models in the GLB (binary glTF) format, a standard format for efficient transmission of 3D scenes and models. You can access different Pokémon forms through specific endpoints.
Here's how it works:
-
Make a request: Send a GET request to the appropriate endpoint. The base API endpoint is
https://pokemon3d-api.onrender.com/v1/
. To get data on a specific Pokémon form, append the form name to the base URL. For example, to get data on Regular Pokémon, you might use an endpoint likehttps://pokemon3d-api.onrender.com/v1/Regular
. (Note: Ensure you are using the most up-to-date base URL from the Postman environment.) - Receive a response: The API will respond with JSON data. This data will likely contain URLs pointing to the actual GLB files for the 3D models. The structure of this data is documented in the Postman documentation.
- Use the model URLs: You can then use these URLs to load and display the 3D models in your application (e.g., using a ThreeJS GLB loader).
Available Pokémon Categories (Complete Models Only):
The API currently offers complete 3D models for the following categories of Pokémon:
- Regular: Standard, non-variant forms of Pokémon up to Generation 6.
- Hisuian: Pokémon forms unique to the Hisui region.
- Primal: Primal Reversion forms of legendary Pokémon.
- Origin: Origin forms of specific Pokémon.
- Mega: Mega Evolved forms of Pokémon.
- XY: Pokémon introduced in Pokémon X and Y.
(Important Note: This list only includes categories for which complete 3D models are currently available. The API also includes data for other categories (Shiny, Alolan, Galarian, Gigantamax), but models for these categories are still under development. Check the Postman documentation for the most up-to-date list of available models and the status of each category.)
Contributing
This is an open-source project, and contributions are more than welcome! If you're interested in helping add more 3D models or improve the API, check out the GitHub repository: Pokemon3D on GitHub
What's next?
We're planning to expand the API with more Pokémon, improve the documentation, and potentially add features like animated models.
Your feedback is invaluable in shaping the future of this project!
Let me know what you think!
I'd love to hear your thoughts on the Pokemon3D API. What do you think? What would you build with it? Let me know in the comments below! 👇
Top comments (0)