irrlciht gettexture, wo ist der Code?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Jan_

Ehemaliger Admin

Betreff: irrlciht gettexture, wo ist der Code?

BeitragMo, Aug 15, 2005 10:29
Antworten mit Zitat
Benutzer-Profile anzeigen
hiho, ein kleines Irrlciht Problem,

Ich scuhe den Quellcode zu der gettexture funktion, finde ihn aber nciht. wo ist er?

source\include\iVideoDevice.h
Code: [AUSKLAPPEN]

//.....
   class IVideoDriver : public IUnknown
   {
   public:
//.....
            virtual ITexture* getTexture(const c8* filename) = 0;
//.....
           };
//.....
between angels and insects
 

Dreamora

BeitragMo, Aug 15, 2005 10:45
Antworten mit Zitat
Benutzer-Profile anzeigen
.h sind nur header dateien mit deklarationen, keine implementation. musst in den c / cpp dateien gucken ... wahrscheinlich iVideoDevice.cpp in diesem fall
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Jan_

Ehemaliger Admin

BeitragMo, Aug 15, 2005 10:47
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, nur diese Datei gibt es nciht :-/

sonst würde ich ja nciht fragen.
between angels and insects
 

David

BeitragMo, Aug 15, 2005 11:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

IVideoDriver ist eine abstrakte Klasse. D.h. sie lässt sich nicht instanziieren. Zu erkennen an den rein virtuellen Methoden...
Du musst also die Klassen suchen welche von IVideoDriver abgeleitet sind. DORT und nur dort wirst du den Code finden! Wink

Und das sieht doch gut aus:
Code: [AUSKLAPPEN]

class CVideoNull : public IVideoDriver, public IGPUProgrammingServices
{
   //...
}


CVideoNull.cpp
Code: [AUSKLAPPEN]

ITexture* CVideoNull::getTexture(const c8* filename)
{
   ITexture* texture = findTexture(filename);

   if (texture)
      return texture;

   io::IReadFile* file = FileSystem->createAndOpenFile(filename);

   if (file)
   {
      texture = loadTextureFromFile(file);
      file->drop();

      if (texture)
      {
         addTexture(texture, filename);
         texture->drop(); // drop it becaus we created it, one grab to much
      }
   }
   else
      os::Printer::log("Could not open file of texture", filename, ELL_ERROR);

   if (!texture)
      os::Printer::log("Could not load texture", filename, ELL_ERROR);

   return texture;
}


grüße

Jan_

Ehemaliger Admin

BeitragMo, Aug 15, 2005 13:06
Antworten mit Zitat
Benutzer-Profile anzeigen
oh, danke.

sozusagen, muss ich es für jeden Treiber ändern.
-misst-
between angels and insects

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group