Shoxsz Posted May 27, 2013 at 11:26 AM Report #509159 Posted May 27, 2013 at 11:26 AM Olá pessoal, gostaria de começar a utilizar o DIrect2D mas não encontrei nada na net que ensine como instalar ou a programar com ele, apenas alguns textos explicando como ele funciona etc. Alguém poderia me ajudar a instala-lo?
pikax Posted May 27, 2013 at 11:33 AM Report #509164 Posted May 27, 2013 at 11:33 AM Qual e' a IDE? Visual Studio? 1 Report Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
nelsonr Posted May 27, 2013 at 11:34 AM Report #509165 Posted May 27, 2013 at 11:34 AM Boas, verifica se isto ajuda: http://msdn.microsoft.com/en-us/library/windows/desktop/ee663275%28v=vs.85%29.aspx 1 Report
Shoxsz Posted May 27, 2013 at 11:50 AM Author Report #509167 Posted May 27, 2013 at 11:50 AM Pikax: eu uso sempre o Code::Blocks, mas se precisar instalar outra, nao tem problema. nelsonr: Esse texto é para windows 8, eu uso windows 7 e ele só fala do Direct3D e parece que do DirectDraw que também trabalha em 2D, mas achei um link nessa página: http://msdn.microsoft.com/en-us/library/windows/desktop/dd370990(v=vs.85).aspx, ele fala sobre o direct2D
pikax Posted May 27, 2013 at 11:53 AM Report #509168 Posted May 27, 2013 at 11:53 AM O direct2D, vem com o SDK do directX. ve este topico http://forums.codeblocks.org/index.php?topic=14103.0 1 Report Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
Shoxsz Posted May 27, 2013 at 12:38 PM Author Report #509172 Posted May 27, 2013 at 12:38 PM hmm, então não é necessária a troca de compiladores, mas pelo que entendi eu preciso instalar o SDK do DirectX(pelo própio direct2D =]), e o code::blocks já vem com um exemplo(o que é realmente útil), dei uma lida nas outras respostas mas acho que isso já é necessário pra mim. Vou procurar baixar o direct2D mas se já tiver um link eu agradeçeria. =]
pikax Posted May 27, 2013 at 12:57 PM Report #509174 Posted May 27, 2013 at 12:57 PM SDK do directX https://www.microsoft.com/en-us/download/details.aspx?id=6812# 1 Report Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
Shoxsz Posted May 27, 2013 at 03:06 PM Author Report #509205 Posted May 27, 2013 at 03:06 PM (edited) baxei e instalei tudo certim, mas só que tava dando uns erros no include(resolvido), conversão(resolvido) e agora a definição para o WinMain, mas ela foi definida e ele aponta erro: 'undefined reference to WinMain@16', olha o código(exemplo do Code::Blocks): #include <d3d9.h> #include <cstddef> LPDIRECT3D9 g_pD3D = NULL; // Used to create the D3DDevice LPDIRECT3DDEVICE9 g_pd3dDevice = NULL; // Our rendering device HRESULT InitD3D( HWND hWnd ) { if( NULL == ( g_pD3D = Direct3DCreate9( D3D_SDK_VERSION ) ) ) return E_FAIL; D3DPRESENT_PARAMETERS d3dpp; ZeroMemory( &d3dpp, sizeof( d3dpp ) ); d3dpp.Windowed = TRUE; d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; d3dpp.BackBufferFormat = D3DFMT_UNKNOWN; if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &d3dpp, &g_pd3dDevice ) ) ) { return E_FAIL; } return S_OK; } VOID Cleanup() { if( g_pd3dDevice != NULL ) g_pd3dDevice->Release(); if( g_pD3D != NULL ) g_pD3D->Release(); } VOID Render() { if( NULL == g_pd3dDevice ) return; // Clear the backbuffer to a blue color g_pd3dDevice->Clear( 0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB( 0, 0, 255 ), 1.0f, 0 ); // Begin the scene if( SUCCEEDED( g_pd3dDevice->BeginScene() ) ) { // Rendering of scene objects can happen here // End the scene g_pd3dDevice->EndScene(); } // Present the backbuffer contents to the display g_pd3dDevice->Present( NULL, NULL, NULL, NULL ); } LRESULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam ) { switch( msg ) { case WM_DESTROY: Cleanup(); PostQuitMessage( 0 ); return 0; case WM_PAINT: Render(); ValidateRect( hWnd, NULL ); return 0; } return DefWindowProc( hWnd, msg, wParam, lParam ); } INT WINAPI wWinMain( HINSTANCE hInst, HINSTANCE, LPWSTR, INT ) { // Register the window class WNDCLASSEX wc = { sizeof( WNDCLASSEX ), CS_CLASSDC, MsgProc, 0L, 0L, GetModuleHandle( NULL ), NULL, NULL, NULL, NULL, "D3D Tutorial", NULL }; RegisterClassEx( &wc ); // Create the application's window HWND hWnd = CreateWindow( "D3D Tutorial", "D3D Tutorial 01: CreateDevice", WS_OVERLAPPEDWINDOW, 100, 100, 300, 300, NULL, NULL, wc.hInstance, NULL ); // Initialize Direct3D if( SUCCEEDED( InitD3D( hWnd ) ) ) { // Show the window ShowWindow( hWnd, SW_SHOWDEFAULT ); UpdateWindow( hWnd ); // Enter the message loop MSG msg; while( GetMessage( &msg, NULL, 0, 0 ) ) { TranslateMessage( &msg ); DispatchMessage( &msg ); } } UnregisterClass( "D3D Tutorial", wc.hInstance ); return 0; } Edited May 27, 2013 at 03:11 PM by Shoxsz
pikax Posted May 27, 2013 at 03:08 PM Report #509206 Posted May 27, 2013 at 03:08 PM qual e' o erro? Falta-te os nomes das variveis do tipo: HINSTANCE, LPWSTR, INT 1 Report Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
Shoxsz Posted May 27, 2013 at 11:57 PM Author Report #509324 Posted May 27, 2013 at 11:57 PM sim, mas o erro persiste :/
pikax Posted May 27, 2013 at 11:58 PM Report #509325 Posted May 27, 2013 at 11:58 PM posta o erro que da' no compilador e o codigo que tens 1 Report Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
Shoxsz Posted May 28, 2013 at 12:11 AM Author Report #509327 Posted May 28, 2013 at 12:11 AM hmm, o erro era na declaração do WinMain, mudei para: INT WINAPI WinMain( HINSTANCE hinst, HINSTANCE hinstPrev, LPSTR lpCmdLine, int nCmdShow) e agora ta rodando de boa, vlw a ajuda pikax, valeu mesmo =], voce nessa foto fica até parecendo que sou eu 🙂
pikax Posted May 28, 2013 at 09:31 AM Report #509366 Posted May 28, 2013 at 09:31 AM e agora ta rodando de boa, vlw a ajuda pikax, valeu mesmo =], voce nessa foto fica até parecendo que sou eu 🙂 de nada. 😄 e' a minha posicao quando estou a pensar como resolver o problema 😄 Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender. A beleza de um código está em decompor problemas complexos em pequenos blocos simples. "learn how to do it manually first, then use the wizzy tool to save time." "Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now