QT Programm auf anderen Computern zum Laufen bringen

Wenn ihr eine QT Applikation auf einen PC Laufen zu lassen braucht ihr einige dlls:

  • qwindows.dll
  • Qt5WinExtras.dll
  • Qt5Core.dll
  • qoffscreen.dll
  • qminimal.dll

Die Main.cpp muss jedoch erweitert werden da sonst der Windows Painter nicht vorhanden ist.

[codesyntax lang=“cpp“]

#include <windows.h>
std::string ExePath() {
	char buffer[MAX_PATH];
	GetModuleFileName(NULL, buffer, MAX_PATH);
	std::string::size_type pos = std::string(buffer).find_last_of("\\/");
	return std::string(buffer).substr(0, pos);
}

int main(int argc, char *argv[]) {

	std::string p = ExePath();
	
	stringc w;
	w = "QT_QPA_PLATFORM_PLUGIN_PATH=";
	w += p.c_str();
	QApplication::addLibraryPath(p.c_str());
	putenv(w.c_str());

        if (qApp == 0) {
		new QApplication(argc, argv);
	}

	Start start;
	start.show();
	return qApp->exec();
}

[/codesyntax]

Veröffentlicht unter C++

Shadowmapping

Ich habe in Irrlicht Schatten von hier implementiert:

http://www.riemers.net/eng/Tutorials/DirectX/Csharp/Series3/The_first_shadow.php

Nachdem ich das in Irrlicht eingbaut hatte sah es auf dem ersten Blick auch gut aus. Im 2. Bild jedoch sind Artifakte zu sehen.

shadowError

Wenn ich exakt dahinter mit Würfeln geworfen habe habe ich gemerkt das die Schatten immer dann korrket sind wenn etwas in dem Leeren Bereich ist.

Die Lösung. Die Schadowmap muss gefüllt sein mit Daten.

ShadowOK