I am adding support for DirectX 11 to my engine and I have a question about the initialization of static vertex and index buffers. The approach I am using now, common to DirectX 9 engines, is that of creating a buffer, mapping it and then filling it with data. DirectX 11 apparently requires a different approach: according to the documentation, one should create a static buffer passing initialization data at the moment of creation. For me this approach would require a good amount of refactoring. So my question is: is it still allowed to defer a static buffer initialization by mapping the buffer after its creation ? If so, are there any restrictions or performance related implications ?