Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Samus_Aran JLI'ler
Alter: 37 Anmeldedatum: 12.05.2004 Beiträge: 183 Wohnort: Plauen->des liegt in Sachsen in der nähe von Chemnitz und Zwickau Medaillen: Keine
|
Verfasst am: 02.06.2004, 21:07 Titel: Komischer Fehler beim Texturieren von einer Kugel |
|
|
Hallo Leute wie kann ich machen das diese Textur meine ganze Kugel texturiert und nicht nur wie in diesem bild ??? |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 02.06.2004, 21:10 Titel: |
|
|
Ist das eine D3DXCreateSphere() Sphere? Dann scghau dir mal das EarthBump Beispiel an.
C. |
|
Nach oben |
|
|
Samus_Aran JLI'ler
Alter: 37 Anmeldedatum: 12.05.2004 Beiträge: 183 Wohnort: Plauen->des liegt in Sachsen in der nähe von Chemnitz und Zwickau Medaillen: Keine
|
Verfasst am: 03.06.2004, 10:55 Titel: |
|
|
Jep Christian so isses danke ich werds mir ma ankucken danke |
|
Nach oben |
|
|
Samus_Aran JLI'ler
Alter: 37 Anmeldedatum: 12.05.2004 Beiträge: 183 Wohnort: Plauen->des liegt in Sachsen in der nähe von Chemnitz und Zwickau Medaillen: Keine
|
Verfasst am: 03.06.2004, 15:55 Titel: |
|
|
Sorry bin wies aussieht zu doof aber in dem BumpEarth find ich des net |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 03.06.2004, 16:42 Titel: |
|
|
Du hast recht, denn da wird die Kugel als X-File geladen, sorry. Ich denke mal drüber nach. |
|
Nach oben |
|
|
Samus_Aran JLI'ler
Alter: 37 Anmeldedatum: 12.05.2004 Beiträge: 183 Wohnort: Plauen->des liegt in Sachsen in der nähe von Chemnitz und Zwickau Medaillen: Keine
|
Verfasst am: 06.06.2004, 09:45 Titel: |
|
|
Ich weis auch nich was ich falsch mache aber bis jetzt hab ichs so oft unterschiedlich probiert und nix hat gefunzt mmh weiterarbeiten |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
|
Nach oben |
|
|
KI JLI Master
Alter: 39 Anmeldedatum: 04.07.2003 Beiträge: 965 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 06.06.2004, 11:21 Titel: |
|
|
@Samus_Aran
Hast du schon mal mit Google gesucht?
Also. Ich hab grad was interessantes auf gamedev.net gefunden.
Ist zwar für DirectX 8, aber das Prinzip ist gleich denke ich:
-------Code-------
HRESULT CSphere::MakeSphere ( LPDIRECT3DDEVICE8 pd3dDevice ,
LPDIRECT3DVERTEXBUFFER8 * ppVB ,
LPDIRECT3DINDEXBUFFER8 * ppIB ,
int nRings , int nSegments )
{
// set vertex count and index count
DWORD dwVertices = ( nRings + 1 ) * ( nSegments + 1 ) ;
DWORD dwIndices = 2 * nRings * ( nSegments + 1 ) ;
// Create the vertex buffer
if( FAILED ( pd3dDevice->CreateVertexBuffer(
dwVertices * sizeof ( BUMPSPHEREVERTEX ),
D3DUSAGE_WRITEONLY, D3DFVF_BUMPSPHEREVERTEX,
D3DPOOL_DEFAULT, ppVB ) ) )
return E_FAIL;
// Create the index buffer
if( FAILED ( pd3dDevice->CreateIndexBuffer(
dwIndices * 2 ,
D3DUSAGE_WRITEONLY, D3DFMT_INDEX16,
D3DPOOL_DEFAULT, ppIB ) ) )
return E_FAIL;
// Lock the vertex buffer
BUMPSPHEREVERTEX * pVertex ;
( * ppVB )->Lock( 0, 0, (BYTE**) & pVertex , 0 );
// lock the index buffer
WORD * pIndices;
if( FAILED ( ( * ppIB )->Lock( 0, dwIndices, ( BYTE * * ) & pIndices, 0 ) ) )
return E_FAIL;
// Establish constants used in sphere generation
FLOAT fDeltaRingAngle = ( D3DX_PI / nRings );
FLOAT fDeltaSegAngle = ( 2.0f * D3DX_PI / nSegments );
WORD wVerticeIndex = 0 ;
// Generate the group of rings for the sphere
for( int ring = 0; ring < nRings + 1 ; ring++ )
{
FLOAT r0 = sinf ( ring * fDeltaRingAngle );
FLOAT y0 = cosf ( ring * fDeltaRingAngle );
// Generate the group of segments for the current ring
for( int seg = 0; seg < nSegments + 1 ; seg++ )
{
FLOAT x0 = r0 * sinf( seg * fDeltaSegAngle );
FLOAT z0 = r0 * cosf( seg * fDeltaSegAngle );
// Add one vertices to the strip which makes up the sphere
pVertex->p = D3DXVECTOR3(x0,y0,z0); // normalized
pVertex->n = pVertex->p ;
pVertex->color = 0xffffffff ;
pVertex->tu = (FLOAT) seg / (FLOAT) nSegments;
pVertex->tv = (FLOAT) ring / (FLOAT) nRings;
pVertex ++;
// add two indices except for last ring
if ( ring != nRings )
{
* pIndices = wVerticeIndex ;
pIndices ++ ;
* pIndices = wVerticeIndex + ( WORD ) ( nSegments + 1 ) ;
pIndices ++ ;
wVerticeIndex ++ ;
} ;
} ; // end for seg
} // end for ring
( * ppIB )->Unlock();
( * ppVB )->Unlock();
return S_OK ;
}
-------Code-------
Der Code ist von einem gewissen Laurent und er sagt, dass er trickreich ist und sogar einen Indexbuffer benutzt.
Link: http://www.gamedev.net/community/forums/topic.asp?topic_id=85779 |
|
Nach oben |
|
|
Samus_Aran JLI'ler
Alter: 37 Anmeldedatum: 12.05.2004 Beiträge: 183 Wohnort: Plauen->des liegt in Sachsen in der nähe von Chemnitz und Zwickau Medaillen: Keine
|
Verfasst am: 06.06.2004, 13:54 Titel: |
|
|
Danke Danke ich werds mal versuchen umzusetzen mmh und des mit den Texturkoordinatien erstellen sollte ja nicht alzu schwer sein |
|
Nach oben |
|
|
|