在RenderScript支持库上缺少Mesh类

时间:2014-07-03 17:53:14

标签: java android eclipse renderscript

我正在关注this sample以了解RenderScript。我在project.properties中添加了以下内容:

renderscript.target=19
renderscript.support.mode=true
sdk.buildtools=23.0.2

我写了我的.rs文件,ScriptC_myfilename是在 gen 文件夹中生成的,但android.support.v8.renderscript无法解析为某个类型,所以我添加了renderscript-v8.jar位于 sdk / build-tools / android-4.4W / renderscript / lib 作为库(配置构建路径>>库>>添加外部JAR)并解决了问题。

编码后,我无法编译代码,因为这个错误发现在 gen 文件夹的ScriptC_filename.java上:

Mesh cannot be resolved to a Type

我搜索了这个问题,尝试找到缺少的类,并且我不知道,可能手动将此类作为我项目的一部分实现,因此Eclipse将被允许导入它并修复错误,但我有点困惑,因为即使在android docs上也没有引用Mesh类。

我还尝试在 sdk \ build-tools \ android-4.4.2 \ renderscript \ lib 中导入 renderscript-v8.jar ,并添加{ {1}}但没有成功。

我不知道这是否会有所帮助,但这是我的ScriptC_Snow.java文件(这里的所有内容都是生成的,我没有编辑它),评论是Eclipse上显示的错误

import android.support.v8.renderscript.Mesh

这是我的renderscript代码(.rs文件):

    public class ScriptC_Snow extends ScriptC {
    private static final String __rs_resource_name = "snow";

    public  ScriptC_Snow(RenderScript rs) {
        this(rs,
             rs.getApplicationContext().getResources(),
             rs.getApplicationContext().getResources().getIdentifier(
                 __rs_resource_name, "raw",
                 rs.getApplicationContext().getPackageName()));
    }

    public  ScriptC_Snow(RenderScript rs, Resources resources, int id) {
        super(rs, resources, id);
        __MESH = Element.MESH(rs); //the method MESH(RenderScript) is undefined for the type Element
        __F32_2 = Element.F32_2(rs);
    }

    private Element __F32_2;
    private Element __MESH;
    private FieldPacker __rs_fp_F32_2;
    private FieldPacker __rs_fp_MESH;
    private final static int mExportVarIdx_snowMesh = 0;
    private Mesh mExportVar_snowMesh; // Mesh cannot be resolved to a type
    public synchronized void set_snowMesh(Mesh v) { // Mesh cannot be resolved to a type
        setVar(mExportVarIdx_snowMesh, v);
        mExportVar_snowMesh = v; // Mesh cannot be resolved to a type
    }

    public Mesh get_snowMesh() { // Mesh cannot be resolved to a type
        return mExportVar_snowMesh; // Mesh cannot be resolved to a type
    }

    public Script.FieldID getFieldID_snowMesh() {
        return createFieldID(mExportVarIdx_snowMesh, null);
    }

    private final static int mExportVarIdx_snow = 1;
    private ScriptField_Snow mExportVar_snow;
    public void bind_snow(ScriptField_Snow v) {
        mExportVar_snow = v;
        if (v == null) bindAllocation(null, mExportVarIdx_snow);
        else bindAllocation(v.getAllocation(), mExportVarIdx_snow);
    }

    public ScriptField_Snow get_snow() {
        return mExportVar_snow;
    }

    private final static int mExportVarIdx_wind = 2;
    private Float2 mExportVar_wind;
    public synchronized void set_wind(Float2 v) {
        mExportVar_wind = v;
        FieldPacker fp = new FieldPacker(8);
        fp.addF32(v);
        int []__dimArr = new int[1];
        __dimArr[0] = 4;
        setVar(mExportVarIdx_wind, fp, __F32_2, __dimArr);
    }

    public Float2 get_wind() {
        return mExportVar_wind;
    }

    public Script.FieldID getFieldID_wind() {
        return createFieldID(mExportVarIdx_wind, null);
    }

    private final static int mExportVarIdx_grav = 3;
    private Float2 mExportVar_grav;
    public synchronized void set_grav(Float2 v) {
        mExportVar_grav = v;
        FieldPacker fp = new FieldPacker(8);
        fp.addF32(v);
        int []__dimArr = new int[1];
        __dimArr[0] = 4;
        setVar(mExportVarIdx_grav, fp, __F32_2, __dimArr);
    }

    public Float2 get_grav() {
        return mExportVar_grav;
    }

    public Script.FieldID getFieldID_grav() {
        return createFieldID(mExportVarIdx_grav, null);
    }

    private final static int mExportFuncIdx_initSnow = 0;
    public void invoke_initSnow() {
        invoke(mExportFuncIdx_initSnow);
    }

}

我只使用SDK Manager来获取文件,有什么我想念的吗?任何人都可以给我一个链接,以下载最新版本的renderscript-v8.jar?是否有任何链接可用于查看缺少的类,以便在我的项目中实现它,因此允许Eclipse导入和使用它?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您无法将支持库与rs_graphics.rsh一起使用。它不支持rs_mesh,rs_font或rs_program *等对象。支持库仅用于访问RenderScript计算。