SDL2_gfx安装和USE - Mac OS X

时间:2016-10-02 12:54:29

标签: xcode macos sdl sdl-2 gfx

我已经尝试了大约6个小时......在 Xcode 8.0 的项目中使用SDL2_gfx库。

我现在就告诉你,我是所有这些终端命令的完全新手,包括库和东西。

我设法使用SDL2,因为有一个.framework,但SDL2_gfx只是一个带有.a,.dylib,.h和一个神秘的.json的文件夹。

我已经通过自制安装了没有问题,但现在,如何使用它来制作项目?

在构建阶段和构建设置中: 我尝试通过“Link Binary With Libraries”链接.a和.dylib, 我在“搜索路径”的“标题搜索路径”中添加了标题路径, 我试过直接将.h添加到我的项目中, 而且我完全不知道在“其他链接器标志”中放入什么,正如它在许多答案中提出的那样。

每当我尝试使用函数时,我都会收到非常简单的错误“没有匹配的调用函数...”。但我这样做的方式和互联网上的一些例子一样,我查了.h,功能确实存在......

请帮助T_T

编辑: 我设法找到了明显被识别的功能:

Sint16 circleR = 100;
Sint16 circleX = 300;
Sint16 circleY = 300;

int result = filledCircleColor(gRenderer, circleX, circleY, circleR, 0xFF0000FF);
        std::cout << "draw circle result " << result << std::endl;

int a = pixelRGBA(gRenderer, circleR, circleR, 0xFF, 0x00, 0x00, 0xFF);
        std::cout << "draw pixel result " << a << std::end;

但结果是-1,这意味着它无效。 仍然无法弄明白...... 我想我没有正确使用它们,但我在互联网上找不到任何不同的例子

1 个答案:

答案 0 :(得分:0)

我想我看到了你的问题:你正在使用RENDERER作为第一个参数。函数头需要一个SURFACE:

http://www.ferzkopp.net/Software/SDL_gfx-2.0/Docs/html/_s_d_l__gfx_primitives_8h.html#a4f7b717b958ef39bfc8c958476dd0de1

明确将函数定义为:

SDL_GFXPRIMITIVES_SCOPE int filledCircleColor   (   SDL_Surface *   dst,
Sint16  x,
Sint16  y,
Sint16  rad,
Uint32  color 
)