Android Open Source - min3d Sky Box






From Project

Back to project page min3d.

License

The source code is released under:

MIT License

If you think the Android project min3d listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.min3d.lib.objectPrimitives;
/*w w w  . j a  va 2s .c om*/
import android.graphics.Bitmap;

import com.min3d.lib.Shared;
import com.min3d.lib.Utils;
import com.min3d.lib.core.Object3dContainer;
import com.min3d.lib.vos.Color4;

public class SkyBox extends Object3dContainer {
  private float size;
  private float halfSize;
  private int quality;
  private Color4 color;
  private Rectangle[] faces;
  
  public enum Face {
    North,
    East,
    South,
    West,
    Up,
    Down,
    All
  }
  
  public SkyBox(float size, int quality) {
    super(0, 0);
    this.size = size;
    this.halfSize = size *.5f;
    this.quality = quality;
    build();
  }
  
  private void build() {
    color = new Color4();
    faces = new Rectangle[6];
    Rectangle north = new Rectangle(size, size, quality, quality, color);
    Rectangle east = new Rectangle(size, size, quality, quality, color);
    Rectangle south = new Rectangle(size, size, quality, quality, color);
    Rectangle west = new Rectangle(size, size, quality, quality, color);
    Rectangle up = new Rectangle(size, size, quality, quality, color);
    Rectangle down = new Rectangle(size, size, quality, quality, color);
    
    north.position().z = halfSize;
    north.lightingEnabled(false);
    
    east.rotation().y = -90;
    east.position().x = halfSize;
    east.doubleSidedEnabled(true);
    east.lightingEnabled(false);
    
    south.rotation().y = 180;
    south.position().z = -halfSize;
    south.lightingEnabled(false);
    
    west.rotation().y = 90;
    west.position().x = -halfSize;
    west.doubleSidedEnabled(true);
    west.lightingEnabled(false);
    
    up.rotation().x = 90;
    up.position().y = halfSize;
    up.doubleSidedEnabled(true);
    up.lightingEnabled(false);
    
    down.rotation().x = -90;
    down.position().y = -halfSize;
    down.doubleSidedEnabled(true);
    down.lightingEnabled(false);
    
    faces[Face.North.ordinal()] = north;
    faces[Face.East.ordinal()] = east;
    faces[Face.South.ordinal()] = south;
    faces[Face.West.ordinal()] = west;
    faces[Face.Up.ordinal()] = up;
    faces[Face.Down.ordinal()] = down;
    
    addChild(north);
    addChild(east);
    addChild(south);
    addChild(west);
    addChild(up);
    addChild(down);
  }
  
  public void addTexture(Face face, int resourceId, String id) {
    Bitmap bitmap = Utils.makeBitmapFromResourceId(resourceId);
    Shared.textureManager().addTextureId(bitmap, id, true);
    bitmap.recycle();
    addTexture(face, bitmap, id);
  }
  
  public void addTexture(Face face, Bitmap bitmap, String id) {
    if(face == Face.All)
    {
      for(int i=0; i<6; i++)
      {
        faces[i].textures().addById(id);
      }
    }
    else
    {
      faces[face.ordinal()].textures().addById(id);
    }
  }
}




Java Source Code List

com.min3d.ApplicationTest.java
com.min3d.ExampleAccelerometer.java
com.min3d.ExampleAnimatedTexture.java
com.min3d.ExampleAnimatingVertices.java
com.min3d.ExampleAssigningTexturesDynamically.java
com.min3d.ExampleCamera.java
com.min3d.ExampleFog.java
com.min3d.ExampleFromScratch.java
com.min3d.ExampleInsideLayout.java
com.min3d.ExampleKeyframeAnimation.java
com.min3d.ExampleLightProperties.java
com.min3d.ExampleLoad3DSFile.java
com.min3d.ExampleLoadMD2File.java
com.min3d.ExampleLoadObjFileMultiple.java
com.min3d.ExampleLoadObjFile.java
com.min3d.ExampleMipMap.java
com.min3d.ExampleMostMinimal.java
com.min3d.ExampleMultiTexture.java
com.min3d.ExampleMultipleLights.java
com.min3d.ExampleRenderType.java
com.min3d.ExampleRotatingPlanets.java
com.min3d.ExampleSubsetOfFaces.java
com.min3d.ExampleTextureOffset.java
com.min3d.ExampleTextureWrap.java
com.min3d.ExampleTextures.java
com.min3d.ExampleTransparentGlSurface.java
com.min3d.ExampleVertexColors.java
com.min3d.ExampleVerticesVariations.java
com.min3d.ScratchActivity.java
com.min3d.SplashActivity.java
com.min3d.lib.AParser.java
com.min3d.lib.ApplicationTest.java
com.min3d.lib.IParser.java
com.min3d.lib.LittleEndianDataInputStream.java
com.min3d.lib.MD2Parser.java
com.min3d.lib.Max3DSParser.java
com.min3d.lib.Min3d.java
com.min3d.lib.ObjParser.java
com.min3d.lib.ParseObjectData.java
com.min3d.lib.ParseObjectFace.java
com.min3d.lib.Parser.java
com.min3d.lib.Shared.java
com.min3d.lib.Utils.java
com.min3d.lib.animation.AnimationObject3d.java
com.min3d.lib.animation.KeyFrame.java
com.min3d.lib.core.Color4BufferList.java
com.min3d.lib.core.FacesBufferedList.java
com.min3d.lib.core.ManagedLightList.java
com.min3d.lib.core.Number3dBufferList.java
com.min3d.lib.core.Object3dContainer.java
com.min3d.lib.core.Object3d.java
com.min3d.lib.core.RenderCaps.java
com.min3d.lib.core.RendererActivity.java
com.min3d.lib.core.Renderer.java
com.min3d.lib.core.Scene.java
com.min3d.lib.core.TextureList.java
com.min3d.lib.core.TextureManager.java
com.min3d.lib.core.UvBufferList.java
com.min3d.lib.core.Vertices.java
com.min3d.lib.interfaces.IDirtyManaged.java
com.min3d.lib.interfaces.IDirtyParent.java
com.min3d.lib.interfaces.IObject3dContainer.java
com.min3d.lib.interfaces.ISceneController.java
com.min3d.lib.objectPrimitives.Box.java
com.min3d.lib.objectPrimitives.HollowCylinder.java
com.min3d.lib.objectPrimitives.Rectangle.java
com.min3d.lib.objectPrimitives.SkyBox.java
com.min3d.lib.objectPrimitives.Sphere.java
com.min3d.lib.objectPrimitives.Torus.java
com.min3d.lib.vos.AbstractDirtyManaged.java
com.min3d.lib.vos.BooleanManaged.java
com.min3d.lib.vos.CameraVo.java
com.min3d.lib.vos.Color4Managed.java
com.min3d.lib.vos.Color4.java
com.min3d.lib.vos.Face.java
com.min3d.lib.vos.FloatManaged.java
com.min3d.lib.vos.FogType.java
com.min3d.lib.vos.FrustumManaged.java
com.min3d.lib.vos.LightType.java
com.min3d.lib.vos.Light.java
com.min3d.lib.vos.Number3dManaged.java
com.min3d.lib.vos.Number3d.java
com.min3d.lib.vos.RenderType.java
com.min3d.lib.vos.ShadeModelManaged.java
com.min3d.lib.vos.ShadeModel.java
com.min3d.lib.vos.TexEnvxVo.java
com.min3d.lib.vos.TextureVo.java
com.min3d.lib.vos.Uv.java
com.min3d.lib.vos.Vertex3d.java