当前位置: 首页>>代码示例>>Java>>正文


Java Material.setColorInfluence方法代码示例

本文整理汇总了Java中org.rajawali3d.materials.Material.setColorInfluence方法的典型用法代码示例。如果您正苦于以下问题:Java Material.setColorInfluence方法的具体用法?Java Material.setColorInfluence怎么用?Java Material.setColorInfluence使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.rajawali3d.materials.Material的用法示例。


在下文中一共展示了Material.setColorInfluence方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setSkybox

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
/**
 * Creates a skybox with the specified single texture.
 * 
 * @param resourceId int Resouce id of the skybox texture.
 * @throws TextureException 
 */
public void setSkybox(int resourceId) throws TextureException {
	synchronized (mCameras) {
		for (int i = 0, j = mCameras.size(); i < j; ++i)
			mCameras.get(i).setFarPlane(1000);
	}
	synchronized (mNextSkyboxLock) {
		mNextSkybox = new Cube(700, true, false);
		mNextSkybox.setDoubleSided(true);
		mSkyboxTexture = new Texture("skybox", resourceId);
		Material material = new Material();
		material.setColorInfluence(0);
		material.addTexture(mSkyboxTexture);
		mNextSkybox.setMaterial(material);
	}
}
 
开发者ID:sujitkjha,项目名称:360-Video-Player-for-Android,代码行数:22,代码来源:RajawaliScene.java

示例2: createPlayButton

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
private static Plane createPlayButton(ATexture texture){
    Material playBtnM = new Material();
    playBtnM.setColorInfluence(0);
    try {
        //place the button picture in "res/drawable-nodpi/"
        playBtnM.addTexture(new Texture("playBtn", R.drawable.target));
    } catch(ATexture.TextureException e) {
        e.printStackTrace();
    }

    Plane playBtn;
    playBtn = new Plane(1, 1, 8, 8);
    playBtn.setScale(-1);
    playBtn.setMaterial(playBtnM);
    playBtn.setPosition(5, 5, -2);
    playBtn.setAlpha(0);

   // getCurrentScene().addChild(playBtn);
    return playBtn;
}
 
开发者ID:sujitkjha,项目名称:360-Video-Player-for-Android,代码行数:21,代码来源:MyRenderer.java

示例3: setSkybox

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
/**
 * Creates a skybox with the specified single texture.
 *
 * @param resourceId int Resouce id of the skybox texture.
 * @throws TextureException
 */
public void setSkybox(int resourceId) throws TextureException {
	synchronized (mCameras) {
		for (int i = 0, j = mCameras.size(); i < j; ++i)
			mCameras.get(i).setFarPlane(1000);
	}
	synchronized (mNextSkyboxLock) {
		mNextSkybox = new Cube(700, true, false);
		mNextSkybox.setDoubleSided(true);
		mSkyboxTexture = new Texture("skybox", resourceId);
		Material material = new Material();
		material.setColorInfluence(0);
		material.addTexture(mSkyboxTexture);
		mNextSkybox.setMaterial(material);
	}
}
 
开发者ID:godstale,项目名称:VR-Defense-Game,代码行数:22,代码来源:Scene.java

示例4: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
/**
 * Sets up the initial scene with a default Rajawali camera and a background quad rendering
 * the Tango camera contents.
 */
@Override
protected void initScene() {
    mBackgroundQuad = new ScreenQuad();

    mTangoCameraTexture =
            new StreamingTexture("camera", (StreamingTexture.ISurfaceListener) null);

    Material tangoCameraMaterial = new Material();
    tangoCameraMaterial.setColorInfluence(0);
    try {
        tangoCameraMaterial.addTexture(mTangoCameraTexture);
        mBackgroundQuad.setMaterial(tangoCameraMaterial);
    } catch (ATexture.TextureException e) {
        e.printStackTrace();
    }
    getCurrentScene().addChildAt(mBackgroundQuad, 0);
}
 
开发者ID:kupoko,项目名称:Tiresias,代码行数:22,代码来源:TangoRajawaliRenderer.java

示例5: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
protected void initScene() {

    mMediaPlayer = MediaPlayer.create(getContext(), R.raw.test);
    //mMediaPlayer = MediaPlayer.create(getContext(), Uri.parse("http://nepal.cloudapp.net/video_portal/video.mp4"));
    mMediaPlayer.setLooping(true);


    mVideoTexture = new StreamingTexture("sintelTrailer", mMediaPlayer);
    Log.d("TextureSet","Texture");
    Material material = new Material();
    material.setColorInfluence(0);
    try {
        material.addTexture(mVideoTexture);
    } catch (ATexture.TextureException e) {
        e.printStackTrace();
    }

    Sphere sphere = new Sphere(50, 64, 32);
    sphere.setScaleX(-1);
    sphere.setMaterial(material);

    getCurrentScene().addChild(sphere);

    getCurrentCamera().setPosition(Vector3.ZERO);

    getCurrentCamera().setFieldOfView(75);

    EllipticalOrbitAnimation3D camAnim = new EllipticalOrbitAnimation3D(
            new Vector3(3, 2, 10), new Vector3(1, 0, 8), 0, 359);
    camAnim.setDurationMilliseconds(20000);
    camAnim.setRepeatMode(Animation.RepeatMode.INFINITE);
    camAnim.setTransformable3D(getCurrentCamera());
    getCurrentScene().registerAnimation(camAnim);
    camAnim.play();

    mMediaPlayer.start();


}
 
开发者ID:sujitkjha,项目名称:360-Video-Player-for-Android,代码行数:41,代码来源:VideoPlayer.java

示例6: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
protected void initScene() {
    // Create a quad covering the whole background and assign a texture to it where the
    // Tango color camera contents will be rendered.
    ScreenQuad backgroundQuad = new ScreenQuad();
    Material tangoCameraMaterial = new Material();
    tangoCameraMaterial.setColorInfluence(0);
    // We need to use Rajawali's {@code StreamingTexture} since it sets up the texture
    // for GL_TEXTURE_EXTERNAL_OES rendering
    mTangoCameraTexture =
            new StreamingTexture("camera", (StreamingTexture.ISurfaceListener) null);
    try {
        tangoCameraMaterial.addTexture(mTangoCameraTexture);
        backgroundQuad.setMaterial(tangoCameraMaterial);
    } catch (ATexture.TextureException e) {
        Log.e(TAG, "Exception creating texture for RGB camera contents", e);
    }
    getCurrentScene().addChildAt(backgroundQuad, 0);

    // Add a directional light in an arbitrary direction.
    DirectionalLight light = new DirectionalLight(1, 0.2, -1);
    light.setColor(1, 1, 1);
    light.setPower(0.8f);
    light.setPosition(3, 2, 4);
    getCurrentScene().addLight(light);

    blue = new Material();
    blue.setColor(Color.BLUE);

    floorPlan = new FloorPlan(data);
    getCurrentScene().addChild(floorPlan);
    floorPlan.setVisible(renderVirtualObjects);

}
 
开发者ID:inovex,项目名称:tango-ar-navigation-example,代码行数:35,代码来源:SceneRenderer.java

示例7: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
protected void initScene() {
    // Remember to call super.initScene() to allow TangoRajawaliArRenderer to set-up
    super.initScene();

    // Add a directional light in an arbitrary direction
    DirectionalLight light = new DirectionalLight(1, 0.2, -1);
    light.setColor(1, 1, 1);
    light.setPower(0.8f);
    light.setPosition(3, 2, 4);
    getCurrentScene().addLight(light);

    // Set-up a material: green with application of the light and instructions
    Material material = new Material();
    material.setColor(0xff009900);
    try {
        Texture t = new Texture("instructions", R.drawable.instructions);
        material.addTexture(t);
    } catch (ATexture.TextureException e) {
        e.printStackTrace();
    }
    material.setColorInfluence(0.1f);
    material.enableLighting(true);
    material.setDiffuseMethod(new DiffuseMethod.Lambert());

    // Build a Cube and place it initially in the origin
    mObject = new Cube(CUBE_SIDE_LENGTH);
    mObject.setMaterial(material);
    mObject.setPosition(0, 0, -3);
    mObject.setRotation(Vector3.Axis.Z, 180);
    getCurrentScene().addChild(mObject);
}
 
开发者ID:kupoko,项目名称:Tiresias,代码行数:33,代码来源:AugmentedRealityRenderer.java

示例8: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
        protected void initScene() {
            try {
                mLight = new DirectionalLight(0.1f, -1.0f, -1.0f);
                mLight.setColor(1.0f, 1.0f, 1.0f);
                mLight.setPower(1);
                getCurrentScene().addLight(mLight);

                final LoaderAWD parser = new LoaderAWD(mContext.getResources(), mTextureManager, R.raw.head_object_new);
                parser.parse();
                mMonkey = parser.getParsedObject();
                mMonkey.setScale(0.005f);
                //mMonkey.setZ(-2f);
//                getCurrentScene().addChild(mMonkey);

                int[] resourceIds = new int[]{R.drawable.posx, R.drawable.negx,
                        R.drawable.posy, R.drawable.negy, R.drawable.posz,
                        R.drawable.negz};

                Material material = new Material();
                material.enableLighting(true);
                material.setDiffuseMethod(new DiffuseMethod.Lambert());

                CubeMapTexture envMap = new CubeMapTexture("environmentMap",
                        resourceIds);
                envMap.isEnvironmentTexture(true);
                material.addTexture(envMap);
                material.setColorInfluence(0);
                mMonkey.setMaterial(material);

                LoaderOBJ objParser1 = new LoaderOBJ(mContext.getResources(), mTextureManager, R.raw.glasses_obj);
                objParser1.parse();
                mGlasses = objParser1.getParsedObject();
                mGlasses.setScale(0.005f);
                //mGlasses.setZ(-0.2f);
                mGlasses.setZ(0.3f);
                mGlasses.rotate(Vector3.Axis.X, -90.0f);

                LoaderOBJ objParser2 = new LoaderOBJ(mContext.getResources(), mTextureManager, R.raw.hair_band_obj);
                objParser2.parse();
                mHairBand = objParser2.getParsedObject();
                mHairBand.setScale(0.006f);
                mHairBand.setY(0.27f);
                mHairBand.setZ(-0.25f);
                mHairBand.rotate(Vector3.Axis.X, -90.0f);

                LoaderOBJ objParser3 = new LoaderOBJ(mContext.getResources(), mTextureManager, R.raw.moustache_obj);
                objParser3.parse();
                mMoustache = objParser3.getParsedObject();
                mMoustache.setScale(0.007f);
                mMoustache.setY(-0.25f);
                mMoustache.setZ(0.3f);
                mMoustache.rotate(Vector3.Axis.X, -90.0f);

                mContainer = new Object3D();
                mContainer.addChild(mMonkey);
                mContainer.addChild(mGlasses);
                mContainer.addChild(mHairBand);
                mContainer.addChild(mMoustache);
                getCurrentScene().addChild(mContainer);
                //getCurrentCamera().setZ(20);

            } catch (Exception e) {
                e.printStackTrace();
            }

            // -- set the background color to be transparent
            // you need to have called setGLBackgroundTransparent(true); in the activity
            // for this to work.
            getCurrentScene().setBackgroundColor(0);
        }
 
开发者ID:SimonCherryGZ,项目名称:face-landmark-android,代码行数:72,代码来源:CameraConnectionFragment.java

示例9: createObjects

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
private void createObjects() throws TextureException, ParsingException, SkeletalAnimationException {
	SkeletalAnimationObject3D root = new SkeletalAnimationObject3D();
	root.uBoneMatrix = mBindPoseMatrix;
	root.mInverseBindPoseMatrix = mInverseBindPoseMatrix;
	root.setJoints(mJoints);
	mRootObject = root;
	for (int i = 0; i < mNumMeshes; ++i) {
		SkeletonMeshData mesh = mMeshes[i];
		SkeletalAnimationChildObject3D o = new SkeletalAnimationChildObject3D();
		o.setData(
				mesh.vertices, GLES20.GL_STREAM_DRAW,
				mesh.normals, GLES20.GL_STREAM_DRAW,
				mesh.textureCoordinates, GLES20.GL_STATIC_DRAW,
				null, GLES20.GL_STATIC_DRAW,
				mesh.indices, GLES20.GL_STATIC_DRAW,
				false);
		o.setMaxBoneWeightsPerVertex(mesh.maxBoneWeightsPerVertex);
		o.setSkeletonMeshData(mesh.numVertices, mesh.boneVertices, mesh.numWeights, mesh.boneWeights);
		o.setName("MD5Mesh_" + i);
		o.setSkeleton(mRootObject);
		o.setInverseZScale(true);

		boolean hasTexture = mesh.textureName != null && mesh.textureName.length() > 0;

		Material mat = new Material();
		mat.addPlugin(new SkeletalAnimationMaterialPlugin(mNumJoints, mesh.maxBoneWeightsPerVertex));
		mat.enableLighting(true);
		mat.setDiffuseMethod(new DiffuseMethod.Lambert());
		o.setMaterial(mat);
		if (!hasTexture) {
			o.setColor(0xff000000 + (int) (Math.random() * 0xffffff));
		} else {
			int identifier = mResources.getIdentifier(mesh.textureName, "drawable",
					mResources.getResourcePackageName(mResourceId));
			if (identifier == 0) {
				throw new ParsingException("Couldn't find texture " + mesh.textureName);
			}
			mat.setColorInfluence(0);
			mat.addTexture(new Texture("md5tex" + i, identifier));
		}
		mRootObject.addChild(o);
		
		mesh.destroy();
		mesh = null;
	}
}
 
开发者ID:sujitkjha,项目名称:360-Video-Player-for-Android,代码行数:47,代码来源:LoaderMD5Mesh.java

示例10: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
public void initScene() {
	mCameraLeft = new Camera();
	mCameraLeft.setNearPlane(.01f);
	mCameraLeft.setFieldOfView(getCurrentCamera().getFieldOfView());
	mCameraLeft.setNearPlane(getCurrentCamera().getNearPlane());
	mCameraLeft.setFarPlane(getCurrentCamera().getFarPlane());

	mCameraRight = new Camera();
	mCameraRight.setNearPlane(.01f);
	mCameraRight.setFieldOfView(getCurrentCamera().getFieldOfView());
	mCameraRight.setNearPlane(getCurrentCamera().getNearPlane());
	mCameraRight.setFarPlane(getCurrentCamera().getFarPlane());
	
	setPupilDistance(mPupilDistance);

	mLeftQuadMaterial = new Material();
	mLeftQuadMaterial.setColorInfluence(0);
	mRightQuadMaterial = new Material();
	mRightQuadMaterial.setColorInfluence(0);

	mSideBySideScene = new RajawaliScene(this);

	mLeftQuad = new ScreenQuad();
	mLeftQuad.setScaleX(.5);
	mLeftQuad.setX(-.25);
	mLeftQuad.setMaterial(mLeftQuadMaterial);
	mSideBySideScene.addChild(mLeftQuad);

	mRightQuad = new ScreenQuad();
	mRightQuad.setScaleX(.5);
	mRightQuad.setX(.25);
	mRightQuad.setMaterial(mRightQuadMaterial);
	mSideBySideScene.addChild(mRightQuad);

	addScene(mSideBySideScene);

	mViewportWidthHalf = (int) (mDefaultViewportWidth * .5f);

	mLeftRenderTarget = new RenderTarget("sbsLeftRT", mViewportWidthHalf, mDefaultViewportHeight);
	mLeftRenderTarget.setFullscreen(false);
	mRightRenderTarget = new RenderTarget("sbsRightRT", mViewportWidthHalf, mDefaultViewportHeight);
	mRightRenderTarget.setFullscreen(false);

	mCameraLeft.setProjectionMatrix(mViewportWidthHalf, mDefaultViewportHeight);
	mCameraRight.setProjectionMatrix(mViewportWidthHalf, mDefaultViewportHeight);
	
	addRenderTarget(mLeftRenderTarget);
	addRenderTarget(mRightRenderTarget);

	try {
		mLeftQuadMaterial.addTexture(mLeftRenderTarget.getTexture());
		mRightQuadMaterial.addTexture(mRightRenderTarget.getTexture());
	} catch (TextureException e) {
		e.printStackTrace();
	}
}
 
开发者ID:sujitkjha,项目名称:360-Video-Player-for-Android,代码行数:58,代码来源:RajawaliSideBySideRenderer.java

示例11: createObjects

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
private void createObjects() throws TextureException, ParsingException, SkeletalAnimationException {
	SkeletalAnimationObject3D root = new SkeletalAnimationObject3D();
	root.uBoneMatrix = mBindPoseMatrix;
	root.mInverseBindPoseMatrix = mInverseBindPoseMatrix;
	root.setJoints(mJoints);
	mRootObject = root;
	for (int i = 0; i < mNumMeshes; ++i) {
		SkeletonMeshData mesh = mMeshes[i];
		SkeletalAnimationChildObject3D o = new SkeletalAnimationChildObject3D();
		o.setData(
				mesh.vertices, GLES20.GL_STREAM_DRAW,
				mesh.normals, GLES20.GL_STREAM_DRAW,
				mesh.textureCoordinates, GLES20.GL_STATIC_DRAW,
				null, GLES20.GL_STATIC_DRAW,
				mesh.indices, GLES20.GL_STATIC_DRAW,
				false);
		o.setMaxBoneWeightsPerVertex(mesh.maxBoneWeightsPerVertex);
		o.setSkeletonMeshData(mesh.numVertices, mesh.boneVertices, mesh.numWeights, mesh.boneWeights);
		o.setName("MD5Mesh_" + i);
		o.setSkeleton(mRootObject);
		o.setInverseZScale(true);

		boolean hasTexture = mesh.textureName != null && mesh.textureName.length() > 0;

		Material mat = new Material();
		mat.addPlugin(new SkeletalAnimationMaterialPlugin(mNumJoints, mesh.maxBoneWeightsPerVertex));
		mat.enableLighting(true);
		mat.setDiffuseMethod(new DiffuseMethod.Lambert());
		o.setMaterial(mat);
		if (!hasTexture) {
			o.setColor(0xff000000 + (int) (Math.random() * 0xffffff));
		} else {
			int identifier = mResources.getIdentifier(mesh.textureName, "drawable",
					mResources.getResourcePackageName(mResourceId));
			if (identifier == 0) {
				throw new ParsingException("Couldn't find texture " + mesh.textureName);
			}
			mat.setColorInfluence(0);
			mat.addTexture(new Texture("md5tex" + i, identifier));
		}
		mRootObject.addChild(o);

		mesh.destroy();
		mesh = null;
	}
}
 
开发者ID:godstale,项目名称:VR-Defense-Game,代码行数:47,代码来源:LoaderMD5Mesh.java

示例12: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
public void initScene() {
	mCameraLeft = new Camera();
	mCameraLeft.setNearPlane(.01f);
	mCameraLeft.setFieldOfView(getCurrentCamera().getFieldOfView());
	mCameraLeft.setNearPlane(getCurrentCamera().getNearPlane());
	mCameraLeft.setFarPlane(getCurrentCamera().getFarPlane());

	mCameraRight = new Camera();
	mCameraRight.setNearPlane(.01f);
	mCameraRight.setFieldOfView(getCurrentCamera().getFieldOfView());
	mCameraRight.setNearPlane(getCurrentCamera().getNearPlane());
	mCameraRight.setFarPlane(getCurrentCamera().getFarPlane());

	setPupilDistance(mPupilDistance);

	mLeftQuadMaterial = new Material();
	mLeftQuadMaterial.setColorInfluence(0);
	mRightQuadMaterial = new Material();
	mRightQuadMaterial.setColorInfluence(0);

	mSideBySideScene = new Scene(this);

	mLeftQuad = new ScreenQuad();
	mLeftQuad.setScaleX(.5);
	mLeftQuad.setX(-.25);
	mLeftQuad.setMaterial(mLeftQuadMaterial);
	mSideBySideScene.addChild(mLeftQuad);

	mRightQuad = new ScreenQuad();
	mRightQuad.setScaleX(.5);
	mRightQuad.setX(.25);
	mRightQuad.setMaterial(mRightQuadMaterial);
	mSideBySideScene.addChild(mRightQuad);

	addScene(mSideBySideScene);

	mViewportWidthHalf = (int) (mDefaultViewportWidth * .5f);

	mLeftRenderTarget = new RenderTarget("sbsLeftRT", mViewportWidthHalf, mDefaultViewportHeight);
	mLeftRenderTarget.setFullscreen(false);
	mRightRenderTarget = new RenderTarget("sbsRightRT", mViewportWidthHalf, mDefaultViewportHeight);
	mRightRenderTarget.setFullscreen(false);

	mCameraLeft.setProjectionMatrix(mViewportWidthHalf, mDefaultViewportHeight);
	mCameraRight.setProjectionMatrix(mViewportWidthHalf, mDefaultViewportHeight);

	addRenderTarget(mLeftRenderTarget);
	addRenderTarget(mRightRenderTarget);

	try {
		mLeftQuadMaterial.addTexture(mLeftRenderTarget.getTexture());
		mRightQuadMaterial.addTexture(mRightRenderTarget.getTexture());
	} catch (TextureException e) {
		e.printStackTrace();
	}
}
 
开发者ID:godstale,项目名称:VR-Defense-Game,代码行数:58,代码来源:SideBySideRenderer.java

示例13: initScene

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
@Override
public void initScene() {
    mMainQuadMaterial = new Material();
    mMainQuadMaterial.setColorInfluence(0);

    mMiniQuadMaterial = new Material();
    mMiniQuadMaterial.setColorInfluence(0);

    mMainQuad = new WorkaroundScreenQuad();
    mMainQuad.setMaterial(mMainQuadMaterial);
    mMainQuad.setTransparent(true);

    // Set-up viewport dimensions of mini quad for touch event processing
    setupMiniTouchLimits();

    mMiniQuad = new WorkaroundScreenQuad();
    // Set the size of the mini view using a scale factor (mPipScale times the main view)
    mMiniQuad.setScale(mPipScale);
    // Position the mini view in the top right corner
    // For X and Y, the position is:
    //   50% screen shift to the right/top minus half the size of the minimap to bring it back
    //   left/bottom into full view plus a little bit more left/bottom to leave margin
    mMiniQuad.setX(.5d - mPipScale / 2d - mPipMarginX / mDefaultViewportWidth);
    mMiniQuad.setY(.5d - mPipScale / 2d - mPipMarginY / mDefaultViewportHeight);
    mMiniQuad.setMaterial(mMiniQuadMaterial);

    mMainRenderTarget =
            new RenderTarget("pipMainRT", mDefaultViewportWidth, mDefaultViewportHeight);
    mMainRenderTarget.setFullscreen(false);
    mMiniRenderTarget =
            new RenderTarget("pipMiniRT", mDefaultViewportWidth, mDefaultViewportHeight);
    mMiniRenderTarget.setFullscreen(false);

    addRenderTarget(mMainRenderTarget);
    addRenderTarget(mMiniRenderTarget);

    mCompositeScene = getCurrentScene();
    mCompositeScene.addChild(mMainQuad);
    mCompositeScene.addChild(mMiniQuad);

    try {
        mMiniQuadMaterial.addTexture(mMiniRenderTarget.getTexture());
        mMainQuadMaterial.addTexture(mMainRenderTarget.getTexture());
    } catch (ATexture.TextureException e) {
        e.printStackTrace();
    }
    // Init main scene
    mMainRenderer.initScene();

    // Init mini scene
    mMiniRenderer.initScene();
}
 
开发者ID:godstale,项目名称:VR-Defense-Game,代码行数:53,代码来源:PipRenderer.java

示例14: makeMothership

import org.rajawali3d.materials.Material; //导入方法依赖的package包/类
private void makeMothership() {
    try {
        CatmullRomCurve3D path;

        LoaderAWD loader = new LoaderAWD(mContext.getResources(),
                mRenderer.getTextureManager(), R.raw.capital);
        loader.parse();

        Material capitalMaterial = new Material();
        capitalMaterial.setDiffuseMethod(new DiffuseMethod.Lambert());
        capitalMaterial.setColorInfluence(0);
        capitalMaterial.enableLighting(true);
        capitalMaterial.addTexture(new Texture("capitalTex", R.drawable.hullw));
        capitalMaterial.addTexture(new NormalMapTexture("capitalNormTex", R.drawable.hulln));

        mMothershipObj = loader.getParsedObject();
        mMothershipObj.setMaterial(capitalMaterial);
        mMothershipObj.setScale(5);
        mMothershipObj.enableLookAt();
        mRenderer.getCurrentScene().addChild(mMothershipObj);

        path = new CatmullRomCurve3D();
        path.addPoint(new Vector3(0, 15, 100));
        path.addPoint(new Vector3(-100, 15, 0));
        path.addPoint(new Vector3(0, 15, -100));
        path.addPoint(new Vector3(100, 15, 0));
        path.isClosedCurve(true);

        mMothershipAnim = new SplineTranslateAnimation3D(path);
        mMothershipAnim.setDurationMilliseconds(ANIM_DURATION);
        mMothershipAnim.setRepeatMode(Animation.RepeatMode.INFINITE);
        mMothershipAnim.setOrientToPath(true);
        mMothershipAnim.setTransformable3D(mMothershipObj);
        mRenderer.getCurrentScene().registerAnimation(mMothershipAnim);
        mMothershipAnim.play();

        mMothership = new Mothership(mMothershipObj);
    } catch (Exception e) {
        e.printStackTrace();
    }
}
 
开发者ID:godstale,项目名称:VR-Defense-Game,代码行数:42,代码来源:World.java


注:本文中的org.rajawali3d.materials.Material.setColorInfluence方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。