Lyev

Member

8

118 Neutral

• Rank
Newbie

2. D3DXMatrix functions do nothing

So something like this? D3DXMATRIX trans, rotx, roty, rotz, scaling; D3DXMatrixIdentity (&v_mat_world); D3DXMatrixTranslation (&trans, origin[0], origin[1], origin[2]); D3DXMatrixRotationX (&rotx, angles[0]); D3DXMatrixRotationY (&roty, angles[1]); D3DXMatrixRotationZ (&rotz, angles[2]); D3DXMatrixScaling (&scaling, scale[0], scale[1], scale[2]); D3DXMatrixMultiply (&v_mat_world, &v_mat_world, &rotx); D3DXMatrixMultiply (&v_mat_world, &v_mat_world, &roty); D3DXMatrixMultiply (&v_mat_world, &v_mat_world, &rotz); D3DXMatrixMultiply (&v_mat_world, &v_mat_world, &scaling); D3DXMatrixMultiply (&v_mat_world, &v_mat_world, &trans);
3. D3DXMatrix functions do nothing

When I call these functions the matrix, v_mat_world, remains unchanged, please help :S float origin[3] = {1, 0, 0}, angles[3] = {D3DXToRadian(180), 0, 0}, scale[3] = {1, 1, 1}; D3DXMatrixIdentity (&v_mat_world); D3DXMatrixTranslation (&v_mat_world, origin[0], origin[1], origin[2]); D3DXMatrixRotationX (&v_mat_world, angles[0]); D3DXMatrixRotationY (&v_mat_world, angles[1]); D3DXMatrixRotationZ (&v_mat_world, angles[2]); D3DXMatrixScaling (&v_mat_world, scale[0], scale[1], scale[2]);
4. DirectX 11 coordinate system question

Thanks for your help. XMMatrixOrthographicOffCenterLH worked great.
5. OpenGL DirectX 11 coordinate system question

How do I make the coordinate system in DirectX 11 relative to the top left of the screen? I've setup an orthographic projection matrix, so that I can use screen coordinates but it makes more sense to me to have a top left origin, since I come from working with OpenGl. I setup my projection matrix like this: ww = the width of the window and wh = the height of the window projection = XMMatrixIdentity (); projection = XMMatrixOrthographicLH (ww, wh, -1, 1);
6. fill pixel box

DirectX 11 and I'm on PC with VC++ 2010
7. OpenGL fill pixel box

How would I go about filling a box with a given x and y and width and height up with pixels of a certain color? I'm guessing it would involve making a new vertex buffer, but I don't know how to just fill it with a color in opengl this could be done like: glBegin(GL_QUADS); glVertex2f(x,y); glVertex2f(x,y+h); glVertex2f(x+w,y+h); glVertex2f(x+w,y); glEnd();
8. AVIStreamGetFrameOpen Problem

First of all I learnt how to do this from http://nehe.gamedev....n_opengl/23001/ AVIStreamGetFrameOpen is always returning NULL. I checked to see if I could open the AVI file in windows media player and that worked, so that means it can't be a codec problem, right? I'm not too sure. All the variables have valid values before the call to AVIStreamGetFrameOpen Here's my code: if (AVIStreamOpenFromFile(&avi, file, streamtypeVIDEO, 0, OF_READ, NULL) != 0) return; AVIStreamInfo (avi, &info, sizeof(info)); w = info.rcFrame.right - info.rcFrame.left; h = info.rcFrame.bottom - info.rcFrame.top; lastframe = AVIStreamLength (avi); mpf = AVIStreamSampleToTime (avi, lastframe) / lastframe; header.biSize = sizeof (BITMAPINFOHEADER); header.biPlanes = 1; header.biBitCount = 24; header.biWidth = BITMAP_WIDTH; header.biHeight = BITMAP_HEIGHT; header.biCompression = BI_RGB; bitmap = CreateDIBSection (hdc, (BITMAPINFO*)(&header), DIB_RGB_COLORS, (void**)(&data), NULL, NULL); SelectObject (hdc, bitmap); pgf = AVIStreamGetFrameOpen (avi, NULL); if (!pgf) return;