SDL=Simple DirectMedia Layerでゲームだ
■ このスレッドは過去ログ倉庫に格納されています
ゲロ吐くほど遅いものを うんこ出るほど遅いものと一緒に使用しようとするのは何故なんだろうな? 速度を重視するなら,3Dの特殊な場合と考えて,OpenGLで板ポリとして作るべきだな あれ、そんなことはない……どころか新たな書き込みがあった。ごめん。 今回のF5祭りで一部の専ブラが全スレdat落ちと誤認したようだぞ 新たな書き込みがあれば復活するらしい やっとinputmethodが実装されたらしい。 http://hg.libsdl.org/SDL-gsoc2010_IME/rev/863ba7d1f029 誰か試してみましたか?まだ終わってないのかな。 さて、1.3はいつ出るのでしょうね。 SDLの描画って重いってよく聞くけど重い? Windows版だとDirectXを内部で使ったりしてるって聞いたけど 各プラットフォーム毎で高速に描画できるようにチューンされてる感じ? SDLはイベントとサウンドに使って描画はOpenGL使うケースを多く見たんだけど >>415 昔は結構遅かったが、最近はDirectXやMMX/SSEを使ったりもしてるので 結構速くなってるんじゃないかな。 ペナルティが無いわけではないけどね。 OSX版が異様に遅かったが解消されたのかな。 他人に聞かないで、SDLだけと描画だけOpenGLで同じもの作って比較してみな。 聞いちゃうような人ならやっても無駄にはならないから。 両方の資料を読んで勉強する手間は俺なら避ける。 すぐに何でも他人に尋ねて解決しようとするなというのは同感だけど、 聞いたほうが良い場合もあるよ。 俺もそう思う そういった検証作業は そういった行為が金になるライターさん そういう人柱行為が好きな人などに任せて 暇のない人は人に聞いたほうがいい どちらも初心者にでも扱える易いものだけど 全て関数をいちいち比較検証してたらキリがないからな この程度の検証作業が苦ならプログラマ向いてないだろ… あと自分のやりたい事、作りたい物に対して検証するんで ライターの比較記事なんて意味ないし、全ての関数を比較する必要もない。 # そもそも SDL の描画関数って2つしかないしな… 情報は共有できるように蓄積されてこそ意味がある。だから、まずは聞いてみる。 いなけりゃ言い出しっぺとして検証して報告してみる。それでいいんだと思うよ? 日本のプログラマはコミュニケーション能力が死んでて、独りで完結しようとする奴が多すぎて困る。 スキルアップになるから、やってみればって言ってるんだよ。 嫌がらせで言ってるわけじゃない。 ゆとり世代はそういうのが分からないって記事をたまに見るけど、本当なのかもしれないね。 それじゃあ、OpenGLの方がいいとだけ言っておく。 理由が知りたければ、ネットで調べるなりすればいい。 そうなんだよなぁ、俺もゆとり世代だけども。 周り見てて思うけど、まずググらない。 いやそれは一番上に出てくるだろってことを聞いてくる。 調べる→無かったら試す→最終手段として質問する のが普通だろうに。 >>422 の言う「情報の共有」には同意するけど、 それなら「調べる」の段階で解決するから最初に「聞く」を持ってくる必要はないと思うよ。 >>425 > 調べる→無かったら試す→最終手段として質問する > > のが普通だろうに。 べき論なんて老害じゃん ゆとり世代なのに頭固いよ 問答無用に > 調べる→無かったら試す→最終手段として質問する ではなく、状況に応じて 質問する→回答を待つ(or回答を待ちつつ検索する)→最終手段として自分で検証する などと、使い分けた方が楽だぞ リアルでそんな奴には知ってても知らないって言うわ。 >>424 両方やってみたとして、 その結果描画が速いほうしか使わないのなら 遅かったほうの勉強/スキルアップは無駄になるじゃん。 両方やる前は訊く側だったのが、 両方やったあとは自分の経験を基にした答える側になれる。 >>421 > # そもそも SDL の描画関数って2つしかないしな… 用途の違いもあれば バージョンやGPU、OS(ドライバ)、コンパイラなどによる 実行環境の違いもある それらを考慮しないと意味がないから 真面目に検証するとなると面倒臭いよ リリース直後とかならまだいいけど 需要があるとは思えない時期に 時間だけ掛かる単純作業をやって 得られるものは忍耐力ぐらいなもんだ 日本にはなぜか「人に聞くのは恥ずかしい行いである」という間違った風潮が蔓延している。 海外のプログラマは掲示板などのコミュニティで積極的に議論するだけでなくちょっとした質問も 気軽にして後続が必要な情報が蓄積されていくというのに、日本のプログラマは黙って自分で 調べて、どうしようもなくなってから「メールで」質問して、解決するとそのまま黙って去っていく。 そして最初から知っていたかのようなフリをして、後続には「人に聞くな!自分で調べろ!」と わめき散らす。それなりの人数がいるはずなのに、健全なコミュニティが育たない。 ゆとりゆとりって一言で言うけどゆとりにもいろいろあるんだよ… * ちょっと考えれば解る問題を考えて答を出し、その上で他の人と話をして理解を深める -> 普通の人 * ちょっと考えれば解る問題を考えて答を出して理解した気になる -> 非コミュ技術オタ * ちょっと考えれば解る問題を考えず、ぐぐって見付かった内容だけで理解した気になる -> 非コミュ系ゆとり * ちょっと考えれば解る問題を考えず、他人に聞いて理解した気になる -> ノーマルゆとり * ちょっと考えれば解る問題を考えず、ぐぐりもせず、他人に聞きもせず、締切間際に「 やっぱりできません!」とか言ってくる -> 上級ゆとり # マ版ネタだな… >>429 SDL+OpenGLをやるのに、SDLのサーフェイスを勉強するのが無駄? OpenGLでSDL_ttfを使うこととかもできるのに。 >>438 そういう情報を含めて教えてあげればいいんでないの? >>439 腕がないのにいきなりなんでもできると思うな。 本当に無駄ならやらせようとしないよ。 理由を述べずに「両方やってみな」とだけ書けば そりゃ質問者には意図が伝わらないでしょ >>441 なら君がおしえてあげればいいじゃないの。 >>442 「両方やってみな」と書いた人の意図を>>441 が知るわけないでしょう。 >>443 それではそもそも。エスパー希望っていう程度の話題だったって事なのね。 楽になるからライブラリ使うってスタンスの人なら、遠回りしたくない罠。 ソース呼んだり試したりするのが好きな人はするし。 >>424-425 ゆとり世代関係ないw バス停でご丁寧にでかでかとバスマップが書いてあるにも関わらず そんなモノは知らんとばかりに運転手に聞きに行くオッサンとかオバサンはよくいるぞ。 結局のところ、検索って奴はいろんなサイトを見て回って ゴチャゴチャと大量の広告を見せられた挙句、 ネット上に散りばめられた情報を一個一個拾い集める糞つまらなくて脳の無駄遣いな作業なんだよ。 だから掲示板で質問して一発でほしい情報を得ようとするわけ。 お分かり? ここで質問してる子は賢いわw >>450 なんで広告ブロックしないの?www 検索をうまく使えない事を自慢すんなw 物事の本質を理解せず脊髄反射でレスするのはやめたほうがいいぞ。 的外れな指摘しかできなくなるから。 >>450 >ここで質問してる子は賢いわw 誰もまともに答えてくれない的外れな質問をするのが賢いのか? >>454 お前はほんとに世渡りが下手そうだな。 ダメで元々、いろんなことをやってどれか一つ成功すればそれでよし、 という考え方だってあるんだよ。 そもそも使ってる人間がいないから情報が蓄積されない。 基本的に自分の成果にしか興味がない。 時間をかけて作業することが勉強や努力だと勘違いしている。 コミュニティを形成しようという意識が欠けてるから後続の手助けをしようとは思わない。 まあ、まともにやろうと思ったら、英語身につけるしかないね。 英語圏のコミュニティは、初心者を見下したり、必要な情報を出し渋ったり、質問 そのものを悪とみなす風潮は無いからね。 日本だと勘違いした自称上級者がわく。 まるで「自分はここのヌシだ」みたいな顔で興味ない書き込みにまでレス。 自分が、調べる作業をやらされてる、と勘違いして怒り出す。 暇がなかったり、質問されてる内容に対して十分な知識をもってないなら、黙ってりゃいいだけなのに、 「なぜか自分が答えなければならない」と思い込んでる。そういう自称上級者。 情報を出し渋ったところで得なんて無いしねw 情報を出せば尊敬が得られるから気分が良いけど、無くす物なんて何も無いもんね。 自分からおいこら呼ばわりしておきながら、質問者のマナーがわるいと文句と罵倒だけ書き込んでいく自称上級者。 どうせ過疎スレなんだし質問ぐらいいいだろ。 答えられないバカの僻みか? ぶははは、だからオープンソースだって逝ってるだろwww オープンソースだから、何だって? 日本語が不自由な方がいらっしゃるようだが。 いや、不自由なのは頭か。 > 結局のところ、検索って奴はいろんなサイトを見て回って > ゴチャゴチャと大量の広告を見せられた挙句、 > ネット上に散りばめられた情報を一個一個拾い集める糞つまらなくて脳の無駄遣いな作業なんだよ。 > だから掲示板で質問して一発でほしい情報を得ようとするわけ。 > お分かり? > ここで質問してる子は賢いわw ソース見れば答えが書いてあるじゃん。しかも一箇所に纏まってて便利だよね。 勿論、広告も無いし、過疎スレで指くわえて待つ必要もないし。 ソース読めば一発で欲しい情報は自分の都合で得られるよね。 オープンソースって便利だね。 >>467 お前、そんなことばっかり言ってるからプログラマはなめられるんだよw 俺は質問者じゃねーもん 別にお前に答えてもらおうなんて思っちゃいねーよw ただ単に、質問に答えられないで僻んでるザコがいるなぁwと笑って見てるだけ 俺は教えるなんてめんどくさいことはしないから質問者はスルーだよw 最近、ほんと無駄に煽って答えを得ようとする奴がいるよね。 同一人物かな?不愉快だわ。 高圧的な態度で掲示板に「自分で調べろ」としか書けない自称上級者様のお言葉でした^^ >>476 そういう人がいるから質問者のマナーも悪くなるんだよね。 お互いに謙虚にならないといけないと思う。 【レス抽出】 キーワード:自称上級者 抽出レス数:3 しばらく見ないうちにすっかり寂れてもうて・・・ hp webOSは標準でSDL搭載。SDLがメジャーで陽の目を見たな。 ttp://developer.palm.com/index.php?option=com_content&view=article&id=1989&Itemid=331#CoreTechnologies iPhoneやDS向けにも開発できるようになってる ttp://www.galaxygameworks.com/ なんかSDL 1.3色々変わってるね。 個人的にはSDL rendering APIの変更が結構影響大きかった。 SDL 1.2 だけど、 Mac で SDL Application テンプレートで作った時、 メニューを作ってくれる割に Command+Q(終了)とかが効かないんだけど、 自分で実装しないといけないの? Command+Q はともかく Command+H(隠す)とか Command+M(最小化)とか Cocoaよく知らないからめどいし Macかどうかで処理の分岐が必要になるのが嫌なんだけど仕方ないのかね >>482 SDL が使われる主要な目的を考えると、Command+H 等が勝手にメニュー処理に 取られちゃったら困るんじゃない? それらの処理を自分で実装するのはそれほど難しくないと思われ。 mac.m みたいなファイルを作って Mac OS X 専用のルーチンをまとめておけば ソースコード上もスッキリするんじゃないかな。 >>479 そのソフトウェアスタックを見ると、Zen of Palm はまだ生きてるんだなあ >>483 確かにフルスクリーンでも効いちゃったら困るとかありそうなので自前で実装した なるべく#ifdef使いたくなかったけどこれは仕方ないね・・・ Command+Qで終了するのを自前で実装したけど、 終了直前にビープ音らしき音が鳴るのが気になる。 SDLのイベントでキー判定しているのがまずいのだろうか… >>487 無効なキー入力をしたときに鳴る音と同じ音が鳴るんだよね。 たとえばアプリ実行中にCommand+Aなどの無効なキーを入力するとビープ音(うちだとFunk)が鳴るんだけど、 その音が鳴りながらアプリが終了する(のでビープ音も途中までしか鳴らない)。 具体的には以下のコードみたいに終了イベントやキーを受け取ってメインループを終わらせてる。 もっとちゃんとショートカットキーを実装する方法があるのかな。 SDL_Event event; while (SDL_PollEvent(&event)) { if (event.type == SDL_QUIT || event.type == SDL_WINDOWEVENT && event.window.event == SDL_WINDOWEVENT_CLOSE || event.type == SDL_KEYDOWN && event.key.keysym.sym == SDLK_q && (event.key.keysym.mod == KMOD_LGUI || event.key.keysym.mod == KMOD_RGUI)) { done_ = true; // メインループを抜けさせる } } 俺はCommand+Qで終わる時は SDL_QuitEvent event = { SDL_QUIT }; SDL_PushEvent((SDL_Event*)&event); って終了イベント投げてるけど そもそも無効なキー入力で音が鳴るという現象がうちは無いんだよな・・・ どんなキーでも押せば全部SDL_KEYDOWNに流れてくるので 有効無効とかがそもそもない気がする >>489 短いテストコードを書いてSDL 1.3、SDL 1.2のそれぞれhg先端を使ってコンパイルしてみた。 Command(RMATAまたはLMETA)+Q を押すと0.5秒待った後アプリ終了。 0.5秒待つのは音が鳴るのを確認するため。 http://ideone.com/TiLg8 SDL 1.2 … Command+Qなどを押しても音が鳴らない。 SDL 1.3 … Command+Qなどを押すとビープ音が鳴る。 ということで今のところ「SDL 1.3を使う」が原因っぽい。 対応は考え中だけど、深追いするとハマリそう… >>453 SDLのビルド手順が掲載されているサイトはありませんか? 教えていただければ幸いです。 環境によるだろ ソース落としてREADME.fooとINSTALL読め http://www.libsdl.org/download-1.2.php 特殊な環境でない限りソースからは入れないけどな 1.2.14をLinuxに試しに入れてみた、それ以外は知らん SDL_image を使ってpng画像を使えるようにしようと思って gccを使ってコンパイルまでできたのですが、 実効しようとしたら以下のようなメッセージが表示されて実行できません。 libpng warning: Application was compiled with png.h from libpng-1.4.2 libpng warning: Application is running with png.c from libpng-1.2.43 libpng error: Incompatible libpng version in application and library どういう意味なのでしょうか? 解決策を教えてください。お願いします libpng error: Incompatible libpng version in application and library >>494 アプリケーションとライブラリのlibpngのバージョンに互換性がない と言うことですか? SDL_imageをコンパイルした時に使ったlibpngのバージョンと 実行するときに使おうとしてるlibpngのバージョンが違う 短い音だとやっぱMix_PlayChannelが終了する前に Mix_ChannelFinishedで登録した関数がコールバックされる事とか、 もっと言えば終了とコールバックが同時実行されるとか、 何も対策しなければスレッドアンセーフな状況になるの? 2バイト文字と1バイト文字が混載しているテキストデーターから文字を1文字ずつ切りだして SDL_ttfのTTF_GlyphMetrics()関数の第2引数に送って第7引数のトータルの文字幅を求めるコードが必要になったんだが Unidodeに変換するためにiconvを使うとしたらどういう実装にすればいいかな? SDL.dllだけ1.3に差し替えたら SDL_imageがセグメンテーションエラー起こしやがった・・・ imageも作りなおさないといけないのか・・・ >>500 逆になぜそのまま動くと思ったのか知りたい。 たぶん、全然別物だって知らなかったんでしょ。 1.2.14→1.3って番号だけ見ると互換性ありげだし。2.0とかにしちゃえばいいのにね。 英語ブログでオッサンが 1.3とsdl-imgeでvery fineみたいなこと言ってたから とりあえずぶち込んでみたんだ なんかjpegがビルド失敗するしあきらめるか SDL1.3期待したがmacの日本語入力ができないなぁ 自分で作るか・・・ SDL1.3もLGPLですか? なんか商用ライセンスとか書いてあるような…… >>505 新しい方のページにzlibライセンスって書いてあるし、パッケージ本体にもそう書いてある。 1.2時代のページには1.3もLGPLとか書いてあって紛らわしいな。 とはいえ、sdl_imageとかsdl_mixerなんかzlibライセンスにならない限り、あんまり意味無いかも。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる