Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Irrlicht - błąd windowsa

Ostatnio zmodyfikowano 2012-07-28 13:23
Autor Wiadomość
ShadowGames
Temat założony przez niniejszego użytkownika
Irrlicht - błąd windowsa
» 2012-07-28 09:44:08
Witam. W końcu po paro godzinnej pracy poradziłem sobie z linkowaniem Irrlichta w Code:Block. Wszystko kompiluje się bezbłędnie i konsola odpala się normalnie ale gdy załaduje się okienko irrlichta wyrzuca błąd systemu windows(ten z wyslij raport lub nie wysyłaj). Wersja irrlichta 1.7.3/1.6.1 mieszane gdyż w oficjalnej paczce 1.7.3 brakuje niektórych plików.
Mój sprzęt:
Intel Pentium M 2,0Ghz
Ati Mobility Radeon x300 64/128mb
1,5GB ramu DDR2
Windows XP PRO SP3

A o to kod programu:

C/C++
#include <conio.h>
#include <irrlicht.h>
#include <iostream>
#ifdef _IRR_WINDOWS_
#pragma comment(lib, "Irrlicht.lib")
#endif
using namespace irr;
using namespace core;
using namespace scene;
using namespace video;
using namespace std;
int user_set_video = 0;
E_DRIVER_TYPE DriverType = EDT_DIRECT3D9;

int launcher()
{
   
    cout << "Launcher Beta v0.1" << endl;
    cout << "Tryby grafiki" << endl;
    cout << "1. OpenGL - ZALECANY" << endl;
    cout << "2. Directx9 - ZALECANY" << endl;
    cout << "2. Directx8 - GDYBY DX9 NIE DZIALAL" << endl;
    cout << "4. Software - NIE ZALECANY" << endl;
    cin >> user_set_video;
    if( user_set_video == 1 ) { DriverType = EDT_OPENGL; cout << "Wybrales tryb OpenGL" << endl; }
    else if( user_set_video == 2 ) { DriverType = EDT_DIRECT3D9; cout << "Wybrales tryb Directx9" << endl; }
    else if( user_set_video == 3 ) { DriverType = EDT_DIRECT3D8; cout << "Wybrales tryb Directx" << endl; }
    else if( user_set_video == 4 ) { DriverType = EDT_SOFTWARE; cout << "Wybrales tryb SOFTWARE" << endl; }
    cout << "Kliknij dowolny klawisz aby kontynuowac..." << endl;
    getch();
    return DriverType;
}




int videoset()
{
   
    IrrlichtDevice * device_mode = createDevice( DriverType, core::dimension2d < u32 >( 640, 480 ),
    32, false, true, false, 0 );
    device_mode->setWindowCaption( L"Hello World! - Irrlicht Engine Demo" );
    IVideoDriver * video = device_mode->getVideoDriver();
    ISceneManager * s_menage = device_mode->getSceneManager();
    ICameraSceneNode * cam = s_menage->addCameraSceneNodeFPS();
   
   
    while( device_mode->run() )
    {
        device_mode->getCursorControl()->setVisible( false );
        cam->setPosition( vector3df( 0, 0, - 100 ) );
        IAnimatedMesh * pudlo = s_menage->getMesh( "models/test1.obj" );
        IAnimatedMeshSceneNode * pud = s_menage->addAnimatedMeshSceneNode( pudlo );
        pud->setScale( vector3df( - 300, - 300, - 300 ) );
        pud->setPosition( vector3df( 0, 0, 900 ) );
        pud->setMaterialFlag( EMF_LIGHTING, false );
        pud->setMaterialTexture( 0, video->getTexture( "texture/test1.png" ) );
       
       
        ;
    }
    device_mode->drop();
    return 0;
}


int main()
{
    launcher();
    videoset();
}


Nie mam pojęcia co robię źle. W c++ piszę już rok a irrlichta używam dopiero jeden dzień. Teraz wyjeżdżam i wrócę popołudniu więc jakby czegoś brakowało do określenia gdzie jest błąd, dopisze po powrocie.
P-61283
SeaMonster131
» 2012-07-28 12:19:04
Sprawdź debuggerem w jakim miejscu występuje błąd.
P-61295
ShadowGames
Temat założony przez niniejszego użytkownika
» 2012-07-28 12:56:16
Program received signal SIGSEGV, Segmentation fault.
In irr::core::string<char, irr::core::irrAllocator<char> >::operator= () (C:\WINDOWS\system32\Irrlicht.dll)
At C:\Documents and Settings\Właściciel\Pulpit\Testowa gra irrlich\ShadowGame\main.cpp:22
P-61296
Gabes
» 2012-07-28 13:18:19
Taki składak irrlichta za chiny nie będzie działać.
W dystrybucji 1.7.3 masz tylko pliki źródłowe które musisz sam skompilować
(source/Irrlicht/Irrlicht-gcc.cbp)trzeba dokonać kilku zmian w kodzie i w projekcie aby utworzyć dll i liby pod dx9.
Zrobiłem kiedyś małego devpaka z irrlicht 1.7.2 do devcpp-4.9.9.2 możesz sobie go wypakować programem 7zip i użyć do Code::Blocks (działa pod dx9 i opengl nie działa pod dx8 dll-ka pobrana z forum irrlichta)
edycja http://www.wrzuc.to/81jYAZ.wt
ciekawy linkhttp://irrlicht.sourceforge.net/forum/viewtopic.php?f=5 &t=5813&start=120
P-61297
ShadowGames
Temat założony przez niniejszego użytkownika
» 2012-07-28 13:23:34
ok dzieki już sprawdzam ;D
P-61298
« 1 »
  Strona 1 z 1