是否有适合C编程的SDL2.0的好教程? (不是C ++)

时间:2015-07-24 16:01:42

标签: c sdl-2

我是一名学习C编程的学生(目前)。

在我给出的主题中,我必须创建某种类型的Wolfenstein3d克隆(因此是项目的名称," wolf3d")。为了完成这个项目,我允许使用我学校创建的图形库或SDL。我选择了SDL,因为它使用起来更复杂,因此更有趣。

不幸的是,我无法在C中找到任何SDL2教程。甚至SDL wiki链接都是面向C ++的。

如果你能帮助我在C中找到SDL2的好教程,我将不胜感激(尽管我知道该网站的政策是"使用搜索引擎,我做了,但是我说,到目前为止我没有找到任何东西。)

我想我可能需要解释一下我学校的一些事情,以免给你的印象是我要求你帮忙以便作弊:

  

为什么不在课堂笔记中查看?

     

因为我没有得到任何。我给出了要做的项目,有时还有一些提示,因为我应该如何做。只要我理解我所做的事情,我就应该使用谷歌或任何手段。

这就是它。我也没有找到关于"如何使用SDL2.0"创建wolfenstein3d克隆的教程,而只是关于如何使用SDL2本身的教程,从创建窗口到绘制点。

1 个答案:

答案 0 :(得分:15)

如果我是你,我会使用SDL页面上提供的教程:

http://wiki.libsdl.org/Tutorials

结合此处的API文档:

http://wiki.libsdl.org/APIByCategory

API是用C语言编写的,所以尽管教程可能是用C ++编写的,但您应该能够通过参考API文档并理解示例程序的功能结构来学习本教程。

作为一个有抱负的开发人员,您应该能够理解足够的C ++语法,以了解在C中开发类似应用程序所需的概念方式。需要以相同的方式进行API调用。

从其中一个链接教程(用C ++表示)中考虑此页面:

http://lazyfoo.net/tutorials/SDL/01_hello_SDL/index2.php

这些代码块中的任何一个对您来说真的很陌生吗?它们不应该是,它们是用C语言编写的。如果您在阅读本教程时遇到一些您不熟悉的表达式,请参考API。如果你仍然难倒,那么也许是时候在StackOverflow上发帖了。该特定教程可能完全用C语言编写,我不确定我是否只阅读了前几页。

另请注意,SDL API docs中的函数文档提供了C和C ++示例代码:

http://wiki.libsdl.org/SDL_Init

在这里,您可以在C和C ++中交叉引用两个相同的程序,并开始学习如何在两种语言中执行相同的操作。从那里开始,您可以开始解释C ++教程以进行高级功能操作,并将其转换为C而不是仅复制代码示例。通过这个过程,您将学到更多东西。

你自己承认,你决定走复杂的路线。你应该准备在这个过程中付出一些努力!