本文整理汇总了Java中org.rajawali3d.materials.Material类的典型用法代码示例。如果您正苦于以下问题:Java Material类的具体用法?Java Material怎么用?Java Material使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Material类属于org.rajawali3d.materials包,在下文中一共展示了Material类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setMaterial
import org.rajawali3d.materials.Material; //导入依赖的package包/类
@Override
public void setMaterial(Material material) {
super.setMaterial(material);
IMaterialPlugin plugin = material.getPlugin(VertexAnimationMaterialPlugin.class);
if(plugin == null)
{
mMaterialPlugin = new VertexAnimationMaterialPlugin();
material.addPlugin(mMaterialPlugin);
}
else
{
mMaterialPlugin = (VertexAnimationMaterialPlugin)plugin;
}
}
示例2: 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);
}
}
示例3: createGridFloor
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private void createGridFloor() {
final float sizeHalf = mSize * 0.5f;
final float spacing = mSize / mNumLines;
mPoints = new Stack<>();
for(float z = -sizeHalf; z <= sizeHalf; z += spacing) {
mPoints.add(new Vector3(-sizeHalf, 0, z));
mPoints.add(new Vector3(sizeHalf, 0, z));
}
for(float x = -sizeHalf; x <= sizeHalf; x += spacing) {
mPoints.add(new Vector3(x, 0, -sizeHalf));
mPoints.add(new Vector3(x, 0, sizeHalf));
}
setMaterial(new Material());
init(true);
setDrawingMode(GLES20.GL_LINES);
}
示例4: createPhotoSphereWithTexture
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private static Sphere createPhotoSphereWithTexture(ATexture texture) {
Material material = new Material();
material.setColor(0);
try {
material.addTexture(texture);
} catch (ATexture.TextureException e) {
throw new RuntimeException(e);
}
Sphere sphere = new Sphere(50, 64, 32);
sphere.setScaleX(-1);
sphere.setMaterial(material);
return sphere;
}
示例5: 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;
}
示例6: init
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private void init() {
this.setTransparent(true);
this.setDoubleSided(true);
float[] vertices = new float[MAX_VERTICES * 3];
float[] normals = new float[MAX_VERTICES * 3];
int[] indices = new int[MAX_VERTICES];
for (int i = 0; i < indices.length; ++i) {
indices[i] = i;
int index = i * 3;
normals[index] = 0;
normals[index + 1] = 1;
normals[index + 2] = 0;
}
setData(vertices, normals, null, null, indices, false);
Material material = new Material();
material.setColor(color);
setMaterial(material);
rebuildPoints();
setPosition(new Vector3(0, -1.4, 0));
}
示例7: updateBoundingBox
import org.rajawali3d.materials.Material; //导入依赖的package包/类
public void updateBoundingBox(BoundingBox boundingBox) {
if(mBBoxVertices == null) {
mBBoxVertices = new Vector3[8];
mPoints = new Stack<>();
for(int i=0; i<16; i++) {
mPoints.push(new Vector3());
if(i < 8)
mBBoxVertices[i] = new Vector3();
}
init(true);
getGeometry().changeBufferUsage(mGeometry.getVertexBufferInfo(), GLES20.GL_DYNAMIC_DRAW);
setMaterial(new Material());
}
updateBox(boundingBox);
}
示例8: 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);
}
}
示例9: prepareMissile
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private void prepareMissile() {
// Make object model of missile.
// When user fire missile, this object will be cloned
try {
mMissileObj = new Cube(0.12f);
Material boxMaterial = new Material();
boxMaterial.setDiffuseMethod(new DiffuseMethod.Lambert());
//material.setColorInfluence(0);
boxMaterial.enableLighting(false);
//mMissileObj.setMaterial(new DiffuseMaterial());
mMissileObj.setMaterial(boxMaterial);
mMissileObj.setX(0); mMissileObj.setY(0); mMissileObj.setZ(0);
//mMissileObj.setRenderChildrenAsBatch(true);
mRenderer.getCurrentScene().addChild(mMissileObj);
} catch (Exception e) {
e.printStackTrace();
}
}
示例10: 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);
}
示例11: fillBox
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private void fillBox(Material mat){
Sphere sphere = new Sphere(3, 25, 25);
sphere.moveUp(2);
sphere.setScale(0.12f);
sphere.setMaterial(mat);
sphere.setColor(0xFFA50000);
getCurrentScene().addChild(sphere);
for(int i = 0; i < 105; i++){
Object3D tmp = sphere.clone(true,false); // clone material, no children though
tmp.setPosition(0, 0,0);
tmp.setScale(getRndDouble(0.04,0.25));
tmp.moveForward(getRndDouble(-5, 5));
tmp.moveRight(getRndDouble(-5, 5));
tmp.moveUp(getRndDouble(-5, 5));
getCurrentScene().addChild(tmp);
}
// TODO: Balken am Boden
}
示例12: DepthPass
import org.rajawali3d.materials.Material; //导入依赖的package包/类
public DepthPass(RajawaliScene scene, Camera camera) {
mPassType = PassType.DEPTH;
mScene = scene;
mCamera = camera;
mEnabled = true;
mClear = true;
mNeedsSwap = true;
Material mat = new Material();
mDepthPlugin = new DepthMaterialPlugin();
mat.addPlugin(mDepthPlugin);
setMaterial(mat);
}
示例13: createMaterial
import org.rajawali3d.materials.Material; //导入依赖的package包/类
protected void createMaterial(int vertexShaderResourceId, int fragmentShaderResourceId)
{
mVertexShader = new VertexShader(vertexShaderResourceId);
mFragmentShader = new FragmentShader(fragmentShaderResourceId);
mVertexShader.setNeedsBuild(false);
mFragmentShader.setNeedsBuild(false);
setMaterial(new Material(mVertexShader, mFragmentShader));
}
示例14: isMaterialRegistered
import org.rajawali3d.materials.Material; //导入依赖的package包/类
private boolean isMaterialRegistered(Material material) {
int count = mMaterialsUsingTexture.size();
for(int i=0; i<count; i++)
{
if(mMaterialsUsingTexture.get(i) == material)
return true;
}
return false;
}
示例15: addMaterial
import org.rajawali3d.materials.Material; //导入依赖的package包/类
public boolean addMaterial(final Material material) {
final AFrameTask task = new AFrameTask() {
@Override
protected void doTask() {
mMaterialManager.taskAdd(material);
if (mSceneInitialized) {
getCurrentScene().markLightingDirty();
}
}
};
return internalOfferTask(task);
}