Commit Graph

91 Commits

Author SHA1 Message Date
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
ce2623f302 cl wrapper, clapper, hah 2016-08-14 16:51:31 -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
3c9b39f682 added the final kernel create function, moved around includes
Next on the plate is either, abstract the cl routine, or
begin digging into creating the kernel
2016-08-11 21:48:37 -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
49817f94b7 Had a linking problem in the CMakeLists, fixed.
Added a test file to check for cl/gl interop support & supported cl version
Finished CL setup up to the creation of the command queue
2016-08-11 20:25:43 -07:00
bc093ef4e4 Cleaned up the cmake file. Imports SFML, CL, and GL now.
But I'm not sure how well it will work on windows so I need
to test that out. Also added a stack overflow snippet to
check your compute devices and give their opencl version
2016-08-09 18:31:02 -07:00
98be74d0f4 Merge branch 'master' of https://github.com/mitchellhansen/voxel-raycaster 2016-08-08 22:35:45 -07:00
8f809f5f70 Starting on OpenCL, got cmake to link it correctly, and started on
a minimal example
2016-08-08 22:33:47 -07:00
Mitchell
c26b765a8f Update README.md 2016-08-08 21:37:33 -07:00
Mitchell
d38537a0a6 Delete vcs.xml 2016-08-08 21:37:05 -07:00
bf45af9bab Added the SFML vector class. Need to extend it to have
the vector operations I want
 Changes to be committed:
	modified:   CMakeLists.txt
	modified:   README.md
	renamed:    src/Curses.h -> include/Curses.h
	new file:   include/Vector3.h
	new file:   src/Vector3.cpp
2016-08-08 15:39:36 -07:00
MitchellHansen
c5858bca3e implimented my curses doodad to show that 3d works in ascii too.
Added camera movement with the mouse, but I need to change how it
works
2016-08-06 11:08:05 -07:00
c431d7452a Lighting, testing voxel generation 2016-08-06 00:50:48 -07:00
14987e3ba7 There we go! The raycaster now has a camera that renders without distortion and can be pitched, yawed, and moved on the XYZ axis. I'm not sure now if I want to: Add lighting, improve performance, or start working on porting it to OpenCL 2016-08-03 22:29:31 -07:00
Mitchell
7829316625 Delete CMakeCXXCompilerId.cpp 2016-08-03 16:36:11 -07:00
Mitchell
5c55dcf72d Update README.md 2016-08-02 23:21:28 -07:00
2b7dceee1b Moved the view plane calc to the constructor, cleaned up old code. Added / removed relevant comments 2016-08-02 22:40:55 -07:00
1de9c6dd35 Ahh! It works!! The camera is great now, it yaws and pitches perfectly, just need to limit it to 180 -> -180 on the pitch. There is still a problem when viewing in the negative angles, and as you move the camera closer to 0 things get weird and distorted. But the transfer over to a spherical camera point and a cartesian view plane worked fantastically 2016-08-02 22:26:56 -07:00
d609ed695a Going to need to get rid of the spherical camera 2016-08-01 23:32:25 -07:00
c3be6e2240 Alright, that little change fixed some of the negative coord problems, still have some really weird warping though. 2016-08-01 20:29:11 -07:00
MitchellHansen
eb889f9937 added header to play nice with macos 2016-07-31 17:13:16 -07:00
MitchellHansen
3deb3a2b08 alright, tried a different method of assigning voxel step directions and I
think it's working. The 3 negative walls are still very flat, and the
lower XYZ numbers still distort the viewport
2016-07-31 17:00:18 -07:00
MitchellHansen
f1c84c85b5 So it's rendering pretty much perfectly in the XYZ+ range but things break
down when I start hitting negative values. I have a feeling this is going
to be a lot of trial and error. Oh well
2016-07-31 16:31:26 -07:00
MitchellHansen
0b8cd9a194 things are casting now and sfml is rendering the way I want it to.
The voxel stepping is still all messed up, and it seems that there is
some data corruption on the map that I'll need to dig into
2016-07-31 13:52:22 -07:00
MitchellHansen
1553b5da2c remove a cmake file, add gitignore for the cmake files 2016-07-31 01:06:23 -07:00
MitchellHansen
2b46bef923 Basic render loop is taking shape. Digging back into the
raycasting will be slightly annoying
2016-07-31 01:01:01 -07:00
MitchellHansen
37ef472f61 More work done on the ray 2016-07-31 00:01:50 -07:00
MitchellHansen
4432c0338b added the map, switched branches 2016-07-30 23:05:59 -07:00
Mitchell Hansen
624d2771ac Don't know what is in this one 2016-07-30 20:32:15 -07:00
Mitchell
45343a2e97 Delete .DS_Store 2016-07-21 13:48:41 -07:00
Mitchell
371eb22cae Delete .DS_Store 2016-07-21 13:48:31 -07:00
Mitchell Hansen
797738206d Added a simple FPS counter and a place for assets 2016-07-20 23:09:01 -07:00
Mitchell Hansen
f6574d8bdc Stole a .gitignore from SO 2016-07-20 22:22:37 -07:00
Mitchell Hansen
07885a2b86 Ported over the 'fix your timestep' game loop with the nifty C++11 chrono stuff 2016-07-20 22:17:19 -07:00
Mitchell
030dbc5997 Create README.md 2016-07-17 22:11:15 -07:00
Mitchell Hansen
921c5b3266 Added root question for CMake on windows 2016-07-17 21:29:31 -07:00
Mitchell Hansen
12a33740f9 init 2016-07-17 20:41:38 -07:00