問題タブ [opentk]
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.
c# - openTK c# 回転キューブの例
C# (visual studio 2008) を使用してスロット マシンを開発しています。プロジェクトで openGL を使用するために OpenTK を使用しています。基本的な機能は完了しましたが、回転可能なキューブを描画するコードを取得できません。
キュードはしばらく回転する必要がありますが、その方法がわかりません。
私たちはこのキューブを試しました
しかし、これはフォームに描画したい
vb.net - VB .NETのOpenTK(OpenGL)
私はVB.NET環境内でopenGLを実行する方法を学ぼうとしていましたが、TaoフレームワークまたはOpenTKが推奨されており、OpenTKの方が推奨されているようです。
私はこれにまったく慣れていないので、単純なボックスや三角形などを実際に描いて、より複雑なものを作成する前にすべてを理解できるようにしようとしています。これまでのところうまくいかなかったので、これまでに行ったことを順番にリストします。簡単な形を描くために、ここの誰かが修正したり、新しい例を提供したりできることを願っています。
1)opentk-2010-10-06.exeを使用してOpenTKをインストールしました
2)新しいプロジェクトで、OpenTK.dllとOpenTK.Compatibility.dllへの参照を追加しました
3)コントロール(opentk.glcontrol.dll)を追加しました
4)フォームに実際のコントロールを追加しました。
オンラインでいくつかの例を使用して、残りを追加しました。
5)私は自分の参考文献を次のように書きました:
6)私のグローバル変数:
7)私は自分のイベントを書きました:
Private Sub GlControl1_Resize(ByVal sender As Object、ByVal e As System.EventArgs)Handles GlControl1.Resize _STARTED = True ResizeGL()End Sub
8)最後に、私はそれらを呼び出しようとしました:
上記の結果は表示されませんので、ご協力いただければ幸いです。
完全な解決策がわからなくても、どんな応答でもいいでしょう。
vb.net - OpenTK OpenGL 描画テキスト
OpenTK を使用して OpenGL を実行する方法を学習しようとしています。これまでのところ、多角形、円、および三角形を正常に描画できますが、次の質問はテキストを描画する方法ですか? C# のホームページの例を見て、それを VB .NET に翻訳しました。
現在、白い四角形を描画するだけなので、誰かが私のコードのエラーを見つけたり、テキストを描画する別の方法を提案したりできることを望んでいました. ペイントイベントをリストします。
ペイント イベント:
c# - OpenTK および GTK# の GLWidget は信頼できますか?
素敵な GUI といくつかの openGL レンダリングを必要とするアプリケーションを作成しています (マウスのクリック座標に基づいて 3D オブジェクトを描画する必要があります)。これをマルチプラットフォームにする必要があるため、モノと OpenTK を使用しています。GUI には GTK# を考えていましたが、GLWidget http://www.opentk.com/project/glwidgetに出くわしましたが、これを自分のプロジェクトに追加しました。 、VBox を使用して単純なウィンドウを作成し、1 つの部門にメニュー バーを追加し、もう 1 つの部門に GLWidget を追加しましたが、プロジェクトがコンパイルされず、次のエラーが発生します: エラー: コンパイラがクラッシュしたようです。詳細については、ビルド出力パッドを確認してください。(GLGTK) GLWidget.dll への参照を追加しました。何か足りないのでしょうか、それともこの GLWidget が機能しないのでしょうか? ところで、私は Monodevelop を使用しています。
c# - モノドロイドでOpenALを使用してオーディオコンテキストを作成するにはどうすればよいですか?
monodroidで新しいオーディオコンテキストを作成しようとすると、openal32.dllが欠落していると言われます。これはモノドロイドであり、OpenalはOpenTKの一部として含まれているため、当然意味がありません。
私は何か間違ったことをしているとしか思えませんが、以前はWindowsでOpenTK / OpenALを使用しており、同様のコードで問題なく管理できました。
とにかくここに問題のあるコードがあります:
そしてここに出力があります:
c# - OpenTKゲームウィンドウを使用しているときにイベントをメインUIスレッドにディスパッチする方法は?
このビデオを見た後、私は現在のプロジェクトでそのようなものをどのように実装できるかを考え始めました。コードの大部分をリアルタイムで編集可能にするのは難しいと思いますが、ゲームをプレイするときに、少なくともOpenGLシェーダーを編集可能にできると思いました。
FileSystemWatcher
だから私は:を設定しました
そして今、ファイルが変更されるたびにシェーダーを更新したいと思います。
問題は、シェーダーファイルを編集するとすぐに、次のような例外がスローされることです。
呼び出し元のスレッドに現在のコンテキストはありません
そこで、掘り下げてみると、OpenGLコンテキストは基本的に単一のスレッドにバインドされていることがわかりました。AFAIK、これには2つの回避策があります。
- メインUIスレッドでOpenGLコンテキストを無効にし、他のスレッドで有効にして、自分の作業を行ってからリセットします
- イベントをメインUIスレッドにディスパッチします
メインスレッドはOpenGL呼び出しでいっぱいなので、(1)をどのように実装するかわかりません...どこで有効または無効にするかわかりません。
したがって、ファイル変更イベントをメインスレッドにディスパッチする方法がわからないことを除いて、オプション(2)が残ります。
この記事は言う:
GLControlは、GLControl.BeginInvoke()メソッドを提供して、セカンダリスレッドからメインのSystem.Windows.Forms.Applicationスレッドへの非同期メソッド呼び出しを簡素化します。GameWindowは同様のAPIを提供していません。
残念ながら、私はを使用しているGameWindow
ので、その機能にアクセスする方法がわかりません。
では、イベントをメインUIスレッドにディスパッチする最も簡単な方法は何ですか?OpenTKライブラリまたは別のできればWindows専用ではないライブラリを使用していますか?
c# - 回転と照明に関する OpenGL の問題
私は、OpenGL 用の OpenTK と C# IDE 用の monodevelop を使用して、単純な太陽系シミュレーションを作成しています。順調に進んでいて、太陽を周回する惑星を適切に点灯させました。問題は、惑星の軸を傾けたいときに始まりました。メソッドに新しい回転を入れても、目に見えて回転しません。球体の照らされた面がどういうわけかその周りを回転するようになると。惑星を軸の周りに回転させる回転の前後に回転を配置すると、法線が壊れているかのように、惑星の上部が奇妙に照らされます。
これは次のように呼び出されます。
したがって、かなり奇妙です。ここでは、法線に問題が生じることはなく、傾きは適切な場所にあるようです。
xamarin.android - opentk.platform.android.RepeatTimerTask で大量の byte[] を割り当てる MonoGame Draw2D サンプル
モノゲーム用の Draw2D サンプルを実行し、Dalvik Debug Monitor の Allocation Tracker を使用しました。次のように大量の割り当てを取得しています。
48 144 バイト [] 11 opentk.platform.android.RepeatTimerTask n_run
これは、opentk.platform.android.RepeatTimerTask 内のバイト配列に割り当てられた 144 バイトです。
RepeatTimerTask に関する情報や、メモリを割り当てている理由が見つかりません。誰でもこれに光を当てることができますか?
c# - MonodevelopでOpenTK GLWidgetを使用してレンダリングするには?
OpenTK と GTK# を使用して開発するために、この GLWidget を使用しようとしています。これは良いことのように思えますが、残念ながらドキュメントがほとんどありません。そのウィジェットで何かをレンダリングする方法を理解しようとしています。これまでのところ、monodevelop ソリューションを作成し、OpenTK と GLWidget への参照を追加しました。Stetic のツール ペインに GLWidget が表示されるようになりました。Vbox を追加し、2 つのスロットがあり、上部のスロットにメニュー バーを追加し、下部のスロットに有名なGLWidget。OnRender イベントと Initialized イベントのイベント ハンドラーも作成しましたが、三角形も描画できません。誰かが GLWidget を使ったことがあり、私にアドバイスを与えることができますか? これが私のMainWindow.csコードです:
}
ちなみに、GLClearColor の値を変更すると、GLWidget の背景色が変更されます。