マルチプラットホームな汎用ゲームライブラリの
SDLについてのスレッドです。
最新情報、参考になるソース、質問等なんでもどうぞ
本家
ttp://www.libsdl.org/
SDL_mixer ttp://www.libsdl.org/projects/SDL_mixer/
SDL_image ttp://www.libsdl.org/projects/SDL_image/
SDLdoc-jp ttp://www.tacoworks.jp/software/SDLdoc-jp/
GamDev ttp://gamdev.org/w/?%5B%5BSDL%5D%5D
初心者の初心者による初心者の為のSDL ttp://tokyo.cool.ne.jp/sdl/
前スレ
http://pc8.2ch.net/test/read.cgi/gamedev/1005469181/
SDLスレ ver.2.0
■ このスレッドは過去ログ倉庫に格納されています
2006/02/28(火) 20:40:12ID:MvXDyxzs
133名前は開発中のものです。
2007/07/14(土) 15:40:35ID:MplrYQ6S SDL使ってないんだが、
SDL製のゲームってなんで、フルスクリーンから戻ると、
ウインドウがくっちゃくちゃになるんだ?
WindowsXPになってからから、最近はあまりならなくなったが、
デュアルディスプレイ環境にしたとたん、今度は、フルスクリーンから戻ると
サブディスプレイ側にウインドウが全部持ってかれるwwww
SDL製ゲーム、妙に腹立つんだが……
SDLって、フルスクリーンに、どんなAPI使ってる?
SDL製のゲームってなんで、フルスクリーンから戻ると、
ウインドウがくっちゃくちゃになるんだ?
WindowsXPになってからから、最近はあまりならなくなったが、
デュアルディスプレイ環境にしたとたん、今度は、フルスクリーンから戻ると
サブディスプレイ側にウインドウが全部持ってかれるwwww
SDL製ゲーム、妙に腹立つんだが……
SDLって、フルスクリーンに、どんなAPI使ってる?
134名前は開発中のものです。
2007/07/14(土) 17:44:45ID:NCjcxLUp ソース読めば
135名前は開発中のものです。
2007/07/14(土) 19:33:37ID:HaWpR1FD >133
SDL-1.2.10のリリースノートに対策したと書いてあった気がするので
それ以前のバージョンだとダメとかありそう
とりあえずSDLのDLL群だけ公式サイトの1.2.10のものに入れ替えてみたらどうよ?
まーそれでもデュアルディスプレイ時は問題がある、とかだったらアウトだが
SDL-1.2.10のリリースノートに対策したと書いてあった気がするので
それ以前のバージョンだとダメとかありそう
とりあえずSDLのDLL群だけ公式サイトの1.2.10のものに入れ替えてみたらどうよ?
まーそれでもデュアルディスプレイ時は問題がある、とかだったらアウトだが
136名前は開発中のものです。
2007/07/15(日) 03:58:00ID:tjJzXNfv >>135
OK試してみる
OK試してみる
137名前は開発中のものです。
2007/07/15(日) 16:34:16ID:/Vt2f/ht QuickTime を最新版にしたら
ld: Undefined symbols:
_HIPointConvert referenced from QuickTime expected to be defined in Carbon
ってのが出てコンパイルできなくなった
これは俺だけ?
ld: Undefined symbols:
_HIPointConvert referenced from QuickTime expected to be defined in Carbon
ってのが出てコンパイルできなくなった
これは俺だけ?
138名前は開発中のものです。
2007/07/22(日) 09:03:58ID:MzGO1BEd 環境を(ry
139名前は開発中のものです。
2007/07/22(日) 10:06:10ID:RJaocio8 エラーメッセージから多分OSXだろうな、ということぐらいは推測出来るけども
それが分かったところでそんな環境でやってる人が少なすぎて誰も答えられない予感
それが分かったところでそんな環境でやってる人が少なすぎて誰も答えられない予感
140名前は開発中のものです。
2007/07/22(日) 21:10:37ID:SuhJ+niG OS Xなんだけど、むしろ137を見て、
iTunesとQuickTimeのパッチを宛ててない俺がいる。
真相が明らかになるまで宛てない。
iTunesとQuickTimeのパッチを宛ててない俺がいる。
真相が明らかになるまで宛てない。
141名前は開発中のものです。
2007/07/22(日) 21:20:50ID:utuuL8ub142名前は開発中のものです。
2007/07/22(日) 21:23:28ID:QFFk2TvQ ム板のQtスレで似たような症状を見かけたな。
紛らわしいがQuicktimeじゃなくてQtのスレな。
そのときはQuickTimeのバージョンを落とせと言う結論が出てた。
紛らわしいがQuicktimeじゃなくてQtのスレな。
そのときはQuickTimeのバージョンを落とせと言う結論が出てた。
143名前は開発中のものです。
2007/07/23(月) 21:10:59ID:igyFwa8R QuickTime ProにしてたらQuickTImeのバージョンをあげずにシステムだけソフトウェアアップデートできる
144名前は開発中のものです。
2007/08/03(金) 21:45:03ID:paSzUBbH すいません初心者なんですが
SDLで描画する際に描画処理をもっと高速化したい場合
どんな方法があるでしょうか?
もしくは気を付けるべき点とかありますでしょうか?
主にわりと広い領域を1フレームごとに単一色で塗りつぶしたいです
SDLで描画する際に描画処理をもっと高速化したい場合
どんな方法があるでしょうか?
もしくは気を付けるべき点とかありますでしょうか?
主にわりと広い領域を1フレームごとに単一色で塗りつぶしたいです
145名前は開発中のものです。
2007/08/03(金) 23:08:52ID:3nV6unKF >>144
ビデオカードによってはGL併用で板ポリで塗りつぶしたほうが早いことがあるかもね
ビデオカードによってはGL併用で板ポリで塗りつぶしたほうが早いことがあるかもね
146名前は開発中のものです。
2007/08/04(土) 00:05:39ID:I+4koGEX >>145
レスありがとうございます 試してみます
レスありがとうございます 試してみます
147名前は開発中のものです。
2007/08/07(火) 21:44:08ID:3+/Ng0d2 今日始めたんだがもうなにがなにやら
導入できないしなんとか出来たと思ったらビルドできないし…
解説が少し古いから最新バージョンを使わないで説明に使われてるバージョンにしたほうがいいんだろうか
泣きそうだ
導入できないしなんとか出来たと思ったらビルドできないし…
解説が少し古いから最新バージョンを使わないで説明に使われてるバージョンにしたほうがいいんだろうか
泣きそうだ
148名前は開発中のものです。
2007/08/07(火) 22:04:51ID:TQ7ub0JP 俺も始めたばかりだけど、windowsでのバイナリ作成はイマイチよくわからん
unixならmakefileかいてmakeすればいいだけだったからなぁ
unixならmakefileかいてmakeすればいいだけだったからなぁ
149名前は開発中のものです。
2007/08/07(火) 22:22:53ID:OhYk8zQ1 WindowsならVC++用のDLLやらlibやらひと通りバイナリで公式に置いてあるじゃないか
150名前は開発中のものです。
2007/08/07(火) 22:40:35ID:3+/Ng0d2 SDL-devel-1.2.12-VC8.zipでいいの?
151名前は開発中のものです。
2007/08/07(火) 22:42:37ID:OhYk8zQ1 VC++2005ならそれでいいと思う
152名前は開発中のものです。
2007/08/07(火) 22:47:05ID:3+/Ng0d2 だよね…
設定からincludeとlibにパス通してから
ttp://www.tacoworks.jp/software/SDLdoc-jp/html/guidebasicsinit.html
の一番下のコードをコンパイルしようとしたらエラーが…
1>------ ビルド開始: プロジェクト: SDL_test, 構成: Debug Win32 ------
1>コンパイルしています...
1>main.c
1>c:\documents and settings\*****\my documents\visual studio 2005\projects\sdl_test\sdl_test\main.c(4) : warning C4026: 関数はパラメータ リストを使って宣言されています。
1>リンクしています...
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_Quit が関数 _SDL_main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_GetError が関数 _SDL_main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_Init が関数 _SDL_main で参照されました。
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が関数 ___tmainCRTStartup で参照されました。
1>C:\Documents and Settings\Anpan\My Documents\Visual Studio 2005\Projects\SDL_test\Debug\SDL_test.exe : fatal error LNK1120: 外部参照 4 が未解決です。
1>ビルドログは "file://c:\Documents and Settings\Anpan\My Documents\Visual Studio 2005\Projects\SDL_test\SDL_test\Debug\BuildLog.htm" に保存されました。
1>SDL_test - エラー 5、警告 1
========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
設定からincludeとlibにパス通してから
ttp://www.tacoworks.jp/software/SDLdoc-jp/html/guidebasicsinit.html
の一番下のコードをコンパイルしようとしたらエラーが…
1>------ ビルド開始: プロジェクト: SDL_test, 構成: Debug Win32 ------
1>コンパイルしています...
1>main.c
1>c:\documents and settings\*****\my documents\visual studio 2005\projects\sdl_test\sdl_test\main.c(4) : warning C4026: 関数はパラメータ リストを使って宣言されています。
1>リンクしています...
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_Quit が関数 _SDL_main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_GetError が関数 _SDL_main で参照されました。
1>main.obj : error LNK2019: 未解決の外部シンボル _SDL_Init が関数 _SDL_main で参照されました。
1>MSVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が関数 ___tmainCRTStartup で参照されました。
1>C:\Documents and Settings\Anpan\My Documents\Visual Studio 2005\Projects\SDL_test\Debug\SDL_test.exe : fatal error LNK1120: 外部参照 4 が未解決です。
1>ビルドログは "file://c:\Documents and Settings\Anpan\My Documents\Visual Studio 2005\Projects\SDL_test\SDL_test\Debug\BuildLog.htm" に保存されました。
1>SDL_test - エラー 5、警告 1
========== ビルド: 0 正常終了、1 失敗、0 更新、0 スキップ ==========
153名前は開発中のものです。
2007/08/07(火) 22:48:37ID:3+/Ng0d2 ユーザー名全然消せてないし('A`)
154名前は開発中のものです。
2007/08/07(火) 22:54:11ID:OhYk8zQ1155名前は開発中のものです。
2007/08/07(火) 23:04:49ID:3+/Ng0d2 >>154
できた。できました。
ttp://www.geocities.jp/jq2hpl2000/SDL/environment.html
の一番下に書いてあることをやってみたらついにできた
パス通せば勝手にやってくれるわけじゃないんだね
できる人から見たらくだらないミスかもしれないが、完全に詰まってたから助かった
しかもこんな過疎スレでタイミング良く…
本当にありがとう
できた。できました。
ttp://www.geocities.jp/jq2hpl2000/SDL/environment.html
の一番下に書いてあることをやってみたらついにできた
パス通せば勝手にやってくれるわけじゃないんだね
できる人から見たらくだらないミスかもしれないが、完全に詰まってたから助かった
しかもこんな過疎スレでタイミング良く…
本当にありがとう
156名前は開発中のものです。
2007/08/07(火) 23:14:46ID:OhYk8zQ1157名前は開発中のものです。
2007/08/07(火) 23:21:56ID:3+/Ng0d2 そうなのか
一年半で150レスだと知って絶望したが安心した
これからよろしく
一年半で150レスだと知って絶望したが安心した
これからよろしく
158名前は開発中のものです。
2007/08/08(水) 01:31:54ID:sbyXI/dQ159名前は開発中のものです。
2007/08/08(水) 11:30:39ID:do3ZrWrt 自分も、見てはいるけど、書き込んではいない人ですね。
160名前は開発中のものです。
2007/08/08(水) 20:09:52ID:ZvrungyE つられて書き込みに来ました><
161名前は開発中のものです。
2007/08/08(水) 21:44:30ID:ePAndGqH SDLで同人ゲーム作って3年後には成金の予定です><
162名前は開発中のものです。
2007/08/08(水) 21:53:54ID:Pqw332Fd いくつかかサンプルプログラム組んでみたんだが、
やたらCPU使用率が高いのは仕様なのだろうか
やたらCPU使用率が高いのは仕様なのだろうか
163名前は開発中のものです。
2007/08/08(水) 21:58:12ID:na+UbHPh >>162
適当にSDL_Delayでも入れたら?
適当にSDL_Delayでも入れたら?
164名前は開発中のものです。
2007/08/08(水) 23:33:58ID:XsIa1hkW ほぼCPUによる描画だからCPUの使用率が高いというオチは無いかね。
なんらかのSDL_VIDEODRIVERを指定しないとSDL_BlitSurfaceは重いよ。
なんらかのSDL_VIDEODRIVERを指定しないとSDL_BlitSurfaceは重いよ。
165名前は開発中のものです。
2007/08/09(木) 00:00:07ID:aet5cj80 ありがとう
たぶんCPUだけでひたすらループをまわしているからかな…
参考にしてみる
たぶんCPUだけでひたすらループをまわしているからかな…
参考にしてみる
166名前は開発中のものです。
2007/08/09(木) 03:29:12ID:bpKNN2nX まったくDelay入れてなければ普通にビジーループと同じなんだから
どんなCPUでも100%近くまで食うだろうけど…
どんなCPUでも100%近くまで食うだろうけど…
167名前は開発中のものです。
2007/08/09(木) 09:54:44ID:iRc0pO0m 1.2.12って先月出てたんだな……。
Added support for UTF-8 window titles on Windows. が嬉しい。
Added support for UTF-8 window titles on Windows. が嬉しい。
168名前は開発中のものです。
2007/08/14(火) 12:52:04ID:aAQZrqPSSDL入門てきなページのサンプルにprintf使ってるのあるんですけど、
printf使ってみてもなにも表示されないんですよ。原因わかる人
教えてくれますか?
169名前は開発中のものです。
2007/08/14(火) 13:30:20ID:mUn2LVHE >>168 Cヘッダファイル読み込んでないとかいうオチじゃないよな?
170名前は開発中のものです。
2007/08/14(火) 13:36:41ID:QpOzpnEh コンソール表示してないとか
171名前は開発中のものです。
2007/08/14(火) 14:06:58ID:/iweu0SO 実行ファイルと同じディレクトリにstdout.txtってのがないですか?
あるならそれに出力されてるはず
あるならそれに出力されてるはず
172名前は開発中のものです。
2007/08/14(火) 15:35:48ID:GyW+IVPX 窓に出力するのは結構面倒だぜ
173名前は開発中のものです。
2007/08/14(火) 15:57:26ID:aAQZrqPS174名前は開発中のものです。
2007/08/14(火) 15:59:38ID:aAQZrqPS >>172そうですかやっぱりSDL_kanjiなどをつかうべきですか?
175名前は開発中のものです。
2007/08/14(火) 19:56:31ID:8W3CWuxg だからコンソール出せばいいじゃん
176名前は開発中のものです。
2007/08/14(火) 20:44:53ID:TVRq227C >>168
そのサンプルで同じようにしたいなら
どのような手段を利用したいのか教えて欲しい
もしくはそのサイトへリンクを張るのも手だ
不足している情報は「どこに」「どういった目的で」文字を出力したいか
そして、現在は「どのような手段」を使ってそれを達成しようとしているかだ
間違いを修正して欲しいなら正解だと思っている方法を提示すべきだし
新たな方法を示して欲しいなら目的や条件をはっきりさせて欲しい
デバッグ目的であればコンソールやファイルに出す方法があるし
もしくは(Windows限定になるが)OutputDebugStringを使うのも便利だ
ただ、現象からみてコンソール出してないだけだよなぁ……
出し方わかる?たぶん色んなソースをチャンポンしたせいで
mainとWinMainのソースが混ざってるだけだと思うんだが
そのサンプルで同じようにしたいなら
どのような手段を利用したいのか教えて欲しい
もしくはそのサイトへリンクを張るのも手だ
不足している情報は「どこに」「どういった目的で」文字を出力したいか
そして、現在は「どのような手段」を使ってそれを達成しようとしているかだ
間違いを修正して欲しいなら正解だと思っている方法を提示すべきだし
新たな方法を示して欲しいなら目的や条件をはっきりさせて欲しい
デバッグ目的であればコンソールやファイルに出す方法があるし
もしくは(Windows限定になるが)OutputDebugStringを使うのも便利だ
ただ、現象からみてコンソール出してないだけだよなぁ……
出し方わかる?たぶん色んなソースをチャンポンしたせいで
mainとWinMainのソースが混ざってるだけだと思うんだが
177名前は開発中のものです。
2007/08/14(火) 22:35:44ID:Hyt9tt6Y Windows版のSDLでprintfをコンソールに表示したかったら、
SDLmain.libをコンソールアプリで作り直さないと無理だよ
SDLmain.libをコンソールアプリで作り直さないと無理だよ
178168
2007/08/14(火) 23:20:35ID:aAQZrqPS レスありがとうございます。
>>175本当にごめんなさい、意味がわからないです。
>>176>>不足している情報は「どこに」「どういった目的で」文字を出力したいか
そして、現在は「どのような手段」を使ってそれを達成しようとしているかだ。
「どこに」は、ウィンドウです。「どういった目的で」は、いまはとくに目的はありませんが、
サンプルどうりの結果が得られないのは、自分の環境に問題があるように思えて、心配です。
「どのような手段」は、今は、見つかっていません。どうしようもなければSDL_kanjiを使おう思っています。
間違いを修正して欲しいなら正解だと思っている方法を提示すべきだし>>printf("maimai");をメイン関数の中に入れてウィンドウにmaimaiと表示させたいです 。
デバッグ目的であればコンソールやファイルに出す方法があるし >>デバックが目的ではないです。
もしくは(Windows限定になるが)OutputDebugStringを使うのも便利だ>>調べてみます。
ただ、現象からみてコンソール出してないだけだよなぁ……
出し方わかる?たぶん色んなソースをチャンポンしたせいで
mainとWinMainのソースが混ざってるだけだと思うんだが>>ごめんなさい、いみがわかりません。
>>175本当にごめんなさい、意味がわからないです。
>>176>>不足している情報は「どこに」「どういった目的で」文字を出力したいか
そして、現在は「どのような手段」を使ってそれを達成しようとしているかだ。
「どこに」は、ウィンドウです。「どういった目的で」は、いまはとくに目的はありませんが、
サンプルどうりの結果が得られないのは、自分の環境に問題があるように思えて、心配です。
「どのような手段」は、今は、見つかっていません。どうしようもなければSDL_kanjiを使おう思っています。
間違いを修正して欲しいなら正解だと思っている方法を提示すべきだし>>printf("maimai");をメイン関数の中に入れてウィンドウにmaimaiと表示させたいです 。
デバッグ目的であればコンソールやファイルに出す方法があるし >>デバックが目的ではないです。
もしくは(Windows限定になるが)OutputDebugStringを使うのも便利だ>>調べてみます。
ただ、現象からみてコンソール出してないだけだよなぁ……
出し方わかる?たぶん色んなソースをチャンポンしたせいで
mainとWinMainのソースが混ざってるだけだと思うんだが>>ごめんなさい、いみがわかりません。
179名前は開発中のものです。
2007/08/14(火) 23:30:33ID:v4Co7u1c SDLより前に基礎的なことが分かってなさ過ぎる。
printfは基本的に標準出力(コンソールやファイルやプリンタ)への文字表示命令であって、
SDLみたいなグラフィック画面への出力とは全く別物なんだよ。
そもそも、どこのサンプルでどう上手く行かないかも明示せずに
曖昧で焦点がぼやけた質問で人様を煩わせるのはちょっとどうかと思うんだわ。
そんな調子では超能力でもなければ君の問題を把握することができんよ。
printfは基本的に標準出力(コンソールやファイルやプリンタ)への文字表示命令であって、
SDLみたいなグラフィック画面への出力とは全く別物なんだよ。
そもそも、どこのサンプルでどう上手く行かないかも明示せずに
曖昧で焦点がぼやけた質問で人様を煩わせるのはちょっとどうかと思うんだわ。
そんな調子では超能力でもなければ君の問題を把握することができんよ。
180名前は開発中のものです。
2007/08/14(火) 23:33:31ID:Hyt9tt6Y もーっ、そのものズバリ書いたってのにー
printf() は Windows 以外だったら標準出力(コンソール)に出るが、
公式で配っているWindows版のSDLはコンソールアプリじゃなくてWindowアプリとして作られてるので
そのままではprintf()を使ってもコンソールには何も出ない
その代わりに標準ではstdout.txtに出力されるようになってる
これはfreopen()を使って別のファイルにすることは可能
あと、Windows版SDLでは、自分で書いたmain()は #define 使ってSDL_mainに書き換えられてる
本当のエントリポイントはSDLmain.libの中にあるWinMain()
だから、コンソールにprintfを出力させたかったらSDLmain.libを作り直す必要があるってこと
printf() は Windows 以外だったら標準出力(コンソール)に出るが、
公式で配っているWindows版のSDLはコンソールアプリじゃなくてWindowアプリとして作られてるので
そのままではprintf()を使ってもコンソールには何も出ない
その代わりに標準ではstdout.txtに出力されるようになってる
これはfreopen()を使って別のファイルにすることは可能
あと、Windows版SDLでは、自分で書いたmain()は #define 使ってSDL_mainに書き換えられてる
本当のエントリポイントはSDLmain.libの中にあるWinMain()
だから、コンソールにprintfを出力させたかったらSDLmain.libを作り直す必要があるってこと
181名前は開発中のものです。
2007/08/14(火) 23:37:06ID:GyW+IVPX SDL_kanjiは知らないけど、日本語使わない漏れはSDL_ttfのTTF_RenderUTF8_Solid()で作ってSDL_BiltSurface()で貼り付けるのを関数化して文字列渡して使ってる
しかしstdout.txtあるのは便利だよな
しかしstdout.txtあるのは便利だよな
182名前は開発中のものです。
2007/08/15(水) 00:05:55ID:QwtLL8/g お前ら凄い親切なw
伝わってないのが端から見てて歯痒い。
>>179-180以上にかみ砕くのは俺には無理と思うが、補足。
・printfでstdout.txtに出力されるのはとりあえずWindows環境では普通の動作なんで別に心配しなくていい。
とりあえず出力した文字の確認もできるだろうし、ウィンドウに出力されなくても問題ないよね?
・普段printfで出力してるコンソール画面は、SDL使ってる限り出せないと思っていい。
ウィンドウに文字を出したいなら、文字列を画像(サーフェス)として生成して、それを表示する必要がある。
それをやってくれるのがSDL_ttfとかSDL_kanji。使えるフォントの種類に違いがあるんだが、Windowsなら何も考えずSDL_ttfを使っていい。
あと、なんか、上のレスを見る限り意味がわかりませんと返ってくる気が凄くするんだが、わからんのがどの部分のどの用語なのかとかを書かないと説明しようがないんじゃないかと思う。
伝わってないのが端から見てて歯痒い。
>>179-180以上にかみ砕くのは俺には無理と思うが、補足。
・printfでstdout.txtに出力されるのはとりあえずWindows環境では普通の動作なんで別に心配しなくていい。
とりあえず出力した文字の確認もできるだろうし、ウィンドウに出力されなくても問題ないよね?
・普段printfで出力してるコンソール画面は、SDL使ってる限り出せないと思っていい。
ウィンドウに文字を出したいなら、文字列を画像(サーフェス)として生成して、それを表示する必要がある。
それをやってくれるのがSDL_ttfとかSDL_kanji。使えるフォントの種類に違いがあるんだが、Windowsなら何も考えずSDL_ttfを使っていい。
あと、なんか、上のレスを見る限り意味がわかりませんと返ってくる気が凄くするんだが、わからんのがどの部分のどの用語なのかとかを書かないと説明しようがないんじゃないかと思う。
183168
2007/08/15(水) 00:10:50ID:PDGC0i0E >>179
ものっっっすごく申し訳ありません。
もしよければhttp://web1.nazca.co.jp/studioh/diary015.htmlに飛んでもらって、そのページのEvent関数の
if(ev.type == SDL_KEYDOWN) //キーが押されたかどうかの確認。
{
printf("キーが押されました");ここについて説明してもらえれば助かります。
>>180
わかりやすい説明ありがとうございます。
mainに見えても実はWinMainとゆうことですね。WinMainでprintfが使えないのはしっています、ですが、
http://web1.nazca.co.jp/studioh/diary015.htmlの
if(ev.type == SDL_KEYDOWN) //キーが押されたかどうかの確認。
{
printf("キーが押されました");
で使われています。普通の環境で"キーが押されました"が表示されないのは当たり前でしょうか?
ものっっっすごく申し訳ありません。
もしよければhttp://web1.nazca.co.jp/studioh/diary015.htmlに飛んでもらって、そのページのEvent関数の
if(ev.type == SDL_KEYDOWN) //キーが押されたかどうかの確認。
{
printf("キーが押されました");ここについて説明してもらえれば助かります。
>>180
わかりやすい説明ありがとうございます。
mainに見えても実はWinMainとゆうことですね。WinMainでprintfが使えないのはしっています、ですが、
http://web1.nazca.co.jp/studioh/diary015.htmlの
if(ev.type == SDL_KEYDOWN) //キーが押されたかどうかの確認。
{
printf("キーが押されました");
で使われています。普通の環境で"キーが押されました"が表示されないのは当たり前でしょうか?
184名前は開発中のものです。
2007/08/15(水) 00:32:43ID:tPtheI7D185名前は開発中のものです。
2007/08/15(水) 00:34:53ID:4BjrTEfx 違う人だけど答えます
printfの出力先は"stdout"ってのは常識ですよね?(俺もまちがってるかも)
で、windowsのSDLではこの"stdout"ってのは[stdout.txt]とイコールなわけです。
だから、printfは[stdout.txt]に出力するようになっているわけです。
だから、このプログラムはもし、何かしらのキーが押された場合に、[stdout.txt]に
キーが押されました
と、書き込むプログラムなわけです。
要は、SDLのイベントの処理の仕方を説明したプログラムです
なんだか、いろいろ勘違いされてるみたいですが、SDLにウィンドウに文字列を描画する、WinAPIでいうところのTextOutのような関数は存在しません。
もし、ウィンドウに文字列を描画したいなら皆さんが言うようにSDL_ttfや、SDL_kanjiなどを使うか、
自分でbitmapを用意して、それを描画しなくてはなりません
というより、stdoutとか理解してますか?
SDL以前にCがあやふやではないですか
printfの出力先は"stdout"ってのは常識ですよね?(俺もまちがってるかも)
で、windowsのSDLではこの"stdout"ってのは[stdout.txt]とイコールなわけです。
だから、printfは[stdout.txt]に出力するようになっているわけです。
だから、このプログラムはもし、何かしらのキーが押された場合に、[stdout.txt]に
キーが押されました
と、書き込むプログラムなわけです。
要は、SDLのイベントの処理の仕方を説明したプログラムです
なんだか、いろいろ勘違いされてるみたいですが、SDLにウィンドウに文字列を描画する、WinAPIでいうところのTextOutのような関数は存在しません。
もし、ウィンドウに文字列を描画したいなら皆さんが言うようにSDL_ttfや、SDL_kanjiなどを使うか、
自分でbitmapを用意して、それを描画しなくてはなりません
というより、stdoutとか理解してますか?
SDL以前にCがあやふやではないですか
186名前は開発中のものです。
2007/08/15(水) 00:43:15ID:1oZuV42R たぶん>>185の言っていることの一割も理解してないんじゃないかと
187名前は開発中のものです。
2007/08/15(水) 00:59:57ID:82FrRuTB 多分分かってるのは「違う人」だけだと思う
188違う人
2007/08/15(水) 01:01:08ID:4BjrTEfx ん
189違う人
2007/08/15(水) 01:02:11ID:4BjrTEfx190違う人
2007/08/15(水) 01:04:34ID:4BjrTEfx は結構微妙なんで
てか、すみません
なんか、ビューワの調子が、、、
てか、すみません
なんか、ビューワの調子が、、、
191168
2007/08/15(水) 01:31:47ID:PDGC0i0E192名前は開発中のものです。
2007/08/15(水) 01:41:12ID:9feGd8Aj 簡単なことでしたね、じゃない。捨て台詞みたいでちょっと感心しないな。
お前には難しかったんだろ。
お前には難しかったんだろ。
193名前は開発中のものです。
2007/08/15(水) 01:53:08ID:wraMEEur まぁまぁ。俺も同じこと書きそうになったけど。
194名前は開発中のものです。
2007/08/15(水) 11:01:47ID:OErOo2Dx っていうかVC++2005EEでもbcc+devでもビルド設定でコンソールアプリケーションに指定したら普通にでるよ
処理止めないとすぐ消えるけど
処理止めないとすぐ消えるけど
195名前は開発中のものです。
2007/08/15(水) 13:24:53ID:4BjrTEfx >194
いわれてみれば、確かにw
思いつきもしなかった
いわれてみれば、確かにw
思いつきもしなかった
196名前は開発中のものです。
2007/08/18(土) 23:57:30ID:NM/B7TGH if( g_WindowActive ){ // ウィンドウがアクティブかどうか
move();
draw();
} else {
SDL_WaitEvent(&g_Event);
}
if(!PollEvent()){ // SDL_PollEventでイベント処理
break;
}
こんな感じでウィンドウがアクティブのときは動いて、
非アクティブのときは止まっているようにしたいんですけど、
ウィンドウが完全に見えている状態で非アクティブからアクティブになっても
止まったままなんです。
非アクティブのときにCPU使わないようにしようとWaitEvent入れたらこうなりました。
どうすれば対処できますか?
move();
draw();
} else {
SDL_WaitEvent(&g_Event);
}
if(!PollEvent()){ // SDL_PollEventでイベント処理
break;
}
こんな感じでウィンドウがアクティブのときは動いて、
非アクティブのときは止まっているようにしたいんですけど、
ウィンドウが完全に見えている状態で非アクティブからアクティブになっても
止まったままなんです。
非アクティブのときにCPU使わないようにしようとWaitEvent入れたらこうなりました。
どうすれば対処できますか?
197名前は開発中のものです。
2007/08/19(日) 01:32:06ID:ddUge9Ur >>196
そもそもアクティブ/非アクティブの状態の取得をどうやってる?
完全に想像だから間違ってたらすまんが、SDL_APPACTIVEは最小化されてるorされてないしか判定しない。
フォーカスの有無ならSDL_APPINPUTFOCUS
そもそもアクティブ/非アクティブの状態の取得をどうやってる?
完全に想像だから間違ってたらすまんが、SDL_APPACTIVEは最小化されてるorされてないしか判定しない。
フォーカスの有無ならSDL_APPINPUTFOCUS
198196
2007/08/19(日) 16:58:00ID:87LzenFa >>197
PollEvent()内で、このような処理をしています。(ほかのイベントは省略しています)
while(SDL_PollEvent(&g_Event)){
switch(g_Event.type){
case SDL_ACTIVEEVENT:
if( (g_Event.active.state & SDL_APPINPUTFOCUS || g_Event.active.state & SDL_APPACTIVE) && g_Event.active.gain == 0 ){
g_WindowActive = false;
}
if( (g_Event.active.state & SDL_APPINPUTFOCUS || g_Event.active.state & SDL_APPACTIVE) && g_Event.active.gain == 1 ){
g_WindowActive = true;
}
break;
}
}
最小化からの復帰と別ウィンドウからフォーカスが移って再描画されるときはまた動き出すのですが
ウィンドウが完全に見えているときのフォーカスの変化に反応してくれないんです。
PollEvent()内で、このような処理をしています。(ほかのイベントは省略しています)
while(SDL_PollEvent(&g_Event)){
switch(g_Event.type){
case SDL_ACTIVEEVENT:
if( (g_Event.active.state & SDL_APPINPUTFOCUS || g_Event.active.state & SDL_APPACTIVE) && g_Event.active.gain == 0 ){
g_WindowActive = false;
}
if( (g_Event.active.state & SDL_APPINPUTFOCUS || g_Event.active.state & SDL_APPACTIVE) && g_Event.active.gain == 1 ){
g_WindowActive = true;
}
break;
}
}
最小化からの復帰と別ウィンドウからフォーカスが移って再描画されるときはまた動き出すのですが
ウィンドウが完全に見えているときのフォーカスの変化に反応してくれないんです。
199名前は開発中のものです。
2007/08/19(日) 17:23:23ID:39ZqT3vu >>196
SDL_WaitEvent() で拾ったイベントを捨ててるからだろ…
SDL_WaitEvent() で拾ったイベントを捨ててるからだろ…
200196
2007/08/19(日) 20:42:20ID:87LzenFa SDL_WaitMessage()のあとにもイベント処理をはさむようにしたらうまくいきました。
どうもありがとうございます。
どうもありがとうございます。
201名前は開発中のものです。
2007/09/01(土) 16:14:39ID:uj+9umUP 先生!SDL_AddTimerが0しか返してくれやがりません><
202名前は開発中のものです。
2007/09/01(土) 16:29:18ID:4VIN7FZV >>201
エスパーすると SDL_Init() に SDL_INIT_TIMER を渡してないんだろう
エスパーすると SDL_Init() に SDL_INIT_TIMER を渡してないんだろう
203名前は開発中のものです。
2007/09/01(土) 16:30:04ID:uj+9umUP ごめんなさいSDL_InitにSDL_INIT_TIMER渡してないだけでしたごめんなさい
204名前は開発中のものです。
2007/09/01(土) 22:08:46ID:3oMJBmXZ 美しすぎる流れに完敗
205名前は開発中のものです。
2007/09/01(土) 22:35:48ID:3R+RRVDL 久々にいいモン見れた
今日は夢に美少女が出てくるに違いない
今日は夢に美少女が出てくるに違いない
206名前は開発中のものです。
2007/09/06(木) 00:56:52ID:4VpwTJkO あ
207名前は開発中のものです。
2007/09/06(木) 01:00:03ID:4VpwTJkO 質問です。SDL_VIDEORESIZEが送られてくるタイミングっていつですかね?
208名前は開発中のものです。
2007/09/06(木) 01:52:03ID:ernuANIp SDL_SetVideoMode()で SDL_RESIZABLE を渡してウィンドウ作って
そのウィンドウをリサイズしたときじゃね?
そのウィンドウをリサイズしたときじゃね?
209名前は開発中のものです。
2007/09/06(木) 02:51:05ID:4VpwTJkO ごめんなさい間違えた。SDL_VIDEOEXPOSEです。
210名前は開発中のものです。
2007/09/06(木) 04:18:37ID:ernuANIp >>209
Windowsとかだと普通にウィンドウが表示されたときや隠れたウィンドウが表に出たときに
飛んでくると思うけどXだと全然こなかったりするね…
あとは別スレッドでデータ更新してメインスレッドで描画する場合に別スレッドから
自前で SDL_PushEvent() で送ってやるときとかに使うこともあるかな…
Windowsとかだと普通にウィンドウが表示されたときや隠れたウィンドウが表に出たときに
飛んでくると思うけどXだと全然こなかったりするね…
あとは別スレッドでデータ更新してメインスレッドで描画する場合に別スレッドから
自前で SDL_PushEvent() で送ってやるときとかに使うこともあるかな…
211名前は開発中のものです。
2007/09/06(木) 07:44:32ID:RdypgvEp X の場合 GL と併用しない限り送られてこないと思う。
Windows の場合は WM_ERASEBKGND のタイミング。
Windows の場合は WM_ERASEBKGND のタイミング。
212名前は開発中のものです。
2007/09/06(木) 18:25:11ID:4VpwTJkO ありがとうございます。
SDL_PushEvent() を使えばInvalibateRect()のように
SDL_VIDEOEXPOSEを送ることができますか?
SDL_PushEvent() を使えばInvalibateRect()のように
SDL_VIDEOEXPOSEを送ることができますか?
213名前は開発中のものです。
2007/09/06(木) 18:39:27ID:1+3n0mte214名前は開発中のものです。
2007/09/07(金) 08:53:04ID:D9hBhXmU ありがとうございます。
ちょっと調べてきます
ちょっと調べてきます
215名前は開発中のものです。
2007/09/07(金) 17:11:45ID:I6GZEsDZ しかしゲームだと毎フレーム描画することが多いのであまり使われる機会はないよなぁ…
ツールとかなのかな?
ツールとかなのかな?
216名前は開発中のものです。
2007/09/07(金) 18:42:29ID:43uHszUC Wizのような疑似3DRPGやADVならアリかもしれないな
217名前は開発中のものです。
2007/09/08(土) 07:10:44ID:YMaYTJnw218名前は開発中のものです。
2007/09/30(日) 17:53:37ID:ZVvbajM8 すみません、ちょっと質問です。
C++で使うときに便利なラッパーて存在しますか?
自分で書いていたんですけど、途中まで書いたところで嫌んなってきたので……
C++で使うときに便利なラッパーて存在しますか?
自分で書いていたんですけど、途中まで書いたところで嫌んなってきたので……
219名前は開発中のものです。
2007/10/01(月) 12:05:55ID:toU5XyAB >>218
http://sourceforge.net/projects/sdlmm/
http://sourceforge.net/projects/sdloo/
http://sourceforge.net/projects/sdlucid/
C++使わないから使い勝手は知らん。
というか>>218が使ってみてレポートしてくれたりするとみんなの参考になるかも?
http://sourceforge.net/projects/sdlmm/
http://sourceforge.net/projects/sdloo/
http://sourceforge.net/projects/sdlucid/
C++使わないから使い勝手は知らん。
というか>>218が使ってみてレポートしてくれたりするとみんなの参考になるかも?
220名前は開発中のものです。
2007/10/03(水) 14:15:28ID:Nwe20aSd >>218
今の流行は、g3d だな
今の流行は、g3d だな
221名前は開発中のものです。
2007/10/03(水) 14:50:10ID:TlEYPRiW >>220
あの辺はラッパーの域を大きく越えてもっと高レベルなゲームエンジンだろ
あの辺はラッパーの域を大きく越えてもっと高レベルなゲームエンジンだろ
222218
2007/10/03(水) 23:07:07ID:RbqWUS1l 見てみました。 >219
……全部死に絶えているようです。
あと、実装も古かったのであまりC++らしく無かったです。自分の実装の方がまだましだった……
……全部死に絶えているようです。
あと、実装も古かったのであまりC++らしく無かったです。自分の実装の方がまだましだった……
223名前は開発中のものです。
2007/10/03(水) 23:12:16ID:UktAvpVZ じゃ!がんばれ
224名前は開発中のものです。
2007/10/03(水) 23:26:21ID:RbqWUS1l あっと、一つだけ質問。
イベント構造体って、どういう使い方するのが一般的?
やっぱり設定を済ませたらとっととイベントキューに押し込む&使うときだけイベントキューから取り出す
ということで、イベント構造体を保存しておくようなことはあんまり無い?
イベント構造体って、どういう使い方するのが一般的?
やっぱり設定を済ませたらとっととイベントキューに押し込む&使うときだけイベントキューから取り出す
ということで、イベント構造体を保存しておくようなことはあんまり無い?
225名前は開発中のものです。
2007/10/04(木) 15:29:28ID:FHvE2BAs >>222
要するに気にいらなかったんだなw
ぶっちゃけるとSDLみたいな低レベルのAPIをそのままC++ラップしてもあまり嬉しくない。
余程潔癖なC++プログラマじゃない限り C の API そのまま呼ぶのは別に苦じゃないしね。
g3d まで行かなくてももう少し高レベルのゲームエンジンとか特定ジャンル向けAPIなら
使ってみるかという気になるけれど。
要するに気にいらなかったんだなw
ぶっちゃけるとSDLみたいな低レベルのAPIをそのままC++ラップしてもあまり嬉しくない。
余程潔癖なC++プログラマじゃない限り C の API そのまま呼ぶのは別に苦じゃないしね。
g3d まで行かなくてももう少し高レベルのゲームエンジンとか特定ジャンル向けAPIなら
使ってみるかという気になるけれど。
226218
2007/10/06(土) 22:35:26ID:BZgGmwuo 遅レスすみません。
G3Dがなかなか良さそうだったので色々弄っていたのですが……初っ端のstarterサンプルも走らない……。
なんで〜〜〜〜。ドキュメント通りに設定したのに……。
>225
>余程潔癖なC++プログラマじゃない限り C の API そのまま呼ぶのは別に苦じゃないしね。
まあ、そうですけどね。リソース管理といってもboost::shared_ptr併用すれば大した手間じゃないし。
それは判っているのですが、ついゴテゴテとクラスを構築してしまって……
普段boostの便利ツールを使っているとどうも納得行かなくて。
基本的なところを実装できたらなんかのフレームワークでっちあげてみようかな。
G3Dがなかなか良さそうだったので色々弄っていたのですが……初っ端のstarterサンプルも走らない……。
なんで〜〜〜〜。ドキュメント通りに設定したのに……。
>225
>余程潔癖なC++プログラマじゃない限り C の API そのまま呼ぶのは別に苦じゃないしね。
まあ、そうですけどね。リソース管理といってもboost::shared_ptr併用すれば大した手間じゃないし。
それは判っているのですが、ついゴテゴテとクラスを構築してしまって……
普段boostの便利ツールを使っているとどうも納得行かなくて。
基本的なところを実装できたらなんかのフレームワークでっちあげてみようかな。
227名前は開発中のものです。
2007/10/07(日) 10:26:07ID:yJ/qUspY そして目的がゲーム製作からライブラリ製作へ・・・w
228名前は開発中のものです。
2007/10/07(日) 12:53:09ID:KThUHL05 ありがちなパターンだよなw
229名前は開発中のものです。
2007/10/07(日) 12:54:15ID:XnDGmhDX ゲーム作るより楽しかったり
230名前は開発中のものです。
2007/10/07(日) 13:52:42ID:JFszqkjk あるな。すげえよくわかるw
231名前は開発中のものです。
2007/10/07(日) 16:06:08ID:gaO7ixsx おれもだw
232名前は開発中のものです。
2007/10/07(日) 16:31:51ID:vQBEp/5X クルマ一台一人で作るより
ネジや歯車を一人でつくる方が完成する可能性高いしな
ネジや歯車を一人でつくる方が完成する可能性高いしな
233218
2007/10/08(月) 00:30:19ID:XgwvZWdN やべえ、楽しい。SDL自体のボリュームも大きくないから、絶望的な気分になることも無いですし。
しかし、SDL側で管理しているリソースとかが所々にあって、ちょっと厄介ですね。
使い込みながらブラッシュアップしよ。
しかし、SDL側で管理しているリソースとかが所々にあって、ちょっと厄介ですね。
使い込みながらブラッシュアップしよ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★3 [ニョキニョキ★]
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★4 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に ★2 [ぐれ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 防衛費増額「賛成」62・8% 「反対」32・2%を大きく上回る 賛成「18~29歳で8割」世代差あらわ 産経FNN合同世論調査 ★3 [尺アジ★]
- 【テレビ】鈴木福&あのちゃんW主演 テレ東で押見修造氏の漫画『惡の華』実写ドラマ化決定! 累計325万部を突破した伝説的漫画 [冬月記者★]
- 【実況】博衣こよりのえちえち朝こよ🧪★2
- 【実況】博衣こよりのえちえち朝こよ🧪
- 【悲報】セブンイレブンの納豆巻きの値段、限界突破wwwwwwwwwwwwwwwwww [977261419]
- 【悲報】小野田紀美さん、宇宙人みたいな服を着てしまう…また、そのことを突っ込まれブチ切れ中www [856698234]
- クマ対策→山に食べ物撒くだけ
- 🏡
