问题标签 [allegro5]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows-8 - 视觉工作室 2012 allegro 5 x64 链接器
我遇到了与无法在 MSVC 2012 中构建 Allegro 5 解决方案相同的问题,但我的项目是 x64 并且我有 Win8 x64 专业版。当我转向 Win32 时,一切都很好。但是当转向 x64 我有这个:
有任何想法吗?我的项目必须是 x64 ...
c++ - Allegro 5 绘图到缓冲区
我正在制作一个程序,该程序将绘制在屏幕上弹跳的球。我目前正在研究绘制球的部分。
我的代码包括以下内容:
- BallEngine 类 - 管理所有 Allegro 函数/对象
- BallManager 类 - 管理所有的球
- 球类 - 保存有关球的信息
- main.cpp - 游戏循环等。
球引擎.h:
球引擎.cpp:
球管理器.h:
BallManager.cpp:
球.h:
球.cpp:
主.cpp:
我很难画球。在 allegro 4 中,您将传递一个要在其上绘制的缓冲区,然后将缓冲区绘制到屏幕上。使用上面的代码,我在 Ball 类的 draw() 函数中遇到错误。
错误显示:调试错误!R6010 -abort() 已被调用
我还从命令提示符处获得了一些信息:断言失败:addon_initialized,文件 allegro-git\addons\primitives\primitives.c,第 79 行
我想我收到了一个错误,因为绘图函数没有任何地方可以绘制,因为显示是在 BallEngine 类中创建的,但是我该如何解决呢?
c++ - 无法在 Allegro 中加载字体
我在 C++ 和 Visual Studio 2012 中使用 Allegro 5,但由于某种原因,我无法使用 Allegro wiki 中的示例代码加载字体:
我已经尝试将字体文件放置在我的 Visual Studio 项目中的每个可行目录中,以及 .exe 所在的目录中(正如其他几个线程所建议的那样)。我还尝试将它的副本放在 C: 驱动器上并使用完全限定的路径调用它:我尝试过C:\\pirulen.ttf
,C:/pirulen.ttf
但都没有奏效。我也尝试将它添加到我项目中的“资源文件”文件夹中,但这也不起作用。
关于可能发生的事情有什么建议吗?
谢谢。
c - Allegro5 with C - 制作程序
我正在使用 Allegro5 制作程序,但我还不熟悉这个库。我只想知道这个库有什么可能。
我必须做“图像颜色校正”(对比度、亮度等),我想:
- 制作按钮(就像在普通的 Windows 程序中一样),
-滚动条,
-文件加载器 - 我点击按钮,我可以跳过我硬盘上的目录并选择我想在我的程序中编辑的图像文件
- 在快板窗口中打开窗口(用于预览或其他内容)
等等
我想尽可能多地使用 OOP(我知道,它是 C)。是否可以在 C 和 Allegro5 中完成所有这些工作,或者我还需要 Windows 库和其他东西?
提前感谢您的回复。:)
c++ - 在 win8 上使用 Visual Studio 2012 设置 allegro5
我按照参考手册中的步骤操作,当我运行我的项目时,我收到有关未找到文件的错误。
这就是我所做的。
- 我下载了 MSVC 11 的 bin。
- 将其解压缩到 C:\allegro (bin include 和 lib 目录在里面)
- 在属性下的一个新项目中,我按照他们的指示将 5.0.x 替换为 5.0.8
他们的方向如下:
在 Configuration Properties->C/C++->General 下,在 Additional Include Directories 中输入 c:\allegro\include。
在 Configuration Properties->Linker->General 下,在 Additional Library Directories 中输入 c:\allegro\lib。
在 Configuration Properties->Linker->Input 下,将 allegro-5.0.x-monolith-md-debug.lib 附加到 Additional Dependencies。
在 Configuration Properties->Debugging 下,在 Environment 中输入 PATH=c:\allegro\bin;%PATH%。
也许我附加了错误的文件或没有正确执行?
属性->链接器->输入附加依赖 kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32 .lib;odbccp32.lib;%(AdditionalDependencies);allegro-5.0.8-monolith-md-debug.lib
他们拥有的代码示例是:
以及它产生的错误:
错误 1 错误 C1083:无法打开包含文件:'stdio.h':没有这样的文件或目录 c:\users\robert\documents\visual studio 2012\projects\allegro-01\allegro-01\main.cpp 1 1 allegro -01 2 IntelliSense:无法打开源文件“io.h”c:\allegro\include\allegro5\platform\almsvc.h 19 1 allegro-01 3 IntelliSense:无法打开源文件“fcntl.h”c:\allegro\ include\allegro5\platform\almsvc.h 20 1 allegro-01 4 IntelliSense:无法打开源文件“direct.h” c:\allegro\include\allegro5\platform\almsvc.h 21 1 allegro-01 5 IntelliSense:无法打开源文件“malloc.h”c:\allegro\include\allegro5\platform\almsvc.h 22 1 allegro-01 6 IntelliSense:无法打开源文件“stdint.h”c:\allegro\include\allegro5\platform\astdint.h 30 4 allegro-01 7 IntelliSense:无法打开源文件“errno.h” c:\allegro\include\allegro5\base.h 23 4 allegro-01 8 IntelliSense:不能打开源文件“limits.h”c:\allegro\include\allegro5\base.h 29 7 allegro-01 9 IntelliSense:无法打开源文件“stdarg.h”c:\allegro\include\allegro5\base.h 34 4 allegro-01 10 IntelliSense:无法打开源文件“stddef.h”c:\allegro\include\allegro5\base.h 35 4 allegro-01 11 IntelliSense:无法打开源文件“stdlib.h”c:\allegro\ include\allegro5\base.h 36 4 allegro-01 12 IntelliSense:无法打开源文件“time.h” c:\allegro\include\allegro5\base.h 37 4 allegro-01 13 IntelliSense:无法打开源文件 "string.h" c:\allegro\include\allegro5\base.h 38 4 allegro-01 14 IntelliSense: 无法打开源文件 "sys/types.h" c:\allegro\include\allegro5\base .h 39 4 allegro-01 15 IntelliSense:标识符“uint32_t”未定义 c:\allegro\include\allegro5\base.h 77 1 allegro-01 16 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5 \utf8.h 57 1 allegro-01 17 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8.h 58 1 allegro-01 18 IntelliSense:标识符“int32_t”未定义 c:\allegro\include \allegro5\utf8.h 59 1 allegro-01 19 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8。h 66 1 allegro-01 20 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8.h 71 1 allegro-01 21 IntelliSense:标识符“va_list”未定义 c:\allegro\include\allegro5\ utf8.h 74 1 allegro-01 22 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8.h 93 1 allegro-01 23 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\ allegro5\utf8.h 98 1 allegro-01 24 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8.h 100 1 allegro-01 25 IntelliSense:标识符“int32_t”未定义 c:\allegro\ include\allegro5\utf8.h 134 1 allegro-01 26 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\utf8.h 135 1 allegro-01 27 IntelliSense:变量“al_ustr_new_from_utf16”可能未初始化 c:\allegro\include\allegro5\utf8.h 138 1 allegro-01 28 IntelliSense:标识符“uint16_t”未定义 c:\allegro\include\allegro5\utf8.h 140 1 allegro-01 29 IntelliSense:标识符“uint16_t”未定义 c:\allegro\include\allegro5\utf8.h 142 1 allegro-01 30 IntelliSense:标识符“ int64_t" 未定义 c:\allegro\include\allegro5\file.h 55 1 allegro-01 31 IntelliSense:标识符 "int64_t" 未定义 c:\allegro\include\allegro5\file.h 56 1 allegro-01 32 IntelliSense:标识符“int64_t”未定义 c:\allegro\include\allegro5\file.h 61 1 allegro-01 33 IntelliSense:标识符“int16_t" 未定义 c:\allegro\include\allegro5\file.h 66 1 allegro-01 34 IntelliSense:标识符 "int16_t" 未定义 c:\allegro\include\allegro5\file.h 67 1 allegro-01 35 IntelliSense:标识符“int16_t”未定义 c:\allegro\include\allegro5\file.h 68 1 allegro-01 36 IntelliSense:标识符“int16_t”未定义 c:\allegro\include\allegro5\file.h 69 1 allegro-01 37 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\file.h 70 1 allegro-01 38 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\file.h 71 1 allegro- 01 39 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\file.h 72 1 allegro-01 40 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\file.h 73 1 allegro-01 41 IntelliSense:无法打开源文件“assert.h” c:\allegro\include\allegro5\debug.h 22 1 allegro -01 42 IntelliSense:标识符“intptr_t”未定义 c:\allegro\include\allegro5\events.h 206 1 allegro-01 43 IntelliSense:标识符“intptr_t”未定义 c:\allegro\include\allegro5\events.h 207 1 allegro-01 44 IntelliSense:标识符“int64_t”未定义 c:\allegro\include\allegro5\timer.h 55 1 allegro-01 45 IntelliSense:标识符“int64_t”未定义 c:\allegro\include\allegro5\timer。 h 56 1 allegro-01 46 IntelliSense:标识符“int64_t”未定义 c:\allegro\include\allegro5\timer。h 57 1 allegro-01 47 IntelliSense:无法打开源文件“sys/types.h” c:\allegro\include\allegro5\fshook.h 23 4 allegro-01 48 IntelliSense:标识符“uint32_t”未定义 c:\allegro \include\allegro5\fshook.h 96 1 allegro-01 49 IntelliSense:标识符“time_t”未定义 c:\allegro\include\allegro5\fshook.h 97 1 allegro-01 50 IntelliSense:标识符“time_t”未定义 c: \allegro\include\allegro5\fshook.h 98 1 allegro-01 51 IntelliSense:标识符“time_t”未定义 c:\allegro\include\allegro5\fshook.h 99 1 allegro-01 52 IntelliSense:标识符“off_t”未定义c:\allegro\include\allegro5\fshook.h 100 1 allegro-01 53 IntelliSense:标识符“int32_t”未定义 c:\allegro\include\allegro5\fixed.h 30 9 allegro-01 54 IntelliSense:无法打开源文件“string.h”c:\Program Files (x86)\Windows Kits\8.0\Include\shared\guiddef.h 146 1 allegro-01 55 IntelliSense:无法打开源文件“ctype.h” c:\Program Files (x86)\Windows Kits\8.0\Include\um\winnt.h 31 1 allegro-01 56 IntelliSense:无法打开源文件“excpt .h" c:\Program Files (x86)\Windows Kits\8.0\Include\um\winnt.h 1240 1 allegro-01 57 IntelliSense:标识符“EXCEPTION_DISPOSITION”未定义 c:\Program Files (x86)\Windows Kits\ 8.0\Include\um\winnt.h 1245 1 allegro-01 58 IntelliSense:无法打开源文件“string.h”c:\Program Files (x86)\Windows Kits\8.0\Include\um\winnt.h 16534 1 allegro -01 59 智能感知:标识符“va_list”未定义 c:\Program Files (x86)\Windows Kits\8.0\Include\um\WinBase.h 3699 14 allegro-01 60 IntelliSense:标识符“va_list”未定义 c:\Program Files (x86)\ Windows Kits\8.0\Include\um\WinBase.h 3712 14 allegro-01 61 IntelliSense:无法打开源文件“stdarg.h”c:\Program Files (x86)\Windows Kits\8.0\Include\um\WinUser.h 51 1 allegro-01 62 IntelliSense:标识符“va_list”未定义 c:\Program Files (x86)\Windows Kits\8.0\Include\um\WinUser.h 278 10 allegro-01 63 IntelliSense:标识符“va_list”未定义 c :\Program Files (x86)\Windows Kits\8.0\Include\um\WinUser.h 285 10 allegro-01 64 IntelliSense:无法打开源文件“excpt.h”c:\Program Files (x86)\Windows Kits\8.0 \包括\共享\rpc。h 163 1 allegro-01 65 IntelliSense:无法打开源文件“stdlib.h” c:\Program Files (x86)\Windows Kits\8.0\Include\um\combaseapi.h 329 1 allegro-01 66 IntelliSense:无法打开源代码文件“excpt.h”c:\Program Files (x86)\Windows Kits\8.0\Include\um\Windows.h 160 1 allegro-01 67 IntelliSense:无法打开源文件“stdarg.h”c:\Program Files ( x86)\Windows Kits\8.0\Include\um\Windows.h 161 1 allegro-01 68 IntelliSense:无法打开源文件“stdio.h”c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01 \allegro-01\main.cpp 1 1 allegro-01 69 IntelliSense:标识符“atexit”未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 8 8 allegro-01 70 IntelliSense:标识符“fprintf" 未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 9 7 allegro-01 71 IntelliSense:标识符“stderr”未定义 c:\Users\Robert \Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 9 15 allegro-01 72 IntelliSense:标识符“fprintf”未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro -01\allegro-01\main.cpp 15 7 allegro-01 73 IntelliSense:标识符“stderr”未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 15 15 快板-01未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 9 15 allegro-01 72 IntelliSense:标识符“fprintf”未定义 c:\Users\Robert\Documents \Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 15 7 allegro-01 73 IntelliSense:标识符“stderr”未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01 \allegro-01\main.cpp 15 15 allegro-01未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 9 15 allegro-01 72 IntelliSense:标识符“fprintf”未定义 c:\Users\Robert\Documents \Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 15 7 allegro-01 73 IntelliSense:标识符“stderr”未定义 c:\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01 \allegro-01\main.cpp 15 15 allegro-01\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 15 15 allegro-01\Users\Robert\Documents\Visual Studio 2012\Projects\allegro-01\allegro-01\main.cpp 15 15 allegro-01
c++ - 编译 Allegro 5.0.8 - 静态链接 (Code::Blocks 12.11, MinGW 4.7.1, Windows 7)
在 Windows 7 上安装 Code::Blocks 12.11(分配有 MinGW 4.7.1)后,我尝试编译简单的 Allegro 5 示例。关于它的唯一(官方?)教程(有点旧):
http ://wiki.allegro.cc/index.php?title=Allegro_5_Tutorial
http://wiki.allegro.cc/index.php?title=Windows_Vista, _Code::Blocks_10.05_and_Allegro_5
问题一:
我找到了 allegro-5.0.8-mingw-4.5.0.7z。MinGW 4.7.1 有版本吗?
问题2:
错误:
mingw32-g++.exe:错误:无法识别的命令行选项“-static-libstdc++”
问题 3:
如果我删除链接选项 -static-libstdc++,则会出现另一个错误:
c:/program files (x86)/codeblocks/mingw/bin/../lib/gcc/mingw32/4.7.1/../../.. /../mingw32/bin/ld.exe:找不到-lgcc_eh
问题4:
liballegro-5.0.8-monolith-static-mt.aa 是所有 allegro .a 文件的单一替代品吗?它是否也包含 extern mingw .a 依赖项?找到所有这 30 个 .a 文件并配置正确顺序的“游戏玩法”是可怕的。它提醒反模式http://en.wikipedia.org/wiki/Sequential_coupling :)
感谢您的回答。
c++ - 如何让我的 TileSheet 换行?
我从一个关卡文件加载地图,这些文件只是与图块表中的图块相对应的数字。
这是关卡文件
这是解释它的代码
这就是它的外观 http://i.imgur.com/6W49eWf.jpg
好的,所以我的 Tilesheet 是 1000 x 200,它看起来像这样http://i.imgur.com/Y83zBxj.png
在地图文件中放入 20 或 40 时,如何使其环绕到 20 或 40?
TileSizeX 和 TileSizeY 也是 50
allegro - 在 xcode 中归档 allegro 程序
我一直试图让我的游戏在 xcode 中作为存档应用程序运行,但我根本无法让它运行。游戏在正常运行和配置文件模式下运行,只是在存档后才运行。我收到以下错误消息,这让我看起来好像根本没有 main 函数。
我也尝试使用框架构建应用程序无济于事。
这是我的构建设置
- 头文件搜索路径:/usr/local/include
- 库搜索路径:/usr/local/lib
- 用户标头搜索路径:“$(PROJECT_DIR)/..”、“$(BUILT_PRODUCTS_DIR)”
- 总是搜索用户路径:是
我在https://github.com/tmuntan1/allegro-example也有一个示例项目
谢谢您的帮助
编辑 1:
这是框架的错误消息
编辑 2:
我解决了我的问题,但我对解决方案并不满意。如果我去“为存档而构建”并在派生数据中找到它可以工作的版本。仅当我构建存档并通过管理器获取应用程序时,它才不起作用。
c++ - ALLEGRO 中的 al_draw_line() 失败
当我想用 画一条线时al_draw_line(100,100,400,400,al_map_rgb(255,255,0),5);
,我ALLEGRO_DISPLAY
的会自动关闭,这条线之后的语句不会执行。我的程序刚刚停止
c++ - Allegro 5 在调用 al_clear_to_color(ALLEGRO_COLOR) 时崩溃
我从 Allegro 5 开始,但很快我就陷入了我正在编写的第二个类似 hello-world 的程序中。经过一番调试,我得出结论,程序在调用函数时崩溃了al_clear_to_color(ALLEGRO_COLOR)
。我尝试过静态和动态链接快板,但问题仍然存在。我完全迷路了。
这是代码:
编辑:
换行
为线
声明
在循环开始之前,它确实可以工作,但是当函数崩溃时
叫做。
调试器返回消息:
读取 C:\Program Files (x86)\CodeBlocks\MinGW\bin\libstdc++-6.dll 的共享库符号时出错:
程序收到信号 SIGSEGV,分段错误。