haha. I'll try CodeXL, and printf works with GPUs???
Thanks! It'll be nice if you can (when you're near a PC with codes) look closer to what I found about the codes. My latest plan is:Dade wrote: Sun Jul 14, 2019 3:13 pm The Update() part is used to (optionally) update the caustic cache during the rendering. You can ignore it because it shouldn't be affected by what you are doing.
1. Still have only one pgi cache (instead of one for each radiance group)
2. Change `Spectrum` into `vector<Spectrum>` for `Photon`, `RadiancePhoton` and `RadiancePhotonEntry`
3. Make sure every photon starts with correct initial vector<Spectrum> in`TracePhotonsThread::TracePhotonPath`
4. Fix every other place that doesn't compile (well, I think it'll include other render engines :-S)
5. Add a test to make sure the beauty channel doesn't change with or without my changes, and that sum of two radiance group channels equal to the beauty before denoising
6. [OCL] Change Photon/RadiancePhoton definitions in pgi_types.cl and changing CPU->GPU transfer codes
7. [OCL] Change pgi related functions in pathoclbase_kernels_micro.cl and probably other files
8. [OCL] Add a test for OCL
Does this sounds good? I hope I can find some time this week to start coding, and try to finish 1~5 this month. So please, if you find anything wrong/suspicious/dangerous, just tell me.
BTW: I should probably check other engines (like tiled, hybrid etc) when I finish all 1~8, but I need to make PathCPU/PathOCL work first
