本文整理了Java中com.jme3.texture.Image.getColorSpace()
方法的一些代码示例,展示了Image.getColorSpace()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Image.getColorSpace()
方法的具体详情如下:
包路径:com.jme3.texture.Image
类名称:Image
方法名:getColorSpace
[英]Specifies that this image is an SRGB image and therefore must undergo an sRGB -> linear RGB color conversion prior to being read by a shader and with the Renderer#setLinearizeSrgbImages(boolean) option is enabled. This option is only supported for the 8-bit color and grayscale image formats. Determines if the image is in SRGB color space or not.
[中]指定此图像是SRGB图像,因此在被着色器读取之前必须进行SRGB->linear RGB颜色转换,并启用渲染器#setLinearizeSrgbImages(布尔)选项。此选项仅适用于8位彩色和灰度图像格式。确定图像是否在SRGB颜色空间中。
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
boolean getSrgbFormat = image.getColorSpace() == ColorSpace.sRGB && linearizeSrgb;
GLImageFormat oglFormat = getImageFormatWithError(jmeFormat, getSrgbFormat);
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
int height = images.get(0).getHeight();
Format format = images.get(0).getFormat();
ColorSpace colorSpace = images.get(0).getColorSpace();
int[] mipMapSizes = images.get(0).getMipMapSizes();
Image arrayImage = new Image(format, width, height, null, colorSpace);
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
private void checkTextureParamColorSpace(String name, Texture value) {
MatParamTexture paramDef = (MatParamTexture) def.getMaterialParam(name);
if (paramDef.getColorSpace() != null && paramDef.getColorSpace() != value.getImage().getColorSpace()) {
value.getImage().setColorSpace(paramDef.getColorSpace());
logger.log(Level.FINE, "Material parameter {0} needs a {1} texture, "
+ "texture {2} was switched to {3} color space.",
new Object[]{name, paramDef.getColorSpace().toString(),
value.getName(),
value.getImage().getColorSpace().name()});
} else if (paramDef.getColorSpace() == null && value.getName() != null && value.getImage().getColorSpace() == ColorSpace.Linear) {
logger.log(Level.WARNING,
"The texture {0} has linear color space, but the material "
+ "parameter {2} specifies no color space requirement, this may "
+ "lead to unexpected behavior.\nCheck if the image "
+ "was not set to another material parameter with a linear "
+ "color space, or that you did not set the ColorSpace to "
+ "Linear using texture.getImage.setColorSpace().",
new Object[]{value.getName(), value.getImage().getColorSpace().name(), name});
}
}
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
this.convertToLinear = convertToLinear && image.getColorSpace() == ColorSpace.sRGB;
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
boolean linearizeSrgb) {
boolean getSrgbFormat = image.getColorSpace() == ColorSpace.sRGB && linearizeSrgb;
Image.Format jmeFormat = image.getFormat();
GLImageFormat oglFormat = getImageFormatWithError(jmeFormat, getSrgbFormat);
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
private Image convertImage(Image image, Format newFormat) {
int width = image.getWidth();
int height = image.getHeight();
ByteBuffer data = BufferUtils.createByteBuffer( (int)Math.ceil(newFormat.getBitsPerPixel() / 8.0) * width * height);
Image convertedImage = new Image(newFormat, width, height, data,null, image.getColorSpace());
ImageRaster sourceReader = ImageRaster.create(image);
ImageRaster targetWriter = ImageRaster.create(convertedImage);
for (int x = 0; x < width; x++) {
for (int y = 0; y < height; y++) {
ColorRGBA color = sourceReader.getPixel(x, y);
targetWriter.setPixel(x, y, color);
}
}
return convertedImage;
}
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
GL gl = GLContext.getCurrentGL();
Image.Format fmt = image.getFormat();
GLImageFormat glFmt = getImageFormatWithError(fmt, image.getColorSpace() == ColorSpace.sRGB && linearizeSrgb);
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
logger.severe(" Image depth: "+leftEyeTexture.getImage().getDepth());
logger.severe(" Image format: "+leftEyeTexture.getImage().getFormat());
logger.severe(" Image color space: "+leftEyeTexture.getImage().getColorSpace());
logger.severe(" Image depth: "+rightEyeTexture.getImage().getDepth());
logger.severe(" Image format: "+rightEyeTexture.getImage().getFormat());
logger.severe(" Image color space: "+rightEyeTexture.getImage().getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
logger.config(" Image depth: "+dualEyeTex.getImage().getDepth());
logger.config(" Image format: "+dualEyeTex.getImage().getFormat());
logger.config(" Image color space: "+dualEyeTex.getImage().getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
logger.config(" Image depth: "+dualEyeTex.getImage().getDepth());
logger.config(" Image format: "+dualEyeTex.getImage().getFormat());
logger.config(" Image color space: "+dualEyeTex.getImage().getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
private void setupFinalFullTexture(Camera cam) {
if (environment != null) {
if (environment.getApplication() != null) {
// create offscreen framebuffer
FrameBuffer out = new FrameBuffer(cam.getWidth(), cam.getHeight(), 1);
//offBuffer.setSrgb(true);
//setup framebuffer's texture
dualEyeTex = new Texture2D(cam.getWidth(), cam.getHeight(), Image.Format.RGBA8);
dualEyeTex.setMinFilter(Texture2D.MinFilter.BilinearNoMipMaps);
dualEyeTex.setMagFilter(Texture2D.MagFilter.Bilinear);
logger.config("Dual eye texture " + dualEyeTex.getName() + " (" + dualEyeTex.getImage().getId() + ")");
logger.config(" Type: " + dualEyeTex.getType());
logger.config(" Size: " + dualEyeTex.getImage().getWidth() + "x" + dualEyeTex.getImage().getHeight());
logger.config(" Image depth: " + dualEyeTex.getImage().getDepth());
logger.config(" Image format: " + dualEyeTex.getImage().getFormat());
logger.config(" Image color space: " + dualEyeTex.getImage().getColorSpace());
//setup framebuffer to use texture
out.setDepthBuffer(Image.Format.Depth);
out.setColorTexture(dualEyeTex);
ViewPort viewPort = environment.getApplication().getViewPort();
viewPort.setClearFlags(true, true, true);
viewPort.setBackgroundColor(ColorRGBA.Black);
viewPort.setOutputFrameBuffer(out);
} else {
throw new IllegalStateException("This VR environment is not attached to any application.");
}
} else {
throw new IllegalStateException("This VR view manager is not attached to any VR environment.");
}
}
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
logger.severe(" Image depth: "+leftEyeTexture.getImage().getDepth());
logger.severe(" Image format: "+leftEyeTexture.getImage().getFormat());
logger.severe(" Image color space: "+leftEyeTexture.getImage().getColorSpace());
logger.severe(" Image depth: "+rightEyeTexture.getImage().getDepth());
logger.severe(" Image format: "+rightEyeTexture.getImage().getFormat());
logger.severe(" Image color space: "+rightEyeTexture.getImage().getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
logger.severe(" Image depth: " + leftEyeTexture.getImage().getDepth());
logger.severe(" Image format: " + leftEyeTexture.getImage().getFormat());
logger.severe(" Image color space: " + leftEyeTexture.getImage().getColorSpace());
logger.severe(" Image depth: " + rightEyeTexture.getImage().getDepth());
logger.severe(" Image format: " + rightEyeTexture.getImage().getFormat());
logger.severe(" Image color space: " + rightEyeTexture.getImage().getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
GL gl = GLContext.getCurrentGL();
Image.Format fmt = image.getFormat();
GLImageFormat glFmt = getImageFormatWithError(fmt, image.getColorSpace() == ColorSpace.sRGB && linearizeSrgb);
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
/**
* Make a duplicate of this cube Map. That means that it's another instant
* od TextureCubeMap, but the underlying buffers are duplicates of the
* original ones. see {@link ByteBuffer#duplicate()}
*
* Use this if you need to read from the map from multiple threads, it
* should garanty the thread safety. Note that if you want to write to the
* cube map you have to make sure that the different thread do not write to
* the same area of the buffer. The position, limit and mark are not an
* issue.
*
* @param sourceMap
* @return
*/
public static TextureCubeMap duplicateCubeMap(TextureCubeMap sourceMap) {
Image srcImg = sourceMap.getImage();
Image cubeImage = new Image(srcImg.getFormat(), srcImg.getWidth(), srcImg.getHeight(), null, srcImg.getColorSpace());
for (ByteBuffer d : srcImg.getData()) {
cubeImage.addData(d.duplicate());
}
cubeImage.setMipMapSizes(srcImg.getMipMapSizes());
TextureCubeMap cubeMap = new TextureCubeMap(cubeImage);
cubeMap.setAnisotropicFilter(sourceMap.getAnisotropicFilter());
cubeMap.setMagFilter(sourceMap.getMagFilter());
cubeMap.setMinFilter(sourceMap.getMinFilter());
cubeMap.setWrap(sourceMap.getWrap(Texture.WrapAxis.S));
return cubeMap;
}
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
Texture2D tex = new Texture2D(new Image(cubeMap.getImage().getFormat(), size, size, data, cubeMap.getImage().getColorSpace()));
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
outputHeight,
buffer,
inputImage.getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
Image cubeImage = new Image(westImg.getFormat(), westImg.getWidth(), westImg.getHeight(), null, westImg.getColorSpace());
代码示例来源:origin: jMonkeyEngine/jmonkeyengine
Texture2D tex = new Texture2D(new Image(cubeMap.getImage().getFormat(), size, size, cubeMap.getImage().getData(i), cubeMap.getImage().getColorSpace()));
代码示例来源:origin: org.jmonkeyengine/jme3-core
private void checkTextureParamColorSpace(String name, Texture value) {
MatParamTexture paramDef = (MatParamTexture) def.getMaterialParam(name);
if (paramDef.getColorSpace() != null && paramDef.getColorSpace() != value.getImage().getColorSpace()) {
value.getImage().setColorSpace(paramDef.getColorSpace());
logger.log(Level.FINE, "Material parameter {0} needs a {1} texture, "
+ "texture {2} was switched to {3} color space.",
new Object[]{name, paramDef.getColorSpace().toString(),
value.getName(),
value.getImage().getColorSpace().name()});
} else if (paramDef.getColorSpace() == null && value.getName() != null && value.getImage().getColorSpace() == ColorSpace.Linear) {
logger.log(Level.WARNING,
"The texture {0} has linear color space, but the material "
+ "parameter {2} specifies no color space requirement, this may "
+ "lead to unexpected behavior.\nCheck if the image "
+ "was not set to another material parameter with a linear "
+ "color space, or that you did not set the ColorSpace to "
+ "Linear using texture.getImage.setColorSpace().",
new Object[]{value.getName(), value.getImage().getColorSpace().name(), name});
}
}
内容来源于网络,如有侵权,请联系作者删除!