如果你能够从你的原始文件夹中读取obj文件

LoaderOBJ objParser = new LoaderOBJ(mContext.getResources(),mTextureManager,R.raw.camero_obj);

而不是从您的SD卡,您必须在文件中进行以下更改:

在你的obj文件中,必须在你的SD卡中保存为_obj(所以对于同一位置的_jpg和_mtl)

在你的情况下:

mtllib 1c_mtl

v -0.7526 14.5146 0.171602

v -0.7922 14.5792 0.075402

v -0.4998 14.7082 0.457802

v -0.5409 14.7486 0.393002

v -0.5358 14.5862 0.414902

以下是mtl文件

newmtl Texture0

illum 0

Kd 0.7 0.7 0.7

Ks 0 0 0

Ka 0 0 0

newmtl Texture1

illum 0

Kd 0.7 0.7 0.7

Ks 0 0 0

Ka 0 0 0

map_Kd parse_jpg

记得将纹理jpg重命名为_jpg

你收到错误的地方:

@H_404_34@

ERROR: 0:13: ‘.’ : Syntax error: Syntax error

在此之后,请按照您的代码进行解析:

private Object3D Object;

LoaderOBJ objParser = new LoaderOBJ(this,"Load/1c_obj");

try {

objParser.parse();

Object = objParser.getParsedObject();

getCurrentScene().addChild(Object);

} catch (ParsingException e) {

e.printStackTrace();

}

你得到的错误

@H_404_34@

E/Rajawali﹕ [org.rajawali3d.materials.Material] Could not compile

fragment shader:

它无法从材料文件中读取纹理文件,为此您可以在材料文件中执行上述更改.

有关自定义材质或顶点着色器的更多详细信息,请参阅Rajawail文档和示例

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐