問題タブ [renderscript]
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.
android - Renderscriptの透明度/アルファ
私はICSを使用していて、通常のビューの上に透明なRenderscriptレイヤーを表示しようとしています。RSを使用してアプリにテキストを描画したいと思います。
私はsetAlpha(8、8);を使用しています。レイヤーがBGRA(dumpsys SurfaceFlinger)を生成したことがわかります。
私のRSスクリプトは単にこれを行っています:
このRenderscriptレイヤーの描画テキストを通常のビューの上に表示できるようにしたいと思います。
私のメインアクティビティは、setContentViewを2回使用します。1つはメインビュー用で、もう1つはRS用です。このアプローチが間違っている場合でも、少なくともアプリの背景を見ることができるはずですが、黒と「Hello!」しか見えません。すべてをカバーする白のテキスト。また、2つの異なるアクティビティを使用してみましたが、RenderScriptレイヤーを透過的にすることはできませんでした。
何か案は?
java - Allocations を使用して Android RenderScript との間で配列値を渡す方法
Microsoft Accelerator が機能するのと同様に、プログラマーが簡単に使用できる API を作成する目的で、最近 RenderScript を使用しています。
RenderScriptレイヤーとの間で値をやり取りし、すべてを可能な限り最も効率的な方法で実行したいので、現時点で立ち往生している問題は、これまでのソースコードの抜粋です。
これは、2 つの基本的な配列を作成し、それらに値を入力して、それらを RenderScript に送信する関数を呼び出すだけです。
これにより、値のペアが次の RenderScript コードに送信されます。
しかし、これには 2 つの問題があります。最初の 1 つは RenderScript の非同期性です。これは、Java レイヤーが値を要求したときに、スクリプトがまだ操作を実行していないか、既に実行しており、出力の値を破棄することを意味します。そして次の仕事を始めました。また、RenderScript のデバッグ可視性が低いため、判断する方法がありません。
もう 1 つの問題は、あまり効率的ではないことです。コードは常に RenderScript 関数を呼び出して 2 つの数値を加算しています。理想的には、配列を RenderScript に渡し、それを構造体に格納して、操作全体を多数ではなく 1 回のスクリプト呼び出しで実行したいと考えています。しかし、それを取り戻すには、rsSendtoClient関数を使用する必要があると思いますが、使用方法に関する資料は見つかりませんでした。できれば rsForEach 戦略を使用したいのですが、やはり情報は怖いものです。
誰かに何かアイデアがあれば、私はとても感謝しています。ありがとう。
ウィル・スコット・ジャクソン
android - すべてのユニフォームをフロートに変換する Renderscript GLSL シェーダー
renderscript 用の GLSL でカスタム シェーダーを作成するとき、プログラム ビルダーは、指定された型に関係なく、一様定数としてバインドする構造体のすべてのメンバーを float または vec に変換しているようです。また、コンパイル時に次のエラーを報告している制服があります:「プログラムをリンクできませんでした、L0010、制服「ここの制服名」は精度が異なります。」. 頂点シェーダーとフラグメント シェーダーに別々にバインドする 2 つの異なる構造に、同じ名前の uniform があります。
[編集] 2番目の部分への回答をありがとう。最初の部分に関しては、より明確にしようとします。Java 側でシェーダー プログラムをビルドするとき、renderscript 構造にバインドされた Java 変数を入力として、定数をプログラム ビルダー (頂点とフラグメントの両方) にバインドします。すべてがうまく機能し、すべての float 変数は、シェーダー プログラムでユニフォームとして完全にアクセスできます。ただし、構造体に bool 型や int 型などのメンバーが含まれていて、if (i == UNI_memberInt) (i はシェーダーで宣言された整数カウンター) などを試みた場合、または if (UNI_memberBool) の行に沿ってエラーが発生します。 「int と float を比較できません」または「if() 条件はブール型である必要があります」これは、データが GLSL プログラムに完全に到達していないことを示唆しています。GLSL では 0 の float 値が常に正確である必要があるため、それらを float 値にして 0.0 などを使用することでこれを回避できますが、私には粗雑に思えます。for ループで UNI_memberInt を停止条件として使用しようとすると、同様のことが起こります。
android - Renderscript で回転したテキストを描画する
Renderscript で rsgDrawText を使用して、90 度回転したテキストを表示しようとしています。Font クラスと rsgDrawText 呼び出しは、テキストの向きをサポートしていないようです。アクティビティを縦向き/横向きに回転させることはできないため、これを実現する別の方法を見つける必要があります。頂点シェーダーに rsMatrixRotate を使用していくつかの実験を試みましたが、テキストはこの変換の影響を受けないようです。別のアクティビティの上に Renderscript を使用してテキストのみを描画する透明な表面を使用しています。したがって、サーフェスの向き自体を変更するようなことは、おそらくうまくいくでしょう。Renderscript で 90 度回転したテキストを描画するにはどうすればよいでしょうか?
android - Renderscriptエラー
AndroidソースからAndroidGrassライブ壁紙コードを抽出しています。
私はそれをAndroidプロジェクトに入れました。
それを実行して壁紙チューザーに移動して選択すると、おそらくOpenGLとRenderScriptに関連するこのエラーが発生しますが、問題が正確に何であるかを理解できません。
ご協力いただきありがとうございます。
android - SurfaceTexture を RenderScript と組み合わせて使用する
AndroidのGPUでカメラ画像処理をしたいです。
現在のセットアップでは、SurfaceTexture を使用して、カメラ イメージ ストリームからフレームを OpenGL ES テクスチャとしてキャプチャします。これは、シェーダーでアクセス可能なカメラ ストリームを取得する効率的な方法です。( http://developer.android.com/reference/android/graphics/SurfaceTexture.html )
ここで、OenGL ES を直接使用する代わりに、新しい RenderScript API の使用を開始したいと考えています。( http://developer.android.com/guide/topics/renderscript/index.html )
しかし、SurfaceTexture を作成するには、openGl テクスチャ ID をコンストラクターに渡す必要があります。残念ながら、テクスチャ ID は利用できません (RenderScript は Allocation クラスを使用してテクスチャをロードしますが、これはテクスチャ ID を公開しません)。そのため、RenderScript を使用すると SurfaceTexture を作成できません。
renderscript に関するすべてのドキュメント (まだかなりまばらです) を読み、サンプルを確認しましたが、この件に関する情報はありません。
私の質問は次のとおりです。SurfaceTexture を RenderScript と組み合わせて使用することは可能ですか、または RenderScript グラフィックス スクリプトでライブ カメラ ストリームを使用する他の効率的な方法はありますか?
renderscript - BluestacksはRenderscriptをサポートしていますか?
ほとんどの人は、3.xを超えるAndroidエミュレーターがRenderscriptをサポートしていないことを知っているでしょう。今、私はBluestacksと呼ばれるAndroidプレーヤーを見つけました(ほとんどの人はそれを知っていると思います)。だから私は、それが私だけなのか、BluestacksもRenderscriptをサポートしていないのかを尋ねたかったのです。
よろしく、アフマド
android - C コード ファイルを 1 つの C コード ファイルに結合する
libx264 を renderscript に変換しています。これは、少し大きなプロジェクトを renderscript に移植するのにどれだけの作業が必要かを確認するためです。renderscript の難点の 1 つは、自動的に Java インターフェイスを取得しないように、すべてを static として宣言する必要があることです。また、この自動 Java インターフェイスは、ポインタ、マルチ次元配列などを処理できません。したがって、libx264 では、すべての関数とグローバル変数を static として宣言する必要があります。また、それを制御するための呼び出し関数もいくつかあります。
私の問題は、すべてが静的であると宣言されているため、すべてのコードを 1 つのファイル スコープに含める必要があることです。すべての C コード ファイルを 1 つにインクルードしてコンパイルすることから始めました。libx264 自体に異なる前処理マクロ定義を含む C ファイルが含まれていなければ、これは非常に簡単に機能しました。もちろん、これを手動で処理することもできますが、ツールを使用すると簡単になります。
Cプロジェクトを取り、それを1つのCファイルに前処理/マージし、再宣言、競合する宣言などを管理できるツールを誰かが知っているかどうか尋ねています.
そして、ヒープの割り当てが難しい問題になると思いました...
java - Renderscript カルーセルの例
の経験はあまりありませんがRenderscript
、もう少し学びたいと思っています。Google からこの例を見つけましたが、実際に自分の画像をカルーセルにロードする方法がわかりません。
複数の画像をカルーセルにロードすることについて混乱していAdapter
ますBitmap
.
私はいくつかの調査を行いましたが、経験の少ない人にとって確かな例を見つけるのは困難です. 誰かがリソースや、自分の画像をカルーセルにロードする方法の例を提供してくれますか?
android - Android Renderscriptで畳み込み乗算を作成するには?
Android Renderscript は初めてです。最終的なアプリケーションは Android で実行されるため、RenderScript で畳み込み乗算を記述する必要があります。データストリームは画像になります。より具体的には、forEach 機能を使用してコア ロジックを作成することはできません。Java で作成することはできますが、速度が遅すぎます。助けてください!スティーブ