問題タブ [sdl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
3013 参照

c++ - 宇宙シミュレーター/ゲーム用の宇宙船モデルの回転

私はしばらくの間、宇宙シミュレーションに取り組んできました。最初は、ソフトウェア ラスタライザーを備えた独自の 3D エンジンを使用していました。

しかし、テクスチャを実装する時期が来たときにあきらめました。しばらくしてから再開し、代わりに Opengl (SDL) を使用して 3d モデルをレンダリングしています。

しかし今、私は別のレンガの壁にぶつかっています。

適切な回転の仕方がわかりません。宇宙シミュレータなので、fligsim と同様のコントロールが必要です

使用して

モデル (宇宙船) を最初に左に 90 度回転させてから「上」に回転させると、
正しく動作しません。代わりに転がります。

ここに私の問題を説明する画像があります。

画像リンク

これに対抗するためにいくつかのトリックを試しましたが、どういうわけか何かが足りないと感じています. シミュレーター スタイルの回転の例を見つけるのがほとんど不可能であることも役に立ちません。

そのため、例、リンク、および 3D モデル (宇宙船、飛行機など) を回転させる理論を探しています。

向きに 3 つのベクトル (左、上、前) を使用する必要があるのは、スラスターからの加速度や、回転 (向き?) とともに変化するものからの加速度などを計算する必要があるためです。ロケットエンジンのような方向。

私は数学が苦手で、解決策を視覚化しようとすると頭痛がするだけです

0 投票する
2 に答える
1226 参照

c++ - Linux で SDL OpenGL を初めて使用しますが、何が問題なのですか?

Ubuntuでopenglプログラミングを実験するためのコードをいくつか書きましたが、少し前ですが、以前はCについてある程度理解していました. .

これは、sdlを使用したopenglでの最初の実際の試みであり、ここまで到達しました.コンパイルして実行しますが、カメラ機能は何もしていないようです. この種のことを行うためのより良い方法がおそらくたくさんあることは知っていますが、より高度なものに移る前に基本を習得したかったのです.

main.cpp

メイクファイル

コンパイルして実行します。カメラの変換を行う際に助けが必要なだけだと思います。ありがとう

0 投票する
5 に答える
25810 参照

c++ - SDLで一度に複数のキープレスを処理する方法は?

C ++を使用して、UbuntuでSDLを使用してOpenGLプログラミングに慣れてきました。周りを見回して実験した後、私は理解し始めています。SDL でのキーボード イベント処理についてアドバイスが必要です。

私は一人称カメラを持っていて、前、後ろ、左右に機銃掃射し、マウスを使って周りを見回すことができます。ここに私の processEvents 関数があります:

これが機能している間、いくつかの制限があります。最大のものと私の質問の目的は、押された最新のキーのみを処理するように見えることです。したがって、「s」を押して後方に歩き、「d」を押して右に機銃掃射すると、右に機銃掃射することになりますが、後方には移動しません。

誰かが SDL でのより良いキーボード処理、一度に複数のキー押下のサポートなどのために正しい方向に私を向けることができますか?

ありがとう

0 投票する
2 に答える
3880 参照

c++ - C ++でsdl、openglを使用してカメラを移動しているときに奇妙なカメラの回転を修正する方法

私はネット上で読んでまとめたカメラオブジェクトを持っています。これは、前後に移動したり、左右に機銃掃射したり、マウスで見回したりすることさえできます。しかし、私が任意の方向に移動して周りを見ようとすると、あちこちにジャンプしますが、移動せずに周りを見回すと問題ありません。

なぜ私が同時に動き回ることができるのか、誰かが解決するのを手伝ってくれることを願っていますか?

main.h

カメラ.cpp

およびマウスモーションコード

0 投票する
3 に答える
2702 参照

linux - SDL サポートと XWindows なしの最小限の Linux ディストリビューション?

次のように x86 Linux ボックスをセットアップしたいと考えています。

  • 最小限のシステム リソースを使用します。
  • XWindowsなしでSDLを実行
  • QEmu を実行するのに十分な機能が含まれています。

基本的には、仮想化のホストのみにして、「クライアント」OSまたはOSでほぼすべてのリソースを利用できるようにして、できるだけ「薄く」したいだけです。

x86で利用できるようなものはありますか?X-WindowsなしでSDLを実行する簡単な方法はありますか?

編集:

そうそう、情報をありがとう Sleske! フレームバッファのコメントは私を正しい方向に向けました! http://www.linux-fbdev.orgに興味がある人にとっては、非常に有望に見えます! FBアクセス用にSDLを構成する方法を今すぐ理解する必要があります。

ピート

0 投票する
1 に答える
166 参照

c++ - プロジェクトをラップトップに移植すると空白の画面が表示される

だから私はSDLを使ってopenGLで何かを作っています。長いフライトをしようとしていますが、ラップトップでプロジェクトを動作させることができないようです。以前にラップトップで SDL を使用したことがあるので、openGL のせいだと思っています。ラップトップは win xp pro で、Intel 945 グラフィックス「カード」を搭載しています。ドライバの更新を試みましたが、効果がありません。私が使用している画像は、ファイルが見つからない場合にプログラムが終了するようにコーディングされているため、問題になることはありません。また、コンパイル時にエラーはまったく発生しません。ウィンドウが作成されるだけで、すべての画像の代わりに白くなります。ただ白い。

何か案は?お願いです、私はこの 5 時間のフライトに乗りたくないのです。

0 投票する
4 に答える
1692 参照

linux - シーングラフエンジンから始めますか、それともopenglダイレクトから始めますか?

私は主にJavaを使用するプロの開発者ですが、暇なときはさまざまな言語やライブラリを試してみるのが好きです。問題は、3D対応のアプリケーションやゲームを開発する方法を学び始めたいということです。そこにはたくさんのエンジンがありますが、それらを直接使用することによって、それらが非常に高いレベルであるため、私は3D開発の基本を学ぶことができないのではないかと心配しています。

シーングラフエンジン、SDLのようなライブラリでプログラミングを開始する必要がありますか、それともopenglでの作業に直行する必要がありますか?

私はすべての開発をLinuxで行っていますが、開発するものをクロスプラットフォームにしたいと思っています。

0 投票する
2 に答える
214 参照

windows - ネストされたopenglキャンバスを作成するための最良の方法は何ですか

特定のウィンドウハンドルにopenglを描画するライブラリを作成したいと思います。

特定のウィンドウ内でopengl-contextを初期化するにはどうすればよいですか?SDLまたは他のライブラリを使用してそのプラットフォームを独立して実行することは可能ですか?

0 投票する
1 に答える
2948 参照

c++ - ゲームエンジンマップエディタ。SDL-> wxWidgets

私はしばらくの間、すべてのウィンドウ管理と移植性のためにSDLを使用するOpenGLゲームエンジンを作成してきました。フルエンジンを使用してレベルエディタを作成したいと思います。エンジン自体は、入力を除いてSDLとはまったく関係がありません。GUIにwxWidgetsを使用したいのですが、非常にシンプルで理解しやすいOpenGLサンプルをいくつか見てきました。

SDLをwxWidgetsと統合して両方を使用するか、異なるアプリケーションで使用するためにそれらを切り替える方が簡単でしょうか?2つのシステムを切り替える最良の方法は何でしょうか?

0 投票する
7 に答える
1228 参照

c++ - このコードはどういう意味ですか?

これは、Visual Studio 2005 で私の単純なプログラムを動作させるために SDL が必要とするコードです。コードは何をしていますか?私がそれを持っている唯一の理由は、私のインストラクターが私にそれを入れるように言ったのに、それを説明しなかったからです.