FAQ Zaloguj
Szukaj Profil
Użytkownicy Grupy
Zaloguj się, by sprawdzić wiadomości
Rejestracja
Akstrakcja klas
Napisz nowy temat   Odpowiedz do tematu
Forum www.cotozastudio.fora.pl Strona Główna » Projekty / New World » Akstrakcja klas
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
kumdzio
Administrator



Dołączył: 22 Paź 2012
Posty: 42
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 14:46, 30 Paź 2012    Temat postu: Akstrakcja klas

Wykonałem pierwszy projekt klas w grze:
[link widoczny dla zalogowanych]

Legenda:
strzałka w dół - dziedziczenie;
strzałka w górę - klasa wyżej zawiera klasę niżej;
strzałka pozioma - komunikacja;

Czekam na poprawki oraz propozycje.
Teraz pracuję nad projektem pól oraz metod poszczególnych klas.


Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 15:09, 30 Paź 2012    Temat postu:

Co do robienia tego typu diagramów sądzę, że lepiej się posłużyć jakimś programem dedykowanym do tego zadania. Pomysł z kierunkami strzałek jakieś nie rozjaśnia twojego rysunku proponuję kolory:
- zółty się komunikuje
- niebieski zawiera
- czerwony dziedziczy


Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
kumdzio
Administrator



Dołączył: 22 Paź 2012
Posty: 42
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 15:21, 30 Paź 2012    Temat postu:

Poprawiona wersja :
[link widoczny dla zalogowanych]
Legenda:
żółty-komunikacja
niebieski-zawieranie
czerwony dziedziczenie

Edit: Zrezygnowałem z tworzenia projektu pól oraz metod ponieważ nie mam pojęcia co gdzie będzie. Będę o tym decydował podczas tworzenia kodu.


Post został pochwalony 0 razy

Ostatnio zmieniony przez kumdzio dnia Wto 15:22, 30 Paź 2012, w całości zmieniany 1 raz
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 15:22, 30 Paź 2012    Temat postu:

Nie wiem co to jest CMulti, ale sądzę, że powinno być zawarte po CGame.
CGame powinna zawierać także:
- CGrafika
- CDwiek
- CObiekt
- CMapa, która powinna być kontenerem dla obiektów powyższego

Wszystkie obiekty nie ozdobniki powinne zawierać w sobie obiekty CStatystyki i ew. CSkill, jeśli mają umiejętności aktywne czy statyczne (np. ignorowanie części damage'a) oraz jeśli posiadają CEkwipunek.

Tu uwaga do twojego:
Powininna istnieć klasa CPrzedmiot, która byłaby podklasą CObiektu, której podklasami byłyby CBron i cała reszta, a CEkwipunek powinna być kontenerem.

Trzeba się jeszcze zastanowić nad podklasami CObiektu.


Post został pochwalony 0 razy

Ostatnio zmieniony przez jsc dnia Wto 15:28, 30 Paź 2012, w całości zmieniany 2 razy
 Powrót do góry »
Zobacz profil autora
Bimbol
Tester



Dołączył: 28 Paź 2012
Posty: 13
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 15:23, 30 Paź 2012    Temat postu:

Mimo to, można się zorientowac o co chodzi, ale jest nie czytelne.

Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 15:39, 30 Paź 2012    Temat postu:

Uwagi dodatkowe.
Dotyczą kierunków komunikacji:
Jeśli obiekty mają się komunikować każdy z każdym to lepiej zrobić jakiś system geometrii (może to być mapa lub obiekt w niej zawarty), by odbierał wszystkie ruchy obiektów wykrywał interakcje między nimi i komunikował by im. Mógłby te interakcje wysyłać do podsystemów grafiki i dźwięku, tu postuluję eliminację komunikacji bezpośredniej.

Obiekt gracza nie powinien się komunikować bezpośrednio z mapą tylko należy zrobić przez opisaną przez geometrię. Do z geometrią należy skomunikować podsystem sterowania postacią gracza jeśli wydane polecenie może być prawidłowo wykonane.

Oczywiście system geometrii i sterowania należy zawrzeć w CGame.


Post został pochwalony 0 razy

Ostatnio zmieniony przez jsc dnia Wto 15:40, 30 Paź 2012, w całości zmieniany 1 raz
 Powrót do góry »
Zobacz profil autora
kumdzio
Administrator



Dołączył: 22 Paź 2012
Posty: 42
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 16:34, 30 Paź 2012    Temat postu:

O kurcze. Po pierwsze dziękuję za uwwagi. A po dugie to nie jestem aż tak zaawansowany żeby to wszystko ogarnąć postaram się najpierw napisać to co sobie wyobrażam o później będę wprowadzał modyfikacje zgodnie z twoimi uwagami w ten sposób będzie mi łatwiej to wszystko ogarnąć i upożądkować.

Edit: Czy mógłbyś mi troszkę opisać jak miałby działać system geometrii?? Miałby pobrać np położenie ściany później położenie gracza i po obliczeniach czy się stykają niedozwolić by gracz się poruszał dalej w tę stronę tak??


Post został pochwalony 0 razy

Ostatnio zmieniony przez kumdzio dnia Wto 16:43, 30 Paź 2012, w całości zmieniany 1 raz
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 18:50, 30 Paź 2012    Temat postu:

Obraz zastępuje milion słów, więc:
[link widoczny dla zalogowanych]

Diagram wykonany w programie Dia (tylko jakoś nie mogę znaleźć konwersji plików).

PS. Jeśli się zgodzisz używać Dia to da się wrzucić jego pliki do GitHuba dla ułatwienia pracy?


Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
kumdzio
Administrator



Dołączył: 22 Paź 2012
Posty: 42
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 19:38, 30 Paź 2012    Temat postu:

Co do DIA to chodzi ci o pliki programu czy pliki wykonane przez dia?? A tak pozatym to na githuba możecie pliki wrzucać także wy gdzieś tam jest przycisk "fork" chyba i wtedy dostaję zgłoszenie że ktoś chce coś dodać i ja to dodaje bądź nie. Ogólnie to widzę że włożyłeś trochę pracy w to - dziękuję.

Edit: Czym są brązowe strzałki ??


Post został pochwalony 0 razy

Ostatnio zmieniony przez kumdzio dnia Wto 19:39, 30 Paź 2012, w całości zmieniany 1 raz
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 19:42, 30 Paź 2012    Temat postu:

Chodzi mi o pliki.dia, a brązowe strzałki oznaczają, że obiekt nadrzędny zawiera kontener (taki jak w STL) podrzędnych.

Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
kumdzio
Administrator



Dołączył: 22 Paź 2012
Posty: 42
Przeczytał: 0 tematów

Ostrzeżeń: 0/5


 Post Wysłany: Wto 19:45, 30 Paź 2012    Temat postu:

Taki jak w STL czyli jaki bo tego nie wiem. Też nie zabardzo mam pojęcie jak takie kontenery się implementuje w c++ może masz jakiś link co do tego?? czy może chodzi tu o kontener typu vector

Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Wto 19:49, 30 Paź 2012    Temat postu:

Dokładnie.

A link to:
[link widoczny dla zalogowanych], a jeśli czegoś nie rozumiesz to wspomóż się wikipedią.


Post został pochwalony 0 razy
 Powrót do góry »
Zobacz profil autora
jsc
Tester



Dołączył: 22 Paź 2012
Posty: 59
Przeczytał: 0 tematów

Pomógł: 3 razy
Ostrzeżeń: 0/5


 Post Wysłany: Śro 10:28, 31 Paź 2012    Temat postu:

Zazwyczaj większe programy mają główną klasę zrobioną w wzorcu singleton, o którym można przeczytać w:
[link widoczny dla zalogowanych]

Taki singleton jest punktem dostępu do wszystkich podsystemów aplikacji.


Post został pochwalony 0 razy

Ostatnio zmieniony przez jsc dnia Śro 10:29, 31 Paź 2012, w całości zmieniany 1 raz
 Powrót do góry »
Zobacz profil autora
Wyświetl posty z ostatnich:   
Forum www.cotozastudio.fora.pl Strona Główna » Projekty / New World » Akstrakcja klas
Napisz nowy temat   Odpowiedz do tematu Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach




Solaris phpBB theme/template by Jakob Persson
Copyright © Jakob Persson 2003

fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group