diff --git a/include/vkcv/BufferManager.hpp b/include/vkcv/BufferManager.hpp
index c7f32d9f134108bafa87ff493bca4e113d53003a..e84e84308ba8844e72ec2287b12953136ccc118e 100644
--- a/include/vkcv/BufferManager.hpp
+++ b/include/vkcv/BufferManager.hpp
@@ -13,7 +13,8 @@ namespace vkcv
 		VERTEX,
 		UNIFORM,
 		STORAGE,
-		STAGING
+		STAGING,
+		INDIRECT
 	};
 	
 	enum class BufferMemoryType {
diff --git a/src/vkcv/BufferManager.cpp b/src/vkcv/BufferManager.cpp
index cfa233290b89702f196ed97c706254e002a0551b..6fd86d69814a08c25078c69e5af98780ed29aa99 100644
--- a/src/vkcv/BufferManager.cpp
+++ b/src/vkcv/BufferManager.cpp
@@ -48,6 +48,9 @@ namespace vkcv {
 			case BufferType::INDEX:
 				usageFlags = vk::BufferUsageFlagBits::eIndexBuffer;
 				break;
+            case BufferType::INDIRECT:
+                usageFlags = vk::BufferUsageFlagBits::eStorageBuffer | vk::BufferUsageFlagBits::eIndirectBuffer ;
+                break;
 			default:
 				// TODO: maybe an issue
 				break;