2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

SDLスレ ver.2.0

1 :名前は開発中のものです。:2006/02/28(火) 20:40:12 ID:MvXDyxzs.net
マルチプラットホームな汎用ゲームライブラリの
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/

631 :名前は開発中のものです。:2012/01/25(水) 00:32:16.96 ID:tvlMzkkZ.net
1.3でデバイスロストってどうしたら検知できる?

632 :名前は開発中のものです。:2012/01/25(水) 22:32:34.92 ID:UZOna2ju.net
[SDL] Creating SDL2
ttp://lists.libsdl.org/pipermail/sdl-libsdl.org/2012-January/083550.html

SDL 1.3はSDL 2.0になった模様。
それに伴いライブラリの名前が変更されるため、SDL 1.2との共存が可能となる。
周辺ライブラリの名前もSDL2_imageなどに変更されるみたい。


633 :名前は開発中のものです。:2012/01/25(水) 22:54:37.64 ID:UZOna2ju.net
あと、SDL 2.0からSDL 1.2互換APIが削除されたようだ。
test以下の古いAPIを使ったサンプルもいくつか削除されている。


634 :名前は開発中のものです。:2012/01/26(木) 02:03:45.45 ID:hy9QEPBt.net
動いてるなって感じだ。
思いがけずスレのタイトルと一致したな

635 :名前は開発中のものです。:2012/01/26(木) 04:56:55.57 ID:GkYk9Qvu.net
ウィンドウの生成とサウンド部分にのみSDLを使用したいのですが、
その場合、普通に生のGL描画関数を直接使えるでしょうか?
SDLでラップされてる?描画関数を使わないって事ですが。


636 :名前は開発中のものです。:2012/01/26(木) 08:02:27.19 ID:cL0e3CE0.net
>>631
Direct3Dレンダラの話でいい?詳しくないけどソースを読んだか印象では、
SDLの関数がデバイスロストが原因でエラーを返した場合、
エラーメッセージにDEVICELOSTという文字列を含めるのでそれで判定する感じかな。
例えばSDL_RenderPresent()内部でIDirect3DDevice9::Present()がデバイスロストのエラーを返すと、
SDL_GetError()は"Render(): DEVICELOST"という文字列を返す。

>>635
ttp://mono.kmc.gr.jp/~nojima/hiki/?2D%A5%B2%A1%BC%A5%E0%A4%CE%A4%BF%A4%E1%A4%CEOpenGL%2FSDL%C6%FE%CC%E7%281%29
ここで紹介されているようなこと?


637 :名前は開発中のものです。:2012/01/26(木) 08:05:08.72 ID:cL0e3CE0.net
>>636 前半の最後の行間違えた。
SDL_GetError()は"Present(): DEVICELOST"という文字列を返す、です。


638 :635:2012/01/26(木) 09:36:47.17 ID:GkYk9Qvu.net
>>636
まさにこういう事でした。ありがとう

SDL1.2だとOPEN_GL3以降に対応してないとか、どっかでちらっと見たような気がしたので
完全にGL関数がSDLにラップされてて、いちいち経由しないと
使えないようになってるのかと勘違いしました。

639 :名前は開発中のものです。:2012/01/26(木) 15:06:49.79 ID:hy9QEPBt.net
>>636
わざわざソースまで追ってもらって申し訳ない。ありがとう。

でもSDL_RenderPresentって返値voidなんだよなー。
他の関数は失敗したら0以外を返すからGetErrorで調べろ、みたいな感じなのになんでこれだけ、という気がする。
Presentが失敗する環境が少数派(Direct3Dだけ?)なのか。

640 :名前は開発中のものです。:2012/01/27(金) 01:39:11.30 ID:RZZo4+FU.net
>>639
SDL_RenderPresent()の戻り値はvoidだけど、
内部ではIDirect3DDevice9_Present()のエラーチェックを行なってて、
かつ実際にエラーが起きたらSDL_GetError()が返すメッセージを設定している。
なのでデバイスロストが起きたらSDL_GetError()で拾えるはず(良い方法ではないとは思う)。

ただ、D3Dレンダラのソースを読むと、ちまたのデバイスロスト関連記事にあるような
リソースの破棄だとかその手の処理がなくて、単に無視しているように見える。
この振る舞いが正しいかどうか分らないけど、実際困るようなら開発者に働きかけるのが良いと思う。

総レス数 814
214 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★