Commit Graph

16 Commits

Author SHA1 Message Date
MitchellHansen
e1080baab0 opencl has no rand, SO rand method to make fog a little better 2016-09-05 00:24:26 -07:00
MitchellHansen
6f5d2b2f6f Changed to non branching algo, sped up a good 30-50 ms at the current max
ray dist. Also changed bounds checking a little, not sure if it's faster
2016-09-04 23:59:39 -07:00
MitchellHansen
160756186d mouse and camera movement work, stress testing. Can actually handle an
impressive amount of resolution and voxel space for 0 optimization!
2016-09-03 21:13:03 -07:00
MitchellHansen
f487895f9f that was a pain. Got it working on windows again. MSVC was being really
picky about a few errors. Good thing though, I'm not really sure why
clang + osx let me be that lax with memory
2016-09-03 19:23:50 -07:00
9c99f9edd0 some tweaks, switching to windows for the weekend 2016-09-03 17:46:48 -07:00
cf607382a9 WORKING! Awesome! It now casts fully inside the gpu,
context is then switched to gl and then rendered via sfml.
It has no loop, no controls, and the aspect ratio is off,
but holy hell it works!
2016-09-01 22:45:48 -07:00
c565d0facc Refactored the cl init stuff, added the rest of the image handling in.
The test kernel now draws a few pixels to the screen. Pretty much set up nowto start writing the raycaster
2016-09-01 21:35:08 -07:00
a7234675cb Continuing on adding argument handling.
Added a small sample texture and sprite which can be handed over to either gl or cl and then handed back. It can then be rendered.
Changed to just an array of floats for the view matrix
2016-08-31 21:47:56 -07:00
11146a6551 Getting things passed over to cl. No vector4 datatype in sfml,
and cl only passes by even numbers of vectors. Update to 2.4? or
make my own sf::Vector4?
2016-08-30 20:43:35 -07:00
0b9010b007 little tweaks, tomorrow/this week will hook up the arguments and data loading 2016-08-29 21:31:04 -07:00
5d9d3c4f4d Ah, I'm a dummy. Forgot to initialize the command queue! No wonder why it
was invalid...
2016-08-29 20:29:56 -07:00
c3902c2f6e Added args and buffer handling, but now clEnqueueNDRangeKernel is failing
with the error invalid command queue. Haven't seen that one before, and
cursory google suggests it's a problem with MBP's. Fun! I'll keep taking
a look, and I'll try it on my windows machine here soon
2016-08-29 18:51:46 -07:00
0c70c24a52 Switched names, thinking about how to do kernel args, and buffers.
Need to do a bit more reading on how to set up interop.
Also need to figure out the buffer thing for regular primative buffers, and also image buffers
2016-08-28 22:40:29 -07:00
5dea2494a0 Large amount done. OpenCL is almost completely abstracted out to the class
from init to kernel compilation. Next will be getting buffer handling, executing, and reading done.
Changed the kernel to a more minimal example.
Added a jump table for error codes and an assert function for error checking.
Added a routine to compare all the available cl devices and platforms, chooses the high clock of either the GPU or CPU.
2016-08-15 00:07:30 -07:00
MitchellHansen
edd8075afb Added a quick printout of the hardware info. Running into a problem choosing between platforms, going to abstract CL out into it's own class and hide all that logic 2016-08-14 00:03:44 -07:00
d2b79ceec3 Added a compilation routine, probably will abstract all this out into
it's own class / function. Added a small kernel that I got from a tutorial
to test the compilers error codes. Added a small notes file with error
codes. Added some error checking for the error codes
2016-08-11 21:39:06 -07:00