![]() |
Ne posjedujem PS3 SDK, samo sam slusao seminar o njemu :)
Zahtjevi na procesorsku moc su poznati, cijeli topic je usmjeren prema tome kako je fascinantno da je netko uopce uspio izvesti skoro-pa-realtime bez komponenti posvecene samo pracenju (npr. spomenuti cell), znaci na x86 djelovima sa 4 jezgre. Dakle, mozda nismo daleko od toga IMO :) Za Crysis postoji opceprihvaceno misljenje da je neoptimiziran i pun glitcheva, iako nemam nikakvih cinjenica/dokaza za optimiziranost. |
Usput, neobicno mi je sto se nasuprot pojma pracenje zrake stavlja rasterska grafika. Pracenje je samo model osvjetljenja, a rasterska/vektorska grafika kao i rasterizacija=diskretizacija kao zadnji korak prije prikaza nemaju puno veze s time.
Mozda se misli na pracenje zrake vs scan-line i slicno. |
Citiraj:
Citiraj:
Citiraj:
EDIT : Citiraj:
Citiraj:
|
Pracenje zrake: http://www.zemris.fer.hr/predmeti/ir.../8_sjenca1.pdf
(Poglavlje "Prijelazni model") Scan-line: http://www.zemris.fer.hr/predmeti/ir..._skrivanje.pdf (Watkinsov postupak) I da zavrsimo vise sa hardverskim zahtjevima - Da, tocno je da ray-tracing zahtijeva vise resursa :) Ostaje slicnost sa javom - sve ce u assembleru raditi brze, ali imas toliko specificnih optimizacija i ustimavanja da gubis dosta vremena. Jednom kad snaga izracunavanja predje odredjenu granicu, ubacuje se dodatna razina apstrakcije ili u ovom slucaju problem se prebacuje u drugo podrucje (npr. sa iscrtvanja na fiziku). |
sory ovi tvoji linkovi mi otprilike imaju smisla ko japanski (kojeg neznam)... ne kuzim nis ove pojmove na hrvatskom al dobro, poanta koju mi se cini da nisi svatio je da raytracing nije samo nacin osvjetljenja vec i nacin renderiranja, otprilike funkcionira ovako :
Iz kamere posalji zraku u smjeru jednog piksela na ekranu i nadji "sudar" (cesto se koristi vise zraka za jedan piksel radi aliasinga) ... i onda se trazi nova zraka koja se sudara sa izvorom svjetla direktno (ako se sudari sa necim prije onda je piksel unutar sjene)... Sad zasto je to bitno ... zato sto za svaki piksel na ekranu moras poslat barem dvije zrake za samo jedno svjetlo (bez refrakcije i reflekcije) ... to je jako skupo po preformansama E sad kod rastera imas jedan trokut koi se "transformira" u 2D kordinate i onda se jednostavno nacrta preko ekrana, nema nikakvih zraka ni miljona racunanja a rezultat je isti ... e sad "problem" je "odbijanje" tih zraka tj odredjivanje sjena reflekcija refrakcija al svi ti problemi su rjesivi... I buduci da vecina engina funkcionira na ovom principu a od raytracinga nema "nikakve koristi" (sporije je i nekvalitetnije u realtimeu, ali ima nekih prednosti priznat cu :) ) nece se koristit u skoroj buducnosti osim ako ne pocnu implementirat neke hibridne nacine pohranjivanja geometrije koi su vise pogodni raytracingu ko sto je carmack predlozio - onda imas zapravo dobitak sa koristenjem takve tehnike, al to nije nesto sto intel pokusava progurat nazalost :( aj umorio sam se za danas ... odo se "spremat" za utakmicu :chears: |
Malo ti steka ovaj "rasterski" dio :) Transformacija koju spominjes - 3d trokut u 2d - je obicna perspektivna projekcija koju radis i kod pracenja zrake.
Sve je to prica koja nije bitna, procitaj malo detaljnije "japanski" pa ces se uvjerit da sam u kupe a ti u spade. |
Citiraj:
u raytracingu bacas zrake kroz svaki piksel na objekte u svemiru ... nema nikakve projekcije vidis one strelice kako ti ilustriraju ray-eve ... ono sta si ti meni pokazo u onom pdf-u mi se cine ko opisi BRDF-ova tj. sjenčanja, to nema veze sa raytracingom (ne direktne barem). EDIT Nema nikakve projekcije trokuta sam mislio rec... u raytracingu projeciras tocke koje si pogodio sa rayevima ... to ti je glavna mana raytracinga kod renderiranja trokuta i o tome govori carmack u onom linku |
Hmmm, citam ovu zanimljivu raspravu, ali sad ste me zbunili skroz sa rasterom. Pa sta nije rasterizacija proces koji se desava neposredno prije nego mi dobijemo sliku, tj "pikselizacija" (da ju tako nazovem, ne vladam bas terminologijom) na rasteru? Odn, koliko sam ja upoznat, grafika se dijeli na 2 osnovne - vektorsku i rastersku koji se tako zovu iskljucivo zbog nacina kako stvaraju sliku, i na kakvim uredjajima. Sto ima jos drugacijih pojmova koji se tako nazivaju, a da su nesto sasvim drugo? Kolko ja znam, raster je raster, a rasteriziranje (rasterizacija, kako li se vec kaze) samo postupak pretvaranja podataka u ljudskom oku shvatljivu sliku na monitoru.
|
Citiraj:
3D raster je nesto drugo ... prvo postoji raytracer koi baca zrake kroz svaki piksel i vraca ti boju na istom (kroz daljnje pracenje zraka i slicno)... a onda postoji projekcija 3D trokuta u 2D i onda 2D rastriranje u pixele - ovo je standardni raster... |
Mislim da si u krivu, stvarno pogledaj malo materijale i pusti Carmacka, nije izumio novu racunalnu grafiku.
Citiraj:
Citiraj:
Hoces li gadjat trokut sa zrakama ili npr. izracunavat normale u vrhovima (Gouraud) u potpunosti ovisi o tebi. Sam biras model osvjetljenja, odnosno time i sjencanja. Hibridni model koji si spomenuo je kombinacija prijelaznog i analitickog modela osvjetljenja, dakle opet je vezan za sjencanje. Rasterizacija je ovo o cemu govori Abuser, dakle diskretizacija u prikazu i zapisu grafike. EDIT: Deadwing, prilozi relevantne materijale u vezi racunalne grafike koje potvrdjuju to sto govoris pa cemo moc razvit raspravu. Stalno se pozivas na intervju, sto je pomalo neozbiljno. |
Citiraj:
Citiraj:
u standardnom rasteru prvo projeciras trokut u 2D i onda ga jednostavno rastriras... u raytracingu stalno bacas zrake koje vjerojatno udaraju iste trokute i to je lose jer je bacanje zrake u scenu jako sporo ... Citiraj:
Citiraj:
Citiraj:
Citiraj:
Sorry borgy al imam osjecaj da ja nevladam dovoljno terminologijom da ti zapravo objasnim sta zelim rec al znam o cemu pricam jer sam zapravo implementirao te stvari ... necu da ovo postane prepucavanje jer stvarno nemam poima kako da ti to laicki objasnim. |
A eto takodjer imam dosta prakse iz pisanja opengl programa i znam da ne govorim krivo, ali valjda je nesporazum oko nazivlja, podjela itd. pa cemo prekinut :chears:
EDIT: Malo sam razmislio i shvatio da je uzrok cijelog nesporazuma to sto su mi djelova postovi dvosmisleni, nista vise. Bezveze mlatimo slamu. |
Btw, ako te zanima, evo ti jedan link u kojem se globalna iluminacija (samo difuzne reflekcije) racunaju pomocu rastera
http://vis-web.informatik.uni-stuttg...wnload/rsm.pdf Vjerojatno ce ti bit zanimljivo ako si u "next-gen" grafici ... imam cak i ideju kako dodat efikasan shadowing za odbijene zrake na ovu tehniku, ali problem je sto nemoze radit na GPU-u na zalost :( (mozda sa CUDA ili slicnim :) - svejedno brze od raytracinga i rjesava problem koi je nerjesiv sa raytracingom (optimalno) nego se obicno koristi foton mapping za ovo... ovakva tehnika ima vise sanse zavrsit u jednoj igri u bliskoj buducnosti IMO al morat ce se rjesit dosta problema) |
Real-time ray-tracing iz prve ruke (outbound):
http://www.pcper.com/article.php?aid...e=expert&pid=1 |
|
posto o vecini stvari o kojima se ovdje prica nemam pojma, bar za sad, to necu nit komentirati.
za mene je sljakerski posao kad ti sef da lopatu i kramp, pokaze mjesto gdje treba da kopas i kaze ti kopaj ili nikaj od 2.5k kuna place. sjediti u nekom prostoru za kompom i prepisivati kod tipkajuci prstima je smijurlija od sljakerskog posla, jer ne trazi mentalni niti fizicki rad. nadodat cu jos, za mene nije programer onaj koji samo utipkava kod a pogotovo ako ga jos ne kuzi, e to je vec za plakati, i nebi se trebao zvati programerom. nazalost, danas je previse takve rulje u svim granama poslovanja. ostala prepucavanja nit ne kuzim nit me ne zanimaju, a kaj se tice ray-tracinga i real lifea, zivi bili, pa vidjeli. uglavnom da se nesto "novo"/"drugacije" radi i da eventualno naprave neki napredak, kakav god taj napredak bio, ja ga podrzavam. eto, mojih 50 centa. |
Citiraj:
|
E borgy, evo nedavno sam imo slicnu raspravu oko raytracinga sa nekim, al na engleskom hvala bogu pa sam mu brzo objasnio, e onda sam se sjetio da smo se ovdje prepirali oko toga sta je raytracing pa evo samo da klarificiram sa structnim quotom :
Our system also takes advantage of GPUs' strengths at rasterization and shading to offer a mode where rasterization replaces eye ray scene intersection, and primary hits and local shading are produced with standard Direct3D code. Evo i link Vidis sad da rasterizacija i raytracing nemaju nista zajdnicko, i da raytracing nije metoda "sjencanja" ko sto si naveo ako se dobro sjecam (ovo mi je bas jucer neko htio "objasnit" pa zato sad postam), a i link ti isto ima realtime raytracing samo sto je ovdje implementacija i dokumentacija dostupna :) |
Ova zena -> http://www.zemris.fer.hr/clan.php?clan=12&lang=2 <- je osoba koju trebas uvjeriti buduci da sam kod nje polagao :)
Mislim da smo vec rijesili da se sve svodi na nazivlje/podjele i da bi se i taj koji je napisao strucni quote slozio s ovim jer nema nista kontradiktorno. Vjerojatno bi rekao nesto tipa "pod rasterizacijom ja smatram to i to". Doduse, google define govori u moj prilog. Meni se vise ne da ovdje natezat :) |
Citiraj:
Ono sto mene buni : "Ray-tracing je postupak sjencanja u prijelaznom modelu osvjetljenja. Ovdje se nema sto dodati." Ali šta nije ray tracing metoda dobivanja svojstva materijala nekog objekta u odredjenom smjeru zrake ? Prjealzni model osvjetljenja - možda pod time misliš prjenos svijetla sa izvora na površinu ? "Rasterizacija je ovo o cemu govori Abuser, dakle diskretizacija u prikazu i zapisu grafike." Rasterizacija 3D trokuta podrazumjeva translaciju objekta u 2D prostor ekrana i onda sljedi proces 2D rasterizacije sta bi bilo crtanje 2D trokuta u bitmapu i interpolacija parametara. E sad IMO ovo ne postoji u raytracingu zato sto tamo pocinjes od piksela tj. on je osnovna jedinica u jednazbi, ti bacas zraku iz kamere kroz piksel i uvjek znas u koji ces piksel crtat, samo trebas odredit koju si tocku pogodio - znaci nema rasterizacije u smislu pretvaranja 2D geometrije u bitmapu, zato sto u raytracingu pocinjes sa pixelom - znaci rasterizacije nema, jer ako ray iz piksela ne pogodi nista imat ces crni piksel al svejedno ces napravit raycast - a nema smisla rec da si tim raycastom rastriro nista :). U 2D rasteru neces crtat preko takvog piksela i zato na njemu nema rasterizacije u raycastingu ces svejedno bacit zraku. I jos jedno pitanje, ovo si radio na faksu ? Mislio sam da na programiranju ucis bedastoce ko sorting algoritme i uvode u C (i jos kolko sam cuo na PMF-u moras cekat do 3 godine da pocnes s ovim :D) Mozda bi mogo ove godine i upisat faks :) |
Na fer-u to prođeš na prvoj godini. Na 2. imaš i operacijske sustave koji se bave i monitorima, semaforima, te problemima višedretvenih i višeprocesorskih sustava, te kako izbjeći izgladnjivanje procesa u takvim sustavima, zatim OOP i funkcijske jezike iz PPIJ-a, automate (svih vrsta, uključujući i touringov stroj :) ) na UTR-u, a onda na 4. i 5. slušaš ovakve divote ukoliko te zanimaju, ukoliko te ne zanima grafika slušaš nešto drugo što te zanima...
|
Potpuni OT ali na feru se Interaktivna računalna grafika radi na 3. godini bolonje.
Moja je greska sto sam napisao da se u ray-tracingu radi perspektivna projekcija, to je potpuno netocno i ispricavam se na pomutnji. Ali i dalje mi je glupo usporedjivati ray-tracing i rasterizaciju ali to vjerojatno nikome nije bitno jer ima i bitnijih stvari pa prekidam :) Btw ne zvucis zivcano ni agresivno, raspravljamo kao ljudi :) |
Sva vremena su GMT +2. Sada je 11:43. |
Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 1999-2024 PC Ekspert - Sva prava pridržana ISSN 1334-2940
Ad Management by RedTyger