Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Reg

Strony: 1 ... 238 239 240 241 [242] 243 244 245 246 ... 270
3616
Warsztat.gd / Odp: "Przybornik n00ba"
« dnia: Czerwiec 22, 2006, 23:30:41 »
Pomysł jest ogólnie ciekawy. Przydałaby się jakaś taka inicjatywa edukacyjna. Ja też wpadłem kiedyś na coś podobnego i tak powstał mój Eksperymentator DirectX :).

Mam tylko wątpliwości co do zaproponowanej tutaj formy - nie sądzę, żeby takie wspólne klecenie jednego programiku testowego mogło wypalić albo żeby wyszło z tego cokolwiek dobrego. Może wystarczy bardziej tradycyjna forma, czyli artykuł uzupełniony przez screeny i przykładowy program, napisany po prostu przez kogoś kto się zna?

Nie wiem w sumie, co w tej materii dydaktycznej można nowego, lepszego wymyślić... Może i coś można, ale wątpię, czy to na pewno to co zaproponowałeś.

3617
Programowanie grafiki / Odp: okreslanie kolorow w zakeznosci od wartosci
« dnia: Czerwiec 22, 2006, 16:05:57 »
Też robiłem taką wizualizację naukową i do tego celu napisałem sobie takie oto funkcje:

// Konwertuje kolor HSB na RGB
// Kanał alfa zwraca 0.
uint4 HSB2RGB(float hue, float saturation, float brightness)
{
int r = 0, g = 0, b = 0;

if (saturation == 0) {
r = g = b = static_cast<int>(brightness * 255.0f);
}
else {
float h = (hue - floor(hue)) * 6.0f;
float f = h - floor(h);
float p = brightness * (1.0f - saturation);
float q = brightness * (1.0f - saturation * f);
double t = brightness * (1.0f - (saturation * (1.0f - f)));

switch (static_cast<int>(h))
{
case 0:
r = static_cast<int>(brightness * 255);
g = static_cast<int>(t * 255);
b = static_cast<int>(p * 255);
break;
case 1:
r = static_cast<int>(q * 255);
g = static_cast<int>(brightness * 255);
b = static_cast<int>(p * 255);
break;
case 2:
r = static_cast<int>(p * 255);
g = static_cast<int>(brightness * 255);
b = static_cast<int>(t * 255);
break;
case 3:
r = static_cast<int>(p * 255);
g = static_cast<int>(q * 255);
b = static_cast<int>(brightness * 255);
break;
case 4:
r = static_cast<int>(t * 255);
g = static_cast<int>(p * 255);
b = static_cast<int>(brightness * 255);
break;
case 5:
r = static_cast<int>(brightness * 255);
g = static_cast<int>(p * 255);
b = static_cast<int>(q * 255);
break;
}
}

return (r << 16) | (g << 8) | (b << 0);
}

// Zwraca kolor tęczy od czerwonego (odpowiada mu x = 0) do niebieskiego (x = 1)
// Kanał alfa zwraca 0.
inline uint4 ColorRainbow(float x)
{
return HSB2RGB(x*0.75f, 1.0f, 1.0f);
}

3618
DirectX / Odp: Obsługa błędów w Direct X
« dnia: Czerwiec 22, 2006, 16:03:12 »
Oczywiście, możesz sobie napisać wrappera na całe API DirectX i każdej innej używanej biblioteki, na każdą jedną jej funkcję, która wywoła funkcję właściwą, potem sprawdzi błąd i w razie czego rzuci wyjątek. Tylko pomyśl, ile to by było roboty i czy to by miało sens.

3619
Poszukuję / Odp: Programista poszukuje teamu
« dnia: Czerwiec 21, 2006, 22:23:23 »
Przynajmniej szczery. Chociaż wiem, że to teraz takie niepopularne, dlatego nie ma nic dziwnego waszych reakcjach. Lepiej kiedy ktoś ogłasza wszem i w obec jaki to jest masta koda i co to on nie potrafi / nie zrobił / nie zrobi :)

3620
DirectX / Odp: Obsługa błędów w Direct X
« dnia: Czerwiec 21, 2006, 11:26:27 »
Niestety to jest ogólna bolączka języka C++, że nie ma jednolitego sposobu obsługi błędów i każda biblioteka (nie tylko DirectX) zwraca błędy na swój sposób. W swoim kodzie, jeśli piszesz porządnie, powinieneś oczywiście na nie reagować i do tego celu warto stworzyć sobie jakiś ujednolicony sposób - z użyciem wyjątków lub bez. Pozwolę sobie zareklamować swój artykul :) http://regedit.warsztat.gd/produkcje/artykuly/obsluga_bledow.php.

Ja aktualnie robię to tak:

HRESULT hr;
...
hr = Device->JakaśFunkcja(cośtam...);
if (FAIILED(hr))
  throw err::DirectX(hr, "Jakaś funkcja się nie udała", __FILE__, __LINE__);

Czyli przerabiam błąd DirectX-owy (który za każdym razem muszę sprawdzać) na swój właśny wyjątek (który sam wyciąga z kodu hr komunikat błędu). Oczywiście można sobie to obudować jakimiś makrami, ale to i tak niewiele uprości, tylko kod będzie mniej czytelny.

Lepszego rozwiązania niestety chyba nie ma...

3621
Warsztat.gd / Odp: Cytowanie selektywne
« dnia: Czerwiec 21, 2006, 11:14:24 »
A dla mnie najważniejsze żeby się dało znowu sondy robić, bo z tego co widzę to teraz po przenosinach forum nie ma takiej funkcji.

3622
Językoznawstwo / Odp: Nowy jezyk programowania?
« dnia: Czerwiec 20, 2006, 16:36:47 »
Wszystko wydaje się trudne, dopóki nie stanie się proste :) Dla mnie na przykład to czarna magia, a Dragon Book (w wersji polskiej) leży sobie na półce i nadal czeka na przeczytanie. Dla kogoś kto się zna na rzeczy może być inaczej. Ale wymyślić język programowania to jedno, napisać kompilator to drugie, ale to jeszcze nie koniec. Trzeba porobić połączenia z różnymi bibliotekami, żeby dało się w nim zakodzić coś więcej niż konsolowe "Hello world" albo "zgadnij liczbę". To też jest takie proste? :)

3623
Warsztat.gd / Odp: Cytowanie selektywne
« dnia: Czerwiec 20, 2006, 16:33:15 »
...albo w ogóle wywalić te graficzne emotikonki :P Wam się to podoba? Nie tęsknicie za odschoolowym, IRC-owym dwukropkiem i nawiasem?

3624
Programowanie grafiki / Odp: Co jest najlepsze do 2D?
« dnia: Czerwiec 19, 2006, 21:48:40 »
Wspomniana książka traktuje prawie w całości o programowaniu grafiki 3D w DirectX z użyciem shaderów (w dodatku w czystym asmie i w wersji 1_1), więc nie ma nic wspólnego z 2D (może oprócz jednego rozdziału) i nie daj się naciągnąć na jej kupno ;) jeśli właśnie to cię interesuje.

3625
Warsztat.gd / Odp: Cytowanie selektywne
« dnia: Czerwiec 19, 2006, 21:34:05 »
Nigdy czegoś takiego nie widziałem i nie wiem czy miałoby to sens. Natomiat ja w swoim profilu mam szybkie odpowiadanie wyłączone i przycisk cytuj przenosi mnie do normalnej odpowiedzi. Ja kiedy chcę zacytować jakiś fragment to po prostu kopiuję go do schowka i to co mi przeszkadza to graficzne emotikonki, które po takim skopiowaniu zamieniają się na tekst w rodzaju "Smiley" (a to nie ich jedyna wada :P).

3626
Programowanie grafiki / Odp: Co jest najlepsze do 2D?
« dnia: Czerwiec 18, 2006, 21:55:35 »
Ja jednak polecam do robienia grafiki 2D porządną bibliotekę graficzną 3D taką jak OpenGL albo DirectX - właśnie z tych powodów o których piszesz. Szybko działająca przezroczystość, rozciąganie, obracanie i dowolne zniekształcanie bitmapek to coś bardzo ważnego. Jeśli chodzi o szybkość to przy grafice 2D, o ile w miarę znośnie to napiszesz, na pewno nie powinno mulić. Może jest się trochę trudniej tego nauczyć, ale moim zdaniem warto. Poza tym łatwiej Ci będzie później przejść na 3D :)

3627
Narzędzia / Odp: Systemy kontroli wersji - czy, które, jak
« dnia: Czerwiec 18, 2006, 16:59:43 »
Zdyscyplinowany to ja jestem i robię kopie bezpieczeństwa po każdym dniu pracy, a przed skasowaniem czy zmienieniem czegoś większego kopiuję sobie kod do katalogu z datą :)

Czy serwer SVN da się zainstalować i uruchomić pod Windowsem bez jakiś szczeególnych ceregieli typu integracja z serwerem Apache? (bo takie coś mi się gdzieś przewinęło)

3628
Design / Odp: Proceduralny mmo rpg
« dnia: Czerwiec 18, 2006, 16:57:10 »
Mam wrażenie że jest to raczej naukowa zabawka niż coś co znajduje powszechne, praktyczne zastosowanie w prawdziwych grach. Jednak z pewnością fascynująca... mnie też fascynuje. Dlatego fajnie byłoby gdyby udało się zrobić całkiem grywalną grę z proceduralnie generowanymi różnymi rzeczami, jak mapy, tekstury, a może nawet questy czy modele.

3629
DirectX / Odp: Alpha blending - rozwazanie teoretyczne
« dnia: Czerwiec 17, 2006, 17:49:42 »
Dopóki twoje półprzezroczyste trójkąty nie rozciągają się po całej mapie w jakiś dziwny sposób ani nie przecinają, tylko siedzą sobie w osobnych obiektach, możesz sortować je byle jak - np. względem środka ciężkości (czyli średniej arytmetycznej z pozycji wierzchołków). Zazwyczaj to działa. Kiedy robi się większa zamota, wtedy żaden algorytm sortowania nie pomoże i trzeba trójkąty dzielić np. za pomocą BSP (patrz problem algorytmu malarskiego).

Sprecyzujmy może, kiedy nie trzeba sortować, czyli jakie operacje na przezroczystych trójkątach są przemienne? Wydaje mi się, że dodawanie i odejmowanie (stosuje się w ogóle odejmowanie gdziekolwiek?). Jakieś jeszcze?

3630
Programowanie grafiki / Odp: Jak połączyć obiekt do kamery ?
« dnia: Czerwiec 17, 2006, 17:46:11 »
Mnie przychodzi do głowy takie rozwiązanie, że kamera powinna po prostu zostawać w jakiś sposób w tyle za samochodem podążając za nim. Mógłbyś do tego zapamiętywać wcześniejsze ustawienia samochodu (jego pozycję oraz kierunek do przodu) i potem za jakiś czas przypisywać je kamerze.

Strony: 1 ... 238 239 240 241 [242] 243 244 245 246 ... 270