Down to 260 Javadoc warnings from 324

git-svn-id: https://jmonkeyengine.googlecode.com/svn/trunk@9255 75d07b2b-3a1a-0410-a2c5-0572b91ccdca
3.0
sky..ok 13 years ago
parent 0af3e46a45
commit 533fb86c50
  1. 4
      engine/src/android/com/jme3/asset/AndroidAssetManager.java
  2. 33
      engine/src/blender/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderFactory.java
  3. 4
      engine/src/bullet/com/jme3/bullet/PhysicsSpace.java
  4. 12
      engine/src/core-effects/com/jme3/post/ssao/SSAOFilter.java
  5. 9
      engine/src/core-plugins/com/jme3/shader/plugins/GLSLLoader.java
  6. 197
      engine/src/core-plugins/com/jme3/texture/plugins/TGALoader.java
  7. 4
      engine/src/core/com/jme3/asset/AssetCache.java
  8. 14
      engine/src/core/com/jme3/asset/DesktopAssetManager.java
  9. 33
      engine/src/core/com/jme3/effect/influencers/ParticleInfluencer.java
  10. 6
      engine/src/core/com/jme3/font/BitmapFont.java
  11. 4
      engine/src/core/com/jme3/post/Filter.java
  12. 8
      engine/src/core/com/jme3/post/FilterPostProcessor.java
  13. 6
      engine/src/core/com/jme3/renderer/Renderer.java
  14. 2
      engine/src/core/com/jme3/scene/BatchNode.java
  15. 6
      engine/src/lwjgl/com/jme3/system/lwjgl/LwjglSmoothingTimer.java
  16. 6
      engine/src/lwjgl/com/jme3/system/lwjgl/LwjglTimer.java
  17. 2
      engine/src/ogre/com/jme3/scene/plugins/ogre/matext/OgreMaterialKey.java
  18. 2
      engine/src/terrain/com/jme3/terrain/geomipmap/TerrainPatch.java
  19. 4
      engine/src/tools/jme3tools/optimize/TextureAtlas.java
  20. 2
      engine/src/tools/jme3tools/optimize/TriangleCollector.java

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -106,7 +106,7 @@ public class AndroidAssetManager extends DesktopAssetManager {
/** /**
* Loads a texture. * Loads a texture.
* *
* @return * @return the texture
*/ */
@Override @Override
public Texture loadTexture(TextureKey key) { public Texture loadTexture(TextureKey key) {

@ -1,3 +1,34 @@
/*
* Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package com.jme3.scene.plugins.blender.textures.blending; package com.jme3.scene.plugins.blender.textures.blending;
import java.util.logging.Level; import java.util.logging.Level;
@ -20,7 +51,7 @@ public class TextureBlenderFactory {
* *
* @param format * @param format
* the texture format * the texture format
* @returntexture blending class * @return texture blending class
*/ */
public static TextureBlender createTextureBlender(Format format) { public static TextureBlender createTextureBlender(Format format) {
switch (format) { switch (format) {

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -376,7 +376,7 @@ public class PhysicsSpace {
* calls the callable on the next physics tick (ensuring e.g. force applying) * calls the callable on the next physics tick (ensuring e.g. force applying)
* @param <V> * @param <V>
* @param callable * @param callable
* @return * @return Future object
*/ */
public <V> Future<V> enqueue(Callable<V> callable) { public <V> Future<V> enqueue(Callable<V> callable) {
AppTask<V> task = new AppTask<V>(callable); AppTask<V> task = new AppTask<V>(callable);

@ -186,7 +186,7 @@ public class SSAOFilter extends Filter {
/** /**
* Return the bias<br> * Return the bias<br>
* see {@link #setBias(float bias)} * see {@link #setBias(float bias)}
* @return * @return bias
*/ */
public float getBias() { public float getBias() {
return bias; return bias;
@ -205,7 +205,7 @@ public class SSAOFilter extends Filter {
/** /**
* returns the ambient occlusion intensity * returns the ambient occlusion intensity
* @return * @return intensity
*/ */
public float getIntensity() { public float getIntensity() {
return intensity; return intensity;
@ -226,7 +226,7 @@ public class SSAOFilter extends Filter {
/** /**
* returns the sample radius<br> * returns the sample radius<br>
* see {link setSampleRadius(float sampleRadius)} * see {link setSampleRadius(float sampleRadius)}
* @return * @return the sample radius
*/ */
public float getSampleRadius() { public float getSampleRadius() {
return sampleRadius; return sampleRadius;
@ -247,7 +247,7 @@ public class SSAOFilter extends Filter {
/** /**
* returns the scale<br> * returns the scale<br>
* see {@link #setScale(float scale)} * see {@link #setScale(float scale)}
* @return * @return scale
*/ */
public float getScale() { public float getScale() {
return scale; return scale;
@ -267,7 +267,7 @@ public class SSAOFilter extends Filter {
/** /**
* debugging only , will be removed * debugging only , will be removed
* @return * @return Whether or not
*/ */
public boolean isUseAo() { public boolean isUseAo() {
return useAo; return useAo;
@ -286,7 +286,7 @@ public class SSAOFilter extends Filter {
/** /**
* debugging only , will be removed * debugging only , will be removed
* @return * @return useOnlyAo
*/ */
public boolean isUseOnlyAo() { public boolean isUseOnlyAo() {
return useOnlyAo; return useOnlyAo;

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -185,11 +185,8 @@ public class GLSLLoader implements AssetLoader {
/** /**
* *
* @param owner * @param info
* @param in * @return String of GLSL code
* @param extension
* @param key
* @return
* @throws java.io.IOException * @throws java.io.IOException
*/ */
public Object load(AssetInfo info) throws IOException { public Object load(AssetInfo info) throws IOException {

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -29,7 +29,6 @@
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
package com.jme3.texture.plugins; package com.jme3.texture.plugins;
import com.jme3.asset.AssetInfo; import com.jme3.asset.AssetInfo;
@ -59,37 +58,32 @@ public final class TGALoader implements AssetLoader {
// 0 - no image data in file // 0 - no image data in file
public static final int TYPE_NO_IMAGE = 0; public static final int TYPE_NO_IMAGE = 0;
// 1 - uncompressed, color-mapped image // 1 - uncompressed, color-mapped image
public static final int TYPE_COLORMAPPED = 1; public static final int TYPE_COLORMAPPED = 1;
// 2 - uncompressed, true-color image // 2 - uncompressed, true-color image
public static final int TYPE_TRUECOLOR = 2; public static final int TYPE_TRUECOLOR = 2;
// 3 - uncompressed, black and white image // 3 - uncompressed, black and white image
public static final int TYPE_BLACKANDWHITE = 3; public static final int TYPE_BLACKANDWHITE = 3;
// 9 - run-length encoded, color-mapped image // 9 - run-length encoded, color-mapped image
public static final int TYPE_COLORMAPPED_RLE = 9; public static final int TYPE_COLORMAPPED_RLE = 9;
// 10 - run-length encoded, true-color image // 10 - run-length encoded, true-color image
public static final int TYPE_TRUECOLOR_RLE = 10; public static final int TYPE_TRUECOLOR_RLE = 10;
// 11 - run-length encoded, black and white image // 11 - run-length encoded, black and white image
public static final int TYPE_BLACKANDWHITE_RLE = 11; public static final int TYPE_BLACKANDWHITE_RLE = 11;
public Object load(AssetInfo info) throws IOException{ public Object load(AssetInfo info) throws IOException {
if (!(info.getKey() instanceof TextureKey)) if (!(info.getKey() instanceof TextureKey)) {
throw new IllegalArgumentException("Texture assets must be loaded using a TextureKey"); throw new IllegalArgumentException("Texture assets must be loaded using a TextureKey");
}
boolean flip = ((TextureKey)info.getKey()).isFlipY(); boolean flip = ((TextureKey) info.getKey()).isFlipY();
InputStream in = null; InputStream in = null;
try { try {
in = info.openStream(); in = info.openStream();
Image img = load(in, flip); Image img = load(in, flip);
return img; return img;
} finally { } finally {
if (in != null){ if (in != null) {
in.close(); in.close();
} }
} }
@ -99,14 +93,14 @@ public final class TGALoader implements AssetLoader {
* <code>loadImage</code> is a manual image loader which is entirely * <code>loadImage</code> is a manual image loader which is entirely
* independent of AWT. OUT: RGB888 or RGBA8888 Image object * independent of AWT. OUT: RGB888 or RGBA8888 Image object
* *
* @return <code>Image</code> object that contains the *
* image, either as a RGB888 or RGBA8888
* @param in
* InputStream of an uncompressed 24b RGB or 32b RGBA TGA
* @param flip * @param flip
* Flip the image vertically * Flip the image vertically
* @param exp32 * @return <code>Image</code> object that contains the
* Add a dummy Alpha channel to 24b RGB image. * image, either as a RGB888 or RGBA8888
* @param fis
* InputStream of an uncompressed 24b RGB or 32b RGBA TGA
* @throws java.io.IOException * @throws java.io.IOException
*/ */
public static Image load(InputStream in, boolean flip) throws IOException { public static Image load(InputStream in, boolean flip) throws IOException {
@ -151,21 +145,26 @@ public final class TGALoader implements AssetLoader {
int pixelDepth = dis.readUnsignedByte(); int pixelDepth = dis.readUnsignedByte();
int imageDescriptor = dis.readUnsignedByte(); int imageDescriptor = dis.readUnsignedByte();
if ((imageDescriptor & 32) != 0) // bit 5 : if 1, flip top/bottom ordering if ((imageDescriptor & 32) != 0) // bit 5 : if 1, flip top/bottom ordering
{
flip = !flip; flip = !flip;
}
if ((imageDescriptor & 16) != 0) // bit 4 : if 1, flip left/right ordering if ((imageDescriptor & 16) != 0) // bit 4 : if 1, flip left/right ordering
{
flipH = !flipH; flipH = !flipH;
}
// ---------- Done Reading the TGA header ---------- // // ---------- Done Reading the TGA header ---------- //
// Skip image ID // Skip image ID
if (idLength > 0) if (idLength > 0) {
in.skip(idLength); in.skip(idLength);
}
ColorMapEntry[] cMapEntries = null; ColorMapEntry[] cMapEntries = null;
if (colorMapType != 0) { if (colorMapType != 0) {
// read the color map. // read the color map.
int bytesInColorMap = (cMapDepth * cMapLength) >> 3; int bytesInColorMap = (cMapDepth * cMapLength) >> 3;
int bitsPerColor = Math.min(cMapDepth/3 , 8); int bitsPerColor = Math.min(cMapDepth / 3, 8);
byte[] cMapData = new byte[bytesInColorMap]; byte[] cMapData = new byte[bytesInColorMap];
in.read(cMapData); in.read(cMapData);
@ -174,19 +173,20 @@ public final class TGALoader implements AssetLoader {
// table if this is declared a color mapped image. // table if this is declared a color mapped image.
if (imageType == TYPE_COLORMAPPED || imageType == TYPE_COLORMAPPED_RLE) { if (imageType == TYPE_COLORMAPPED || imageType == TYPE_COLORMAPPED_RLE) {
cMapEntries = new ColorMapEntry[cMapLength]; cMapEntries = new ColorMapEntry[cMapLength];
int alphaSize = cMapDepth - (3*bitsPerColor); int alphaSize = cMapDepth - (3 * bitsPerColor);
float scalar = 255f / (FastMath.pow(2, bitsPerColor) - 1); float scalar = 255f / (FastMath.pow(2, bitsPerColor) - 1);
float alphaScalar = 255f / (FastMath.pow(2, alphaSize) - 1); float alphaScalar = 255f / (FastMath.pow(2, alphaSize) - 1);
for (int i = 0; i < cMapLength; i++) { for (int i = 0; i < cMapLength; i++) {
ColorMapEntry entry = new ColorMapEntry(); ColorMapEntry entry = new ColorMapEntry();
int offset = cMapDepth * i; int offset = cMapDepth * i;
entry.red = (byte)(int)(getBitsAsByte(cMapData, offset, bitsPerColor) * scalar); entry.red = (byte) (int) (getBitsAsByte(cMapData, offset, bitsPerColor) * scalar);
entry.green = (byte)(int)(getBitsAsByte(cMapData, offset+bitsPerColor, bitsPerColor) * scalar); entry.green = (byte) (int) (getBitsAsByte(cMapData, offset + bitsPerColor, bitsPerColor) * scalar);
entry.blue = (byte)(int)(getBitsAsByte(cMapData, offset+(2*bitsPerColor), bitsPerColor) * scalar); entry.blue = (byte) (int) (getBitsAsByte(cMapData, offset + (2 * bitsPerColor), bitsPerColor) * scalar);
if (alphaSize <= 0) if (alphaSize <= 0) {
entry.alpha = (byte)255; entry.alpha = (byte) 255;
else } else {
entry.alpha = (byte)(int)(getBitsAsByte(cMapData, offset+(3*bitsPerColor), alphaSize) * alphaScalar); entry.alpha = (byte) (int) (getBitsAsByte(cMapData, offset + (3 * bitsPerColor), alphaSize) * alphaScalar);
}
cMapEntries[i] = entry; cMapEntries[i] = entry;
} }
@ -217,32 +217,36 @@ public final class TGALoader implements AssetLoader {
// just make a seperate loop for each. // just make a seperate loop for each.
if (pixelDepth == 16) { if (pixelDepth == 16) {
byte[] data = new byte[2]; byte[] data = new byte[2];
float scalar = 255f/31f; float scalar = 255f / 31f;
for (int i = 0; i <= (height - 1); i++) { for (int i = 0; i <= (height - 1); i++) {
if (!flip) if (!flip) {
rawDataIndex = (height - 1 - i) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
}
for (int j = 0; j < width; j++) { for (int j = 0; j < width; j++) {
data[1] = dis.readByte(); data[1] = dis.readByte();
data[0] = dis.readByte(); data[0] = dis.readByte();
rawData[rawDataIndex++] = (byte)(int)(getBitsAsByte(data, 1, 5) * scalar); rawData[rawDataIndex++] = (byte) (int) (getBitsAsByte(data, 1, 5) * scalar);
rawData[rawDataIndex++] = (byte)(int)(getBitsAsByte(data, 6, 5) * scalar); rawData[rawDataIndex++] = (byte) (int) (getBitsAsByte(data, 6, 5) * scalar);
rawData[rawDataIndex++] = (byte)(int)(getBitsAsByte(data, 11, 5) * scalar); rawData[rawDataIndex++] = (byte) (int) (getBitsAsByte(data, 11, 5) * scalar);
if (dl == 4) { if (dl == 4) {
// create an alpha channel // create an alpha channel
alpha = getBitsAsByte(data, 0, 1); alpha = getBitsAsByte(data, 0, 1);
if (alpha == 1) alpha = (byte)255; if (alpha == 1) {
alpha = (byte) 255;
}
rawData[rawDataIndex++] = alpha; rawData[rawDataIndex++] = alpha;
} }
} }
} }
format = dl == 4 ? Format.RGBA8 : Format.RGB8; format = dl == 4 ? Format.RGBA8 : Format.RGB8;
} else if (pixelDepth == 24){ } else if (pixelDepth == 24) {
for (int y = 0; y < height; y++) { for (int y = 0; y < height; y++) {
if (!flip) if (!flip) {
rawDataIndex = (height - 1 - y) * width * dl; rawDataIndex = (height - 1 - y) * width * dl;
else } else {
rawDataIndex = y * width * dl; rawDataIndex = y * width * dl;
}
dis.readFully(rawData, rawDataIndex, width * dl); dis.readFully(rawData, rawDataIndex, width * dl);
// for (int x = 0; x < width; x++) { // for (int x = 0; x < width; x++) {
@ -256,10 +260,11 @@ public final class TGALoader implements AssetLoader {
// } // }
} }
format = Format.BGR8; format = Format.BGR8;
} else if (pixelDepth == 32){ } else if (pixelDepth == 32) {
for (int i = 0; i <= (height - 1); i++) { for (int i = 0; i <= (height - 1); i++) {
if (!flip) if (!flip) {
rawDataIndex = (height - 1 - i) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
}
for (int j = 0; j < width; j++) { for (int j = 0; j < width; j++) {
blue = dis.readByte(); blue = dis.readByte();
@ -273,26 +278,26 @@ public final class TGALoader implements AssetLoader {
} }
} }
format = Format.RGBA8; format = Format.RGBA8;
}else{ } else {
throw new IOException("Unsupported TGA true color depth: "+pixelDepth); throw new IOException("Unsupported TGA true color depth: " + pixelDepth);
} }
} else if( imageType == TYPE_TRUECOLOR_RLE ) { } else if (imageType == TYPE_TRUECOLOR_RLE) {
byte red = 0; byte red = 0;
byte green = 0; byte green = 0;
byte blue = 0; byte blue = 0;
byte alpha = 0; byte alpha = 0;
// Faster than doing a 16-or-24-or-32 check on each individual pixel, // Faster than doing a 16-or-24-or-32 check on each individual pixel,
// just make a seperate loop for each. // just make a seperate loop for each.
if( pixelDepth == 32 ){ if (pixelDepth == 32) {
for( int i = 0; i <= ( height - 1 ); ++i ){ for (int i = 0; i <= (height - 1); ++i) {
if( !flip ){ if (!flip) {
rawDataIndex = ( height - 1 - i ) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
} }
for( int j = 0; j < width; ++j ){ for (int j = 0; j < width; ++j) {
// Get the number of pixels the next chunk covers (either packed or unpacked) // Get the number of pixels the next chunk covers (either packed or unpacked)
int count = dis.readByte(); int count = dis.readByte();
if( ( count & 0x80 ) != 0 ){ if ((count & 0x80) != 0) {
// Its an RLE packed block - use the following 1 pixel for the next <count> pixels // Its an RLE packed block - use the following 1 pixel for the next <count> pixels
count &= 0x07f; count &= 0x07f;
j += count; j += count;
@ -300,16 +305,16 @@ public final class TGALoader implements AssetLoader {
green = dis.readByte(); green = dis.readByte();
red = dis.readByte(); red = dis.readByte();
alpha = dis.readByte(); alpha = dis.readByte();
while( count-- >= 0 ){ while (count-- >= 0) {
rawData[rawDataIndex++] = red; rawData[rawDataIndex++] = red;
rawData[rawDataIndex++] = green; rawData[rawDataIndex++] = green;
rawData[rawDataIndex++] = blue; rawData[rawDataIndex++] = blue;
rawData[rawDataIndex++] = alpha; rawData[rawDataIndex++] = alpha;
} }
} else{ } else {
// Its not RLE packed, but the next <count> pixels are raw. // Its not RLE packed, but the next <count> pixels are raw.
j += count; j += count;
while( count-- >= 0 ){ while (count-- >= 0) {
blue = dis.readByte(); blue = dis.readByte();
green = dis.readByte(); green = dis.readByte();
red = dis.readByte(); red = dis.readByte();
@ -323,30 +328,30 @@ public final class TGALoader implements AssetLoader {
} }
} }
format = Format.RGBA8; format = Format.RGBA8;
} else if( pixelDepth == 24 ){ } else if (pixelDepth == 24) {
for( int i = 0; i <= ( height - 1 ); i++ ){ for (int i = 0; i <= (height - 1); i++) {
if( !flip ){ if (!flip) {
rawDataIndex = ( height - 1 - i ) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
} }
for( int j = 0; j < width; ++j ){ for (int j = 0; j < width; ++j) {
// Get the number of pixels the next chunk covers (either packed or unpacked) // Get the number of pixels the next chunk covers (either packed or unpacked)
int count = dis.readByte(); int count = dis.readByte();
if( ( count & 0x80 ) != 0 ){ if ((count & 0x80) != 0) {
// Its an RLE packed block - use the following 1 pixel for the next <count> pixels // Its an RLE packed block - use the following 1 pixel for the next <count> pixels
count &= 0x07f; count &= 0x07f;
j += count; j += count;
blue = dis.readByte(); blue = dis.readByte();
green = dis.readByte(); green = dis.readByte();
red = dis.readByte(); red = dis.readByte();
while( count-- >= 0 ){ while (count-- >= 0) {
rawData[rawDataIndex++] = red; rawData[rawDataIndex++] = red;
rawData[rawDataIndex++] = green; rawData[rawDataIndex++] = green;
rawData[rawDataIndex++] = blue; rawData[rawDataIndex++] = blue;
} }
} else{ } else {
// Its not RLE packed, but the next <count> pixels are raw. // Its not RLE packed, but the next <count> pixels are raw.
j += count; j += count;
while( count-- >= 0 ){ while (count-- >= 0) {
blue = dis.readByte(); blue = dis.readByte();
green = dis.readByte(); green = dis.readByte();
red = dis.readByte(); red = dis.readByte();
@ -358,39 +363,39 @@ public final class TGALoader implements AssetLoader {
} }
} }
format = Format.RGB8; format = Format.RGB8;
} else if( pixelDepth == 16 ){ } else if (pixelDepth == 16) {
byte[] data = new byte[ 2 ]; byte[] data = new byte[2];
float scalar = 255f / 31f; float scalar = 255f / 31f;
for( int i = 0; i <= ( height - 1 ); i++ ){ for (int i = 0; i <= (height - 1); i++) {
if( !flip ){ if (!flip) {
rawDataIndex = ( height - 1 - i ) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
} }
for( int j = 0; j < width; j++ ){ for (int j = 0; j < width; j++) {
// Get the number of pixels the next chunk covers (either packed or unpacked) // Get the number of pixels the next chunk covers (either packed or unpacked)
int count = dis.readByte(); int count = dis.readByte();
if( ( count & 0x80 ) != 0 ){ if ((count & 0x80) != 0) {
// Its an RLE packed block - use the following 1 pixel for the next <count> pixels // Its an RLE packed block - use the following 1 pixel for the next <count> pixels
count &= 0x07f; count &= 0x07f;
j += count; j += count;
data[1] = dis.readByte(); data[1] = dis.readByte();
data[0] = dis.readByte(); data[0] = dis.readByte();
blue = (byte) (int) ( getBitsAsByte( data, 1, 5 ) * scalar ); blue = (byte) (int) (getBitsAsByte(data, 1, 5) * scalar);
green = (byte) (int) ( getBitsAsByte( data, 6, 5 ) * scalar ); green = (byte) (int) (getBitsAsByte(data, 6, 5) * scalar);
red = (byte) (int) ( getBitsAsByte( data, 11, 5 ) * scalar ); red = (byte) (int) (getBitsAsByte(data, 11, 5) * scalar);
while( count-- >= 0 ){ while (count-- >= 0) {
rawData[rawDataIndex++] = red; rawData[rawDataIndex++] = red;
rawData[rawDataIndex++] = green; rawData[rawDataIndex++] = green;
rawData[rawDataIndex++] = blue; rawData[rawDataIndex++] = blue;
} }
} else{ } else {
// Its not RLE packed, but the next <count> pixels are raw. // Its not RLE packed, but the next <count> pixels are raw.
j += count; j += count;
while( count-- >= 0 ){ while (count-- >= 0) {
data[1] = dis.readByte(); data[1] = dis.readByte();
data[0] = dis.readByte(); data[0] = dis.readByte();
blue = (byte) (int) ( getBitsAsByte( data, 1, 5 ) * scalar ); blue = (byte) (int) (getBitsAsByte(data, 1, 5) * scalar);
green = (byte) (int) ( getBitsAsByte( data, 6, 5 ) * scalar ); green = (byte) (int) (getBitsAsByte(data, 6, 5) * scalar);
red = (byte) (int) ( getBitsAsByte( data, 11, 5 ) * scalar ); red = (byte) (int) (getBitsAsByte(data, 11, 5) * scalar);
rawData[rawDataIndex++] = red; rawData[rawDataIndex++] = red;
rawData[rawDataIndex++] = green; rawData[rawDataIndex++] = green;
rawData[rawDataIndex++] = blue; rawData[rawDataIndex++] = blue;
@ -399,21 +404,23 @@ public final class TGALoader implements AssetLoader {
} }
} }
format = Format.RGB8; format = Format.RGB8;
} else{ } else {
throw new IOException( "Unsupported TGA true color depth: " + pixelDepth ); throw new IOException("Unsupported TGA true color depth: " + pixelDepth);
} }
} else if( imageType == TYPE_COLORMAPPED ){ } else if (imageType == TYPE_COLORMAPPED) {
int bytesPerIndex = pixelDepth / 8; int bytesPerIndex = pixelDepth / 8;
if (bytesPerIndex == 1) { if (bytesPerIndex == 1) {
for (int i = 0; i <= (height - 1); i++) { for (int i = 0; i <= (height - 1); i++) {
if (!flip) if (!flip) {
rawDataIndex = (height - 1 - i) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
}
for (int j = 0; j < width; j++) { for (int j = 0; j < width; j++) {
int index = dis.readUnsignedByte(); int index = dis.readUnsignedByte();
if (index >= cMapEntries.length || index < 0) if (index >= cMapEntries.length || index < 0) {
throw new IOException("TGA: Invalid color map entry referenced: "+index); throw new IOException("TGA: Invalid color map entry referenced: " + index);
}
ColorMapEntry entry = cMapEntries[index]; ColorMapEntry entry = cMapEntries[index];
rawData[rawDataIndex++] = entry.red; rawData[rawDataIndex++] = entry.red;
@ -427,12 +434,14 @@ public final class TGALoader implements AssetLoader {
} }
} else if (bytesPerIndex == 2) { } else if (bytesPerIndex == 2) {
for (int i = 0; i <= (height - 1); i++) { for (int i = 0; i <= (height - 1); i++) {
if (!flip) if (!flip) {
rawDataIndex = (height - 1 - i) * width * dl; rawDataIndex = (height - 1 - i) * width * dl;
}
for (int j = 0; j < width; j++) { for (int j = 0; j < width; j++) {
int index = flipEndian(dis.readShort()); int index = flipEndian(dis.readShort());
if (index >= cMapEntries.length || index < 0) if (index >= cMapEntries.length || index < 0) {
throw new IOException("TGA: Invalid color map entry referenced: "+index); throw new IOException("TGA: Invalid color map entry referenced: " + index);
}
ColorMapEntry entry = cMapEntries[index]; ColorMapEntry entry = cMapEntries[index];
rawData[rawDataIndex++] = entry.red; rawData[rawDataIndex++] = entry.red;
@ -444,7 +453,7 @@ public final class TGALoader implements AssetLoader {
} }
} }
} else { } else {
throw new IOException("TGA: unknown colormap indexing size used: "+bytesPerIndex); throw new IOException("TGA: unknown colormap indexing size used: " + bytesPerIndex);
} }
format = dl == 4 ? Format.RGBA8 : Format.RGB8; format = dl == 4 ? Format.RGBA8 : Format.RGB8;
@ -474,14 +483,15 @@ public final class TGALoader implements AssetLoader {
int rVal = 0; int rVal = 0;
// start at data[offsetBytes]... spill into next byte as needed. // start at data[offsetBytes]... spill into next byte as needed.
for (int i = length; --i >=0;) { for (int i = length; --i >= 0;) {
byte b = data[offsetBytes]; byte b = data[offsetBytes];
int test = indexBits == 7 ? 1 : 2 << (6-indexBits); int test = indexBits == 7 ? 1 : 2 << (6 - indexBits);
if ((b & test) != 0) { if ((b & test) != 0) {
if (i == 0) if (i == 0) {
rVal++; rVal++;
else } else {
rVal += (2 << i-1); rVal += (2 << i - 1);
}
} }
indexBits++; indexBits++;
if (indexBits == 8) { if (indexBits == 8) {
@ -490,7 +500,7 @@ public final class TGALoader implements AssetLoader {
} }
} }
return (byte)rVal; return (byte) rVal;
} }
/** /**
@ -507,11 +517,12 @@ public final class TGALoader implements AssetLoader {
} }
static class ColorMapEntry { static class ColorMapEntry {
byte red, green, blue, alpha; byte red, green, blue, alpha;
@Override @Override
public String toString() { public String toString() {
return "entry: "+red+","+green+","+blue+","+alpha; return "entry: " + red + "," + green + "," + blue + "," + alpha;
} }
} }
} }

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -98,7 +98,7 @@ public class AssetCache {
* <br/><br/> * <br/><br/>
* <font color="red">Thread-safe.</font> * <font color="red">Thread-safe.</font>
* @param key * @param key
* @return * @return the object matching the {@link AssetKey}
*/ */
public Object getFromCache(AssetKey key){ public Object getFromCache(AssetKey key){
synchronized (regularCache){ synchronized (regularCache){

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -218,7 +218,7 @@ public class DesktopAssetManager implements AssetManager {
* *
* @param <T> * @param <T>
* @param key * @param key
* @return * @return the loaded asset
*/ */
public <T> T loadAsset(AssetKey<T> key){ public <T> T loadAsset(AssetKey<T> key){
if (key == null) if (key == null)
@ -319,7 +319,7 @@ public class DesktopAssetManager implements AssetManager {
/** /**
* Loads a texture. * Loads a texture.
* *
* @return * @return the texture
*/ */
public Texture loadTexture(TextureKey key){ public Texture loadTexture(TextureKey key){
return (Texture) loadAsset(key); return (Texture) loadAsset(key);
@ -335,7 +335,7 @@ public class DesktopAssetManager implements AssetManager {
* @param name * @param name
* @param generateMipmaps Enable if applying texture to 3D objects, disable * @param generateMipmaps Enable if applying texture to 3D objects, disable
* for GUI/HUD elements. * for GUI/HUD elements.
* @return * @return the loaded texture
*/ */
public Texture loadTexture(String name, boolean generateMipmaps){ public Texture loadTexture(String name, boolean generateMipmaps){
TextureKey key = new TextureKey(name, true); TextureKey key = new TextureKey(name, true);
@ -368,7 +368,7 @@ public class DesktopAssetManager implements AssetManager {
* Loads a bitmap font with the given name. * Loads a bitmap font with the given name.
* *
* @param name * @param name
* @return * @return the loaded {@link BitmapFont}
*/ */
public BitmapFont loadFont(String name){ public BitmapFont loadFont(String name){
return (BitmapFont) loadAsset(new AssetKey(name)); return (BitmapFont) loadAsset(new AssetKey(name));
@ -382,7 +382,7 @@ public class DesktopAssetManager implements AssetManager {
* Load a vertex/fragment shader combo. * Load a vertex/fragment shader combo.
* *
* @param key * @param key
* @return * @return the loaded {@link Shader}
*/ */
public Shader loadShader(ShaderKey key){ public Shader loadShader(ShaderKey key){
// cache abuse in method // cache abuse in method
@ -412,7 +412,7 @@ public class DesktopAssetManager implements AssetManager {
* Load a model. * Load a model.
* *
* @param name * @param name
* @return * @return the loaded model
*/ */
public Spatial loadModel(String name){ public Spatial loadModel(String name){
return loadModel(new ModelKey(name)); return loadModel(new ModelKey(name));

@ -1,3 +1,34 @@
/*
* Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* * Neither the name of 'jMonkeyEngine' nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package com.jme3.effect.influencers; package com.jme3.effect.influencers;
import com.jme3.effect.Particle; import com.jme3.effect.Particle;
@ -48,7 +79,7 @@ public interface ParticleInfluencer extends Savable, Cloneable {
* Set the variation by which the initial velocity * Set the variation by which the initial velocity
* of the particle is determined. <code>variation</code> should be a value * of the particle is determined. <code>variation</code> should be a value
* from 0 to 1, where 0 means particles are to spawn with exactly * from 0 to 1, where 0 means particles are to spawn with exactly
* the velocity given in {@link ParticleEmitter#setStartVel(com.jme3.math.Vector3f) }, * the velocity given in {@link ParticleEmitter#setInitialVelocity(com.jme3.math.Vector3f) },
* and 1 means particles are to spawn with a completely random velocity. * and 1 means particles are to spawn with a completely random velocity.
*/ */
void setVelocityVariation(float variation); void setVelocityVariation(float variation);

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -128,7 +128,7 @@ public class BitmapFont implements Savable {
/** /**
* Gets the line height of a StringBlock. * Gets the line height of a StringBlock.
* @param sb * @param sb
* @return * @return the line height
*/ */
public float getLineHeight(StringBlock sb) { public float getLineHeight(StringBlock sb) {
return charSet.getLineHeight() * (sb.getSize() / charSet.getRenderedSize()); return charSet.getLineHeight() * (sb.getSize() / charSet.getRenderedSize());
@ -261,7 +261,7 @@ public class BitmapFont implements Savable {
/** /**
* Merge two fonts. * Merge two fonts.
* If two font have the same style, merge will fail. * If two font have the same style, merge will fail.
* @param styleSet Style must be assigned to this. * @param newFont Style must be assigned to this.
* @author Yonghoon * @author Yonghoon
*/ */
public void merge(BitmapFont newFont) { public void merge(BitmapFont newFont) {

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -338,7 +338,7 @@ public abstract class Filter implements Savable {
/** /**
* returns the name of the filter * returns the name of the filter
* @return * @return the Filter's name
*/ */
public String getName() { public String getName() {
return name; return name;

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -87,7 +87,7 @@ public class FilterPostProcessor implements SceneProcessor, Savable {
} }
/** /**
* Don't use this constructor use {@link FilterPostProcessor(AssetManager assetManager)}<br> * Don't use this constructor, use {@link #FilterPostProcessor(AssetManager assetManager)}<br>
* This constructor is used for serialization only * This constructor is used for serialization only
*/ */
public FilterPostProcessor() { public FilterPostProcessor() {
@ -488,7 +488,7 @@ public class FilterPostProcessor implements SceneProcessor, Savable {
/** /**
* For internal use only<br> * For internal use only<br>
* returns the depth texture of the scene * returns the depth texture of the scene
* @return * @return the depth texture
*/ */
public Texture2D getDepthTexture() { public Texture2D getDepthTexture() {
return depthTexture; return depthTexture;
@ -497,7 +497,7 @@ public class FilterPostProcessor implements SceneProcessor, Savable {
/** /**
* For internal use only<br> * For internal use only<br>
* returns the rendered texture of the scene * returns the rendered texture of the scene
* @return * @return the filter texture
*/ */
public Texture2D getFilterTexture() { public Texture2D getFilterTexture() {
return filterTexture; return filterTexture;

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -270,7 +270,7 @@ public interface Renderer {
public void renderMesh(Mesh mesh, int lod, int count); public void renderMesh(Mesh mesh, int lod, int count);
/** /**
* Resets all previously used {@link GLObject}s on this Renderer. * Resets all previously used GLObjects on this Renderer.
* The state of the GLObjects is reset in such way, that using * The state of the GLObjects is reset in such way, that using
* them again will cause the renderer to reupload them. * them again will cause the renderer to reupload them.
* Call this method when you know the GL context is going to shutdown. * Call this method when you know the GL context is going to shutdown.
@ -280,7 +280,7 @@ public interface Renderer {
public void resetGLObjects(); public void resetGLObjects();
/** /**
* Deletes all previously used {@link GLObject}s on this Renderer, and * Deletes all previously used GLObjects on this Renderer, and
* then resets the GLObjects. * then resets the GLObjects.
* *
* @see #resetGLObjects() * @see #resetGLObjects()

@ -56,7 +56,7 @@ import java.util.logging.Logger;
* this geometries are directly attached to the node in the scene graph. * this geometries are directly attached to the node in the scene graph.
* usage is like any other node except you have to call the {@link #batch()} method once all geoms have been attached to the sub scene graph and theire material set * usage is like any other node except you have to call the {@link #batch()} method once all geoms have been attached to the sub scene graph and theire material set
* (see todo more automagic for further enhancements) * (see todo more automagic for further enhancements)
* all the geometry that have been batched are set to {@link CullHint#Always} to not render them. * all the geometry that have been batched are set to {@link Spatial.CullHint#Always} to not render them.
* the sub geometries can be transformed as usual their transforms are used to update the mesh of the geometryBatch. * the sub geometries can be transformed as usual their transforms are used to update the mesh of the geometryBatch.
* sub geoms can be removed but it may be slower than the normal spatial removing * sub geoms can be removed but it may be slower than the normal spatial removing
* Sub geoms can be added after the batch() method has been called but won't be batched and will be rendered as normal geometries. * Sub geoms can be added after the batch() method has been called but won't be batched and will be rendered as normal geometries.

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -106,14 +106,14 @@ public class LwjglSmoothingTimer extends Timer {
} }
/** /**
* @see com.jme.util.Timer#getTime() * @see Timer#getTime()
*/ */
public long getTime() { public long getTime() {
return Sys.getTime() - startTime; return Sys.getTime() - startTime;
} }
/** /**
* @see com.jme.util.Timer#getResolution() * @see Timer#getResolution()
*/ */
public long getResolution() { public long getResolution() {
return LWJGL_TIMER_RES; return LWJGL_TIMER_RES;

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2009-2010 jMonkeyEngine * Copyright (c) 2009-2012 jMonkeyEngine
* All rights reserved. * All rights reserved.
* *
* Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
@ -81,14 +81,14 @@ public class LwjglTimer extends Timer {
} }
/** /**
* @see com.jme.util.Timer#getTime() * @see Timer#getTime()
*/ */
public long getTime() { public long getTime() {
return Sys.getTime() - startTime; return Sys.getTime() - startTime;
} }
/** /**
* @see com.jme.util.Timer#getResolution() * @see Timer#getResolution()
*/ */
public long getResolution() { public long getResolution() {
return LWJGL_TIMER_RES; return LWJGL_TIMER_RES;

@ -65,7 +65,7 @@ public class OgreMaterialKey extends AssetKey<MaterialList> {
/** /**
* Returns the {@link MaterialExtensionSet} previously set using * Returns the {@link MaterialExtensionSet} previously set using
* {@link OgreMaterialKey#setMaterialExtensionSet(com.jme3.scene.plugins.ogre.matext.MaterialExtensionSet) } method. * {@link OgreMaterialKey#setMaterialExtensionSet(com.jme3.scene.plugins.ogre.matext.MaterialExtensionSet) } method.
* @return * @return the {@link MaterialExtensionSet}
*/ */
public MaterialExtensionSet getMaterialExtensionSet() { public MaterialExtensionSet getMaterialExtensionSet() {
return matExts; return matExts;

@ -218,7 +218,7 @@ public class TerrainPatch extends Geometry {
* If the patch size is 32 then the returned value would be log2(32)-2 = 3 * If the patch size is 32 then the returned value would be log2(32)-2 = 3
* You can then use that value, 3, to see how many times you can divide 32 by 2 * You can then use that value, 3, to see how many times you can divide 32 by 2
* before the terrain gets too un-detailed (can't stitch it any further). * before the terrain gets too un-detailed (can't stitch it any further).
* @return * @return the maximum LOD
*/ */
public int getMaxLod() { public int getMaxLod() {
if (maxLod < 0) if (maxLod < 0)

@ -368,7 +368,7 @@ public class TextureAtlas {
/** /**
* Get the <code>TextureAtlasTile</code> for the given Texture * Get the <code>TextureAtlasTile</code> for the given Texture
* @param texture The texture to retrieve the <code>TextureAtlasTile</code> for. * @param texture The texture to retrieve the <code>TextureAtlasTile</code> for.
* @return * @return the atlas tile
*/ */
public TextureAtlasTile getAtlasTile(Texture texture) { public TextureAtlasTile getAtlasTile(Texture texture) {
String sourceTextureName = textureName(texture); String sourceTextureName = textureName(texture);
@ -390,7 +390,7 @@ public class TextureAtlas {
/** /**
* Creates a new atlas texture for the given map name. * Creates a new atlas texture for the given map name.
* @param mapName * @param mapName
* @return * @return the atlas texture
*/ */
public Texture getAtlasTexture(String mapName) { public Texture getAtlasTexture(String mapName) {
if (images == null) { if (images == null) {

@ -94,7 +94,7 @@ public class TriangleCollector {
* *
* @param inGeoms * @param inGeoms
* @param tris * @param tris
* @return * @return The optimized geometries
*/ */
public static final List<Geometry> gatherTris(Geometry[] inGeoms, List<OCTTriangle> tris){ public static final List<Geometry> gatherTris(Geometry[] inGeoms, List<OCTTriangle> tris){
Collections.sort(tris, comparator); Collections.sort(tris, comparator);

Loading…
Cancel
Save