Skocz do zawartości

Utermiko

Użytkownicy
  • Postów

    796
  • Dołączył

  • Ostatnia wizyta

Odpowiedzi opublikowane przez Utermiko

  1. Jeśli będzie źle to proszę mnie poprawić.

     

    Wg. rysunku to wydaje mi się że:

    GML
    predkoscRzeczywista = 30;

    radiany = pi / 180 * global.kamera_direction;

     

    speed = cos(radiany) * predkoscRzeczywista;

    speedek = -(sin(radiany) * predkoscRzeczywista);

    //speedek = sin(radiany) * predkoscRzeczywista;</span>

     

    @EDIT Gm ma odwróconą oś Y więc speedek = -(sin(radiany) * predkoscRzeczywista);

  2. public  abstract class A
    {
    }
    
    public class B : A
    {
         public ovveride string ToString()
         {
              return "B";
         }
    }
    
    public class C : A
    {
         public ovveride string ToString()
         {
               return "C";
         }
    }
    
    foreach(A obj in lista)
    {
         tekst+=obj.ToString();
    }

     

    Chociaż to co podałeś też powinno działać. Wystarczy wyciągnąć nazwę klasy.

  3. public  abstract class A
    {
         public virtual string  Name {get;}
    }
    
    public class B : A
    {
         public ovveride string Name
         {
              get { return "B"; }
         }
    }
    
    public class C : A
    {
    public ovveride string Name
         {
              get { return "B"; }
         }
    }
    
    foreach(A obj in lista)
    {
         tekst+=obj.ToString();
    }

  4. Przestań zadawać pytania na które nie ma jednoznacznej odpowiedzi.

     

    Żeby nie było offtopicu.

    Jak tworzysz serwer to wysyłasz do globalnego serwera takową informację.

    Jak niszczysz serwer to to samo robisz, tylko wtedy usuwasz serwer.

    Jeszcze od strony globalnego serwera przydało by się pingowanie serwerów co jakiś czas żeby nie było śmieci.

  5. Miałem na myśli, że w moim przypadku (źle napisałem) :P

     

    Ale spójrz. Gra działa z prędkością 60 klatek/s. Co jeśli odpalisz ją na jakimś gorszym sprzęcie? Będzie chodziła 2x wolniej (przykładowo) a tego nie chcemy.

     

    Ja zrobiłem to tak, że jeśli nie wyrabiam z czasem to po prostu rzadziej rysuję, ale aktualizuję ciągle w takim samym tempie.

    Na "dobrym" sprzęcie będzie to wyglądało tak:

    update - draw - update - draw - update - draw ...

    a na "gorszym"

    update - update - draw - update - update - draw - update - update - draw ...

    Szybkość gry jest taka sama. Jedynie można zauważyć przeskoki.

     

    Gdybyś miała jakieś problemy to możesz looknąć na moją implementację: metoda GameLoop https://github.com/Symeg/Smart2DGameFramewo.../GameHandler.cs

  6. bardzo mile widziana obsługa klatkowości (tj. kod powtarzający się cyklicznie np. 60 razy na sekundę, przeplatany cyklami rysowania)

    Skoro wybrałaś SFML.NET musisz sobie sama zaimplementować.

    Co prawda jest bodajże funkcja SetFramerateLimit ale u mnie jakoś średnio działała w moim przypadku słabo się sprawdza.

    Tutaj fajny art z którego korzystałem: http://entropyinteractive.com/2011/02/game...-the-game-loop/.

  7. Bo to z extlibs to biblioteki natywne. Wrzuć je do folderu z exekiem, lub (wygodniej) dodaj do projektu, zaznacz je, a następnie w zakładce Properties ustaw właściwość "Copy to Output Directory" na "Copy if newer".

    Po 2. W Configuration managerze zmień z Any CPU na x86 (używasz bibliotek 32 bit). Na 32 bitowym systemie nie będziesz miała błędów jeśli zostawisz Any CPU, ale na 64 bit już tak.

  8. Żeby zasoby były wewnątrz exe możesz użyć resources.

    Co do silnika. Można XNA ale nie jest już rozwijane.

    Co do zamienników XNA to MonoXNA, ANX framework. Jak czysty directx/opengl to SharpDX/OpenTK.

    Ewentualnie Unity 3D.

    SFML.NET - Grafika, okno i audio. Nie ma tu raczej funkcji typowo do gier.

    Pracuję już od jakiegoś czasu nad frameworkiem opartym właśnie na sfml.net. https://github.com/Symeg/Smart2DGameFramework

    Nie jest jeszcze w pełni gotowy, ale nie zostało dużo aby można było normalnie tworzyć w tym gry. Tutaj możesz więcej przeczytać/zobaczyć: http://warsztat.gd/projects/smart2dgameframework

×
×
  • Dodaj nową pozycję...