Web Analytics
eXec.plMAGAZYN UŻYTKOWNIKÓW KOMPUTERÓW AMIGA
Amiga forum / Grafika i CAD / Edytor ikon 32-bit dla AmigaOS4 - postępy prac :)

Czytasz wątek: Edytor ikon 32-bit dla AmigaOS4 - postępy prac :)

mufa
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-11-30 09:50

@hextreme
Do tego działa guzik "undo" - póki co można kasować tylko ostatnią zmianę. Działa też przybliżanie i oddalanie obrazka. Wszystko działa bardzo sprawnie i myślę, że zgodnie z zaleceniami pisania pod AmigaOS4.x (opieram się na dokumentacji). Wprowadzanie kolejnych narzędzi jest kwestią czasu.

Funkcja wypełniania obszarów ([i]flood[/i]) nie pojawi się zważywszy, że nie działa na bitmapach typu chunky. Czeka mnie jeszcze trochę pracy, ale program naprawdę nabiera już tempa i zyskał bardzo ładny wygląd (ReAction naprawdę bardzo ładnie się prezentuje i oferuje moc możliwości).




W starym IconEdicie z AOS 3.5, który jest składową cześcią systemu do dziś, jednak funkcja wypełniania była. Ja bym jednak nie odpuszczał tak od razu tego wypełniania, gdyż moim zdaniem, każdy program graficzny nawet prosty edytor ikon traci przez to 50% swojej wartości. Może da się zrobić jakieś obejście, nawet jeśli miałoby to zająć dużo więcej pracy, doradzam nie rezygnuj z tego. Druga moja uwaga to jednopoziomowe undo, mam nadzieję że klątwa TvPainta już nie działa w 2010r i docelowo zrobisz wielopoziomowe, bo to też jakby nie patrzeć podstawa.

To tyle uwag krytycznych reszta mi się podoba i mam nadzieję że rychło przyczynisz się do wywalenia ostatniego elementu systemu AmigaOS 4, działającego pod 68k.


Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-26 12:45

W Święta na pisanie mam więcej casu, ale na nieszczęscie dopadło mnie przeziębienie Ale udało mi się skonstruować już coś działającego. Chętnych proszę o przetestowanie programu i podzielenie się opinią. A oto krótki opis tego co już zostało napisane:

Edytor spełnia już wiele podstawowych funkcji, jest już edytorem 32-bitowym, bo można edytować oddzielnie
[list]32-bitowy obraz ikony,[/list][list]8-bitowy kanał alpha.[/list]
Zaimplementowałem tylko dwa narzędzia rysownicze póki co - linię dowolną i prostą. Postanowiłem bowiem, że zacznę od nabardziej istotnych zagadnień, a skończę na tych najprostszych. Program udostępnia 64-kolorową paletę, którą można swobodnie modyfikować za pomocą suwaków ARGB. Można też zmieniać przeźroczystość indywidualnych pikseli (zwiększać lub zmniejszać), przybliżać lub oddalać obszar edycji i kasować obrazek.

Poza tym można swobodnie ładować dowolne ikony starego bądź nowego typu i zapisywać jako ikonki 32-bitowe. Można też zmieniać typ ikony (projekt, narzędzie, szuflada itp.), Można tworzyć nową ikonę zadanego typu.

Co zostało do wprowadzenia:
[list]Wiecej narzędzi rysowniczych,[/list][list]Zmienianie wielkości obszaru edycyjnego,[/list][list]Ładowanie obrazków za pomocą datatype'ów[/list][list]Dodawanie efektów do obrazków.[/list][list]Opcja cofania wykonanych operacji.[/list]
Program w załączniku. Podsumowując program ma zaimplementowane podstawowe najważniejsze funkcje edycji obrazków 32-bitowych z kanałem alpha, ale jeszcze brakuje mu wielu narzędzi malarskich, które postaram się w kolejności wprowadzić.

Mam wrażenie, że program jest stabilny i dobrze napisany, ale zadaniem testerów będzie wyłapać ewentualne błędy i zgłosić zastrzeżenia.

[url]http://minniatian.republika.pl/IconEditor/iconed.lha

Odpowiedz

mufa
Nieaktywny użytkownik starego forum

Edytor ikon 32-bit dla AmigaOS4 - postępy prac ... wysłany: 2010-12-26 14:42

Dwa razy spakowałeś plik

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-26 15:00

Mam wrażenie, że to wina przeglądarki OWB...

Tutaj link do programu:
[url]http://minniatian.republika.pl/IconEditor/iconed.lha

Już sprawdziłem, ściąga dobrze.

Odpowiedz

Gordon Shumway
Nieaktywny użytkownik starego forum

Edytor ikon 32-bit dla AmigaOS4 - postępy prac ... wysłany: 2010-12-26 15:19

Unable to alloc icon editor - tyle u mnie

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Edytor ikon 32-bit dla AmigaOS4 - postępy prac ... wysłany: 2010-12-26 15:37

@Gordon Shumway
Unable to alloc icon editor - tyle u mnie



Program wyświetli taki komunikat tylko gdy nie ma ekranu publicznego, bądź nie można zarezerwować 64 ołówków, podejrzewam, że chodzi o to drugie. Z jakiej wersji systemu korzystasz (4.0, 4.1)? Czy masz jakieś uruchomione programy które mogą rezerwować kolory?

Odpowiedz

Gordon Shumway
Nieaktywny użytkownik starego forum

Edytor ikon 32-bit dla AmigaOS4 - postępy prac ... wysłany: 2010-12-26 15:52

4.1 na mA1, ekran w 16 bitach, OWB, AmiGG, WookieChat, TuneNet, SimpleMail, Wet.

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Edytor ikon 32-bit dla AmigaOS4 - postępy prac ... wysłany: 2010-12-26 16:05

@Gordon Shumway
4.1 na mA1, ekran w 16 bitach, OWB, AmiGG, WookieChat, TuneNet, SimpleMail, Wet.



Program w sumie odpala się u mnie na ekranie w 16 bitach, ale prawdziwy sens użytkowania tego edytora, to korzystanie z ekranu 32 bit ze względu na obsługę kanału alpha. To mi przypomina, że muszę zrobić obsługę otwierania własnego ekranu 32 bit, w przypadku gdy Workbench jest w mniejszej ilości kolorów.

Polecam na razie zmienić tryb wyświetlania na 32-bit i wyłączyć program Wet - z tego co przeczytałem jest to aplikacja dla Workbencha i może jest jakiś konflikt.

Odpowiedz

Przemek
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-26 17:01

U mnie (WB 32bit) śmiga Chwila zabawy, zero problemów...UNDO pleasssssseee!

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-26 18:13

@Przemek
U mnie (WB 32bit) śmiga Chwila zabawy, zero problemów...UNDO pleasssssseee!



Suuper!!! Ale nie mogę zapominać, że czeka mnie jeszcze trochę pracy, choć nie aż tak bardzo dużo. Undo/Redo zamierzam wprowadzić już wkrótce.

Odpowiedz

konrad
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-26 22:08

1. Po powiększeniu okna z edytorem do maksymalnego rozmiaru i po maksymalnym przybliżeniu obrazka nie widać, gdzie kończy się obrazek, a zaczyna tło okna. Zazwyczaj programy oznaczają dokument czarną ramką. Przezroczyste tło obrazka jest oznaczone szachownicą, a tło okna, które nie jest używane może być w kolorze systemowym.

2. Alpha działa wyłącznie przy użyciu narzędzia Freehand, przy użyciu narzędzia Line w ogóle nie działa.

3 Alpha działa źle. W ogóle nie bierzesz pod uwagę na czym stawiasz piksele. Zakładasz, że zawsze jest to ten sam kolor tła. A przecież użytkownik może namalować wpierw coś na obrazku, a potem użyć przezroczystości.

Błąd 1 i 3 widać na obrazku:
http://www.exec.pl/pic/forum/icon_editor/alpha_bug.png

A tutaj jak powinna działać alpha w zależności od rodzaju tła i jak można oddzielić dokument od reszty okna.
http://www.exec.pl/pic/forum/icon_editor/alpha.png

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-27 10:15

Ad.1 Tak, zdaję sobie sprawę z tej usterki. Dzieje się tak dlatego, że procedura odrysowania ikonki w oknie jest obsługiwana w procedurze typu Hook albo przez ReAction, albo ręcznie za pomocą DoGadgetMethod(). W obu wypadkach system inaczej odświeża obrazek, w pierwszym wypadku używa tapety skonfigurowanej za pomocą preferencji GUI, w drugim używa po prostu czystego tła. Postaram się szybko to naprawić.

Ad.2 Tak, też zdaję sobie sprawę z tego, że na ten moment jedynie linia dowolna (Freehand) działa z alphą. Nie mam do dyspozycji funkcji Draw() operującej na kanale alpha - oto przyczyna. Jedyne co mogę w tym wypadku zrobić to stworzyć własną funkcję Draw() i własny algorytm liczenia linii. To samo czeka mnie przy procedurach rysowania kółek, wypełniania itp. Muszę stworzyć własne algorytmy tworzenia takich figur.

Ad.3 Hmm... chodzi Ci o to, że nanoszone piksele powinny być mieszane z obrazkiem? Otóż obecnie działa to w ten sposób, że w trybie rysowania ikony za pomocą funkcji p96WritePixel() nanoszę piksel o dokładnie podanych parametrach ARGB. Nie jest to według mnie zatem błędne działanie programu, a co najwyżej pewne uproszczenie funkcji rysowniczych. Jeśli ikona zapisana za pomocą mojego programu różniłaby się od tego co widać w podglądzie to byłaby już wtedy wada programu. A tak obecnie chyba nie jest.

Odpowiedz

konrad
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-27 10:53

@hextreme
Ad.3 Hmm... chodzi Ci o to, że nanoszone piksele powinny być mieszane z obrazkiem?




Dokładnie o to chodzi.



@
Nie jest to według mnie zatem błędne działanie programu, a co najwyżej pewne uproszczenie funkcji rysowniczych.



Nie możesz dowolnie zmieniać znaczenia takich podstawowych rzeczy. Nazwałeś suwak alpha to oczekuję, że będzie działać jak alpha. A teraz w działaniu przypomina suwak intensity.



@
Jeśli ikona zapisana za pomocą mojego programu różniłaby się od tego co widać w podglądzie to byłaby już wtedy wada programu. A tak obecnie chyba nie jest.



Ikonka w systemie i podgląd w programie mogą się różnić i przy 32-bitowych ikonach będą się różnić. Zwróć uwagę na systemowy program "Font". Masz tam podgląd ikonki z fontem i tłem. Jest to tło pobierane z ustawień użytkownika w systemie. Każdy użytkownik będzie miał inne tło. Dlatego np. jednemu będą pasowały białe litery pod ikonami, a drugiemu będą pasowały czarne litery. Nie inaczej jest z obrazkiem, który jest w pewnych obszarach przezroczysty. Jego ostateczny wygląd będzie zależał od użytego tła. Możesz więc w podglądzie ikony w swoim programie zaczytać tło użytkownika jak robi to program "Font". Możesz mieć przygotowane 3 rodzaje tła z ciemnymi tonami, jasnymi tonami i półtonami. Pozwoli to twórcy ikony przetestować jak jego dzieło prezentuje się w zależności od różnych ustawień tła użytkownika. Jeśli zaczytasz jego własne tło to zobaczy jak ikona będzie się prezentowała ostatecznie w jego systemie. Szare tło, którego użyłeś nie jest nawet domyślnym tłem okien i pulpitu WB w AmigaOS 4.1.

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-27 19:05

@konrad
@hextreme
Ad.3 Hmm... chodzi Ci o to, że nanoszone piksele powinny być mieszane z obrazkiem?



Dokładnie o to chodzi.


@
Nie jest to według mnie zatem błędne działanie programu, a co najwyżej pewne uproszczenie funkcji rysowniczych.


Nie możesz dowolnie zmieniać znaczenia takich podstawowych rzeczy. Nazwałeś suwak alpha to oczekuję, że będzie działać jak alpha. A teraz w działaniu przypomina suwak intensity.





Po namyśle zostawię to tak jak jest z tej przyczyny, że chcę by suwak alpha odpowiadał za poziom przeźroczystości nanoszonych pikseli w stosunku do tła ikony. W tym kontekście alpha działa poprawnie. Nie wykluczam jednak wprowadzenia tego o czym mówisz troszkę później.

@konrad

@hextreme
Jeśli ikona zapisana za pomocą mojego programu różniłaby się od tego co widać w podglądzie to byłaby już wtedy wada programu. A tak obecnie chyba nie jest.



Ikonka w systemie i podgląd w programie mogą się różnić i przy 32-bitowych ikonach będą się różnić. Zwróć uwagę na systemowy program "Font". Masz tam podgląd ikonki z fontem i tłem. Jest to tło pobierane z ustawień użytkownika w systemie. Każdy użytkownik będzie miał inne tło. Dlatego np. jednemu będą pasowały białe litery pod ikonami, a drugiemu będą pasowały czarne litery. Nie inaczej jest z obrazkiem, który jest w pewnych obszarach przezroczysty. Jego ostateczny wygląd będzie zależał od użytego tła. Możesz więc w podglądzie ikony w swoim programie zaczytać tło użytkownika jak robi to program "Font". Możesz mieć przygotowane 3 rodzaje tła z ciemnymi tonami, jasnymi tonami i półtonami. Pozwoli to twórcy ikony przetestować jak jego dzieło prezentuje się w zależności od różnych ustawień tła użytkownika. Jeśli zaczytasz jego własne tło to zobaczy jak ikona będzie się prezentowała ostatecznie w jego systemie. Szare tło, którego użyłeś nie jest nawet domyślnym tłem okien i pulpitu WB w AmigaOS 4.1.



Oczywiście, że chodzi mi o to by zapisana przez program ikonka wyglądała tak samo na szarym tle jak ikonka w podglądzie. Chodzi o poprawność zapisanych danych, który jest warunkiem czy program nie ma błędu. Jeśli twórca chce przetestować jak wygląda ikonka na innym niż szare tło to nic prostszego - zapisać ikonę do pliku i wyświetlić na dowolnie wybranym tle

Pracuję nad kolejnymi efektami malarskimi i proszę spodziewać się niedługo takich rzeczy jak zmiana rozmiaru pędzla (wiele możliwych rozmiarów), do tego za jakiś czas wprowadzę możliwość wycinania i korzystania z brushy. Wtedy powoli będzie można już tworzyć w edytorze pierwsze w miarę atrakcyjne ikony

Odpowiedz

hextreme
Nieaktywny użytkownik starego forum

Re:Edytor ikon 32-bit dla AmigaOS4 - postępy pr... wysłany: 2010-12-30 15:09

Wprowadziłem nielimitowane Undo/Redo! System ten może obsłużyć dowolne rodzaje operacji, choć tymczasowo zlikwidowałem rysowanie linii, ponieważ zamierzam niedługo wprowadzić własny algorytm rysowania linii wraz z obsługą kanału alpha.

Co zostało zatem wprowadzone w tej wersji:

[list]Nielimitowane Undo/Redo.[/list][list]3 różne rozmiary pędzla[/list][list]Możliwość pobierania koloru z obrazka.[/list]
Naprawiłem zgłoszony błąđ związany z niewyróżnianiem się granicy obrazka, przy pewnych operacjach.

Zaznaczam, że ta wersja może być nieco bardziej niestabilna niż poprzednia, choć przeprowadziłem gruntowne testy systemu Undo/Redo.

Przy zmianie trybu wyświetlania (z Normal na Alpha itp.) bufor Undo/Redo ulega skasowaniu.

Także jest to taka wersja "na szybko", więc proszę nie zdziwić się jeśli ma dużo błędów. Publikuję ją z racji, że chciałem pokazać działający system Undo/Redo. Do pobrania z tego adresu:
[url]http://minniatian.republika.pl/IconEditor/iconed1.1.lha

Wkrótce będzie dostępna wersja pełniejsza.

[Edit] Wprowadziłem korektę do tej wersji, tak że teraz można spokojnie edytować stan normalny i zaznaczony ikony, przy czym tak jak napisałem przy przełączaniu trybów bufor Undo/Redo ulega skasowaniu.
[Edit 2] Kolejny update: Operacja "Clear" jest teraz również kolejkowana i możliwa do cofnięcia/powtórzenia Poza tym przy ładowaniu ikony lub tworzeniu nowej bufor graficzny jest poprawnie inicjowany. Uwaga: tryb alpha jest jeszcze nieobsługiwany przez operacje Undo/Redo.
[Edit 3] Pewna bardzo istotna usterka z programu usunięta! Teraz program nie powinen zawiesić się podczas zmieniania rozmiaru okna!

Odpowiedz

« poprzednia 1 2 3 4 5 6 następna »

Menu
Baza wiedzy
AmigaOS.pl