問題タブ [blit]

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 投票する
2 に答える
804 参照

python - ソフトウェア設計と開発専攻: Pygame Smudge Trails

まず、オンラインで検索し、このWebサイトで解決策を探しましたが、試したものが機能しないため、個々の質問とコードを投稿することにしました. このプログラムは、Python 3.2.2 と対応する互換バージョンの pygame を使用して作成されました。また、スプライト、スプライト グループ、および「dirty rect」更新を使用することがより効率的な方法であることも認識していますが、プログラムを変換できないため、そのような機能の追加の利点なしで続行します。

問題: 「小惑星」が移動している場所に跡が残ります。
仮説: 背景は画面にブリットされますが、小惑星は背景にブリットされます。

返信してください - ところで、私は AUS の高校生です :D

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

text - pygame のテキストを削除/置換する方法

私はpygameにかなり慣れていないので、答えが見つからない最初の切り株にぶつかりました..

テキストをブリットした後、同じ変数の文字列を変更すると、ゲームは元のテキストを新しいテキストに置き換える代わりに、2 つのテキストをオーバーラップさせます..?

0 投票する
9 に答える
3808 参照

c# - 型が blittable かどうかを確認する最速の方法は?

私のシリアライザー/デシリアライザーには、次のスニペットがあります。

その目的は、値型の配列を可能な限り最も効率的な方法で (つまり、コンテンツをバイトの集まりとして) ストリームに書き込もうとすることです。

問題は、型が値型であるが blittable ではなく、Alloc() が失敗した場合に発生します。現時点では、例外がキャッチされ、参照型で構成されているかのように配列を処理するコードに制御が渡されます。

ただし、このチェックは (例外のスローとキャッチが非常に遅いため)、アプリケーションで遭遇する値の型の数が原因で深刻なボトルネックであることが証明されています。型がblittableかどうかを確認する最速の方法は何ですか?

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

pygame - pygame:画像の長方形ではない部分をどのようにシェーディング/ブリットしますか?

だから私は画像に影を付ける方法を知っています。そして、画像の長方形の部分をブリットする方法を知っています。しかし、たとえば、三角形はどうでしょうか。それとも台形?(例: http://i.imgur.com/Gtwhs.png )

0 投票する
0 に答える
496 参照

opengl - フラグメント出力が vec3 の場合、glBlitFramebuffer() は空の画面をレンダリングします

私は OpenGL 4.0 を使用していますが、以前は 3.3 を使用していました。3 つの出力を持つフラグメント シェーダーがあります。 screen.今、出力をvec4タイプに設定すると正しく機能することがわかりました.理由がわかりません! 私の FBO テクスチャは RGB32F に設定されているので、フラグメントから vec3 を受け入れることができるはずです。これが私のFBOセットアップです(これはJava LWJGLラッパーですが、ここでは関係ありません):

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

python - Pygame で画像を分割する

pygame に 200x200px の画像があり、半分にスライスしたいので、2 つの形状は 100x200px になります。その後、画面上の 2 つの新しい画像を、その間に一定量のピクセルを置いてブリットしたいと思います。このような方法で画像を分割/トリミングするにはどうすればよいですか?

編集 - 修正!pygame.transform.chop()と を使用して、自分でこれを理解することができましたpygame.transform.rotate()。しかし、助けてくれてありがとう。Tankor Smash のおかげで、もう少し詳しく知ることができました。

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

c++ - glBlitFramebuffer 無効な操作

フレームバッファをいじり、テクスチャにレンダリングして、それらをブリットする必要があることに気づきました。繰り返しになりますが、一部のマシンではGL_INVALID_OPERATION、呼び出しの後に権利が得られglBlitFramebufferます。フレームバッファにバインドされた各テクスチャは、すべて同じサイズとパラメータで、まったく同じ方法でセットアップされます。また、1 つのテクスチャ全体 (以前は正常にレンダリングされたもの) を別のフレーム バッファにブリットしようとすると、書き込み先の「四角形」だけが読み取り元の四角形よりも小さくなります (たとえば、テクスチャの 4 分の 1 にブリットしたい場合)。画面)、それもスローしGL_INVALID_OPERATIONます。

編集: 実際には、読み取りおよび描画する四角形が異なるサイズになると常にエラーがスローされるため、異なるサイズのテクスチャ、または同じサイズで異なるサイズの「レンダリング先」領域にブリットすることはできません。 ..?

手動で生成されたフレームバッファにブリットするたびに、ステータスがチェックされglCheckFramebufferStatus、常に が返されますGL_FRAMEBUFFER_COMPLETE

-史上最大のスニップ-、短い「ソースコード」については以下を参照してください。明らかにいくつかのC++エラーがあり、完全ではありませんが、GL呼び出しのみです

スクリーン フレームバッファをターゲットとして (NULL を渡すことにより) ビューポートの最後のメソッド (Viewport::blit) を呼び出すと、OpenGL エラーが発生します。最初に独自のフレーム バッファの読み取りバッファを設定し (描画バッファは既に設定されています)、次に RenderTarget::blit を呼び出しますglBlitFramebuffer。blit メソッドでは、両方のバッファーをバインドしglCheckFramebufferStatus、エラーを返さない呼び出しを確認できます。

これを何度も読んでいますが、原因となるエラーを見つけることができないようです。私が使用するカラーバッファをブリットするときGL_LINEAR、それ以外の場合はGL_NEARESTすべてのカラーバッファGL_RGB32Fを内部フォーマットとして使用し、深度バッファ(ブリットしない)を使用しますGL_DEPTH_COMPONENT32F

短い例である EDIT は、すべての GL 呼び出しを取得し、使用したパラメーターを埋めただけです。

フレームバッファ/テクスチャの作成:

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

assembly - ARM cortexm4DSPコードでの高速1ビット透明度ブリット

ビットバイトからメモリにバイトを設定したいのですが、指定された透過バイト値と等しくない値のバイトを設定します。

概略的にやりたいこと:

つまり、Cまたはアセンブリ(またはCがアセンブリから逆変換されたもの)で、値とは異なるバイトのみを設定します。

より高速にするために、32ビットロード、srcとdst間のSEL操作、および32ビットストアの使用を検討しました。ただし、APSR.GEにあるマスクを設定する必要があります。

私が間違っていない場合、VALUEでSIMD比較(USUB8を使用)を実行すると、結果がVALUEに対して> =または<であるかどうかのみがチェックされ、それらが等しいかどうかをチェックすることはできません。(もちろん、VALUEを0または255に制限して、1日と呼ぶこともできます...)

もう1つの可能性は、srcで事前に計算されたマスクを使用してから、手動でAPSR.GEを設定することです(可能ですか?)が、1)メモリを使用します、2)3)前にデータを保持することが常に可能であるとは限りません。バイトごとのアクセスよりも高速です。

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

python - pygame:ブリットの宛先位置が無効です

間違った情報は次のとおりです。

コードは次のとおりです。

vector2 のコードは次のとおりです。

このコードだけでなく、vector2 を必要とするすべてのコードがこの質問に適合しました: blit の宛先位置が無効です

私は何か間違っていますか?

どんな助けも大いに必要です。

ギルバートちゃん

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

actionscript-3 - 1 つのビットマップで複数のアルファ マスクを結合する

私はビットマップの 2 つのレイヤーを持っています:
1 番目 - いくつかのランダムなイメージ
2 番目 - 1 番目のビットマップをカバーする黒色で塗りつぶされたビットマップ
また、マスク ビットマップがあります。私はこのようなものを作ろうとしてい
ます https://dl.dropbox.com/u/13089585/so/001.jpg
しかし、私はこのようなものを手に入れます:
https://dl.dropbox.com/u/13089585/so/002 .jpg
を使用して、さまざまなパラメーターの組み合わせを使用してこれを実行しようBitmapData::copyPixelsBitmapData::copyChannelBitmapData::drawましたが、まだ作成できません... dest のアルファ値をオーバーライドするメソッドが必要です。ただし、この値が src よりも大きい場合のみ。ビットマップ。