問題タブ [nifty-gui]
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.
maven-2 - Maven インストール ファイルが pom.xml を生成しない
次のコマンドを使用して、いくつかのサードパーティの jar をリポジトリにインストールしました。
ただし、mvn compile を実行すると、maven は、リポジトリに pom ファイルがないことを訴え、ダウンロードを試みますが、リモート リポジトリで公開されないことはありません。
Maven からの正確なメッセージは次のとおりです。
では、maven にその jar の pom ファイルを生成させ、それをローカル リポジトリに配置するにはどうすればよいでしょうか。
java - イメージを Java アプリケーションのアセット フォルダにロードする方法
nifty-gui [1]でjava web startを使ってJavaアプリを作ってみます
ユーザーが画像のアップロードをクリックすると、ファイル チューザーが表示されます (FileOpenService)
その後、画像は画像コントロールに表示されるはずです。
残念ながら、nifty-gui はアセットの画像しか使用できません。
この画像をアセットにダウンロードする方法は? FileContent クラスのデータを使用して実際の画像を変更する方法はありますか?
java - Nifty GUI ScreenController が入力を飲み込むようにする
私の Slick2D ゲームではNiftyOverlayBasicGameState
、Nifty GUI オーバーレイを使用して を拡張し、PlainSlickInputSystem
. ほとんどのオーバーレイ画面では、Nifty GUI がすべての入力を無視してGameState
.
ある特定の画面で、すべての入力が基になる画面に到達するのを防ぎたいのGameState
ですが、これはすべての画面ではなく、1 つの画面でのみ発生するようにしたいと考えています。
これは Nifty GUI を使用して可能ですか、それとも間違ったアプローチを取っていますか? 個々の画面で異なる入力処理動作を指定できますか? または、代わりに、GameState
Nifty GUI で入力を処理する 1 つの画面に対して、別の Niftyu GUI 入力システムを使用する別のシステムを使用する必要がありますか?
java - 気の利いた GUI レイアウト
私は JME3 ゲーム エンジンは初めてですが、Android XML GUI レイアウトがかなり優れていることは知っています。ここには単純なレイアウトがあり、何が間違っているのかわかりません。ここに私のXMLコードがあります:
テキストを表示するまで、すべてうまくいきます。さまざまな配置を試し、テキストを別のパネルに移動しようとしましたが、何をしてもテキストが画面の中央に表示されません。これまでのところ、常に左上隅にあり、テキストの右下部分しか見えません。シンプルなものでなければならないと確信していますが、私はこれに慣れていないので、何も気づいていません。事前に助けてくれてありがとう。
java - 外側のクラスのメンバー変数は内側のクラスにヌルです
JME3とNiftyGUIを使用してゲームに取り組んでいます。Nifty
メンバー変数を持つ外部クラスがあります。また、内部クラスは、アクセス修飾子に関係なく、その変数にアクセスできる必要があります。Nifty
コンストラクターで、新しいオブジェクトをコンストラクターに割り当てます。ただし、内部クラスでその変数にアクセスすると、問題が発生します。少しデバッグを行ったところ、内部クラスがNifty
メンバー変数がnullであると見なし、その理由がわからないことがわかりました。外側のクラスではnullではありません。これはJME3ゲームなので、内部クラスにAppState
インターフェイスを実装させようとしましたが、それでもNifty
メンバー変数がnullとして表示されます。コードは次のとおりです。
quitButton()
メソッドを呼び出す終了ボタンをクリックするとどうなりますか。それはうまくいきます。showDialog()
これにより、問題が発生する場所が呼び出されます。showDialog()
メソッドにはこの行があり、あるべきではないときにnullになるpopup = new Nifty().createPopup("popup");
行にあります。mNifty
どんな援助も大歓迎です。
opengl - Nifty GUIで座標系を使用するにはどうすればよいですか?
さまざまな理由から、私はopenGLでピクセル以外の座標を使用するのが好きです。これは、次の方法で簡単に設定できます。
ただし、Nifty GUIをアプリケーションに統合しようとし始めたので、この適切なスケールが問題を引き起こしています。つまり、Niftyは、openGLがピクセルを単位として使用していると考えているようであり、したがってすべてが巨大になります。これを修正する方法はありますか?
java - 気の利いたGUIコントロールは、アプリケーションの残りの部分がレンダリングされないようにします
私はniftyguiを使用してopenGl(LWJGL経由)アプリケーションにいくつかの基本的なGUI要素を追加しようとしていますが、組み込みのniftyを使用して、アプリケーショングラフィックの上にパネルと静的テキストをレンダリングすることに成功しています。コントロール(編集可能なテキストフィールドなど)により、アプリケーションの残りの部分はレンダリングされません。奇妙な部分は、GUIコントロールをレンダリングする必要さえなく、単にこの問題を引き起こしているように見えると宣言することです。
問題の基本的なレイアウトを示すコンパイラ対応コード:
scala - 2D GUI (nifty-gui) で 3D オブジェクトを正しくレンダリングするにはどうすればよいですか?
私はこのコードを持っています: https://github.com/magicgoose/lwjgl-nifty-test-project
GUI のみをレンダリングすると、期待どおりに動作します。三角形を (透視投影で) レンダリングしてから GUI をレンダリングしようとすると、すべてが失敗し、GUI でさえ正しくレンダリングされません。黒い背景に文字しか表示されません。draw_something()
(メソッド内のステートメントのコメントを外すと発生
しdisplay(...)
ます)
私が間違っていることは何ですか?背景に気の利いたGUIと3Dグラフィックを使用した実用的な例を探してみましたが、うまくいきませんでした。
更新 1
datenwolf の回答に基づいてコードを変更しました。GUI は正常にレンダリングされるようになりましたが、白い三角形が数ミリ秒しか表示されません (実際には 1 つのフレームにあるのでしょうか?)。3D セットアップが「破損」しているようです。 ...これは、GUIをレンダリングした場合にのみ発生し、行にコメントするとgui.render(false)
、白い三角形が画面に残ります。
更新 2
3D パーツにいくつかのモーションを追加しました (リポジトリの更新を参照)。三角形がほとんど見えなくなっていることがわかります (Z ファイティングのように見えます)。
java - フォントファイルの場所を気の利いたGUIに伝えるにはどうすればよいですか?
デフォルトのスタイル jar にバンドルされているデフォルトのフォントを使用するのにうんざりしているので、いくつかのビットマップ フォント ファイルをダウンロードし、使用するファイルをワークスペースからの相対パスで指定するのと同じくらい簡単だと考えました。
例えば
残念ながら、これにより次のエラーが発生します。
java.lang.RuntimeException: リソースが見つかりません: de.lessvoid.nifty.tools.resourceloader.NiftyResourceLoader.getResourceAsStream(NiftyResourceLoader.java:72) の font/13-Nimbus.fnt ...
したがって、これにより、フォントがどこにあるかを気の利いたものに伝えるために呼び出す必要がある add-resource-location 関数がいくつかあると信じるようになります。しかし、Javadoc を調べたところ、そのような関数が見つかりません。
java - フォントがレンダリングされないのはなぜですか?
私はlwjglで気の利いたGUIを使用していて、それはうまく機能していますが、提供したフォントを使用する方法がわかりません。デフォルトのフォントしかレンダリングできないようです。.fntファイルを含むフォルダーを(Eclipseを介して)ランタイムクラスパスに追加しました。これにより、「リソースが見つかりません」という例外が発生しなくなりますが、プログラムを実行すると、フォントを使用するテキストフィールドは発生しません。 tレンダリングします。
これがソースコードです。左上隅に2つのテキストフィールドが表示され、中央に2つの白い図形が表示されます。デフォルトのフォントを使用しない限り、右側のテキストフィールドはレンダリングされません。