android - Parsing .obj model from SD card Rajawali -
i working rajawali 3d framework , trying load .obj files sdcard. able upload , parse obj file when put these files (.obj, .mtl, texture.png (drawable folder)) on raw folder when try parse sdcard says:
[org.rajawali3d.materials.material] not compile fragmentshader: shader log: fragment shader compilation failed. here code uploading .obj files sdcard:
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(); } logcat:
d/rajawali﹕ parsing: /storage/emulated/0/load/1c_obj d/loaderobj﹕ found material lib: 1c_mtl d/loaderobj$materiallib﹕ parsing material: texture0 d/loaderobj$materiallib﹕ parsing material: texture1 9578-9612/com.example.loadobj d/loadmodelfragment$loadmodelrenderer﹕ startrendering() e/rajawali﹕ [org.rajawali3d.materials.material] not compile fragment shader: 9578-9612/com.example.loadobj e/rajawali﹕ shader log: fragment shader compilation failed. error: 0:13: '.' : syntax error: syntax error error: 1 compilation errors. no code generated. link post: https://plus.google.com/111465395343320783064/posts/g19g56j3igw
if able read obj files raw folder
loaderobj objparser = new loaderobj(mcontext.getresources(),mtexturemanager, r.raw.camero_obj); and not sdcard have following changes in files: in obj file must saved _obj in sdcard (so _jpg , _mtl in same location)
in case:
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 following mtl file
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 remember rename texture jpg _jpg getting error:
error: 0:13: '.' : syntax error: syntax error
after follow code parsing:
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(); } and error getting
e/rajawali﹕ [org.rajawali3d.materials.material] not compile fragment shader:
its unable read texture file material file, can above changes in material file.
for more details on custom material or vertex shader follow rajawail document , sample
Comments
Post a Comment