Muneeb's Projects


Engine 2

A 3D rendering engine capable of drawing massive amounts of geometry efficiently, made possible using per-cluster culling.

Meshes are divided into clusters. A compute shader determines currently visible clusters to minimize the amount of geometry drawn. We are currently working to make this culling use hierarchical z.
Visibility buffer-based rendering is used to save on GPU bandwidth. All triangles are loaded directly from storage buffers, and all vertex attributes are software-interpolated manually in the pixel shader.
There is a complete separation of Geometry, Material, and Lighting passes.

It also includes an automatic asset management system for loading/unloading from disk.
A custom Sparse Array Entity Component System (ECS) implementation is included.

C++17 | OpenGL

GitHub

Vulkan Forward Clustered Renderer

Written from the ground up to render 3D GLTF Scenes.

Forward++, aka Forward Clustered Rendering, is achieved using a compute shader to determine which lights influence which chunk of the view frustum. This is followed by traditional forward rendering, which calculates lighting only for lights in the same chunk of the view frustum as the surfel.

C++17 | Vulkan

GitHub

Latent Diffusion Based Image Inpainting with Multimodal Guidance

Better image inpainting that can be guided by
  • Text prompts
  • Masks
  • Reference images

Finetuning the stable diffusion inpainting model on a custom-prepared dataset from the Open-Images Localized Narratives dataset
Also, by modifying the existing classifier free guidance mechanism, reference images are supported to guide the generated output. [WIP]

Pytorch | HuggingFace Diffusers




Lyra Engine

My first and worst 3D rendering engine.

C++ | OpenGL

GitHub

Faculty of Engineering & Technology Football League

I am the 2024-25 football secretary for the Sports Council of the Faculty of Engineering & Technology, Jamia Millia Islamia.

You can track the football league we organize over here.

Years of Football | HTML | CSS | JS