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っていう自動化プログラムの使い方を調べてみると幸せになれるかも。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる