OpenGL and OpenCL are NOT related! (Committed here are some scons fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4349 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
ffe12ec752
commit
4499444a86
|
@ -110,6 +110,7 @@ vars.AddVariables(
|
|||
BoolVariable('noao', 'Build without AO', False),
|
||||
BoolVariable('wxgl', 'Set For Building with WX GL libs (WIP)', False),
|
||||
BoolVariable('jittest', 'temp don\'t use (WIP)', False),
|
||||
BoolVariable('opencl', 'Build with OpenCL', False),
|
||||
BoolVariable('nojit', 'Remove entire jit cores', False),
|
||||
EnumVariable('flavor', 'Choose a build flavor', 'release',
|
||||
allowed_values = ('release', 'devel', 'debug', 'fastlog', 'prof'),
|
||||
|
@ -240,9 +241,6 @@ if sys.platform == 'darwin':
|
|||
|
||||
env['HAVE_SDL'] = conf.CheckSDL('1.0.0')
|
||||
|
||||
# OpenCL
|
||||
env['HAVE_OPENCL'] = conf.CheckPKG('opencl')
|
||||
|
||||
# Bluetooth for wii support
|
||||
env['HAVE_BLUEZ'] = conf.CheckPKG('bluez')
|
||||
|
||||
|
@ -257,6 +255,11 @@ else:
|
|||
env['HAVE_OPENAL'] = conf.CheckPKG('openal')
|
||||
env['HAVE_ALSA'] = conf.CheckPKG('alsa')
|
||||
|
||||
# OpenCL
|
||||
if env['opencl']:
|
||||
env['HAVE_OPENCL'] = conf.CheckPKG('opencl')
|
||||
else:
|
||||
env['HAVE_OPENCL'] = 0
|
||||
|
||||
if sys.platform != 'darwin':
|
||||
# needed for mic
|
||||
|
|
|
@ -46,21 +46,24 @@ struct sDecoders
|
|||
cl_kernel kernel; // compute kernel
|
||||
const char **cKernel;
|
||||
};
|
||||
const char *Kernel = "\n" \
|
||||
"__kernel void Decode( __local unsigned char *dst, __local const unsigned char *src, \n" \
|
||||
" int width, int height) \n" \
|
||||
" int id = get_global_id(0); \n" \
|
||||
" for (int xy = 0; xy < height*width; xy += 4)"
|
||||
" for (int iy = 0; iy < 4; iy++, src += 8)"
|
||||
" {"
|
||||
" u16 *ptr = (u16 *)dst + ((xy / width) + iy) * width + (xy % width);"
|
||||
" u16 *s = (u16 *)src;"
|
||||
" for(int j = 0; j < 4; j++)"
|
||||
" *ptr++ = Common::swap16(*s++);"
|
||||
" }" \
|
||||
const char *Kernel = " \
|
||||
__kernel void Decode(__local unsigned char *dst, \
|
||||
__local const unsigned char *src, \
|
||||
int width, int height) \
|
||||
{ \
|
||||
int id = get_global_id(0); \
|
||||
for (int xy = 0; xy < height*width; xy += 4) \
|
||||
for (int iy = 0; iy < 4; iy++, src += 8) { \
|
||||
u16 *ptr = (u16 *)dst + ((xy / width) + iy) * \
|
||||
width + (xy % width); \
|
||||
u16 *s = (u16 *)src; \
|
||||
for(int j = 0; j < 4; j++) \
|
||||
*ptr++ = Common::swap16(*s++); \
|
||||
}
|
||||
}";
|
||||
|
||||
sDecoders Decoders[] = { {NULL, NULL, &Kernel},
|
||||
};
|
||||
|
||||
bool Inited = false;
|
||||
|
||||
// TODO: Deinit (clRelease...)
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
#include "CPUDetect.h"
|
||||
#include "TextureDecoder.h"
|
||||
#ifdef HAVE_OPENCL
|
||||
#if defined(HAVE_OPENCL) && HAVE_OPENCL
|
||||
#include "OpenCL/TextureDecoder.h"
|
||||
#endif
|
||||
|
||||
|
@ -581,11 +581,11 @@ void TexDecoder_SetTexFmtOverlayOptions(bool enable, bool center)
|
|||
|
||||
PC_TexFormat TexDecoder_Decode(u8 *dst, const u8 *src, int width, int height, int texformat, int tlutaddr, int tlutfmt)
|
||||
{
|
||||
#ifdef HAVE_OPENCL
|
||||
#if defined(HAVE_OPENCL) && HAVE_OPENCL
|
||||
PC_TexFormat retval = TexDecoder_Decode_OpenCL(dst, src, width, height, texformat, tlutaddr, tlutfmt);
|
||||
#else
|
||||
#else
|
||||
PC_TexFormat retval = TexDecoder_Decode_real(dst,src,width,height,texformat,tlutaddr,tlutfmt);
|
||||
#endif
|
||||
#endif
|
||||
if ((!TexFmt_Overlay_Enable)|| (retval == PC_TEX_FMT_NONE))
|
||||
return retval;
|
||||
|
||||
|
|
Loading…
Reference in New Issue