0

私は自分のゲームをemscriptenに移植していました。SDL_ttf まではすべて問題ありませんでした。実際、sdl2 + sdl2 image + sdl mixi を使用しています。

例を示します。

SDL_Color color = {255,255,255};
    std::cout << "1\n";
    font = TTF_OpenFont("saucery/font/font1.otf", 8);
    if (!font)
        printf("Unable to load font: %s \n",  TTF_GetError());
    std::cout << "2\n";
    SDL_Surface *surf = TTF_RenderText_Solid(font,"Oieee",color);
    std::cout << "3\n";
    if (surf){
        std::cout << (int)surf << "\n";
        texture = SDL_CreateTextureFromSurface(Game::instance->GetRenderer(),surf);
        std::cout << "4\n";
        Uint32 format;
        int acess,w,h;
        SDL_QueryTexture(texture, &format,&acess,&w,&h);
        dimensions2.x = 0;
        dimensions2.y = 0;
        dimensions2.h = h;
        dimensions2.w = w;

        SDL_FreeSurface(surf);


    }

このコードでは、フォントを開きます (サイズとタイプを .ttf に既に変更しています)。すべてがうまくいくようです:

SDL_CreateTextureFromSurface

コードが「クラッシュ」した場所を確認するために、いくつかの std::cout を配置しました。コンソールで createTextureFrom を呼び出すたびに、「45」が表示され、そこで実行が停止します。

std::cout を使用しても、このエラーが発生します。これはもう私を夢中にさせています._.

4

0 に答える 0