Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 05:36

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[directx]ferrai rendern und anzeigen lassen

Discussion on [directx]ferrai rendern und anzeigen lassen within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
Gianotti's Avatar
 
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
[directx]ferrai rendern und anzeigen lassen

ich versuche mich gerade an directx mithilfe von c++ und möchte zunächst ein 3d modell eines ferraris rendern und es einfach anzeigen lassen . ich besitze genug kenntnisse um diverse formen zu rendern jedoch habe ich keinen blassen schimmer wie ich mein modell gerendert bekomme.

guten tag noch
Gianotti is offline  
Old 01/27/2010, 19:33   #2
 
elite*gold: 0
Join Date: Sep 2009
Posts: 1
Received Thanks: 1
Wenn du schon ein Window mit DirectX erstellen kannst dann schau
dir mal diese schritte an.

Laden kannst du Modelle mithilfe von: D3DXLoadMeshFromX

Bsp:
//////////////////////////////////////////////////
LPD3DXBUFFER pD3DXMtrlBuffer;
LPD3DXMESH g_pMesh = NULL;
D3DMATERIAL9 *g_pMeshMaterials = NULL;
LPDIRECT3DTEXTURE9 *g_pMeshTextures = NULL;
unsigned long g_dwNumMaterials = 0L;

D3DXLoadMeshFromX( "deinmodel.x", D3DXMESH_SYSTEMMEM,
g_pd3dDevice, NULL,
&pD3DXMtrlBuffer, NULL, &g_dwNumMaterials,
&g_pMesh );

D3DXMATERIAL *d3dxMaterials = (D3DXMATERIAL*)pD3DXMtrlBuffer->GetBufferPointer();
g_pMeshMaterials = new D3DMATERIAL9[g_dwNumMaterials];
g_pMeshTextures = new LPDIRECT3DTEXTURE9[g_dwNumMaterials];

for( unsigned long i = 0; i < g_dwNumMaterials; ++i )
{
g_pMeshMaterials[i] = d3dxMaterials[i].MatD3D;
g_pMeshMaterials[i].Ambient = g_pMeshMaterials[i].Diffuse;
g_pMeshTextures[i] = NULL;
//Texture Laden
D3DXCreateTextureFromFile( g_pd3dDevice, d3dxMaterials[i].pTextureFilename,
&g_pMeshTextures[i] );
}

pD3DXMtrlBuffer->Release();

//////////////////////////////////////////////////////////

und dann nach BeginScene:

///////////////////////////////////////////////////////////

g_pd3dDevice->BeginScene();

for( unsigned long i = 0; i < g_dwNumMaterials; ++i )
{
g_pd3dDevice->SetMaterial( &g_pMeshMaterials[i] );
g_pd3dDevice->SetTexture( 0, g_pMeshTextures[i] );
g_pMesh->DrawSubset( i );
}
......
/////////////////////////////////////////////////////////////

Leider bin ich auch keine experte bei DirectX.

mfg Helo
Helo_ is offline  
Thanks
1 User
Old 01/27/2010, 19:47   #3
 
Gianotti's Avatar
 
elite*gold: 20
Join Date: Mar 2008
Posts: 1,455
Received Thanks: 140
Quote:
Originally Posted by Helo_ View Post
Wenn du schon ein Window mit DirectX erstellen kannst dann schau
dir mal diese schritte an.

Laden kannst du Modelle mithilfe von: D3DXLoadMeshFromX

Bsp:
//////////////////////////////////////////////////
LPD3DXBUFFER pD3DXMtrlBuffer;
LPD3DXMESH g_pMesh = NULL;
D3DMATERIAL9 *g_pMeshMaterials = NULL;
LPDIRECT3DTEXTURE9 *g_pMeshTextures = NULL;
unsigned long g_dwNumMaterials = 0L;

D3DXLoadMeshFromX( "deinmodel.x", D3DXMESH_SYSTEMMEM,
g_pd3dDevice, NULL,
&pD3DXMtrlBuffer, NULL, &g_dwNumMaterials,
&g_pMesh );

D3DXMATERIAL *d3dxMaterials = (D3DXMATERIAL*)pD3DXMtrlBuffer->GetBufferPointer();
g_pMeshMaterials = new D3DMATERIAL9[g_dwNumMaterials];
g_pMeshTextures = new LPDIRECT3DTEXTURE9[g_dwNumMaterials];

for( unsigned long i = 0; i < g_dwNumMaterials; ++i )
{
g_pMeshMaterials[i] = d3dxMaterials[i].MatD3D;
g_pMeshMaterials[i].Ambient = g_pMeshMaterials[i].Diffuse;
g_pMeshTextures[i] = NULL;
//Texture Laden
D3DXCreateTextureFromFile( g_pd3dDevice, d3dxMaterials[i].pTextureFilename,
&g_pMeshTextures[i] );
}

pD3DXMtrlBuffer->Release();

//////////////////////////////////////////////////////////

und dann nach BeginScene:

///////////////////////////////////////////////////////////

g_pd3dDevice->BeginScene();

for( unsigned long i = 0; i < g_dwNumMaterials; ++i )
{
g_pd3dDevice->SetMaterial( &g_pMeshMaterials[i] );
g_pd3dDevice->SetTexture( 0, g_pMeshTextures[i] );
g_pMesh->DrawSubset( i );
}
......
/////////////////////////////////////////////////////////////

Leider bin ich auch keine experte bei DirectX.

mfg Helo
danke für den text
Gianotti is offline  
Reply


Similar Threads Similar Threads
Metin2.de SchmiedChance anzeigen lassen ?
08/14/2010 - Metin2 - 14 Replies
also inder sufu gibs einige how²'s wie man schmiedchance anzeigen lässt aber auf de klappt das bei mir nicht dann kommt immer i-ein log fehler -.- ist es möglich die schmiedchance auf metin2.de anzeigen zu lassen ?
Auf der Hompage anzeigen lassen
04/10/2010 - Metin2 Private Server - 5 Replies
Hallo Liebe Elite Community Ja ich mal wieder :) Ich mach mich immer wieder schlau ♥ So bin ich halt ^^ Also Ich habe zurzeit mehrere Fragen :) 1. Weiß wer mit welchen einstellungen / Script / ka mann es hinbekommt das auf der HOMPAGE unter Team angezeigt wird wer Online und Offline ist?
sript anzeigen lassen
01/20/2010 - General Coding - 1 Replies
hallo, ich bin auf der suche nach einem tool für mein firefox. ich weiß das ich das früher schonmal konnte, aber nach der letzten "plättung" des rechners. Es geht darum, das ich mir wenn ich mir den Seitenquelltext einer Seite angucke auch den "versteckten" Inhalt des Quelltextes sehen möchte. Könnt ihr mir da vielleicht helfen? danke
100% der Karte anzeigen lassen
09/23/2007 - GW Exploits, Hacks, Bots, Tools & Macros - 11 Replies
Hiho.. als ich letztens mal so wieder auf karten entdeckungstour war, hab ich mir so gedacht ob es nicht ein tool gibt das in GW die karte komplett zeigt und durch schatierungen oder ähnliches anzeigt wo man noch nicht war. Glaube zwar nicht das es so etwas gibt oder geben wird aber vill. weiß ja einer näheres ob es sowass gibt?! :rolleyes: MFG Addi
2. Hotbar anzeigen lassen
03/15/2006 - Lineage 2 - 1 Replies
Hallo Community, wollte hier mal nachfragen ob folgende Sache geht! Ist es möglich, das man sich 2 Hotbars zur gleichen Zeit anzeigen lassen kann? D.H. ich will nicht zwischen den Hotbars hin und her schalten sondern will mir 2 anzeigen lassen! vielleicht geht es ja - vielleicht auch nicht - würde mich freuen wenn jemand eine Antwort posten könnte! Gruss CyLeecH



All times are GMT +1. The time now is 05:36.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.