Jump to content
Shoxsz

Direct2D

Recommended Posts

Shoxsz

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?

Share this post


Link to post
Share on other sites
pikax

Qual e' a IDE? Visual Studio?

  • Vote 1

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."

Share this post


Link to post
Share on other sites
pikax

O direct2D, vem com o SDK do directX.

ve este topico http://forums.codeblocks.org/index.php?topic=14103.0

  • Vote 1

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."

Share this post


Link to post
Share on other sites
Shoxsz

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. =]

Share this post


Link to post
Share on other sites
pikax
  • Vote 1

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."

Share this post


Link to post
Share on other sites
Shoxsz

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 by Shoxsz

Share this post


Link to post
Share on other sites
pikax

qual e' o erro?

Falta-te os nomes das variveis do tipo: HINSTANCE, LPWSTR, INT

  • Vote 1

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."

Share this post


Link to post
Share on other sites
pikax

posta o erro que da' no compilador e o codigo que tens

  • Vote 1

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."

Share this post


Link to post
Share on other sites
Shoxsz

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 :)

Share this post


Link to post
Share on other sites
pikax
e agora ta rodando de boa, vlw a ajuda pikax, valeu mesmo =], voce nessa foto fica até parecendo que sou eu :)

de nada. :D e' a minha posicao quando estou a pensar como resolver o problema :D


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."

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.