2つの数値を取得し、それらを追加して結果を返す単純なrenderscript関数を取得しようとしていますが、それをスムーズに行うためのサンプルプロジェクトを見つけることができませんでした。ファイルを読み込もうとすると、奇妙なエラーが発生し続けます。
ScriptC_myexamplescript myScript;
RenderScript rs = RenderScript.create(this);
エラーが発生します:
Symbol not found: .rs.dtor on the next line:
myScript = new ScriptC_myexamplescript(rs, getResources(), R.raw.myexamplescript);
私の.rsファイルは単純なものです。
#pragma version(1)
#pragma rs java_package_name(com.exercise.<my pacakge name>);
void init(){
}
void root(const float *v_in, float *v_out) {
const float *data = v_in;
float *outData = v_out;
*outData = *data;
}
これが何を意味するのか誰かが知っていますか、またはAndroid ICS以降にダウンロードできる単純なプロジェクトがあり、実際に機能するレンダリングではなく、数学を実行しますか?
(レンダリングスクリプトファイルを機能させることはできますが、それは私が望んでいることではありません。グラフィックは必要ありません)
今日編集私はそれを実行させようとしました、そして次の問題を取得します:
Allocation mInAllocation = null;
Allocation mOutAllocation;
float[] A = new float[1];
for (int i = 0; i < 1; i++) {
A[i] = 2;
}
Allocation inFloatPointer = Allocation.createSized(rs, Element.F32(rs), A.length, Allocation.USAGE_SCRIPT);
Allocation outFloatPointer = Allocation.createSized(rs, Element.F32(rs), A.length, Allocation.USAGE_SCRIPT);
inFloatPointer.copyFrom(A); // copies from an array of floats (random numbers in this test case).
mScript.forEach_root(inFloatPointer, outFloatPointer);
エラーメッセージが表示されます。メソッドforEach_rootは、タイプScriptC_RenderScriptに対して未定義です。.javaファイルに関数forEach_rootがなく、プロジェクトをクリーンアップした後でも、まだ存在していません。
ダウンロードできる数学関数だけでダウンロードできる簡単なプロジェクトはありますか?