{"id":31363829,"url":"https://github.com/discere-os/irrlicht.wasm","last_synced_at":"2026-05-06T03:33:29.893Z","repository":{"id":315678766,"uuid":"1060432271","full_name":"discere-os/irrlicht.wasm","owner":"discere-os","description":"Fork of irrlicht, Much 3D Graphics.","archived":false,"fork":false,"pushed_at":"2025-09-20T22:26:19.000Z","size":41281,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"wasm","last_synced_at":"2025-09-27T05:32:54.838Z","etag":null,"topics":["3d-engine","3d-graphics","cpp","emscripten","fork","game-development","graphics","irrlicht","opengl","rendering","simd","typescript","wasm","webassembly","webgpu"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/discere-os.png","metadata":{"files":{"readme":"README.md","changelog":"changes.txt","contributing":null,"funding":".github/FUNDING.yml","license":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["superstructor"]}},"created_at":"2025-09-19T22:53:23.000Z","updated_at":"2025-09-20T22:26:23.000Z","dependencies_parsed_at":"2025-09-20T03:21:05.748Z","dependency_job_id":null,"html_url":"https://github.com/discere-os/irrlicht.wasm","commit_stats":null,"previous_names":["discere-os/irrlicht.wasm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/discere-os/irrlicht.wasm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discere-os%2Firrlicht.wasm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discere-os%2Firrlicht.wasm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discere-os%2Firrlicht.wasm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discere-os%2Firrlicht.wasm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/discere-os","download_url":"https://codeload.github.com/discere-os/irrlicht.wasm/tar.gz/refs/heads/wasm","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/discere-os%2Firrlicht.wasm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32677928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-06T02:33:58.958Z","status":"ssl_error","status_checked_at":"2026-05-06T02:33:39.611Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["3d-engine","3d-graphics","cpp","emscripten","fork","game-development","graphics","irrlicht","opengl","rendering","simd","typescript","wasm","webassembly","webgpu"],"created_at":"2025-09-27T05:22:57.011Z","updated_at":"2026-05-06T03:33:29.884Z","avatar_url":"https://github.com/discere-os.png","language":"C++","funding_links":["https://github.com/sponsors/superstructor"],"categories":[],"sub_categories":[],"readme":"# @discere-os/irrlicht.wasm\r\n\r\nWebAssembly port of Irrlicht - High-performance real-time 3D graphics engine with OpenGL, WebGL, and comprehensive rendering pipeline for games, simulations, and interactive applications.\r\n\r\n[![CI/CD](https://github.com/discere-os/discere-nucleus/actions/workflows/irrlicht-wasm-ci.yml/badge.svg)](https://github.com/discere-os/discere-nucleus/actions)\r\n[![JSR](https://jsr.io/badges/@discere-os/irrlicht.wasm)](https://jsr.io/@discere-os/irrlicht.wasm)\r\n[![npm version](https://badge.fury.io/js/@discere-os%2Firrlicht.wasm.svg)](https://badge.fury.io/js/@discere-os%2Firrlicht.wasm)\r\n[![License](https://img.shields.io/badge/License-Zlib-blue.svg)](LICENSE)\r\n[![Status](https://img.shields.io/badge/status-alpha-orange.svg)](https://github.com/discere-os/discere-nucleus)\r\n\r\n## About Irrlicht Engine\r\n\r\nThe Irrlicht Engine is a high performance realtime 3D engine written in C++. It is completely cross-platform, using D3D, OpenGL and its own software renderers, and has all of the state-of-the-art features which can be found in commercial 3d engines.\r\n\r\n## Features\r\n\r\n- **Cross-Platform Rendering**: OpenGL, WebGL, and software rendering support\r\n- **Scene Management**: Advanced scene graph with optimized culling and LOD\r\n- **Material System**: Programmable shader pipeline with GLSL support\r\n- **Animation**: Skeletal animation, morphing, and keyframe animation\r\n- **File Format Support**: 3DS, X, MS3D, COLLADA, B3D, MD2, MD3, BSP, and more\r\n- **Physics Integration**: Built-in collision detection and response\r\n- **GUI System**: Immediate mode GUI for in-game interfaces\r\n- **Post-Processing**: Real-time effects and filters\r\n- **Terrain Rendering**: Height-based terrain with texture blending\r\n- **Particle Systems**: Configurable particle effects\r\n- **Audio Support**: 3D positioned audio through integrated sound engine\r\n\r\n## WebAssembly Enhancements\r\n\r\nThis port provides:\r\n\r\n- **WASM SIMD Optimization**: Vectorized graphics operations for enhanced performance\r\n- **WebGPU Acceleration**: GPU compute shaders with external orchestrator support\r\n- **Modern TypeScript API**: Type-safe interfaces with comprehensive documentation\r\n- **Browser-Native Integration**: Direct canvas rendering without plugins\r\n- **Progressive Loading**: Efficient asset streaming for web deployment\r\n- **Memory Management**: Optimized WASM heap usage with dynamic dependency loading\r\n\r\n## Quick Start\r\n\r\n```bash\r\n# Install via npm\r\nnpm install @discere-os/irrlicht.wasm\r\n\r\n# Or use with Deno\r\nimport Irrlicht from \"https://deno.land/x/irrlicht_wasm/mod.ts\"\r\n```\r\n\r\n## Usage\r\n\r\n```typescript\r\nimport Irrlicht from '@discere-os/irrlicht.wasm'\r\n\r\nconst engine = new Irrlicht()\r\nawait engine.initialize()\r\n\r\n// Create device and scene manager\r\nconst device = engine.createDevice({\r\n  renderer: 'webgl',\r\n  canvas: document.getElementById('canvas')\r\n})\r\n\r\nconst scene = device.getSceneManager()\r\nconst camera = scene.addCameraSceneNodeFPS()\r\n\r\n// Add 3D objects\r\nconst mesh = scene.getMesh('path/to/model.3ds')\r\nconst node = scene.addMeshSceneNode(mesh)\r\n\r\n// Render loop\r\nfunction render() {\r\n  device.run()\r\n  driver.beginScene()\r\n  scene.drawAll()\r\n  driver.endScene()\r\n  requestAnimationFrame(render)\r\n}\r\n\r\nrender()\r\n```\r\n\r\n## Original Documentation\r\n\r\nThis WebAssembly port is based on the Irrlicht Engine SDK version 1.9. The original documentation and examples are preserved in the `doc/` and `examples/` directories.\r\n\r\n### Directory Structure\r\n\r\n- `bin/` - Compiled library and demo applications\r\n- `doc/` - Original Irrlicht Engine documentation\r\n- `examples/` - C++ examples and tutorials\r\n- `include/` - Header files for engine API\r\n- `lib/` - Static libraries for linking\r\n- `media/` - Graphics and sound resources for examples\r\n- `source/` - Complete Irrlicht Engine source code\r\n- `tools/` - Development tools and utilities\r\n\r\n## Performance Considerations\r\n\r\nThe WebAssembly build is optimized for web deployment:\r\n\r\n- **SIMD Operations**: 3-4x speedup for vector/matrix calculations\r\n- **GPU Acceleration**: WebGPU compute with external coordinator support\r\n- **Memory Layout**: Optimized data structures for WASM heap efficiency\r\n- **Asset Loading**: Streaming mesh and texture loading with dynamic dependencies\r\n- **Rendering Pipeline**: Batched draw calls and efficient resource sharing\r\n\r\n## License\r\n\r\nBased on the zlib/libpng license (same as original Irrlicht Engine).\r\n\r\nCopyright (C) 2002-2012 Nikolaus Gebhardt\r\n\r\nThis software is provided 'as-is', without any express or implied warranty. Permission is granted to use, modify, and distribute this software for any purpose, including commercial applications.\r\n\r\n## 💖 Support This Work\r\n\r\nThis WebAssembly port is part of a larger effort to bring professional desktop applications to browsers with native performance.\r\n\r\n**👨‍💻 About the Maintainer**: [Isaac Johnston (@superstructor)](https://github.com/superstructor) - Building foundational browser-native computing infrastructure through systematic C/C++ to WebAssembly porting.\r\n\r\n**📊 Impact**: 70+ open source WASM libraries enabling professional applications like Blender, GIMP, and scientific computing tools to run natively in browsers.\r\n\r\n**🚀 Your Support Enables**:\r\n- Continued maintenance and updates\r\n- Performance optimizations\r\n- New library ports and integrations\r\n- Documentation and tutorials\r\n- Cross-browser compatibility testing\r\n\r\n**[💖 Sponsor this work](https://github.com/sponsors/superstructor)** to help build the future of browser-native computing.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiscere-os%2Firrlicht.wasm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdiscere-os%2Firrlicht.wasm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiscere-os%2Firrlicht.wasm/lists"}