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

Silnik do tworzenia gry 2d

Ostatnio zmodyfikowano 2013-12-15 23:55
Autor Wiadomość
dawid
Temat założony przez niniejszego użytkownika
» 2013-12-15 17:18:53
No i z takim rozszerzeniem zapisuję. Więc nie wiem o co chodzi nadal.
P-99300
MrPoxipol
» 2013-12-15 17:20:23
Wykonałeś wszystko tak jak jest to w tutorialu na oficjalnej stronie (albo nawet tutaj)? Bo mi się wydaje, że nie.
No i z takim rozszerzeniem zapisuję.
Ale czy dodajesz do projektu?
P-99301
pekfos
» 2013-12-15 17:20:58
C:\Users\Dawid\Desktop\C++\aaaa\aaaaa.c
P-99302
dawid
Temat założony przez niniejszego użytkownika
» 2013-12-15 17:56:46
Zmieniłem na .cpp i teraz mam takie coś:


-------------- Build: Debug in Gra (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall  -g  -DSFML_STATIC   -IC:\Users\Dawid\Desktop\SFML-2.1\include -IC:\Users\Dawid\Desktop\SFML-2.1\include  -c C:\Users\Dawid\Desktop\C++\Gra\main.cpp -o obj\Debug\main.o
C:\Users\Dawid\Desktop\C++\Gra\main.cpp: In function `int main()':
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:10: error: 'class sf::Image' has no member named 'LoadFromFile'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:12: error: no matching function for call to `sf::Sprite::Sprite(sf::Image&)'
C:/Users/Dawid/Desktop/SFML-2.1/include/SFML/Graphics/Sprite.hpp:48: note: candidates are: sf::Sprite::Sprite(const sf::Sprite&)
C:/Users/Dawid/Desktop/SFML-2.1/include/SFML/Graphics/Sprite.hpp:78: note:                 sf::Sprite::Sprite(const sf::Texture&, const sf::IntRect&)
C:/Users/Dawid/Desktop/SFML-2.1/include/SFML/Graphics/Sprite.hpp:67: note:                 sf::Sprite::Sprite(const sf::Texture&)
C:/Users/Dawid/Desktop/SFML-2.1/include/SFML/Graphics/Sprite.hpp:57: note:                 sf::Sprite::Sprite()
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:15: error: 'class sf::RenderWindow' has no member named 'IsOpened'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:19: error: 'class sf::RenderWindow' has no member named 'GetEvent'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:22: error: 'class sf::Event' has no member named 'Type'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:23: error: 'class sf::RenderWindow' has no member named 'Close'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:27: error: 'class sf::RenderWindow' has no member named 'Clear'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:30: error: 'class sf::RenderWindow' has no member named 'Draw'
C:\Users\Dawid\Desktop\C++\Gra\main.cpp:33: error: 'class sf::RenderWindow' has no member named 'Display'
Process terminated with status 1 (0 minutes, 0 seconds)
9 errors, 0 warnings (0 minutes, 0 seconds)

Otwiera mi się teraz plik main.cpp

C/C++
#include <SFML/Graphics.hpp>

int main()
{
    // Create the main window
    sf::RenderWindow App( sf::VideoMode( 800, 600 ), "SFML window" );
   
    // Load a sprite to display
    sf::Image Image;
    if( !Image.LoadFromFile( "cb.bmp" ) )
         return EXIT_FAILURE;
   
    sf::Sprite Sprite( Image );
   
    // Start the game loop
    while( App.IsOpened() )
    {
        // Process events
        sf::Event Event;
        while( App.GetEvent( Event ) )
        {
            // Close window : exit
            if( Event.Type == sf::Event::Closed )
                 App.Close();
           
        }
       
        // Clear screen
        App.Clear();
       
        // Draw the sprite
        App.Draw( Sprite );
       
        // Update the window
        App.Display();
    }
   
    return EXIT_SUCCESS;
}


Kod testowy:

C/C++
#include <SFML/Window.hpp>

int main()
{
    sf::Window oknoAplikacji( sf::VideoMode( 800, 600, 32 ), "Kurs SFML 2.0 - http://cpp0x.pl" );
    while( oknoAplikacji.isOpen() )
    {
        oknoAplikacji.display();
    }
    return 0;
}
P-99306
pekfos
» 2013-12-15 18:04:21
To kod w SFMLu 1.6, a nie 2.1.
P-99309
bingo009
» 2013-12-15 18:06:47
Upewnij się, że napewno poprawnie(zgodnie z poradnikiem na stronie SFML) ustawiłeś opcje projektu w CodeBlocks. Z doświadczenia powiem ci też, że SFML pod MinGW(kompilator domyślny CodeBlocks) najlepiej jest samemu kompilować - sam kiedyś miałem problemy i okazało się, że SFML było kompilowane na innej wersji niż ta, którą ja posiadam. Kompilacja nie jest trudna i sprowadza się do paru kliknięć i wpisania jednego polecenia w konsoli. Na stronie SFML masz obszerny i prosty poradnik jak to zrobić.
P-99311
DejaVu
» 2013-12-15 20:10:17
Błędy kompilacji dotyczą kodu źródłowego SFML-a 1.6, logi dotyczą SFML-a 2.1 i podajesz jeszcze dwa różne kody źródłowe do jednego logu kompilacji. Jak mamy poważnie traktować Twój problem, to zacznij go precyzyjnie opisywać.
P-99326
bingo009
» 2013-12-15 23:55:15
C/C++
#include <SFML/Graphics.hpp>

using namespace sf;

int main()
{
    RenderWindow okno( VideoMode( 200, 200 ), "Test" );
   
    while( okno.isOpen() )
    {
        Event event;
        while( okno.pollEvent( event ) )
        {
            if( event.type == Event::Closed )
                 okno.close();
           
        }
       
        okno.clear();
        okno.display();
    }
   
    return 0;
}

Sprawdź ten kod. Na przyszłość: tak ciężko przeczytać i skopiować prosty kod z tutoriali na stronie SFML? Są po angielsku, ale pisane bardzo prostym językiem i jak nie znasz angielskiego, to nie masz co programować - dokumentacje i wszystkie ważne materiały są głównie po angielsku.

Edit: Teraz skopiuj, popełniłem mały błąd w poprzednim.
P-99359
1 « 2 »
Poprzednia strona Strona 2 z 2