Demirug

Members
  • Content count

    1057
  • Joined

  • Last visited

Community Reputation

884 Good

About Demirug

  • Rank
    XNA/DirectX MVP
  1. [font="Calibri"][size="3"]DirectX 11 supports older hardware (DX9; DX 10), too. Therefore you don’t need DirectX 10 anymore as you can do anything with DirectX 11. [/size] [/font]
  2. [size="3"][font="Calibri"][size="3"][font="Calibri"][/font][/size] You don’t set the pitch with D3D11_SUBRESOURCE_DATA. You just tell the runtime what pitch your data uses. The runtime will use this information and the real pitch from your texture to copy the data correctly. As Map gives you a memory pointer were the driver wants the data to be copied it tells you the real pitch.[/font][/size]
  3. DX11 feature levels

    [font="Calibri"][size="3"]1.[/size][/font] [size="3"][font="Calibri"]The Direct3D 11 runtime will call the Direct3D 9 (ex) driver. The Direct3D 9 runtime is not used.[/font][/size] [font="Calibri"][size="3"]2.[/size][/font] [size="3"][font="Calibri"]It should never crash. Calls that are not supported should return an error code. Not tested by my own as I try to not make calls that are not supported.[/font][/size] [font="Calibri"][size="3"]3.[/size][/font] [size="3"][font="Calibri"]There is a runtime level emulation for this feature if the driver doesn’t support it. You can still benefit from it but you need to be carefully as it may have a different performances behavior as real driver support.[/font][/size] [font="Calibri"][size="3"]4.[/size][/font] [size="3"][font="Calibri"]You still might need to write feature level specific code if you need fallbacks for techniques that are not supported by lower feature levels. One case is using a compute shader vs. pixel shader for post processing. But in general you need to write much less specific code.[/font][/size]
  4. [size="3"][font="Calibri"]The short answer is: more control. But if this is really an advantage depends on your personal use case. If the effect framework offers anything you need then you will not gain any advantage from doing it by your own. [/font][/size] [size="3"][font="Calibri"]Some reasons why people don’t use the effect framework are:[/font][/size] [size="3"][font="Calibri"]-The engine needs to support multiple APIs and the effect/shader management should be the same for all APIs.[/font][/size] [size="3"][font="Calibri"]-The engine has a custom effect editing pipeline.[/font][/size]
  5. myCripplingSteps with DX10

    [size="3"][font="Calibri"]You need to add D3D10.lib as link library to your project.[/font][/size]
  6. D3D10 Warnings/Info Problem

    [size="3"][font="Calibri"]The objects could be set by a helper like D3DX10Sprite or D3DX10Font, too. [/font][/size]
  7. D3D10 Warnings/Info Problem

    [size="3"][font="Calibri"]Both warnings tell you that you have released an object that is still bound to the device pipeline. This is not a problem as long as you bound another resource to such slots before it is used by a draw call.[/font][/size] [size="3"][font="Calibri"]If you want avoid such warnings at device destruction I recommend using D3DX10UnsetAllDeviceObjects before you start to destroy your resources.[/font][/size] [size="3"][font="Calibri"]The first case looks like you create and destroy a render target view for each frame. The best solution would be to create the view just one time and reuse it. If this is not possible and you still want to solve this warning make sure you detach the view from the pipeline before you release it.[/font][/size] [font="Calibri"][size="3"] [/size][/font]
  8. [size="3"][font="Calibri"]Using the constant table is the way to go. It’s common to store the data from the constant table in an data structure that fit’s the own needs This way you need to parse the table only once and not every time you want to set a constant.[/font][/size]
  9. D3D10 Texture2D size question

    [size="3"][font="Calibri"]Have you checked the content of your texture after you have rendered the text to it? You can do this with Pix or by saving it to disk. If it’s ok you have most likely a problem in your shader code or the vertex data you use to draw this texture.[/font][/size]
  10. Losing device pointer during render loop?

    [size="3"][font="Calibri"]There is no way that a valid context pointer set itself to NULL by just calling members.[/font][/size] [size="3"][font="Calibri"]Could you post the code where you create the context? [/font][/size]
  11. D3D10 Texture2D size question

    If you are using Direct3D 10 there is only one supported feature level. If you can create a device there is a guaranteed texture size. This is 8192 in both directions. A GPU can support more. There is an additional limitation when it comes to the memory that your textures need in memory. Only 128 MB are guaranteed. Again GPUs can support more. But you should not be able to create a texture that’s beyond the hardware limits at all. Therefore your problem might be caused by something else then size limitations.
  12. [size="3"][font="Calibri"]You still do this with textures. The technique you are looking for is called render to texture.[/font][/size]
  13. [size="3"][font="Calibri"]I sound like you are locking for the wrong thing. What you want to do should be done with textures not with surfaces. You should have a look at the texture sample from the sdk.[/font][/size]
  14. DX9.0c GPU rendering DX10?

    [size="3"][font="Calibri"]DirectX 11 contains a software renderer called WARP that supports the DirectX 10.1 feature level. [/font][/size] [size="3"][font="Calibri"]Take a look at this link how to create a WARP device: [url="http://msdn.microsoft.com/en-us/library/ff476871(v=vs.85).aspx"]http://msdn.microsoft.com/en-us/library/ff476871(v=vs.85).aspx[/url][/font][/size]
  15. [size="3"][font="Calibri"]This additional transfer will have its price. That’s the reason why I noticed that you should be pixel shader limited. If you are doing only simple operations without a high overdraw the limit is more likely the raster operation processor (ROP) or the memory interface. In this case rendering to smaller targets would not help. [/font][/size]