X



SDL=Simple DirectMedia Layerでゲームだ
■ このスレッドは過去ログ倉庫に格納されています
0116114
垢版 |
05/01/19 00:28:16
>>115
トンクス。
おとなしくポリゴンにテクスチャを貼り付けます。
0117デフォルトの名無しさん
垢版 |
05/01/24 05:32:08
動画再生(aviやmpgなど)したいのですが何か仕組みは用意されていますか?
0118デフォルトの名無しさん
垢版 |
05/01/24 14:17:08
mpegはsmpegを使うのが一般的。
aviは残念ながら、これいったものがない。
UNIX(like)なら、avifileというライブラリを使う方法がある。
サンプルはONScripterにある。
邪道だがmplayerで再生するのが楽(mpegもこれでいけるが…)。
0120117
垢版 |
05/01/25 09:25:26
>>118
>>119
ありがとうございます。途方に暮れてたのですがおかげさまで足がかりになりました。
0123デフォルトの名無しさん
垢版 |
05/01/28 11:59:46
アレグロのインストール方法教えて!
0125Rubyist!
垢版 |
05/01/28 17:50:52
screenとか、fontとか、mouse_bとか、desktop_paletteとか、key[]とか、いかにもなグローバル変数がめったやたらとある。
0126デフォルトの名無しさん
垢版 |
05/01/29 05:36:19
SDLで(ここSDLのスレですよね?)メニューを作りたいです。
ファイルとか編集とかがプルダウンメニューになってるアレです。
SDLならでは冴えたやり方は用意されてるでしょうか?
0127Rubyist!
垢版 |
05/01/29 05:52:25
・Paraguiを使う
http://www.paragui.org/
- XMLからの構成、unicodeによる日本語表示、スキンに対応。
- sdl_image,Freetype,libsigc++2やexpat,physicsfsなど依存する
- SDL利用のGUIライブラリとしては良い方。参考までに
http://wgui.sourceforge.net/
http://freshmeat.net/projects/px-gui/
http://aedgui.sourceforge.net/
http://agar.csoft.org/index.html.en
http://www.libsdl.org/projects/GUIlib/
http://libuta.sourceforge.net/
http://www.newimage.com/~rhk/SDL_gui/
http://www.beatforce.org/index.php
- サポートされているウィジェットの数は限られているから注意。
Menu,Label,Button,Radio,Checkbox,Messageboxあたり。

・SDLのウィンドウをgtk+あたりでラップしてやる。
- GtkSDLあたりで調べればよい
- windows上ではwindibモードにする必要がある。
- 正規にサポートされた方法ではない
0128Rubyist!
垢版 |
05/01/29 05:54:44
・大した手間じゃないから自分で書く
0135デフォルトの名無しさん
垢版 |
05/01/31 15:01:59
SDLをC++(クラスを使ったオブジェクト指向的なやり方)で書くのはありですか?
・・・いや、できるならやってみたいだけなんですけど。
0139デフォルトの名無しさん
垢版 |
05/01/31 23:44:48
>>136
コンパイラはBCC使ってます。

>>138
SDLってもともとオブジェクト指向風なんですか?
初耳です。
というかどの辺がですか?
巷で見かけるソースを見た限りだと、どうにもCみたいだったので・・・。
0140デフォルトの名無しさん
垢版 |
05/01/31 23:50:05
>>139
どうも勘違いがあるようだが、
オブジェクト指向とは言語に付属する構文なのではなくて、言語の"構文"とは別の次元の"パラダイム"と呼ばれるものの一つです。
要するに、"考え方"というもの。
だから、オブジェクト指向を銘打っていない言語でもオブジェクト指向プログラミング(OOP)は可能です。
当然CでもOOPは可能。
0142デフォルトの名無しさん
垢版 |
05/02/01 01:55:55
>>140
しかしながら、Cではそれっぽくはできても、完全には不可能なのでは?
例えばカプセル化とかオーバーロード、あるいは継承とか。
あまり関係ありませんが、とある文献で
「C++はCにオブジェクト指向の皮をかぶせたようなものだ」
と書いてあるのを見たことがあるけど、それはそうだよなと思っています。
・・・漏れが未だ完全に理解できていないということか。

>>141
むしろいつもそんなことをやっています。
iostream.hなんて使わないし。
0143Rubyist!
垢版 |
05/02/01 02:06:58
スレ違いだからそれ以上は余所でやってくれ。
初心者スレとか。
0144デフォルトの名無しさん
垢版 |
05/02/01 11:29:42
>>142
> 例えばカプセル化とかオーバーロード、あるいは継承とか。
詳細に書くと長くなってしまってスレ違いなのだが、可能だ。

> 「C++はCにオブジェクト指向の皮をかぶせたようなものだ」
これは単に言語仕様レベルでOOをサポートしたというだけの事で、要するにOOPが
しやすくなったというだけの事。
0146デフォルトの名無しさん
垢版 |
05/02/01 15:51:42
>>145
できるけどキモくなる&どう考えてもC++のほうが便利だから普通はやらないってだけの話。
r(ryのソースなど(ry

で、SDL width C++なら今ちょうどやってるとこ。
コールバック関数がないぶんglutよりやりやすいよ。
0159デフォルトの名無しさん
垢版 |
05/02/05 16:02:40
SDL_archiveってどんな形式に対応してるのですか?
0162デフォルトの名無しさん
垢版 |
05/02/05 19:37:43
自分が読んでいないのを棚に上げて他人にリンク先嫁と言うのが
流行っているインターネットはここでつね?
0166デフォルトの名無しさん
垢版 |
05/02/05 21:10:58
SDLはマルチプラットフォームなマルチメディアの基盤を作るのが目的でしょう?
Javaはもともとマルチプラットフォームに作られているから必要なくないですか?
0168デフォルトの名無しさん
垢版 |
05/02/05 23:19:23
>>159をおながいします。
ドキュメント読んでもソース読んでもどこにも書いてないのですが……。
どんな圧縮ファイルを用意したらいいんでしょうか。
0169Rubyist!
垢版 |
05/02/05 23:26:56
ディレクトリ/zip/gzipped tar
つかソースやドキュメント全く読まずに質問するなよ。
読んだって?嘘つくな。README.jaにそのまま書いてあるだろ。それ以前にソースファイル名見て見当も付かないのか。
0170デフォルトの名無しさん
垢版 |
05/02/06 03:20:48
ロクに読んでいないくせに読んだけど見つからないと言うのが流行っている
インターネットはここでつね?
0172デフォルトの名無しさん
垢版 |
05/02/06 16:26:00
以前サークルで内輪向けのショボゲーをSDL+OpenGLで組んだことがあるけど、
マカーな友人のためにマックに移植する作業がわずか3時間ほどで出来てしまった。
あまりにも呆気なく動いたんで拍子抜けしてしまったよ。
クロスプラットフォームで開発したいんならいいんではないかね。
0174デフォルトの名無しさん
垢版 |
05/02/06 19:33:33
>173
Matroxの対応状況はわからないけど
OpenGLは1.2程度の機能だけにしておけば
大抵の環境では動作するんじゃないのか?
0175デフォルトの名無しさん
垢版 |
05/02/06 21:29:20
G400とかG450とかだと全く動かない。
1.1は動くけど完全にソフトウェアエミュレーションで
1秒に数コマしか動かない。
0176デフォルトの名無しさん
垢版 |
05/02/07 03:20:32
G400ってVoodoo3やTNT2あたりの時代だろ?
G450もGeForce2 MXの足元にも及ばないシロモノだよな

そんなので3Dやること自体が間違ってる希ガス
0191デフォルトの名無しさん
垢版 |
05/02/24 01:21:56
orzの場合は日本語圏から流出するまでかなり間があったと思うけどな。
(その前身のOTLとか全角記号バージョンも含めて)
しばらくgoogleとかで観察してたけど、
日本語ページしかひっかからない時期が長かった。
0192デフォルトの名無しさん
垢版 |
05/03/10 04:47:53
OpenGLあればSDLっていらなくね?
0193デフォルトの名無しさん
垢版 |
05/03/10 04:59:10
だからOpenGLは3D専用で
サウンドや入力関連サポートしてないから
SDLやDirectXの代わりにはならんとあれほど(ry
0194デフォルトの名無しさん
垢版 |
05/03/10 05:43:31
DirectXにおいてDirect3Dと同じポジションにあるのが
SDLにおいてはOpenGLなのだ
まぁ、DirectXよりSDLのほうがサポートしてる範囲は広いけどね
(移植性も考えてあるのだから当然だが)
0196デフォルトの名無しさん
垢版 |
05/03/10 09:17:24
Simple DirectMedia Layer supports Linux, Windows, BeOS, MacOS Classic, MacOS X, FreeBSD, OpenBSD,
BSD/OS, Solaris, IRIX, and QNX. There is also code, but no official support, for Windows CE, AmigaOS,
Dreamcast, Atari, NetBSD, AIX, OSF/Tru64, RISC OS, and SymbianOS.

CEやMAC、ドリームキャストまでいけるぞw
0201デフォルトの名無しさん
垢版 |
05/03/10 13:21:14
おそらくトップページのDQN管理人が移植性謳う割にあんまりな
ports率なんで適当に付け足したんだろうな。

トップページ以外、
ど こ に も 書 い て な い ね 。
0202デフォルトの名無しさん
垢版 |
05/03/10 14:10:23
READMEにも書いてある。ちなみにこのファイルのコミットはSam氏がしている。

あなたに正当性があると思うなら、こんなところに書き込まずMLに投げてみれば?
Sam氏をはじめ多くの開発者が目を通している。
0208デフォルトの名無しさん
垢版 |
2005/04/28(木) 08:53:56
SDL_gfxを使っています
rotozoomSurfaceで画像を回転させるところまでできたのですが中心がズレます
どうやら回転後の図形を左上に詰めているようなのですがこれではゲームになりません
中心を固定する方法はないでしょうか?
0209Rubyist!
垢版 |
2005/04/28(木) 16:03:39
surface->w, surface->hを見てblitする位置をその度に変えたらいいやん。
0210208
垢版 |
2005/04/28(木) 20:35:09
>>209
座標(中心)からwとhの半分をそれぞれ引いて求めることが出来ました
ありがとうございます
0211デフォルトの名無しさん
垢版 |
2005/05/28(土) 12:13:11
GLスレでSDLスレで聞いたほうがいいといわれきました。
OpenGL + SDL環境で作っています。

OpenGL + SDLでDirectXのスプライトのようなことができる方法にはどんなやり方がありますか?

自分は、
SDL_Surfaceに画像を読み込んで、
SDL_BlitSurfaceで画面に貼り付けようとしているのですがうまくいきません。
SDL_GL_SwapBuffersのあとにSDL_BlitSurfaceではりつけています。
貼り付けたまま何もしないと貼り付けが反映されず、
SDL_UpdateRectを呼ぶと、プログラムが強制終了します。
0212デフォルトの名無しさん
垢版 |
2005/05/28(土) 14:31:47
testgl.cの
int RunGLTest( int argc, char* argv[], int logo, int logocursor, int slowly, int bpp, float gamma, int noframe, int fsaa )

void DrawLogoBlit(void)
をよくみてわからなかったらソースをさらせ。
それとSDL_GL_SwapBuffersは、SDL_BlitSurfaceの後に呼ぶんじゃないかな?
SDL_UpdateRectの強制終了とは関係なさそうだが…。
0213デフォルトの名無しさん
垢版 |
2005/05/28(土) 16:45:11
testgl.cをみましたが解決しませんでした。
ので、ソースを

void SetDraw( void ){
//イメージのロード
SDL_Surface *Image01 = NULL;
if( Image01 == NULL ){
Image01 = SDL_LoadBMP( "./image/image01.bmp" );
}
//描画
{
SDL_SetAlpha( Image01 , SDL_SRCALPHA , 128 );
SDL_SetColorKey( Image01 , SDL_SRCCOLORKEY , 0x00169B6E );
if( SDL_BlitSurface( Image01 , NULL , Screen , NULL ) < 0 ){
//エラー
}
}
SDL_UpdateRects( Screen , 0 , 0 , 0 , 0 );
}
void Display( void ){
glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

glPushMatrix();
//3Dの描画
glPopMatrix();
glClear( GL_DEPTH_BUFFER_BIT );
DrawLogoBlit();
SDL_GL_SwapBuffers();
}
0214デフォルトの名無しさん
垢版 |
2005/05/28(土) 16:47:07
SDL_GL_SwapBuffers()の前に描いてみましたが変わらなかったです。
SDLとGLの初期化の所を間違っているのでしょうか?
0215デフォルトの名無しさん
垢版 |
2005/05/28(土) 21:38:27
>>214
SDL_OPENGLBLITか?
ただあれは「遅いので使うな、2D描画もOpenGLでやれ」ということになっていたはず。
かなり昔の話だけど今でも同じだと思う。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況