私は、Androidの開発には全く新しいです、私は基本的なアクティビティ、マップ、sqliteなどを知っています 私はいくつかの3Dオブジェクトを実装できるようにしたいと思います私のアプリ内でやりとりすることができます。ちょっとした検索の後、私はrajawaliが最良の方法であるように見えた。最初のチュートリアルから始まり、サンプルのドキュメントからソースコードを読み始めました。 私が迷子になったのは、単語のチュートリアルの単語に従っているからです。スクリプトのエラーのためにアプリケーションを実行できません。もし誰かがRajawaliを使ったことがあるのであれば、私が間違っている箇所についていくつかの指摘をするだろう。 (チュートリアルは2ヶ月前に最後に更新されたので、最近のものです)。私は本当に私はそれを助けることができればスプーン改行コードになりたいが、それはありませんrajawaliはどうやって動くのですか(チュートリアル1 on git)
package rajawali.tutorials;
import javax.microedition.khronos.opengles.GL10;
import android.content.Context;
import rajawali.lights.DirectionalLight;
import rajawali.materials.textures.ATexture.TextureException;
import rajawali.materials.textures.Texture;
import rajawali.primitives.Sphere;
import rajawali.renderer.RajawaliRenderer;
public class Renderer extends RajawaliRenderer {
private DirectionalLight mLight;
Sphere mSphere;
public Renderer(Context context) {
super(context);
setFrameRate(60);
}
public void initScene() {
mLight = new DirectionalLight(1f, 0.2f, -1.0f);
mLight.setColor(1.0f, 1.0f, 1.0f);
mLight.setPower(2);
try {
*DiffuseMaterial* material = new *DiffuseMaterial*(); //there is an error here (DiffuseMaterial cannot be rsolved as a type)
material.addTexture(new *Texture(R.drawable.earthtruecolor_nasa_big)*); //here (constructor Texture(int) cannot be defined)
mSphere = new Sphere(1, 24, 24);
mSphere.setMaterial(material);
mSphere.*addLight(mLight)*; //and here (The method addLight(DirectionalLight) is undefined for the type Sphere)
addChild(mSphere);
} catch (TextureException e) {
e.printStackTrace();
}
getCurrentCamera().setZ(4.2f);
}
@Override
public void onDrawFrame(GL10 glUnused) {
super.onDrawFrame(glUnused);
mSphere.setRotY(mSphere.getRotY() + 1);
}
}
:
package rajawali.tutorials;
import rajawali.RajawaliActivity;
import android.os.Bundle;
import android.view.Menu;
public class MainActivity extends RajawaliActivity {
private Renderer mRenderer;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mRenderer = new Renderer(this);
mRenderer.setSurfaceView(mSurfaceView);
super.setRenderer(mRenderer);
}
}
レンダラ:ここTutorial
は、私のソースコードは、
MainActivityですエラーが 'DiffuseMaterial'にあるように見えます。これはなぜですか、またはmin3DやRajawaliを使用する以外に3Dオブジェクトを操作する良い方法がありますか?
ありがとうございます。私はチュートリアルがなぜ機能しないのだろうと思う。残りのチュートリアルはこれですか? –
私は別のチュートリアルをやろうとはしませんでしたが、チュートリアルがrajawaliの以前のバージョン用に作られたようです。 – doanvelagui
super.addChildはもう動作していないようです。 'getCurrentScene()。addChild'は動作します。 – nunespascal