Questions tagged [direct3d]

Direct3D is a high-performance, COM-based API for accessing graphics hardware (GPUs) in a device-independent way on Microsoft platforms.

Direct3D is a high-performance, COM-based API for accessing graphics hardware (GPUs) in a device-independent way on Microsoft platforms.

It is typically used for video game development, in contrast to the OpenGL API, which is more often used in data visualization tasks.

There are several versions of the Direct3D API, each of which corresponding to a different generation of graphics hardware.

  • Direct3D 7 incorporated hardware-accelerated transformation and lighting (NVidia Geforce, ATi Radeon).
  • Direct3D 8 added limited support for programmable graphics hardware (pixel and vertex shaders) using a specially-designed shader assembler syntax (NVidia Geforce 3, ATi Radeon 8500).
  • Direct3D 9 greatly improved support for programmable shader hardware, allowing for fairly complex shader programs (NVidia Geforce FX, ATi Radeon 9500), as well as incorporating a high-level language for writing shader programs (HLSL, basically identical to NVidia Cg).
  • Direct3D 10 featured a completely restructured API while removing support for fixed-function hardware and assembler shader programs (NVidia Geforce 8). While previous versions of Direct3D were backwards-compatible, Direct3D 10 works only on capable hardware.
  • Direct3D 11 added support for different levels of graphics hardware functionality, unifying support for "modern" (fully-programmable) as well as "legacy" (fixed-function or partially-programmable) GPUs.

Microsoft's XBox game consoles' GPUs are programmed using a variant of Direct3D (a Direct3D 8 variant on the original XBox, and an improved Direct3D 9 variant on the XBox 360, with added support for some Direct3D 10 features such as tesselation).

More information at http://en.wikipedia.org/wiki/Direct3D

1464 questions
7
votes
4 answers

Debugging Shaders on Visual Studio 2012, can't find the Symbols

I don't know if many of you tried the new excellent feature of Visual Studio 2012 to debug Direct3D based apps. I successfully capture a frame of my app, then I want to debug the execution of a Vertex Shader: I click on the green triangle to debug…
Nock
  • 6,561
  • 1
  • 28
  • 27
6
votes
5 answers

Graphics Profiling

Ive got an application which drops to around 10fps. I profiled it with xperf which showed my app was using just 20% of the CPU, with none of my methods using a larger than expected amount of that 20%. This seems to indicate that the vast drop in fps…
Fire Lancer
  • 29,364
  • 31
  • 116
  • 182
6
votes
2 answers

How do I make the lights stay fixed in the world with Direct3D

I've been using OpenGL for years, but after trying to use D3D for the first time, I wasted a significant amount of time trying figure out how to make my scene lights stay fixed in the world rather than fixed on my objects. In OpenGL light positions…
Baxissimo
  • 2,629
  • 2
  • 25
  • 23
6
votes
1 answer

Render a BMP, JPEG, or PNG Image with DirectX?

How do you render a BMP, JPEG, or PNG image file in 3D with DirectX in Windows? (E.g. let's say I want to render four images so that they look like a cubicle or something.) I've seen this done easily with a Java OpenGL library (JME I think?), but it…
user541686
  • 205,094
  • 128
  • 528
  • 886
6
votes
1 answer

Algorithm to project 2D/3D objects onto a plane (Augmented Reality)?

I'm working on a project about Augmented Reality using a marker (which is a chessboard) that takes images from webcam and insert a 2D/3D object onto the chessboard plane(realtime) . By using openCV i was able to detect the chessboard corners and…
W00f
  • 137
  • 2
  • 9
6
votes
3 answers

C++ Qualified name is not allowed in member declaration

I am following one of Fleeps old tutorials from 2012. I have encountered a speedbump, this error: qualified name is not allowed in member declaration. I have tried changing the SDK, defining/declaring the class in the main.cpp file. None of this…
Lukas Knudsen
  • 197
  • 2
  • 3
  • 14
6
votes
1 answer

D3D11CreateDevice 0x887a002d error

First I am learning DirectX 11 from Frank Luna book I came to the part where I need to create the device, but it gives the error: "0x887a002d: The application requested an operation that depends on an SDK component that is missing or mismatched." I…
6
votes
1 answer

Frequency of shader invocations in rendering commands

Shaders have invocations, which each are (usually) given a unique set of input data, and each (usually) write to their own separate output data. When you issue a rendering command, how many times does each shader get invoked?
Nicol Bolas
  • 449,505
  • 63
  • 781
  • 982
6
votes
1 answer

Resizing a DXGI swap chain bound to a Direct2D render target

I have a Direct2D render target created with ID2D1Factory::CreateDxgiSurfaceRenderTarget. When I receive a WM_SIZE message, I try to resize the corresponding swap chain by calling IDXGISwapChain::ResizeBuffers, but it fails with…
user1610015
  • 6,561
  • 2
  • 15
  • 18
6
votes
8 answers

Direct3D over Remote Desktop

How can I get Direct3D to work over a Remote Desktop connection? I am using Windows XP Professional.
Agnel Kurian
  • 57,975
  • 43
  • 146
  • 217
6
votes
1 answer

How can I draw a transparent 3D object with the SharpDX Toolkit?

I'm working on an application that uses SharpDX and the SharpDX Toolkit to draw simple 3D shapes, and the Geometrics.Desktop sample was very helpful in getting started. Now I'm trying to make some shapes transparent, and to keep things simple I'm…
NSFW
  • 557
  • 4
  • 12
6
votes
1 answer

C++ Direct3D Multiple Screen Capture

Hello Direct3D experts, I am currently developing an application with Direct3D in order to capture my two monitors desktop (used as extended desktop of course). The following code works well but I am just able to capture the primary display and not…
Robert Jones
  • 587
  • 7
  • 25
6
votes
2 answers

D3D11 Coordinate System

Some of my old code has ended up with a bunch of nasty hacks to get things to work "correctly", in terms of moving objects around and the camera, such as having to take "std::sin(-yaw)" rather than "std::sin(yaw)" when implementing equations found…
Fire Lancer
  • 29,364
  • 31
  • 116
  • 182
6
votes
2 answers

Loading/Storing to XMFLOAT4 faster than using XMVECTOR?

I'm going through the DirectX Math/XNA Math library, and I got curious when I read about the alignment requirements for XMVECTOR (Now DirectX::XMVECTOR), and how it is expected of you to use XMFLOAT* for members instead, using XMLoad* and XMStore*…
Duncan
  • 980
  • 6
  • 17
6
votes
2 answers

DirectCompute optimal numthreads setup

I've recently been playing with compute shaders and I'm trying to determine the most optimal way to setup my [numthreads(x,y,z)] and dispatch calls. My demo window is 800x600 and I am launching 1 thread per pixel. I am performing 2D texture…
Valentin
  • 1,731
  • 2
  • 19
  • 29