Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Programiranje+Linux+C+Animacija+Zoom+Fraktali

[es] :: C/C++ programiranje :: Programiranje+Linux+C+Animacija+Zoom+Fraktali

[ Pregleda: 3202 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

dexy2

Član broj: 39617
Poruke: 6
*.sns.it.



Profil

icon Programiranje+Linux+C+Animacija+Zoom+Fraktali30.11.2004. u 22:02 - pre 235 meseci
Zelim da napravim aplikaciju koja ce da iscrta fraktal i kasnije da iscrtava animaciju koja ce da predstavlja kontinualno priblizavanje (zoomiranje) fraktala u odredjenom delu. Trenutno sam napravio malu aplikaciju u C-u koja iscrtava statican fraktal na ekranu 1024x768 piksela ... za svaki piksel iteriram oko 30x ... znaci oko 30.000.000 iteracija aprox.
1. Interesuje me koji je najbrzi metod (koje biblioteke da koristim i koji metod) za iscrtavanje pod linux-om.
2. Kako da efikasno izvrsavam zoom? Smislio sam odredjeni algoritam ali me interesuje da li neko poznaje vec neke STANDARDNE metode za Zoom.
3. Kako da efikasno iscrtavam neku animaciju tipa 30fps ili nesto sto moze da 'zavara' gledaoca?

Pozdrav,
Dejan

 
Odgovor na temu

Dejan Lozanovic
Dejan Lozanovic
Beograd

Član broj: 691
Poruke: 2325
195.178.35.*

Jabber: null@elitesecurity.org
Sajt: speedy-order.com


+75 Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali01.12.2004. u 08:40 - pre 235 meseci
Pa najnizi i najbrzi nacin je Xlib ukoliko hoces da pravis program za X-e, Xlib radi sa grafickim primitivima, ukoliko gledas da imas i neke kontrole dugmice i ostale stvari onda ti ipak treba neki toolkit jer Xlib to nema u sebi.Ako gledas tu da izaberes neki brz toolkit onda ti preporu

Znam da ce zvucati mozda extremno ali razmisli o openGL-u za rad sa grafikom jer tada prebacujes opterecenje sa CPU na GPU.
 
Odgovor na temu

leka
Dejan Lekić
senior software engineer, 3Developers
Ltd.
London, UK

Član broj: 234
Poruke: 2534
*.varmdo.se.

Sajt: dejan.lekic.org


+2 Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali02.12.2004. u 16:52 - pre 235 meseci
Ma koliko to bilo optimizovano, na obicnim PC-jima je maltene nemoguce (nisam sto posto siguran u ovo doduse) raditi takvu animaciju u relanom vremenu. Operacije koje treba izvrsiti za svaki frejm su jako zahtevne. Takvu vrstu animacije, u 30 fps, je jako tesko odraditi. Predlazem da radis rendering sliku-po-sliku na disk i kasnije to "poslazes" u jednu "smooth" animaciju. Mozda neke niskorezolucijske slike... ne znam.
Dejan Lekic
software engineer, MySQL/PgSQL DBA, sysadmin
 
Odgovor na temu

zvrba
The Lord of Chaos

Član broj: 31716
Poruke: 105
*.fina.hr.



Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali03.12.2004. u 07:29 - pre 235 meseci
Ovak. Ja sam nesto slicno bio radio, mozes mi poslat mail pa ako iskopam source budem ti ga poslao. Bila je kombinacija sa assemblerom.

Par stvari:
1. Koristio sam SDL library (najjednostavnije): http://www.libsdl.org/index.php
2. 30 iteracija po pixelu je puno premalo za kvalitetnu sliku Mandelbrota, pogotovo blizu ruba (treba vise od 100 iteracija da se vide fini detalji)
3. float (pa cak i double) preciznost postaje nedovoljna pri velikim zoomovima
4. Napravio sam "spori" program koji snima tzv. key-frameove VECE rezolucije na disk (npr. 480x300; imam doma tocnu racunicu)
5. Program je interpolirao key-frameove na display slike MANJE rezolucije (320x200) i prikazivao animaciju

Uz jako optimizirani assemblerski kod sam uspio dobiti oko 60 fps-a na staroj 486ici :) (da, radio sam to tako davno).

Znaci 30 fpsa na vecoj rezoluciji je vise nego izvedivo.

Vidio sam neki real-time mandelbrot demo (isto davno), ali je kvaliteta slike bila OCAJNA (detalji blizu ruba gotovo da se nisu vidjeli i sve je bilo jako ispikselizirano). uz to je brzina bila oko 5 fps.
 
Odgovor na temu

zvrba
The Lord of Chaos

Član broj: 31716
Poruke: 105
*.cmu.carnet.hr.



Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali04.12.2004. u 12:22 - pre 235 meseci
Eto, natjerao si me da iz naftalina izvucem neki svoj stari kod Mandelbrot animacije... na novim kompjuterima ide jako brzo (375 fps-a na Athlon 1.6XP+). Na http://www.core-dump.com.hr/index.pl?node_id=413 imas upute i link za skinut program source i linux binaryje.
 
Odgovor na temu

dexy2

Član broj: 39617
Poruke: 6
*.sns.it.



Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali04.12.2004. u 19:16 - pre 235 meseci
Zvrba, taj program sto si upload-ovao nisi dobro tar-ovao. Probaj opet da upload-ujes.

Ja inace nisam ni mislio da trenutna slika bude ultra cool sa cool rubovima i sl. Vec b ih prilikom zumiranja opet iterirao delove koji su neophodni da se doracunaju. Ali me prvo interesuje kako da uopste sa tom rezolucijom sto vise fps-a iscrtam. Dosadasnji odgovori su bili korisni.
 
Odgovor na temu

zvrba
The Lord of Chaos

Član broj: 31716
Poruke: 105
*.cmu.carnet.hr.



Profil

icon Re: Programiranje+Linux+C+Animacija+Zoom+Fraktali05.12.2004. u 08:42 - pre 235 meseci
Program je savrseno dobro zapakiran. Probaj ovako:

bunzip2 mandel.tar.bz2
tar xvf mandel.tar

onda cd mandel i imas program

Evo ti checksum za svaki slucaj:

zvrba@zax:~$ md5sum mandel.tar.bz2
7839ea658303a6dbe68b7ce6ef3c7eb9 mandel.tar.bz2

Inace, cim napravis mali zoom negdje, moras ponovo racunati SVE pixele. Inace ces dobiti efekt pikselizacije. Ako ne zelis sve racunati, onda ti samo treba kriterij koliki ces dozvoliti razmak izmedju novih pixela nakon zooma prije nego ides ponovo racunati. A do tog trenutka mozes npr. napraviti linearnu interpolaciju. Uf, ne znam jel ti ovo ima smisla :)
 
Odgovor na temu

[es] :: C/C++ programiranje :: Programiranje+Linux+C+Animacija+Zoom+Fraktali

[ Pregleda: 3202 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.