Allegro : Game Programming Library for C/C++
■ このスレッドは過去ログ倉庫に格納されています
>>5 SDLみたいな感じの色んなOSで動いて、WinAPIとかめんどうなの抜きで作れるゲーム用ライブラリみたいな感じ
>>6 繋がったよ?? DOS時代からのライブラリだよ。素性はいいけど、今では正直obsoleteじゃね? >>5,7
SDLと同じ位いろんな環境で動いて、
SDLよりライセンス的に自由。
あとSDLだとオプションのパッケージが
オールインワンで入ってるので便利。
日本語も問題ナシ
>>8
日本だととりあえずここが詳しい
http://gamdev.org/w/?%5B%5BAllegro%5D%5D
調べたところ無い。
SDLはexperimentalな奴がある これいいね 少し覚えればあとはちょちょいといける まじおすすめ >>17
set_gfx_modeを呼び直せば普通に出来る。
gfx_mode_selectを使ってもいいみたい。
ダイアログがダサイけど。 VC++2003でallegroを使ったプロジェクトをビルドしようとしたら、
mainCRTStartupがどうのこうのとリンカに怒られたので、
プロジェクトの設定でエントリポイントをmainCRTStartupに設定したらうまく通った。
これで良かったの? >>19
動いたならいいと思うが。
ちなみにmainの最後に、END_OF_MAIN();は
入れてる? とりあえずインストールしてみようと思ったけれどもwikiの
>で、ちまちまとバッチファイルを書いて実行。以下のようにすればたぶんOK。
辺りの説明がまったく出来ません…
誰か助けてくだし
>>21
bcc使ってないから間違ってるかもしれんけど、解凍して出来た
ディレクトリにmingw32-make.exeを放りこんで、下の三行を
コマンドプロンプトで順に打って行けばいいんじゃね?
set BCC32DIR=c:\borland\bcc55
fix.bat bcc32
mingw32-make.exe
(もしくはhoge.batに上の三行を書いて、同じディレクトリで
実行するとか)
SDLだと描画処理とイベント処理を切り分けられない
(描画が15fpsだとイベント処理もその頻度でしかハンドリングできない)
という問題があるけど、Allegroはそこらへんどうなん? インストールじゃないな…
環境変数の設定?が出来なくて導入できない いま見てみたらdirectx7が必要だって書いてある。
directxSDKはインストールしてある?
本家からdx70_min.zipをダウンロードしてインストールしてみたら?
bccをインストールしたとこに上書きでいいと思うけど。 うちは数年前に構築した環境でやり方忘れちゃってるけど
c:\borland\bcc55\include
にdirectxのd???.hを、
c:\borland\bcc55\include\allegroにアレグロの.hが全部ある。
inline、internal、platformのディレクトリもそこにある。
c:\borland\bcc55\libにdirectxのLIBもallegroのlibもすべてある。
手作業でインストールしたのかな・・・?
コンパイル用バッチファイル
echo off
set path="C:\borland\bcc55\Bin"
BCC32.EXE -4 -c -I"C:\borland\bcc55\Include" "test.cpp" >errlist.txt
if errorlevel 1 goto Error
echo コンパイル終了.
pause
ILINK32.EXE -L"C:\borland\bcc55\Lib" -L"C:\borland\bcc55\Lib\PSDK" c0w32.obj "test.obj","test.exe","test.map", alleg.lib winmm.lib import32.lib cw32.lib user32.lib d3dxof.lib
if errorlevel 1 goto Error
echo リンク終了.
pause
goto Fin
:Error
echo エラー発生!
:Fin
echo on
公式のサンプルはbccでコンパイルするにはallegro.hの前にstdlib.hが必要みたい。
#include <stdlib.h>
#include "allegro.h" 以下、二年くらい前の自分的メモ。アレグロのバージョンは今は420なので
読みかえてください。この通りしてうまくいかなくても責任もてません。
windowsMe での環境作成法です。
**************************
まず必要なものを揃えます
allegroライブラリのアーカイブ
all402_bin.zip
all403b2.zip
makeのアーカイブ
mak3791b.zip
bcc55はすでに以下のようにインストールされているものとします
c:\borland\bcc55\Bin
\Include
\Lib
:
c:\allegroを作り、
all402_bin.zip、all403b2.zip、mak3791b.zipを持ってきます。そこで展開。
c:\allegro\all402_bin\allegro\....
c:\allegro\all403b2.bin\allegro\....
エクスプローラで\allegroが同じになるように上書きコピーします
c:\allegro\allegro\....のようにします。
mak3791b.zipからmake.exeを取りだしてgmake.exeにリネーム。
c:\allegro\allegroに置きます。
(ファイル展開完了)
************************** (続き)
エクスプローラでc:\allegro\allegroの階層へ移動します。
fix.batを右クリック「プロパティ」を選択
「プログラム」タブのコマンドラインをC:\ALLEGRO\ALLEGRO\FIX.BATから
C:\ALLEGRO\ALLEGRO\FIX.BAT bcc32
とします(つまり、コマンドライン引数を与えます)
「適用」を押してプロパティを閉じます
fix.batをダブルクリックで実行します
「Configuring Allegro for Windows/BCC32...」と表示されます
以下の内容のバッチファイルを作ります
001.batとでもします。テキストエディタで作ってください
gmake
gmake install
001.batをダブルクリックで実行します
(dos窓になにやらいっぱい表示されると思います)
(環境構築完了)
************************** サンプルをコンパイルしてみます
c:\allegro\allegro\exampleへ移動。
以下の内容のバッチファイルを作成。名前は002.batとでもします
set path="C:\borland\bcc55\Bin"
bcc32 -I"C:\allegro\allegro\include;C:\borland\bcc55\Include" -L"C:\allegro\allegro\lib\bcc32;C:\borland\bcc55\Lib" -tW -O2 -DWIN32 -laa exalpha.c alleg.lib >err.txt
環境変数を使用するので、領域を多く取ります。まず、002.batを右クリック、プロパティを選択
「メモリ」タブを開き、「環境変数の初期サイズ」を「自動」から2048に変更します
「適用」をクリックしてプロパティを閉じます
002.batをダブルクリックでコンパイル、リンクを実行。
exalpha.exeが作成されたら成功。
実行を確認してください。「Alleglo」と表示します。
何かキーを押すとプログラムから出ます
サンプルの他のものもどんどんコンパイルできるはずです。002.batの
…….cの部分を書き換えれば他のサンプルもコンパイルできます
**************************
サンプルやツールをすべて一発でメイクできるはずなのですが、できませんでした。
以下のような、003.batを作り実行したのですが、動作しませんでした
set path="C:\borland\bcc55\Bin"
SET INCLUDE="C:\allegro\allegro\include;C:\borland\bcc55\Include"
SET LIB="C:\allegro\allegro\lib\bcc32;C:\borland\bcc55\Lib"
gmake @makefile.bcc
************************** たしかfix.batを利用するとC:\WINDOWSに勝手にdllをコピーするので
それが嫌なようでしたら手動でのインストールにしてはどうでしょう。
基本はコンパイル時にincludeとlibにパスを通して、
実行時にexeと同じ場所にdllを置くだけです。 bcc+allegro使ってるんだけど、
最新のall420をインストールしようとしたらできない・・・
DLLが作られないみたいなんです。
all403b2版なら以前インストールできている。
MAKEはmak3791b.zipというのをどこからか拾ってきてgmake.exe
にリネームして使ったみたい。前回インストールしたのは2005年6月・・・
WIKIでもBCCでビルド出来るのはall403になってるね。少し古いバージョンで我慢。
最新版はiniファイルを使えるようになったりしてるみたいだけど、
基本的にdirectx7程度の実力なのは変わらないし。 横入りスマソ。簡単に環境構築する方法。
--------------------------------------------
http://www.allegro.cc/files/
にそれぞれの環境のバイナリがあります。
Borland Builder
MinGW
Microsoft Visual C++ 6
Microsoft Visual C++ 7.0
Microsoft Visual C++ 7.1
Microsoft Visual C++ 8.0
Tools & Examples
目的の環境用のものと、Tool&Examplesをダウンロード。
以下VC++6.0の例
allegro-msvc6-4.2.0.zipとサンプルallegro-misc-4.2.0.zipをダウンロード。
c:\に展開。C:\allegro-msvc6-4.2.0
VC++起動。
プロジェクトを作成。WIN32アプリケーション。(コンソールではなく)
exconfig.cをプロジェクトに追加。
オプションでインクルード、ライブラリのパスを設定する
インクルード
C:\allegro-msvc6-4.2.0\include
C:\allegro-msvc6-4.2.0\include\allegro
ライブラリパス
C:\allegro-msvc6-4.2.0\lib リンクの設定で以下のライブラリを追加する
alld.lib alleg.lib allp.lib
以下のようになるはず。
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib
odbc32.lib odbccp32.lib alld.lib alleg.lib allp.lib /nologo
/subsystem:windows /incremental:yes
/pdb:"Debug/test001.pdb" /debug /machine:I386
/out:"Debug/test001.exe" /pdbtype:sept
ビルド。
Debugディレクトリにexeが出来てるはず。
実行。…のためにはALL..DLLへのパスを設定するか、パスの通った場所に
DLLを置く必要有り。この場合パスを設定したバッチファイルを利用。
(tst.bat)
path=C:\allegro-msvc6-4.2.0\bin
exconfig.exe
さらに、exconfig.cはexconfig.iniとmysha.pcxというファイルが必要なので
サンプルから取りだしてDebugに置いておく。
バッチファイルを実行、ネズミの画像が表示されればOK。
※私の場合、以前インストールしたallegroがvc++のディレクトリにべったりと
あったのでそちらを参照してしまい、最初ビルドがうまくいきませんでした。
公式のバッチファイルでビルドするやつはダメです。
vc++のディレクトリからヘッダとLIBを削除。でも日付と名前で区別できるので簡単でした。 >35
まさにそのconfigのがコンパイルできなくて最新のにしたかったんです。
前に私もbccの環境も作ったんですけど、そっちにも古いallegroがべったりと
イントールしてあります・・・・・
本当はc:\usrにインストールするとか、簡単に最新のに更新する方法とか
良い方法が有りそうなんですけど、私のレベルではちょっとわかりません。 保守ついでに。
公式にもでてるけど、Dev-C++でサポートされたとか何とか
書きかけで送信申し訳ない。
Dev-C++の4.9.9.2をインストールして、
ソフト上でアップデートすれば簡単に4.2とか
(他のpngとかのライブラリも)導入できるみたい。
Mingwをパッケージしてるバージョンもあるから初心者さんにもオススメ。
3月のニュースだけどさ。
見て導入してみたけど、Allegro softwareのテンプレートも出してくれるし親切だよ。
なんで右上の「閉じる」ボタンが無いのかは理解に苦しむけど。 初心者なんで教えて。
main.c一つだけコンパイルするには
g++ main.c -o out.exe -O3 -Wall -lalleg -s
でいいじゃないですか?
でも、複数の.cファイルがある場合はどうすればいいんですか?
例) main.c bullet.c input.c setup.c tank.cのように
g++ main.c bullet.c input.c setup.c tank.c -o out.exe -O3 -Wall -lalleg -s
ってやってもout.exeが作成されないっす。
ベテランの方、教えてください。 >>41
ベテランじゃないけど、こんな感じで個々のソースファイルをコンパイルして
オブジェクトファイル(*.o)を作って
gcc -c -Wall main.c
gcc -c -Wall bullte.c
gcc -c -Wall input.c
gcc -c -Wall setup.c
gcc -c -Wall tank.c
その後に、ライブラリと一緒にまとめてリンクする
gcc main.o bullet.o input.o setup.o tank.o -o out.exe -O3 -Wall -lalleg -s
いちいち毎回こんなもん打ち込むのメンドクサイと思うだろうから、
makeっていう自動化プログラムの使い方を調べてみると幸せになれるかも。 >>42
出来たーっ!
makeの使い方は先週読んだんだけど
自分で作るのはちょっと気が引ける。
地道に打ち込みます。
本当に本当に感謝感激!
ありがd! >>40
試してみた。インストールがお手軽で良いっすね。
閉じるボタンはset_close_button_callbackを呼んでおけば普通に使えたですよ
ソースの文字コード変換でハマった…けどAllegroとは関係ないなorz 検索してもハウツーサイトがないみたいなんで質問します。
MinGWをDevC++を介してAllegro使う方法教えてください。
三つとも無事にインストール出来てて
MinGW(よく分からんですがMSYS)からも
コマンドラインからもAllegroを実行することは出来ます
(つまりpathは通ってます)。
DevC++は使い始めてかれこれ半年は経ちます。
コンパイルすると
makecolがないだのtextprintfがないだのと
Linker errorを食らってしまってたんですが
DevC++のProject→Project Options→ParameterタブのLinkerに
MinGWのliballeg.aとlibaldat.aを追加したらコンパイルは出来るようになりました。
ただ、黒い窓が一瞬開いて終わりです
(手動でやればマップが表示されるんですが)。
どなたかご指導願います…。 ■ このスレッドは過去ログ倉庫に格納されています