mirror of
https://bitbucket.org/mfeemster/fractorium.git
synced 2025-07-12 03:04:51 -04:00
This is commit of Simon Detheridge's pull request "osx-opencl" with a few modifications.
-If we change OpenCLWrapper to capture build log errors, we don't need to manually concat them in RendererCL because the overridden ErrorReport() function already concatenates the errors from both classes. -Do not define T in OpenCL programs. We already have real_t to handle this. -Do keep the casting to real_t. However this should not be necessary because there is a command line option to do this automatically which we already use: -cl-single-precision-constant. The only reason we do this is because the Apple OpenCL compiler does not follow the standard and obviously ignores this option. Absolutely awful. -Fix a few improper casts in the CircleTrans1 and GlynnSim1 variations. -Add an automated OpenCL program build tester to EmberTester, as well as a cast checker.
This commit is contained in:
@ -528,7 +528,7 @@ public:
|
||||
return
|
||||
"void GlynnSim1Circle(__constant real_t* radius1, __constant real_t* thickness, __constant real_t* x1, __constant real_t* y1, uint2* mwc, real_t* x, real_t* y)\n"
|
||||
"{\n"
|
||||
" real_t r = *radius1 * (*thickness + (T(1.0) - *thickness) * MwcNext01(mwc));\n"
|
||||
" real_t r = *radius1 * (*thickness + ((real_t)(1.0) - *thickness) * MwcNext01(mwc));\n"
|
||||
" real_t phi = M_2PI * MwcNext01(mwc);\n"
|
||||
" real_t sinPhi = sin(phi);\n"
|
||||
" real_t cosPhi = cos(phi);\n"
|
||||
|
Reference in New Issue
Block a user