{"id":25517487,"url":"https://github.com/metepolat825/mapmorph_web_app_pbr_texture_generation","last_synced_at":"2026-02-28T00:11:48.191Z","repository":{"id":274616904,"uuid":"923493574","full_name":"MetePolat825/MapMorph_Web_App_PBR_Texture_Generation","owner":"MetePolat825","description":"MapMorph: AI-Powered Web Application for PBR Gexture Extraction on your Desktop or Mobile Device! ","archived":false,"fork":false,"pushed_at":"2025-04-06T21:46:56.000Z","size":3235,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-21T03:11:26.735Z","etag":null,"topics":["bootstrap","game-development","html","html5","opencv","pbr","python","texture-mapping","vuejs","webapp","website"],"latest_commit_sha":null,"homepage":"https://mapmorph-mcp140.pythonanywhere.com","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MetePolat825.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-01-28T10:51:54.000Z","updated_at":"2025-05-09T09:16:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"a87d8b97-7d5c-4143-ba1f-c13734d02576","html_url":"https://github.com/MetePolat825/MapMorph_Web_App_PBR_Texture_Generation","commit_stats":null,"previous_names":["metepolat825/mapmorph"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MetePolat825/MapMorph_Web_App_PBR_Texture_Generation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetePolat825%2FMapMorph_Web_App_PBR_Texture_Generation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetePolat825%2FMapMorph_Web_App_PBR_Texture_Generation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetePolat825%2FMapMorph_Web_App_PBR_Texture_Generation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetePolat825%2FMapMorph_Web_App_PBR_Texture_Generation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MetePolat825","download_url":"https://codeload.github.com/MetePolat825/MapMorph_Web_App_PBR_Texture_Generation/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MetePolat825%2FMapMorph_Web_App_PBR_Texture_Generation/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270672165,"owners_count":24625908,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap","game-development","html","html5","opencv","pbr","python","texture-mapping","vuejs","webapp","website"],"created_at":"2025-02-19T15:22:32.574Z","updated_at":"2026-02-28T00:11:48.150Z","avatar_url":"https://github.com/MetePolat825.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MapMorph: AI-Powered PBR Texture Generation\n\n# Project Introduction\n\n\n\nIn the world of computer graphics and game development, manually creating PBR (Physically Based Rendering) specular textures is a time-consuming and intricate process. This workflow often requires expensive software licenses and high-end hardware setups, making it difficult for smaller teams and independent artists, such as students or those with limited financial ability to access high-quality texture generation tools.\n\n![PBR Rendering Sample Image](https://learnopengl.com/img/pbr/ibl_specular_result_textured.png)\n\nMapMorph is an innovative web-based solution that automates the generation of PBR textures directly from real-world photos. This tool streamlines the texture creation process, removing common barriers such as:\n\n- The need for licensed software like Substance Painter\n- Expensive hardware requirements\n- Installation processes\n- Platform dependence\n\nBy leveraging AI-powered enhancements and modern web technologies, MapMorph provides a fast, scalable, and accessible method for creating high-quality textures. It’s designed to make texture creation easier for 3D artists, game developers, and other professionals in the creative industries.\n\n## Key Features\n\n- Automated Texture Generation: Quickly convert real-world images into roughness, albedo, and normal maps with a single click.\n\n- PBR value standardizer: This unique feature of MapMorph will make sure all of your textures adhere to the Physically Based database preset of PBR values, ensuring all of your textures work in cohesion. You can even use custom presets for Unreal or Unity or even upload your own!\n\n- Support for multiple industry standard workflows: Roughness/Metallic and Specular/Glossiness workflows as well as Bump mapping are supported.\n\n- User-Friendly Interface: Intuitive and accessible for both beginners and seasoned professionals.\n\n- Scalable and Performant: Built using modern web technologies for fast, efficient processing, even with larger image files.\n\n- AI-Powered Enhancements: Optional AI-based material segmentation that intelligently analyzes images to provide advanced texture results.\n\n- Cross-Platform: No installation or hardware requirements. Works seamlessly across platforms using only a browser.\n\n# Demo\n\nYou can explore a live demo of MapMorph on  [the live website](https://mapmorph-mcp140.pythonanywhere.com) and see the texture generation process in action. The demo is hosted online, so no installation is required—simply upload your image, process it, and download the result.\n\nCheck out a demo on YouTube!\n\n[![MapMorph Demo Video](https://img.youtube.com/vi/P6Kfp0JXXEU/0.jpg)](https://www.youtube.com/watch?v=P6Kfp0JXXEU)\n\n**Thanks for the thumbs up 😀👍**\n\n# Step-by-Step Usage\n\n### 1. Upload Your Image:\nDrag and drop or select an image from your computer to begin. Supported formats: JPG, PNG, and TIFF.\n\n### 2.Process the Image: \nOnce the image is uploaded, click the \"Process\" button to automatically generate PBR textures. The AI-powered backend will analyze the image and produce roughness, albedo, and normal maps.\n\n### 3.Download the Textures: \nAfter processing, you can download the generated textures in either PNG or TGA format. Perfect for use in game engines like Unity, Unreal Engine, or 3D modeling software.\n     \nExample Output: After processing, MapMorph generates the following PBR texture maps:\n\n- Albedo Map (Diffuse)\n- Roughness Map\n- Normal Map\n\n# Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.\n\nAgain note that a live version on the website is available at [the live website](https://mapmorph-mcp140.pythonanywhere.com).\n\n## Prerequisites\n\nTo run this project locally, you need the following installed on your machine:\n\n- Python 3.8+\n\n- pip (Python package manager)\n\nDependancies can be installed by running pip install requirements.txt\n\n# Installation and Running Instructions\n\nIf you wish to deploy the web app locally on your machine, here is a step by step series of examples that tell you how to get a development env running in no time!\n\n## 1. Clone the repository\n```bash\ngit clone https://github.com/MetePolat825/MapMorph_Web_App_PBR_Texture_Generation.git\n```\n\n## 2. Install dependencies\n```bash\npip install -r requirements.txt\n```\n\n## 3. Navigate to the backend folder\n```bash\ncd pbr-texture-generator/backend\n```\n\n## 4. Run the Flask app on the local server 127.0.0.1:5000\n```bash\npython app.py\n```\n\n## 5. Access the application\nOpen your browser and go to [http://127.0.0.1:5000](http://127.0.0.1:5000) to access the local build of the application.\n\nAt this point you may try out all the basic features with no restrictions! Awesome stuff.\n\n# Built With\n\n*  Frontend: Vue.js, Bootstrap, Three.js\n\n* Backend: Flask, OpenCV, NumPy\n\n* Database: SQLite\n\n* Hosting: Heroku\n\n# Project Folder Structure\n\n```bash\n├── backend\n   ├── presets \u003c- PBR value preset CSVs\n   ├── processed \u003c- final processed images to be downloaded to the user\n   ├── src \u003c- image processing scripts and other secondary logic\n   ├── static \u003c- images, icons, CSS\n   ├── templates \u003c- frontend HTML templates\n   ├── tests \u003c- unit tests for app and image processing logic\n   ├── uploads \u003c- user upload directory\n   ├── app.py \u003c- Entry Point for the program\n├── frontend \u003c- contains Javascript frontend components (work in progress)\n├── docs \u003c- contains local copy of documentation for offline access\n├── README.md \u003c- Developer Documentation\n├── requirements.txt \u003c- required libraries for local installation\n```\n## CI/CD Workflow\n\nThis project uses **GitHub Actions** for continuous integration and continuous deployment (CI/CD). The GitHub Actions workflow automates the following tasks:\n\n- **Code Testing**: Each push or pull request triggers automated tests using `pytest` to ensure the quality of the code.\n- **Deployment**: After passing the tests, the application is automatically deployed to **PythonAnywhere**, a platform that hosts Python applications.\n\n### GitHub Actions\n\nThe CI/CD pipeline is defined in the `.github/workflows/ci.yml` file. The pipeline includes the following steps:\n1. **Install dependencies**: Install required dependencies from `requirements.txt`.\n2. **Run tests**: Execute tests using `pytest` to ensure the code works correctly.\n3. **Deploy to PythonAnywhere**: Upon successful tests, the app is deployed to PythonAnywhere.\n\n### PythonAnywhere Deployment\n\nThe project is hosted on **PythonAnywhere**, which provides a cloud-based platform for Python applications. After the GitHub Actions workflow completes, the application is automatically deployed to PythonAnywhere using the provided deployment scripts. The app can be accessed from [PythonAnywhere](https://mapmorph-mcp140.pythonanywhere.com).\n\nFor more details on setting up the GitHub Actions workflow and deploying to PythonAnywhere, check out the following documentation:\n\n- [GitHub Actions Documentation](https://docs.github.com/en/actions)\n- [PythonAnywhere Documentation](https://help.pythonanywhere.com/)\n\n# Roadmap\n\n## Future Features:\n- Support for additional texture maps (e.g., specular, metallic)\n- Enhanced AI segmentation for complex materials like fabric, wood, and metal\n- User authentication for saving custom textures and preferences\n- Integration with game engines for direct texture importing\n- API access for students and corporate plans custom to your business needs\n\n# Contributing\n\nWe welcome contributions! Please read our Contributing Guidelines and Code of Conduct before getting started.\n\n1. Fork the repository.\n\n2. Create a new branch for your feature or bugfix.\n\n3. Make your changes and test them thoroughly.\n\n4. Submit a pull request with a detailed description of your changes.\n\n# Authors\n\n* **MetePolat825** - *Initial work* - [MetePolat825](https://github.com/MetePolat825)\n\nSee also the list of [contributors](https://github.com/MetePolat825/MapMorph_Web_App_PBR_Texture_Generation/contributors) who participated in this project.\n\n# License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details\n\n# Acknowledgments\n\n* OpenCV for image processing.\n\n* Flask for the backend framework.\n\n* Three.js for 3D visualization.\n\n* Best README Template for inspiration.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetepolat825%2Fmapmorph_web_app_pbr_texture_generation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetepolat825%2Fmapmorph_web_app_pbr_texture_generation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetepolat825%2Fmapmorph_web_app_pbr_texture_generation/lists"}