HILFE, ich lade 2Bmp für textureMapping doch kann nur die erst geladene benutzen, wieso?
-
hmm bekomm da kein fehler angezeigt ... wenn ich des so mache:
if( !( TextureImage[0] = auxDIBImageLoad( "Bmp/moh.bmp" ) ) ) { MessageBox( 0, "FEHLER!", "FEHLER!", MB_OK ); return 0; } if( !( TextureImage[1] = auxDIBImageLoad( "Bmp/Master.bmp" ) ) ) { MessageBox( 0, "FEHLER!", "FEHLER!", MB_OK ); return 0; }nur 2warnings! xD
[C++ Warning] OpenGL_3D.cpp(85): W8060 Possibly incorrect assignment [C++ Warning] OpenGL_3D.cpp(91): W8060 Possibly incorrect assignmenthmmm was klappt da blos net???
-
Wenn keine Fehler angezeigt werden, sind wohl auch keine drin, was?
Wie sieht's denn jetzt mit den Texture IDs aus?
-
was denn für ID's ??? hä?
achja auch wenn ich bei mein 2Object die glBindTexture(...) weglasse und des ding mir glColor3f(ROT) mache muesste therethisch doch des ding rot sein, statt dessen sin beide rot mit der texture.... komisch...
-
In OpenGL hat jede Textur eine bestimmte Nummer (=ID).
Lesen:
http://www.gamedev.net/reference/articles/article947.asp schrieb:
The first thing that must take place in the process of uploading the texture is a call to glBindTexture. What glBindTexture does is it tells OpenGL which texture "id" we will be working with. A texture "id" is just a number that you will use to access your textures. Here is a sample call.
glBindTexture(GL_TEXTURE_2D, 13);
This call will make texture that is associated with the ID of 13 the active texture. Any calls that have to do with OpenGL texture mapping will effect this texture. It is important that you remember this number since it will be needed again later on to actually apply the texture to geometry.
-
Zeigst du mal das Codefragment wo du renderst?
grüße
-
kann ich dann einfache ne .rc anlegen mit
IDB_BITMAP_1 BITMAP "Bmp/Master.bmp" IDB_BITMAP_2 BITMAP "Bmp/moh.bmp"die .rc dem project beifuegen und den header includen... und dann brauch ich doch aber nicht mehr texture[2] definieren oder? sondern nur noch glBindTexture( GL_TEXTURE_2D, IDB_BITMAP_1 ), is das so ok???
-
Das hast du wiederrum falsch verstanden. Es du musst die Textur bei OpenGL registrieren. Und genau dann bekommst du eine ID zurück, mit der du dann bestimmte Texturen "Binden" kannst.
Das was du vorhast wird also nicht funktionieren, der erste Ansatz war schon korrekt!grüße
-
@ david
static PIXELFORMATDESCRIPTOR pfd = { sizeof( PIXELFORMATDESCRIPTOR ), 1, //versionnummer PFD_DRAW_TO_WINDOW | // foramt muss im fenster sichtbar sien PFD_SUPPORT_OPENGL | //unterstuetzt OpenGL PFD_DOUBLEBUFFER, // doublebuffering wird unterstuetzt PFD_TYPE_RGBA, // unterstuetzt RGB + alpha f. 16, // farbtiefe 0, 0, 0, 0, 0, 0, 0, // kein alphabuffer 0, // shift bit ignoriet 0, // kein accumulationsbuffer 0, 0, 0, 0, 16, // 16-Bit Depth-Buffer 0, // kein stencil buffer 0, // kein auxiliary buffer PFD_MAIN_PLANE, // hauptebene auf der später gezeichnet wird 0, // unwichtig 0, 0, 0 }; // keine ebenenmasken benötigt hDC = GetDC( hWnd ); PixelFormat = ChoosePixelFormat( hDC, &pfd ); SetPixelFormat( hDC, PixelFormat, &pfd ); // verwendet PixelFormat hRC = wglCreateContext(hDC); wglMakeCurrent(hDC,hRC); // verucht hRC zu aktivieren ShowWindow( hWnd, SW_SHOW ); // zeigt fenster an ReSizeGLScene( width, height ); // aktiviert perspective InitGL(); // läd die openGL ( texturen, lich .... ) ...
-
also das mit dem header:
... #define IDB_BITMAP_1 1 ...ist ok ?
und wie mach ich das denn im .rc file?? und wie geht das mit der registrierung?? des ist doch glGenTexture() odeR?
-
Das ist nicht der Rendercode... aber trotzdem danke!

also das mit dem header:
Code:
...#define IDB_BITMAP_1 1
...
Code:
...#define IDB_BITMAP_1 1
...
Code:
...#define IDB_BITMAP_1 1
...ist ok ?
und wie mach ich das denn im .rc file?? und wie geht das mit der registrierung?? des ist doch glGenTexture() odeR?
Liest du egtl auch mal zwischen deinen 100 doppelposts???

-
oO, sprecht doch nicht in Rätseln *g*
also jetzt hab ich dem ganzen ne Id verpasst denk ich trotzdem gehts net..... oder meine rc ist falsch.... also IDB_BITMAP_1 1 .....
-> .rc -> IDB_BITMAP_1 BITMAP "path". im prog, texture[] = { IDB_BITMAP_1 ... } -> glBindTexture( GL_TEXTURE_2D, texture[0])... kommt trotz allen wieder bei beiden obj. die erste texture
-
Ich spreche ziemlich deutlich. Und wenn du die vorherigen Posts gründlich durchgelesen hättest wärst du jetzt schlauer...
grüße
-
hmm.. jetz hab ichs mir mindestens 10mal durch gelesen und weiss immer noch nicht wie ich das mit den ID's mache.... hmmm ist doch alles ....

-
Alter... mir fehlen die Worte.
Wie hast du eigentlich mit OpenGL angefangen? Hast du deinen Code auf der Straße gefunden oder was?
http://nehe.gamedev.net/
auf der linken Seite sind die Tutorials. Ich nehme mal an, du kannst Englisch als Abiturient.