C64Power Forum

Software => Programowanie => Wątek zaczęty przez: nes__ w 19 Września 2010, 14:57

Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 19 Września 2010, 14:57
Ktos tam pytal na party o IMOS\'a to napisze..

http://noname.c64.org/csdb/release/?id=89237

Jest to program na PC. W zalozeniu lata temu mial to byc caly engine do robienia animacji na sprajtach. Mialo to tak dzialac jak muzyka z SID\'a, czyli ze animacja po stworzeniu miala sie skladac z uniwersalnego playera i ciagu instrukcji. Ale nie zostalo to zrobione. Pierwsza i jedyna proba przekonwertowania faz na sprajty i zlozenia z tego czegos logicznego byla w tej produkcji (postac):

http://noname.c64.org/csdb/release/?id=32536

Dziala za to konwersja sprajtow. Czyli np. majac 10 faz obracajacej sie gwiazdki na PC jako bitmape, mozna to w 30 sekund przeniesc na C64.
Dziala tez edycja sprajtow dowolnie na siebie ponakladanych. Dziala tez generator tabel.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 23 Września 2010, 19:47
Zero pytan ? ... \"Smile\"
Tytuł: IMOS
Wiadomość wysłana przez: Kisiel w 23 Września 2010, 20:13
ja mam pytanie dlaczego :http://apt.tyszkiewicz.edu.pl/~nes/imos.html
nie dziala?
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 23 Września 2010, 20:59
Hmm musialbym Mayka zapytac..

Przenioslem tu chwilowo:
http://4x4.x12.pl/imos/imos.html
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 23 Września 2010, 23:59
Kilka szybkich trikow..

Przyklad 1. Zalozenia: chcemy edytowac sprajta o szerokosci 8 sprajtow i wysokosci 1 spraja, w HiRes
a) odpalamy IMOSa
b) odznaczamy ptaszek przy \"show bitmap\"
c) najezdzamy kursorem na jeden z przekreslonych na czerwono przyciskow - na ten na ktorym pojawi sie opis \"DELETE LAST SPRITE\". ale go nie klikamy normalnie, tylko lewym przyciskiem myszy. Pojawi sie \"DELETE ALL SPRITES\" i to naciskamy.
d) naciskamy strzaleczke z tabliczka, znajdujaca sie z prawej strony ekranu u gory, opisana jako \"Create Sprite Matrix\" (utworz matryce sprajtow)
e) w polu ROWS wpisujemy 1 (bo chcemy 1 wiersz), w polu Columns wpisujemy 8 (bo chcemy 8 kolumn). Reszte zostawiamy bez zmian i klikamy OK
f) powinna sie pojawic aranzacja 8 sprajtow ulozonych obok siebie.
g) wybieramy jaki docelowo kolor maja miec sprajty. Zalozmy ze wszystkie maja byc zolte. W tym celu klikamy kolorowy przycisk po prawej z szachownica, opisany jako \"C64 Colors Table\". W wierszu \"kolor\" wpisujemy wszedzie wartosc \"7\". Pozostale 2 wiersze pomijamy - dotycza one multikoloru.
h) zatwierdzamy \"Set Colors\". po przeniesieniu na C64 sprajty beda zolte i w HiRes
i) Zapisujemy aranzacje, czyli klikamy szeroki przycisk \"Store Object\". Pojawi sie pole wyboru. Zaznaczamy ze interesuje nas aranzacja (rozmieszczenie), atrybuty (kolory), i puste sprajty (clear sprites)(bo nic nie konwertujemy z zadnego obrazka) - czyli 3 pozycja od gory.
j) klikamy \"Store Object\"

Przechodzimy do \"Objects Editor\"

- wybieramy kolor 7 z palety Hi-Res i mozemy sobie rysowac po 8 sprajtach. tryb rysowania mozna przelaczac na Set/Invert/Clear. Mozna tez korzystac z ZOOM. Mozna zmienic tlo zeby lepiej bylo widac obszar sprajtow
- w zakladce Object view mamy podglad aktualnego dziela. Mozna wczytac pod spod jakas bitmape jesli to potrzebne.

Przechodzac do zakladki \"Object Browser\" widac efekty pracy (po kliknieciu Show). Mozna zobaczyc obiekt, albo jako bank sprajtow. Tak samo mozna zapisac na dysk sprajty tylko zapelnione, albo caly bank.

Mozna zapisac sprajty od razu z przykladowa wyswietlarka na C64 (uruchamia sie ja przez SYS6656), ale wiadomo ze jak jest ich wiecej niz 8 to sie beda grupami wyswietlac. Dodatkowo moza zapisac osobny plik POS+COL ktory zawiera informacje o pozycjach i kolorach sprajtow. Z tego poziomu powinno sie dac zapisac tez obiekt jako znaki (FONTS) - ale nie pamietam czy to w koncu dzialalo.


Duzo pisania ale uzywanie jest dosc schematyczne i jak sie rozkmini to sie da przyzwyczaic. Najwazniejszy jest pomysl na efekt koncowy, bo przekonwertowac 4 warstwy sprajtow o wysokosci ekranu to nie problem - tylko trzeba sobie obmyslec jak to potem sensownie uzyc/wyswietlic.

Tu jest efekt gryzmolenia w czasie pisania tego tekstu, odpalony pod emu:


To tyle prostego przykladu.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 24 Września 2010, 12:25
Przyklad 2. Zalozenia: chcemy edytowac sprajta o szerokosci 8 sprajtow i wysokosci 1 spraja, w MultiColor
a) odpalamy IMOSa
b) odznaczamy ptaszek przy \"show bitmap\"
c) najezdzamy kursorem na jeden z przekreslonych na czerwono przyciskow - na ten na ktorym pojawi sie opis \"DELETE LAST SPRITE\". ale go nie klikamy normalnie, tylko lewym przyciskiem myszy. Pojawi sie \"DELETE ALL SPRITES\" i to naciskamy.
d) naciskamy strzaleczke z tabliczka, znajdujaca sie z prawej strony ekranu u gory, opisana jako \"Create Sprite Matrix\" (utworz matryce sprajtow)
e) w polu ROWS wpisujemy 1 (bo chcemy 1 wiersz), w polu Columns wpisujemy 8 (bo chcemy 8 kolumn). Reszte zostawiamy bez zmian i klikamy OK
f) powinna sie pojawic aranzacja 8 sprajtow ulozonych obok siebie.
g) wybieramy jakie docelowo kolory maja miec sprajty. Zalozmy ze wszystkie maja byc zolto-zielono-czerwone, czyli 7,5,2. W tym celu klikamy kolorowy przycisk po prawej bez szachownicy, opisany jako \"SET COLORS\". W wierszu \"C64 color\" wpisujemy kolejno wartosci \"7\", \"5\", \"2\" i wybieramy \"Switch mode to... MultiColor\". Reszte zostawiamy standardowo ustawiona.
h) zatwierdzamy \"OK\". po przeniesieniu na C64 sprajty beda zolto-zielono-czerwone i w MultiColor
i) Zapisujemy aranzacje, czyli klikamy szeroki przycisk \"Store Object\". Pojawi sie pole wyboru. Zaznaczamy ze interesuje nas aranzacja (rozmieszczenie), atrybuty (kolory), i puste sprajty (clear sprites)(bo nic nie konwertujemy z zadnego obrazka) - czyli 3 pozycja od gory.
j) klikamy \"Store Object\"

Przechodzimy do \"Objects Editor\"

- wybieramy kolor czerwony, zolty lub zielony z palety Multicolor i mozemy sobie rysowac po 8 sprajtach. tryb rysowania mozna przelaczac na Set/Invert/Clear. Mozna tez korzystac z ZOOM. Mozna zmienic tlo zeby lepiej bylo widac obszar sprajtow
- w zakladce Object view mamy podglad aktualnego dziela. Mozna wczytac pod spod jakas bitmape jesli to potrzebne.

Przechodzac do zakladki \"Object Browser\" widac efekty pracy (po kliknieciu Show). Mozna zobaczyc obiekt, albo jako bank sprajtow. Tak samo mozna zapisac na dysk sprajty tylko zapelnione, albo caly bank.

Mozna zapisac sprajty od razu z przykladowa wyswietlarka na C64 (uruchamia sie ja przez SYS6656), ale wiadomo ze jak jest ich wiecej niz 8 to sie beda grupami wyswietlac. Dodatkowo mozna zapisac plik POS+COS ktory zawiera informacje o pozycjach i kolorach sprajtow.

Tu jest efekt gryzmolenia w czasie pisania tego tekstu, odpalony pod emu:


To tyle drugiego prostego przykladu.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 24 Września 2010, 12:42
W powyzszych dwoch przykladach, chcac uzyskac inne ksztalty niz matryca 8x1, po prostu po stworzeniu matrycy na poczatku przeciaga sie sprajty na takie pozycje w jakich maja byc. Jak maja byc mieszane Hires z Multi to sie zmienia dla odpowiednich sprajtow: podswietla sprajta klikajac go i klika przyciskiem zmiany trybu Hires/Multi. Kolory mozna ustawic w tabeli kolorow, dowolne dla dowolnego sprajta.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 24 Września 2010, 12:56
Temat: Generowanie tabel

1) odpalamy IMOSa
2) przechodzimy na zakladke Table Generator
3) klikamy Draw Function
4) klikamy Generate Table
5) zaznaczamy \"animate\"

widzimy jak na podstawie wygenerowanej tabeli 8 sprajtow moze poruszac sie po ekranie C64. Zmieniajac \"output values\" mozna zawezic albo rozszerzyc ruch (trzeba ponownie kliknac Generate Table). Tabele mozna nagrac na dysk przez \"Save Table\". Jesli nagramy z wyswietlarka, to na emu dostaniemy inny efekt bo wyswietlarka nie jest dopracowana - trzeba sobie samemu napisac najprostsza.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 25 Września 2010, 00:00
                   
kisiel napisal:
ja mam pytanie dlaczego :http://apt.tyszkiewicz.edu.pl/~nes/imos.html
nie dziala?


zmienila sie domena - jest http://mayk.pl/~nes/imos
Tytuł: IMOS
Wiadomość wysłana przez: Skull w 27 Września 2010, 06:57
projekt oczywiscie bardzo ciekawy, nie wiem jak teraz ale jak ostatnio cos probowalem w nim zrobic to sie nie udalo...
dzieki za instrukcje moze tym razem pojdzie lepiej
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 27 Września 2010, 09:35
Najprosciej by bylo zrobic video z ekranu i przeklikac pare przykladow ale jeszcze nie odkrylem jakim softem na PC nagrywac ekran.
No i np. w edytorze powinna byc mozliwosc poruszania sie kursorami a nie ma, itp. Przerosl mnie troche ten projekt ale cos tam dziala.
Tytuł: IMOS
Wiadomość wysłana przez: comankh__ w 27 Września 2010, 18:54
nes: win gui - camtasia, dx - fraps.

piszesz jakbys mial grzyba od wczoraj :>
Tytuł: IMOS
Wiadomość wysłana przez: fenek__ w 28 Września 2010, 19:44
Kilka lat temu jak skladalem Sweet Infection to ten program bardzo przydal
mi sie do przeniesienia grafiki w hiresie na kolumny sprajtow, logos
Arise w parcie z wektorowka kolorowa.
Byla tam bardzo fajna opcja konwertowania jakos od roznej pozycji Y,
np. kilka kolumn sprajtow, ale kazda zaczynala sie od innego Y.
To tyle.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 28 Września 2010, 20:06
No bo wiecej niz konwertowanie, edytor dowolnie ulozonych sprajtow w dowolnych kolorach i mieszane hires/multi, edytor tabel i konwertowanie fontow z ttf na sprajty nie dziala \"Sad\"

W zalozeniu mial byc player dzialajacy podobnie jak playery SIDow, czyli stala procedurka + dane, zawierajacy:

- ruch po linii z punktu X do Y
- zmiane ksztaltow sprajta w czasie ruchu (animacja)
- ruchy po tabelach (tabele mialy byc o roznych dlugosciach)
- przemieszczanie do innej pozycji
- reakcje na kolizje
- do tego proste instrukcje jak petle kilku-powtorzeniowe, oczekiwanie, reakcje na sygnaly z zewnatrz

i pare innych gadzetow.

To mialo byc w formie prostego jezyka programowania, a konwerter i edytor mialy byc jako pomoce.

Pewnie jakby to jako projekt open source zrobic z osobnymi modulami i dokumentacja to by cos z tego bylo, ale nie wpadlem w jakim jezyku programowania by to najlepiej napisac, a BCPP nie jest darmowy.

                   
comankh napisal:
nes: win gui - camtasia, dx - fraps.

piszesz jakbys mial grzyba od wczoraj :>


mam ale nie uzywam \"Wink\" dzieki za nazwy. a to \"dx\" przy fraps to co to ?
Tytuł: IMOS
Wiadomość wysłana przez: comankh__ w 29 Września 2010, 02:17
directx
Tytuł: IMOS
Wiadomość wysłana przez: zyga w 30 Września 2010, 11:46
                   
nes napisal:

Pewnie jakby to jako projekt open source zrobic z osobnymi modulami i dokumentacja to by cos z tego bylo, ale nie wpadlem w jakim jezyku programowania by to najlepiej napisac, a BCPP nie jest darmowy.


Sam kompilator (bez IDE) jest darmowy juz od dluzszego czasu:
http://edn.embarcadero.com/article/20633
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 30 Września 2010, 20:14
no wlasnie, a bez ide to taka troche lipa. wolalbym to od zera pisac jako aktywna bitmape \"Wink\"
Tytuł: IMOS
Wiadomość wysłana przez: Jacek31 w 03 Października 2010, 14:19
\"Very He.. wczoraj bylem na dniach otwartych w elektrowni i tam tez byl budynek IMOS, i dzis kombinowalem co taki temat robi na scenie C64, ale jaja.
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 04 Października 2010, 22:40
\"Very Reklama dzwignia handlu \"Wink\"

Anyway - strasznie mnie wkurzaja niedokonczone funkcjonalnosci w IMOSie, ciezko niektore rzeczy szybko zrobic przez nie.
Tytuł: IMOS
Wiadomość wysłana przez: Skull w 08 Października 2010, 00:00
Przydaloby sie, zebys to skonczyl \"Smile\"
Nawet jako konwerter bmp -> sprites, to chyba nie ma konkurencji (chyba, ze macie cos ciekawego ???).
Wlasnie udalo mi sie przerobic jeden obrazek - fakt ze z bolem, ale to glownie przez malo przyjazne/instyktowne opcje - jakbys nie dal w tym watku przykladu jak sie do tego zabierac to nie wiem czy bym do czegos sam doszedl.

Od razu pytanie - wielokolorowe obrazki (multicolor), da sie jakos tak poustawiac, zeby kolory multicolor1 i multicolor2 zmienialy sie co warstwe sprites ? Tzn w tabelce mozna ustawic nawet dla kazdego sprajta, ale jakos nie moge pozniej przelozyc to na wynik (Object browser).
Tytuł: IMOS
Wiadomość wysłana przez: wegi w 10 Lutego 2012, 14:22
@NES - to jest bardzo duzo pracy starales sie przewidziec wszystkie opcje teraz mala prosba - to co opisujesz te dwa przypadki - dorob moze z jedna karte czy z dwa speedbuttony ktore domyslnie zrobia to co opisywales i bedzie super - to w zasadzie wszystko bo interfejs jest skomplikowany pewnie nawet dla Ciebie jak sam do tego powracasz... pozdro
Tytuł: IMOS
Wiadomość wysłana przez: nes__ w 10 Lutego 2012, 20:11
                   
skull napisal:
\\jakbys nie dal w tym watku przykladu jak sie do tego zabierac to nie wiem czy bym do czegos sam doszedl.


to prawda \"Smile\" ostatnio cos konwertowalem i mialem problem sobie przypomniec jak to dziala \"Smile\" ale piszac ten program nie mialem pomyslu na bardziej przejrzyste menu, przy zalozeniu ze ma byc pelna dowolnosc tego, co sie robi.

                   
Cytat:
Od razu pytanie - wielokolorowe obrazki (multicolor), da sie jakos tak poustawiac, zeby kolory multicolor1 i multicolor2 zmienialy sie co warstwe sprites ? Tzn w tabelce mozna ustawic nawet dla kazdego sprajta, ale jakos nie moge pozniej przelozyc to na wynik (Object browser).


Troche nie czaje. Jak \"co warstwe\" (w odniesieniu do tego co na C=64 mozna uzyskac) ? Sorki za tak pozna odpowiedz, caly 2010 rok mialem lekko zakrecony, nie zauwazylem wtedy pytania

                   
Cytat:
w zasadzie wszystko bo interfejs jest skomplikowany pewnie nawet dla Ciebie jak sam do tego powracasz


przeczytam, przypomne sobie i pomysle \"Smile\" chociaz chodzi mi po glowie napisanie tego od nowa, w innym srodowisku, bo Borland jest platny, tylko nie wiem czy pomysl sie przelozy na czyny/szybka nauke czegos innego.
Tytuł: IMOS
Wiadomość wysłana przez: wegi w 11 Lutego 2012, 10:18
Wojtek zanim napiszesz od nowa i sie nauczysz - tu masz wszystko chodzi o to, zeby dorobic dwa buttony spod ktorych wywolasz kilka gotowych procedur ktore juz masz we wlasciwej kolejnosci - to uczyni przejrzystosc interfejsu - bo opcji full widac sie przylozyles - sa wersje borlanda bezplatne jakas na 100lat jak nie wykorzystujesz baz danych i wlasnych komponentow to do takiego projektu wystarcza w zupelnosci... Ja dlubie w starym platnym D6 \"Very