direct3d

D3D Performance comparison, shaders vs built in shading

Hi there. I have a running 3D engine built in D3D (via SlimDX). To avoid interupting the rendering pipeline I have batched together many objects with the same material into bigger meshes (to reduce state switching). This have worked well and gives a good performance level for my need. The issue I am running into is that I, during runti...

OpenGL for space simulators

Hi all, with a few friends we started this amateur platform-independent java-based project for a space combat simulator game (something like the long dead saga of wing commander). None of us though is a 3D programmer, so the road is gonna be long. My question is: in our place would you start learning OpenGL (maybe via GLUT) or is there...

Stretch blit in DirectX results in jagged edges

I have a Direct3D app which runs windowed or fullscreen at a fixed res (say 800x600). To support widescreen modes, I render to the back buffer at 800x600 and then use Blt to draw the final frame into a portion of the front buffer, which is usually bigger (say 1280x720), so the 800x600 image is stretched to 960x720 to maintain the aspect ...

From Direct3d to OpenGL

I currently rewrite an old Visual Basic application in java, a large part of the work involves replacing Direct3d with jogl. Since I have no experience in dealing with Direct3d and only minimal experience using Opengl, I am stuck on finding appropriate replacements for the api calls. Are there any good guides/tutorials or references? ...

Cutting a Mesh in Half - DirectX

I am trying to cut a mesh in half or at least be able to delete faces from it in real-time. How to go about doing this i wonder? Lock the vertex buffers, memset the selected face or vertex to 0, does not work for me. has anyone a solution or a tutorial on this i really want this feature in my program! Cheers ...

How to resize a d3d application from an external application. (C#)

I'm trying to resize a d3d window from an external application, from my application. I can resize the window, but the d3d engine still thinks its 1024x768 or w\e res your running at. I was thinking a DLL inject, but how would i go about resizing the window. I did some research and i'm pretty sure i need to change the BackBufferWidth an...

Multi-monitor 3D Application

I've been challenged with a C++ 3D application project that will use 3 displays, each one rendering from a different camera. Recently I learned about Ogre3D but it's not clear if it supports output of different cameras to different displays/GPUs. Does anyone have any experience with a similar Setup and Ogre or another engine? ...

Direct3D Mesh with combination of lines and triangles

I need to create a Direct3D mesh consisting of some vertices (generated at run-time) which I need rendered as a combination of LineList and TriangleList. i.e. some vertices are rendered as a LineList and some of them as a TriangleList. How can I create this Direct3D mesh? ...

Direct3D: What does the stream number do in device->SetStreamSource?

Where else is the stream number used other than in these two places: GetStreamSource and SetStreamSource? ...

Should I use DirectInput or Windows message loop?

I'm working on a C++ DirectX 2D game and I need keyboard and mouse input. Wikipedia says: Microsoft recommends that new applications make use of the Windows message loop for keyboard and mouse input instead of DirectInput So how should I use it? I have a GameScreen class whice take care of the drawing and the updating(game logic), ...

How do I check for a 32-bit z-buffer using Managed Direct3D?

I understand that a call to Manager::CheckDepthStencilMatch should get me an answer, but so far I have not been able to gather the pieces required to make this call effectively. In particular, I need to obtain values for the adapterFormat and renderTargetFormat arguments. I am not specifying any particular format while creating the devi...

How to render formatted text in Direct3D9?

I'm writing an application which needs to draw a lot of text - several lines, maybe tens of lines - in Direct3D9. The text can be heavily formatted (i.e. different typefaces, styles, sizes) and can contain unicode symbols from different charsets. Worst of all, it can change on the fly, so it needs to be dynamic (render once display alway...

How are 3D games so efficient?

There is something I have never understood. How can a great big PC game like GTA IV use 50% of my CPU and run at 60fps while a DX demo of a rotating Teapot @ 60fps uses a whopping 30% ? Thanks ...

Direct3D Sprite->SetTransform usage?

I draw textures using the D3DXSprite. I want to transform them(rotate, scale etc..) so I use the SetTransfrom method. Should I, store the old transformation -> set a new one -> draw -> set the old one? I have a sprite class whice take care of the Draw and the Update methods. I mean something like this: D3DXMatrix oldMatrix; sprite->GetT...

Should i write a Direct3D Shader Model language compiler using flex/yacc?

I am going to create a compiler for Direct3D's Shader Model language. The compiler's target platform and development environment are on Windows/VC++. For those who are not familiar with the Shader Model Language, here are examples of instructions which the language consists of (some of the instructions are a bit outdated, but the syntax...

Direct3D Line thickness

How do I change the thickness of lines when drawing line lists using Direct3D? This post says that line width is not supported and goes on to provide a workaround. Other options? While we are on this topic, do shaders allow one to draw lines with dash patterns? ...

IDirect3DTexture9::SetData?

In XNA, you can do texture = new Texture2D( GraphicsDevice, width, height ) ; I'm guessing somewhere deep down in the MSFT bowels, this is equivalent to C++ code: D3DXCreateTexture( GraphicsDevice, width, height, 1, 0, D3DFMT_A8R8G8B8, D3DPOOL_MANAGED, &texture ) ; In XNA there's this nifty function that lets you set the pixel valu...

Pre-named D3DCOLOR header files anywhere?

In GDI+ you can do Color::Green, Color::AliceBlue, etc, as listed here I'm looking for a similar pre-baked color enumeration for D3DCOLOR structs from a DirectX header, but I don't know where one is. ...

Enable AntiAliasing in Direct3D9 (MultiSample Render Target)

I am trying to enable AA in a D3D9 application, but am not sure how to set up the surfaces correctly. So far, I have: IDirect3DDevice9* m_pd3dDevice; IDirect3DSurface9* screen; IDirect3DSurface9* msaasurf; D3DPRESENT_PARAMETERS m_presentationParameters; Initialization: m_presentationParameters.Windowed = TRUE; m_presentationParameter...

Can't modify value returned by time.time() in Python code embedded in C++

Hi, I'm facing a very strange problem. The following code: import time target_time = time.time() + 30.0 doesn't work in Python code called from C++ (embedding)! target_time has the same value as time.time() and any attempt to modify it leaves the value unchanged in a pdb console... It happens after I've called root.initialise() ...