All Blog Entries

All blog entries, ordered from most recent. Entry count: 1198.

Uwaga! Informacje na tej stronie mają ponad 6 lat. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

Pages: > 1 ... 68 69 70 71 72 ... 150 >

# Co nowego na Warsztacie

Sun
08
Mar 2009

Na Warsztacie dzieją się ostatnio ważne rzeczy.

Napisałem mechanizm do zgłaszania do moderatorów nieodpowiednich treści - komentarzy, screenów, projektów i video. Teraz każdy użytkownik może zgłosić podejrzaną treść klikając w czerwoną flagę, a moderatorzy będą mieli ułatwioną pracę widząc listę zgłoszonych informacji. Więcej...

Wybuchła wojna o usunięcie z forum licznika karmy i postów. Ja jestem zwolennikiem jak największej ilości numerków, ale większość moderatorów opowiedziała się za ich usunięciem, więc je usunąłem. To wzbudziło jednak ogromne wzburzenie pośród użytkowników. Zobaczymy, jak sprawa potoczy się dalej. Tymczasem historię problemu można śledzić w wątkach: [1], [2].

Zbliża się VI Ogólnopolska Konferencja Inżynierii Gier Komputerowych. Minął termin rejestracji, jutro mija termin nadsyłania referatów. Pozostaje teraz umówić się na wspólny wyjazd na IGK 2009 oraz skompletować drużynę i obmyśleć strategię, jak wygrać Compo :)

Warto też śledzić blogi fajnych ludzi z Warsztatu (patrz dział Linki), bo niektórzy piszą bardzo ciekawe rzeczy. Mnie na przykład dzisiaj urzekła notka Gynvaela na temat entropii.

Comments | #events #warsztat #igk Share

# Programy matematyczne

Sun
01
Mar 2009

Czasem trzeba coś policzyć. Do prostych obliczeń wystarczy systemowy kalkulator. Pewne obliczenia na wektorach i kolorach daje się zrobić za pomocą mojego GameDev Calc. Czasami potrzebne są jednak bardziej zaawansowane funkcje. Jaki program matematyczny jest dobry? Niedościgniony jest podobno Matlab, ale on niestety nie należy do darmowych. Na szczęście są darmowe programy, które do wielu rzeczy z powodzeniem wystarczą.

Pierwszy z nich to Scilab. Używa składni podobnej do Matlaba i potrafi robić dużo rzeczy. Na przykład aby znormalizować wektor i pomnożyć go przez macierz:

v=[1 2 3]
vn=v/norm(v)
M=[1 0 0; 0 0 1; 0 1 0]
v2=vn*M

 

 

 

Comments | #math #tools Share

# Dobry hex edytor

Fri
27
Feb 2009

W życiu programisty bywa tak, że czasem trzeba obejrzeć albo zmodyfikować plik binarny. Potrzebny jest do tego specjalny edytor, który pokazuje bajty jako liczby szesnastkowe (hex). Pytanie tylko - który jest dobry? Chodzi rzecz jasna o jakiś program okienkowy dla Windows, najlepiej darmowy.

Z tego co widzę, dobrego a darmowego niestety nie ma. Dotychczas byłem zwolennikiem starego dobrego Hex Workshop (jest Shareware).

Ostatnio kolega z pracy (pozdro Bartek!) polecił mi Hex Editor Neo. Ma wersję darmową, ale niestety ona jest tak okrojona, że na niewiele się przyda. Ale już pełna wersja (można ją testować przez 14 dni) jest "wypasiona" i przewyższa funkcjonalnością Hex Workshop. W porównaniu z nim brakuje tylko zamalowania zaznaczonego fragmentu pliku na wybrany kolor.

Przy okazji ciekawostka: Hex Editor Neo pokazuje w swoim okienku taką oto informację jak na obrazku. Teraz możemy mówić: "pisząc optymalny kod pomagasz chronić środowisko" :D

A może znacie jakiś inny dobry hex edytor?

Comments | #tools #humor Share

# Nowy artykuł: Własny VFS - wtyczka do Total Commandera

Tue
24
Feb 2009

Skończyłem właśnie pisać nowy artykuł. Zebrałem w nim swoje doświadczenia z pisania wtyczki do Total Commandera do obsługi własnego formatu VFS. Zainteresowanych zapraszam do lektury: Własny VFS - wtyczka do Total Commandera.

Comments | #libraries #tools #productions Share

# Znajdowanie podobnych stringów

Sun
22
Feb 2009

Kiedy wpisujemy w Google jakieś słowo, które jest ewidentną pomyłką, wyszukiwarka sugeruje jego poprawną wersję (np. Programmowanie). Jak zrobić coś takiego i ogólnie jak wyszukiwać w bazie danych podobne łańcuchy, by uodpornić pisaną stronę WWW na drobne pomyłki we wprowadzonym zapytaniu albo wyświetlać sugestię poprawnej pisowni? Niedawno kolega, którego poznałem przy piwie, zdradził mi kilka ciekawych pomysłów.

Po pierwsze, łańcuch trzeba przeliczyć na Hash - inny łańcuch, który dopiero jest wyszukiwany w bazie danych. Algorytm na ten Hash może wyglądać różnie, np.:

Taki Hash wyszukiwany jest w bazie danych, przy czym z bazy pobierany jest nie jeden pasujący rekord, ale też kilka sąsiednich rekordów (poprzednich i następnych wg kolejności alfabetycznej).

Następnie każdy z wyników zwróconych z bazy danych jest porównywany z hashem słowa wejściowego algorytmem Levenshtein Distance (który zwraca podobieństwo dwóch łańcuchów, tak jakby odległość między nimi). Jego wynik mnożony jest przez częstość występowania danego słowa wyszukanego w bazie (czyli np. po prostu ilość wystąpień w skatalogowanym tekście). Np. Punkty = Częstość_słowa / Levenshtein_distance.

Na koniec wybierane jest to słowo lub słowa spośród wyszukanych z bazy danych, które mają największy ten współczynnik Punkty.

Comments | #webdev #algorithms Share

# Wycinanie komentarzy ze skompilowanego shadera

Thu
19
Feb 2009

Shader Direct3D skompilowany do kodu binarnego (np. funkcją D3DXCompileShaderFromFile) zawiera w sobie nie tylko instrukcje asemblerowe, ale i dodatkowe informacje - komentarze. Te komentarze nie są bezużyteczne. Tam zapisana jest np. tablica stałych, którą można odczytać funkcją D3DXGetShaderConstantTable. Jednak jeśli ona nie jest potrzebna, te komentarze można z kodu wyciąć i wtedy shader staje się dużo mniejszy.

Jak to zrobić? Choć trzeba grzebać wprost w pamięci, to nie jest trudne. Konkretny algorytm opisuje na swoim blogu Jesus de Santos Garcia we wpisie Stripping comments from Shader bytecodes. Ja tutaj streszczę go krótko swoimi słowami.

Format binarny skompilowanych shaderów D3D jest udokumentowany w MSDN, na stronie Direct3D Shader Codes. Składa się z sekwencji 32-bitowych tokenów. Ostatni z nich ma wartość 0x0000FFFF i oznacza koniec kodu. Komentarz natomiast rozpoczyna się tokenem 0x####FFFE, gdzie "####" (starsze dwa bajty) to liczba następujących dalej 32-bitowych wartości stanowiących treść komentarza. Takie komentarze można po prostu wyciąć z kodu shadera i gotowe :)

Comments | #directx #rendering Share

# Konferencja IGK 2009

Tue
17
Feb 2009

20-22 marca 2009 w Akademii Podlaskiej w Siedlcach odbędzie się VI Ogólnopolska Konferencja Inżynierii Gier Komputerowych (zobacz też: wątek na forum.gamedev.pl). Już niedużo czasu zostało na rejestrację. Zachęcam do udziału wszystkich zainteresowanych tworzeniem gier. Zapewne jak co roku będą ciekawe referaty, pełen emocji konkurs Compo oraz niezapomniane wieczory w towarzystwie najfajniejszych ludzi z Warsztatu.

Ja oczywiście jak zawsze się tam zjawię. W tym roku nie przygotowuję żadnego referatu, ale za to po raz drugi poprowadzę konkurs - tym razem już oficjalnie, według ustaleń z organizatorami. Muszę tylko jeszcze ulepszyć potrzebny do tego program i ułożyć nowe pytania. Kto chciałby w tym pomóc, piszcie do mnie na email :)

Comments | #igk #events #warsztat Share

# Algorytm na defragmentację dużego pliku

Sun
15
Feb 2009

SceNtriC na swoim blogu często pisze długie notki, w których opisuje swoje algorytmy, więc ja nie będę gorszy i dzisiaj też tak zrobię :) Problem, który rozwiązywałem niedawno, wyglądał tak: Mamy duży plik - tak duży, że nie chcemy wczytywać go całego do pamięci. W pliku są bloki z danymi, a między nimi dziury (na rysunku zakreskowane). Zadaniem jest tak "zsunąć" te dane, żeby dziur nie było.

Defragmentacja bloków danych

 

 

 

Comments | #algorithms Share

Pages: > 1 ... 68 69 70 71 72 ... 150 >

[Download] [Dropbox] [pub] [Mirror] [Privacy policy]
Copyright © 2004-2026