zial nie som programator a ani programator teoretik takze taketo detailne diskusie nedokazem dalej rozvyjat..
pokial viem tak sa konvertuje vsetko RGB ktore je na vstupe, pocita sa v spektre a potom sa vystup zase konvertuje na RGB aby sa dal zobrazit (presnu pipeline ti ale nepoviem)
kedze sa jedna o simulator svetla tak pocitanie v RGB by bolo velmi kratkozrake a postacuje iba renderom 'klasickej konstrukcie'
pokial to chapem spravne tak ano je to podobny proces ako konvertovat RGB na HSV a pod, ale s tym rozdielom ze v spektre je vacsie mnozstvo odtienov tak preto nemoze byt ta normala dostana zo spektra totozna s normalou dostanou z RGB a nastane tam nejaka odchylka
mozno by sa dal tento problem riesit nejakym sub-enginom na RGB ktory by riesil len vyhodnocovanie normal z normalmap.. ale asi by to nebolo vonco, pridali by sa komplikacie a mozno aj dlhsi RT, ktovie, viem len ze vyvojari velmi oslavovali ked sa zbavili ostatkov RGB v jadre luxu
pre upresnenie lux neni postaveny na openGL (iba GUI - teda framebuffer a dokonca aj tam sa da openGL vypnut pri nejakych zlych ovladacoch a pod.)
je to normalne pisane v C/C++
momentalne sa vyvyja komponent (kniznica) luxrays ktora umoznuje akcelerovat raytracing cez openCL, luxrays sa dokonca da pouzit aj v inych rendereroch (dufam ze ked to bude stabilne uvidime implementaciu pre blender internal renderer)
inac z luxrender wiki:
Citace:
Colour handling
* Spectra (used throughout the render engine core)
* CIE XYZ (intermediate, useable from API and for XYZ output formats)
* RGB(A) (used for colour definitions in scene file format/API and RGB(A) image output.)