trident Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 Co bardziej wplywa na wydajnosc grafiki 3d, zwiekszanie liczby poligonow czy stosowanie wiekszych rozmiarowo tekstur?
Vorek Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 to zależy od efektu jaki chcesz osiągnąć, najbardziej na zdrowie wychodzi połączenie jednego i drugiego :)
ChaoSMakeR Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 zwiekszenie liczby polygonow napewno bardziej wplywa na wydajnosc grafiki ... znacznie ja obniza.
arcade Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 Ja tam się za bardzo nie znam, ale z tego co wiem, to to są dwie zupełnie różne sprawy... To znaczy że jak masz model powiedzmy 5000 poly, to jest on na tyle duży że odpowiednia będzie do niego tekstura przynajmniej 512x512 lub większa, dając do niego tekst 256x256 wcale nie przyśpieszysz za bardzo grafiki, a będzie to wyglądało koszmarnie. Zresztą pewnie i tak wszystko zależy od silnika :P Ogólnie - trzymaj się pewnych standartów - mało poly - mala tekstura, więcej poly większa (i więcej map). mam nadzieję że to co napisałem ma jakiś sens :D
w!e8 Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 Co bardziej wplywa na wydajnosc grafiki 3d, zwiekszanie liczby poligonow czy stosowanie wiekszych rozmiarowo tekstur? ja bym powiedzial ze ilosc stosowanych textur na obiket oraz ich wielkosc, wiadomo ze jak walniesz pare 2048x2048 to istnieje mozliwosc zadlawienia sie karty;) wszystko zalezy od karty i sposobu nakladania textur czy tez odpowiedniego sposobu ich manipulacją-bo tych jest 3. yhm dla dziesiejszych kart nie stanowi problemu wyrenderowanie scenki z 500k(np 3obiekty, twistowanie w real time na vertex shaderze, oswietlenie hdr ipt) to juz jest standard. Najlepiej jest przesylac b.dużą ilosc wierzkolow stosunkowo jak najrzadziej, bo przesylanie czesciej a po trochu obniza wydajnosc. do tego sluzą vertex buffery czy array'e... zalezy takze to od tego czy tworzysz pod jakąs gierke-wtedy oszczednosc ma ogromne znaczenie czy kladziesz/kladziecie ;p moze na jakosc a nie wydajnosc np w programach demonstracyjnych czy benchmarkach. tak więc sprecyzuj się nieco bo inaczej nikt ci tu nie da odpowiednich informacji. pozdro
remi Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 paradoksalnie w grach wąskim gardłem może być zaczytywanie z dysku, więc jak w grze jest dużo małych obiektów to będzie mniej fpsów niż jak jest mniej dużych obiektów przy polycouncie constant. a ponieważ obiekty dzielone są wg tekstur to lepiej jest mieć kilka dużych tekstur niż wiele małych. najlepiej poczytaj sobie jakieś dokumenty na stronie nvidii, zapoznaj się z perfhudem itp.
w!e8 Napisano 3 Listopad 2005 Napisano 3 Listopad 2005 aha w przypadku real time raytracerów na ogol jest tak ze im wiecej poly tym wydajnosc coraz mniej spada :D istnieje pare znakomitych raytracerow-wbrew pozorom ;p innym przykladem jest to że na czarnym ekranie mozesz miec np 700fps ;] po wyswietleniu glupiego textu z obrazka mozesz miec juz polowe z tej liczby. natomiast gdy silnik bardziej obciazony(scenka, cienie i inne pierdoly) zmiany jakie zachodzą w wyswietleniu tegoz textu są pomijalnie małe... EDIT: remi warto wówczas stosować tzw referencje. przykladowo robiąc płotek(cos co ma duzo powtarzajacych sie elementow), cokolwiek robisz sobie np dwa-trzy rodzaje deskek i wiadomo ze w koncu bedziesz je powielał, wówczas koder pisząc exporter moglby sobie sprytnie rozplanować to i zapisywać tylko współrzędne nowych obiektow. co za tym idzie pliki zajmują mniej, szybciej działa jako całośc, mniej zaczytuje . wyswietla podstawe a następnie wg wspolrzednych odpowiednio sobie powiela to. EDIT2: najbardziej jednak znacząco na obniżenie wydajnosci ma sie ilosc zastosowanych dynamicznych swiatel do duzej liczby poligonów. of course można napisać shader tzw multple lights i wtedy problem sie zmniejsza nawet na 50światłach w OGL(mozna pominac ograniczenie 8swiatel).... tylko po co ? tam gdzie sie da należy wypalać lightmapy i inne pierdolki ktore po to ktos wymyslil. lightmapy taka stara technologia a do dzis stosowana :) oraz kolejnym czynnikiem jest model zastosowanego zastosowanego oswietlenia(per pixel or per vertex), oraz rodzaj shadingu i specular... blinn, phong etc... w przypadku per vertex korzystnym posunięciem dla teamow ktore nie mają pojęcia jak ulepszyc jakosc generowanej grafiki polecam zapoznanie sie z rozszerzeniem EXT_seperate_specular_color. modele wówczas pięknie wyglądają jak na per vertex ;) a wydajnosc az tak nie spada. pozdro
mkk3a Napisano 4 Listopad 2005 Napisano 4 Listopad 2005 ja robiłem kiedys nieco testów z fps'ami w Q3 i róznica wydajności pomiędzy max. i min. teksturami była w granicy błedu statystycznego, a przy zmianie dokładnosci geometrycznej to już kilkanascie procent (jesli nie więcej)
w!e8 Napisano 4 Listopad 2005 Napisano 4 Listopad 2005 całkiem możliwe, kazdy engine zachowuje sie inaczej. moje przyklady odnoszą sie w wiekszosci przypadków autorskich enginów oraz do własnego doświadczenia. komercyjnymi nawet nie zaprzątam sobie głowy. pozdro
trident Napisano 4 Listopad 2005 Autor Napisano 4 Listopad 2005 Dzieki za odpowiedzi, na moim obecnym poziomie zawansowania w grafice 3d zastosuje sie do najprostszych rad "wywazenia pomiedzy iloscia poligonow a wielkoscia tekstur" a na ta cala skomplikowana reszte napewno tez przyjdzie czas. pozdro
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się