changes to dx and gl interfaces, I think UBOs are working modulo UB