Spaces:
Running
title: Plasma Arc
emoji: ⚡
colorFrom: gray
colorTo: indigo
sdk: static
sdk_version: latest
python_version: 3.1
suggested_hardware: a10g-large
suggested_storage: medium
app_file: index.html
short_description: High-performance plasma arc simulation using WebGPU.
pinned: true
thumbnail: >-
https://cdn-uploads.huggingface.co/production/uploads/65f2c47c8000c6a096f8f189/Je0NhuTPHrOkUp5oDKcZk.jpeg
Plasma Arc Project
Overview
The Plasma Arc Project aims to develop a sophisticated and efficient plasma arc simulation using WebGPU. This project leverages the power of WebGPU to achieve high-performance computations and realistic visualizations. Our goal is to create a modular, extendable, and user-friendly application for research and educational purposes.
Features
- High-performance plasma arc simulation
- Realistic visualizations using WebGPU
- Modular and extendable codebase
- User-friendly interface
- Fast iteration with modular WebGPU components
WebGPU Integration
WebGPU is utilized for its advanced graphics and compute capabilities, enabling our simulation to run efficiently on a wide range of devices. By offloading heavy computations to the GPU, we achieve smoother and more responsive visualizations. The modular design aligns with industry standards like Unreal Engine 5, ensuring familiarity and ease of use for developers.
Installation
Prerequisites
- Python (v3.10 or higher)
- A WebGPU-compatible browser (e.g., Chrome Canary, Firefox Nightly)
Clone the Repository
git clone https://github.com/yourusername/plasma-arc-project.git
cd plasma-arc-project
Running the Simulation
- Open
index.html
in your WebGPU-compatible browser. - Modify the configurations as needed in the
config
object. - Refresh the browser to see your changes instantly with the fast iterative development.
Modular Components
The project is structured using modular components for WebGPU, ensuring a clean and scalable codebase:
- wgpu-device.js: Handles WebGPU device initialization.
- wgpu-state.js: Manages the application state.
- wgpu-utility.js: Utility functions for texture and other operations.
- wgpu-pipeline.js: Manages the creation of WebGPU pipelines.
- wgpu-shader.js: Fetches and compiles shader codes.
- wgpu-texture.js: Manages vertex data and textures.
- wgpu-buffer.js: Handles buffer creation and management.
- wgpu-timing.js: Manages timing and game loop properties.
Contributing
We welcome contributions! Please submit issues or pull requests to help improve the project. Make sure to follow the coding standards and write tests for new features.
Acknowledgments
We would like to extend our sincere gratitude to:
- Hugging Face: For providing an amazing platform that supports and fosters innovation.
- Discord: For offering a vibrant community space where collaboration thrives.
- The Community at Hugging Face Discord: Your feedback, discussions, and encouragement have been invaluable.
Alignment with Industry Standards
Our project strives to achieve parity with Unreal Engine 5 (UE5) by aligning our style guide, naming conventions, and source code architecture with industry standards. Additionally, from a design aspect, we are borrowing concepts from the state architecture of React to ensure a modern, efficient, and scalable development experience.
License
This project is licensed under the MIT License.
Citation
If you use this project in your research, please cite it as follows:
@misc{plasma_arc,
author = {K. Rawson},
title = {Plasma Arc Engine},
year = {2025},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/p3nGu1nZz/plasma-arc}},
email = {rawsonkara@gmail.com}
}