19 lipca 2009

Colobot Maps Editor wersja 1.2.1.2

Mam zaszczyt poinformować, że edytor map do Colobota doczekał się wersji 1.2.1.2!

Pobierz CME v.1.2.1.2



Najważniejsze zmiany:

  • Zrezygnowano z "widocznej strefy" i zoomu regulowanego suwakiem, na rzecz wygodnego przesuwania i powiększania z użyciem scrolla

  • Bez problemów importuje pliki misji z wbudowanych poziomów

  • Dzięki Schockerowi mamy prawie wszystkie obiekty, mianowicie dodał on wraki, ruiny i rośliny. Brawo!



Jak posługiwać się nawigowaniem po mapie:

  • Aby zmieniać widoczną strefę naciskamy środkowy przycisk i przeciągamy

  • Aby zmienić zoom kręcimy kółkiem

PWM CPU Limiter - coming soon...

Podstawowe funkcje "PWM CPU Limitera" zostały zrobione. Pozostało tylko popracować nad interfejsem.

Do czego to służy



PWM CPU Limiter obniża wykorzystanie procesora przez konkretny program korzystając z PWM - modulacji szerokości impulsu. Osoby siedzące w elektronice wiedzą o co chodzi :)

Program bardzo szybko wstrzymuje i wznawia wybrany proces, przy czym zarówno między wstrzymaniem a wznowieniem, a wznowieniem i wstrzymaniem jest jakaś przerwa. Dobierając odpowiednio te przerwy można sterować "wypełnieniem" tego procesu w ogólnym czasie procesora.

Dla zainteresowanych, fragment kodu źródłowego:


v := Form1.LimitBar.Position;
r := Form1.LimitBar.Max-v;
repeat
for i := 0 to threads.Count-1 do SuspendThread(cardinal(threads[i]));
// linia wyżej odpowiada za wstrzymanie procesu
timeBeginPeriod(1);
Sleep(r);
timeEndPeriod(1);

for i := 0 to threads.Count-1 do ResumeThread(cardinal(threads[i]));
// linia wyżej odpowiada za wznowienie procesu
timeBeginPeriod(1);
Sleep(v);
timeEndPeriod(1);

{ ... } // nieistotne
until timetoend;

16 lipca 2009

Opcje zapisu JPG w GIMPie

Nie zawsze pliki JPG o tym samym rozmiarze mają tą samą jakość... warto sprawdzić, jakie ustawienia zapisywania są najoptymalniejsze.

Wróćmy do przykładu "Tibia sux" z poprzedniego tutoriala. Obraz skompresowany bezstratnie (PNG) zajmuje 110KB, a więc za dużo aby przeznaczyć go np. na logo.



Okno zapisu


Oto okno zapisu w GIMPie, z opcjami zaawansowanymi:


Jakość - ile procent danych jest zapisywanych, decyduje o jakości pliku.
Optymalizuj - nieistotne, powinno być zawsze włączone, inaczej pliki będą niepotrzebnie rosły
Przyrostowy - obraz zamiast ładować się z góry na dół, będzie się podczas ładowania stopniowo wyostrzał.
Wygładzanie - stopień rozmycia, które ukrywa zniekształcenia. Może być włączone w przypadku np. zdjęć chmur itp. W większości przypadków powinno wynosić 0.
Resetuj markery - nic nie zmienia, a niepotrzebnie powiększa plik. Powinno być wyłączone.
Podpróbkowanie - bardzo istotna opcja. Ustala jakość pliku. Szerzej o tym dalej.
Metoda DCT - decyduje o szybkości zapisu, najlepiej jak jest ustawiona na "Zmiennoprzecinkowa". Jest to najwolniejsze, ale najlepsze. W przypadku małych obrazów (mniej niż 1MP) różnica w szybkości jest nieistotna.
Zapisz dane EXIF - zapisuje informacje na temat aparatu, oprogramowania, parametrów ekspozycji i inne pierdoły. W ogóle nie wpływa na jakość. Najczęściej nieprzydatna. Można wyłączyć.
Zapisz miniaturę - zapisuje miniaturę. Nie miałem okazji testować, ale prawdopodobnie przyspiesza to wyświetlanie miniatur przy przeglądaniu zdjęć w folderze. Jeśli zdjęcie będzie publikowanie w necie, wyłącz to.
Zapisz dane XMP - Szczerze mówiąc nie miałem okazji testować. U mnie ta opcja jest wyłączona. Nie będę się wypowiadać tylko na podstawie Wikipedii ;)
Use quality settings from original image - Jeśli edytujemy plik JPG i nie chcemy zmieniać jego jakości, powinno być włączone. Dzięki temu wszystkie ustawienia kompresji, a nawet zaawansowane dane których nie możemy edytować, zostaną zachowane.

Jak zapisywać?


Podpróbkowanie przestaw na najlepszą jakość!!!



Oryginał PNG:


Podpróbkowanie 1x1,1x1,1x1, jakość 79%, rozmiar pliku 22kB:


Podpróbkowanie 2x2,1x1,1x1, jakość 90%, rozmiar pliku 22.8kB:


Celowo ustawiłem taką jakość, aby rozmiar pliku wyniósł około 22kB.
Plik z podpróbkowaniem ustawionym na najmniejszy rozmiar pliku, o rozmiarze większym (no niewiele...) i jakości ustawionej na dużo większą, okazał się w praktyce mieć gorszą jakość niż ten z podpróbkowaniem ustawionym na najlepszą jakość.

Najlepiej ustaw sobie podpróbkowanie na najlepszą jakość i zapisz to ustawienie jako domyślne!

Jak zrobić otoczkę w GIMPie

Otoczkę najczęściej stosuje się do tekstów - np. aby dobrze wyglądały na tle o różnej jasności, a także żeby uniknąć oczojebnych kontrastów, np. porównaj sobie te obrazy:
-

-




No dobra, ale jak zrobić żeby mieć tą otoczkę?

Aby uczynić tutorial bardziej uniwersalnym, przyjmuję, że o kształcie obiektu, który będzie otoczony, decyduje kanał alfa.



-

Krok 1 - tło:


Menu Filtry -> Renderowanie wymiata :D
Oczywiście można też pozostać przy tle przezroczystym.


-

Krok 2 - tekst/obiekt:


Tworzymy przezroczystą warstwę i na niej umieszczamy wszystkie elementy. Jeśli używamy wielu warstw (np. tekst i jakieś ozdobniki) to musimy wszystko połączyć w jedną warstwę.



-

Krok 3 - kopia warstwy:


Kopiujemy warstwę obiektów po prostu. Kopię przenosimy w dół i zmieniamy nazwę np. na "Cień". Ukrywamy warstwę obiektów. Zaznaczamy warstwę cienia jako aktywną.



-

Krok 4 - konwersja do czerni


Wybieramy menu Kolory -> Krzywe, Kanał: Wartość i zjeżdżamy całą krzywą na sam dół, w ten sposób:

Po czym zatwierdzamy zmiany.



-

Krok 5 - rozmycie


Wybieramy menu Filtry -> Rozmycie -> Rozmycie kafelkowe, ustawiamy promien równy 5 (lub inny wedle uznania...), oczywiście rozmycie w obie strony i sru! Zatwierdzamy.



Krok 6 - zmiana krzywych


Pokazujemy z powrotem warstwę obiektów, ale jej nie zaznaczamy. Zobaczymy słabo widoczny cień:

Trzeba go poprawić. W tym celu wybieramy menu Kolory -> Krzywe przełączamy na kanał alfa i robimy krzywą w rodzaju tej:

Możemy punkty krzywej przemieszczać, aż do zauważenia najlepszego efektu. Punkty nie mogą być zbyt blisko na osi X, gdyz wtedy wystąpią "postrzępione" brzegi. Nie mogą być także zbyt daleko, gdyż otoczka będzie wtedy rozmyta.
Najważniejsze jest jednak, aby jeden punkt był na minimalnej wartości osi Y, a drugi na maksymalnej.

Po zauważenia najlepszego efektu zatwierdzamy.



Krok 7 - zapis obrazu


Zapisujemy obraz w formacie XCF, na wypadek jakbyśmy chcieli coś zmienić, a następnie w docelowym. Jeśli obrazek będzie np. logo strony to nie powinien dużo zajmować. I tu zaczynają się schody. Pięknie wykonane logo z otoczką, "dzięki" zapisowi w formacie JPG potrafi dużo stracić. Więcej o tym - w osobnym tutorialu.


Podsumowanie


Obraz początkowy:


Obraz końcowy:


Kto ma doświadczenie w pisaniu wtyczek script-fu może zrobić zautomatyzowane tworzenie otoczek :)

14 lipca 2009

Wznowienie działalności komputerowej

Od środy wieczorem będę miał już dostęp do swojego komputera. Będę więc kontynuować pracę nad poziomami do Colobota (mam już 3 szkice), edytorem map. Poza tym myślałem nad stworzeniem profesjonalnego komunikatora (możliwości np. konferencji w GG mnie przerażają). Co prawda w poniedziałek znowu wyjeżdżam, jednak możliwości tworzenia poziomów do Colobota są tam nieograniczone, a jesli będę chciał kodować to postawienie Delphi nie będzie stanowić problemu :)

Na blogu planuję informować o postępach prac nad projektami komputerowymi oraz udostępniać tutoriale na temat informatyki.

Jeszcze jakieś 32 godziny pozostały do powrotu...