Erfan-Ahmadi / CircleCollision

Implementing Different Methods of Circle to Circle Collision Detection using variety of new Technologies: Vulkan Graphics/Compute API, AVX2/AVX-512

Home Page:https://graphicscoder.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Circle Collision

Implementing Different Methods of Circle to Circle Collision Detection using Vulkan Graphics and Compute API

Circles were chosen to focus more on Broad-Phase algorithms of the Collision Detection Pipeline.

Images and Preview

Charts and Plots

Motivation

This Project Is For Learning Purposes of Following Topics

  • SIMD/Vectorization using AVX/AVX2
  • Vulkan Compute Shaders and GPGPU Programming
  • Data Oriented Programming

Features

  • Broad-Phase

    • Brute Force ( O(n^2) )
    • Spatial Partitioning
      • Grid
      • K-D Tree
      • Quadtrees
      • BSP
    • Sort and sweep
    • Simplex-Based : GJK
  • Narrow-Phase

    • We Have Circles Here and Math/Physics Calculations are easy.
  • Technologies/API's

    • CPU
      • Simple Sequential
      • Multi-Threaded
      • SIMD
        • AVX2
        • AVX-512
    • GPU
      • Vulkan Compute Shaders
      • OpenCL

Implemented

Build

Blog

You can here about implementation details soon in my blog, GraphicsCoder

Slides

Presentation Slides

Resources

❗ This project is not for benchmarking purposes!, Although It would give me some ideas to be suspicious about.

💟 I would appreciate optimization ideas and results on your system on issues.

About

Implementing Different Methods of Circle to Circle Collision Detection using variety of new Technologies: Vulkan Graphics/Compute API, AVX2/AVX-512

https://graphicscoder.com

License:MIT License


Languages

Language:C++ 98.9%Language:GLSL 1.1%