Ok this might sound weird,but I never actually read anywhere how exactly resources are handled between the CPU on a lower level.I mean - does the vertex buffer stay in the system memory and when you call "IASetVertexBuffers" get sent to the GPU each time or are all the buffers/textures/shaders/whatever loaded directly in the video memory and then just given small commands from the cpu for which resource to set up for rendering?
How does IASetVertexBuffers work?
Started by mrheisenberg, Nov 25 2012 02:19 PM
1 reply to this topic
Sponsor:
#2 GDNet+ - Reputation: 2372
Posted 25 November 2012 - 08:48 PM
That depends on the type of resource you have created and what options you used when creating it. Normally the resources will reside in GPU memory, and you are just given a CPU COM based reference that is used to identify it. So when you bind it to the pipeline somehow, it is actually not being transferred to the GPU - it is already there.
In other cases, you can create resources that are able to be manipulated by the CPU. Those resources are probably going to reside in system memory, but they typically can't be directly bound to the pipeline. These are just general ideas though, because the implementation is dependent on the driver.
In other cases, you can create resources that are able to be manipulated by the CPU. Those resources are probably going to reside in system memory, but they typically can't be directly bound to the pipeline. These are just general ideas though, because the implementation is dependent on the driver.
Jason Zink :: DirectX MVP
Check out our (now available) D3D11 book: Practical Rendering and Computation with Direct3D 11
Check out my Direct3D 11 engine on CodePlex: Hieroglyph 3
Check out our free online D3D10 book: Programming Vertex, Geometry, and Pixel Shaders
Lunar Rift :: Dual-Paraboloid Mapping Article :: Parallax Occlusion Mapping Article :: Fast Silhouettes Article
Check out our (now available) D3D11 book: Practical Rendering and Computation with Direct3D 11
Check out my Direct3D 11 engine on CodePlex: Hieroglyph 3
Check out our free online D3D10 book: Programming Vertex, Geometry, and Pixel Shaders
Lunar Rift :: Dual-Paraboloid Mapping Article :: Parallax Occlusion Mapping Article :: Fast Silhouettes Article






