--- a/net/minecraft/client/renderer/vertex/VertexFormat.java
+++ b/net/minecraft/client/renderer/vertex/VertexFormat.java
@@ -84,4 +84,11 @@
 
       }
    }
+
+   // Forge start
+   public int getOffset(int index) { return field_177356_c.getInt(index); }
+   public boolean hasPosition() { return field_177355_b.stream().anyMatch(e -> e.func_177375_c() == VertexFormatElement.Usage.POSITION); }
+   public boolean hasNormal() { return field_177355_b.stream().anyMatch(e -> e.func_177375_c() == VertexFormatElement.Usage.NORMAL); }
+   public boolean hasColor() { return field_177355_b.stream().anyMatch(e -> e.func_177375_c() == VertexFormatElement.Usage.COLOR); }
+   public boolean hasUV(int which) { return field_177355_b.stream().anyMatch(e -> e.func_177375_c() == VertexFormatElement.Usage.UV && e.func_177369_e() == which); }
 }
