Welcome, Guest. Please login or register.


Author Topic: Raytrace (Read 5890 times)

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Raytrace
« on: 2018.October.08. 14:36:24 »
facebook-on lévő raytracer EP-re Pascalban:
*** Speicherplatz zu klein

Online Zozosoft

  • EP addict
  • *
  • Posts: 13468
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • http://enterprise.iko.hu/
Re:Raytrace
« Reply #1 on: 2018.October.08. 14:45:06 »
facebook-on lévő raytracer EP-re Pascalban:
Átírtad? Mennyi idő alatt fut le?
A BASIC az kb másfél óra ALT+W-vel :oops:

Mondjuk ha jól nézem a tiéd az nem max képernyős.
21896-0

Online endi

  • EP addict
  • *
  • Posts: 7226
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • Honlapom
Re:Raytrace
« Reply #2 on: 2018.October.08. 14:55:03 »
durva! raytrace ep-n!

amúgy az alt+w sokkal gyorsabb, ha a z80 clock is maxra van állítva
Vigyázat! Szektás vagyok! :)

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #3 on: 2018.October.08. 15:05:27 »
Átírtad? Mennyi idő alatt fut le?
A BASIC az kb másfél óra ALT+W-vel :oops:

Mondjuk ha jól nézem a tiéd az nem max képernyős.
(Attachment Link)
24 perc 56 mp, out 191,12-vel

a felbontás ugyanannyi, mint a Speccy változatban (256x176)

http://povi.uw.hu/ray.pas
*** Speicherplatz zu klein

Offline IstvanV

  • EP addict
  • *
  • Posts: 4806
  • OS:
  • Linux Linux
  • Browser:
  • Firefox 58.0 Firefox 58.0
    • View Profile
Re:Raytrace
« Reply #4 on: 2018.October.08. 15:05:42 »
Talán érdekes lenne még C-re átírni egész számos aritmetikával, vagy 4 színű módban ditherelt színátmenetre módosítani, ha az eredeti algoritmus azt lehetővé teszi.

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #5 on: 2018.October.08. 15:06:11 »
Átírtad? Mennyi idő alatt fut le?
A BASIC az kb másfél óra ALT+W-vel :oops:

Mondjuk ha jól nézem a tiéd az nem max képernyős.
(Attachment Link)
ó, látom, te hires kétszínű módot használtál!
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #6 on: 2018.October.08. 15:08:50 »
Talán érdekes lenne még C-re átírni egész számos aritmetikával, vagy 4 színű módban ditherelt színátmenetre módosítani, ha az eredeti algoritmus azt lehetővé teszi.
nekem is eszembe jutott, a program eredeti szerzője készített egy 16 bites float rutint, azzal 6 perc a speccy-n, állítja, hogy annál még a fixpontos se lenne gyorsabb.

Az igazat megvallva nem értem az algoritmust, csak átkódoltam BASIC-ről Pascal-ra :oops:
*** Speicherplatz zu klein

Online Zozosoft

  • EP addict
  • *
  • Posts: 13468
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • http://enterprise.iko.hu/
Re:Raytrace
« Reply #7 on: 2018.October.08. 15:10:07 »
ó, látom, te hires kétszínű módot használtál!
És azt is 27x42-es lapon :-)

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #8 on: 2018.October.08. 15:10:20 »
Átírtad? Mennyi idő alatt fut le?
A BASIC az kb másfél óra ALT+W-vel :oops:

Mondjuk ha jól nézem a tiéd az nem max képernyős.
(Attachment Link)
Zozó, mik a paraméterek a max felbontáshoz? (a fő ciklusban a i, j és dz?)
szerk: közben látom, fölraktad a forrást is
*** Speicherplatz zu klein

Online endi

  • EP addict
  • *
  • Posts: 7226
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • Honlapom
Re:Raytrace
« Reply #9 on: 2018.October.08. 22:24:24 »
lehetne olyat csinálni, hogy animot renderel, de úgy, hogy minden anim frame-be egyenként, és közben váltogatná az így felépülő képeket.
Vigyázat! Szektás vagyok! :)

Online Zozosoft

  • EP addict
  • *
  • Posts: 13468
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 62.0 Firefox 62.0
    • View Profile
    • http://enterprise.iko.hu/
Re:Raytrace
« Reply #10 on: 2018.October.09. 09:07:35 »
Talán érdekes lenne még C-re átírni egész számos aritmetikával, vagy 4 színű módban ditherelt színátmenetre módosítani, ha az eredeti algoritmus azt lehetővé teszi.
Igen, érdekes lenne megnézni többféle programnyelvben.

Online endi

  • EP addict
  • *
  • Posts: 7226
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 68.0.3440.106 Chrome 68.0.3440.106
    • View Profile
    • Honlapom
Re:Raytrace
« Reply #11 on: 2018.October.09. 16:31:04 »
most nézem az eredeti basic forrást... hát, ez nem semmi. én mindig is hülye voltam a 3d matekhoz, de ilyen rövid kóddal lehet raytrace-lni egy kockás síkot, két tükröződő gömbbel és árnyékkal? hát... elképesztő...
Vigyázat! Szektás vagyok! :)

Online endi

  • EP addict
  • *
  • Posts: 7226
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • Honlapom
Re:Raytrace
« Reply #12 on: 2018.October.11. 14:08:50 »
gyorsan rákerestem, de nem találtam semmiféle raytrace dolgot specyre vagy hasonló régi gépre! durva :)
Vigyázat! Szektás vagyok! :)

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #13 on: 2018.October.11. 14:11:28 »
gyorsan rákerestem, de nem találtam semmiféle raytrace dolgot specyre vagy hasonló régi gépre! durva :)
A Spectrum Mánia nevű facebook csoportba rakta ki az eredeti kódot a Daniel A. Nagy nevű fickó, ő írta a 16 bites float rutinokat is:

"Naszóval, az előző postban közölt BASIC program csak egy előtanulmány volt ahhoz, amit igazándiból akartam csinálni, nevezetesen egy demo alkalmazást az alacsonypontosságú lebegőpontos kalkulátoromhoz, meg úgy általában egy bizonyítékot arra, hogy az alacsony pontosságú lebegőpontos számítások, amik könnyen és olcsón implementálhatóak mind hardverben, mint a legegyszerűbb mikrokontrollereken szoftverben valójában igen hasznosak és jelentősen csökkenthetik különböző projektek erőforrásigényét. A dolog messze túlmutat a retrón és a Spectrumon.

Ma este, munka után végre összeraktam! Az eredmény a csatolt képen látható.

Megfigyelhető, hogy egy kicsit zajosabb, mint a négyszerekkora számábrázolási pontosságot használó BASIC program, viszont cserébe 8 és fél óra helyett 6 perc 42 másodperc alatt lefut. Valószínüleg simán felgyorsítható a duplájára is, mert egy csomó mindent többször kiszámol feleslegesen. Egyszer majd kioptimalizálom.

Amit viszont érdemes megjegyezni, hogy néhány dolgot alacsony pontossággal óvatosabban kell számolni. Például a nagyon gyakori (a+ε)²-a² jellegű kifejezéseket mindig ε(2a+ε) alakban kell írni, különben pontatlan lesz. Két egységvektor által bezárt szög szinusznégyzetét nem szabad a skalárszorzatukból 1-(a⋅b)² képlettel számolni, hanem mindig az (a⋅b)a-b önmagával vett skalárszorzatát kell használni, ami ugyan jóval több művelet, de cserébe pontos.

https://github.com/nagydani/lpfp/"


https://www.facebook.com/groups/1708388329425895/
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 1868
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 69.0.3497.100 Chrome 69.0.3497.100
    • View Profile
    • http://povi.fw.hu
Re:Raytrace
« Reply #14 on: 2018.October.11. 14:15:24 »
és ha már raytrace, Kapitány ma rakta be valamelyik retró computeres facebook csoportba Bisqwit videóját, raytrace DOS-on:
https://www.youtube.com/watch?v=N8elxpSu9pw

Bisqwit-re érdemes föliratkozni, elborult videói vannak (pl. hogyan írjunk compiler-t, a boundary tracing-es Mandelbrot rajzoló algoritmust tőle loptam), nekem LGB mutatta a csatornáját, valamelyik random péntek esti sörözés közben :-)
*** Speicherplatz zu klein