|
|
|
@ -36,8 +36,15 @@ import com.jme3.renderer.Caps; |
|
|
|
|
import com.jme3.renderer.RenderManager; |
|
|
|
|
import com.jme3.scene.Geometry; |
|
|
|
|
import com.jme3.scene.shape.Box; |
|
|
|
|
import com.jme3.shader.VarType; |
|
|
|
|
import com.jme3.system.NullRenderer; |
|
|
|
|
import com.jme3.system.TestUtil; |
|
|
|
|
import com.jme3.texture.Image; |
|
|
|
|
import com.jme3.texture.Texture2D; |
|
|
|
|
import com.jme3.texture.Image.Format; |
|
|
|
|
import com.jme3.texture.image.ColorSpace; |
|
|
|
|
import com.jme3.util.BufferUtils; |
|
|
|
|
|
|
|
|
|
import java.util.Arrays; |
|
|
|
|
import java.util.EnumSet; |
|
|
|
|
import static org.junit.Assert.*; |
|
|
|
@ -120,6 +127,30 @@ public class MaterialTest { |
|
|
|
|
checkRequiredCaps(Caps.GLSL150); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testForcedColorSpace(){ |
|
|
|
|
|
|
|
|
|
Image img=new Image(Format.RGBA8,2,2,BufferUtils.createByteBuffer(16),null,ColorSpace.sRGB); |
|
|
|
|
Image img2=new Image(Format.RGBA8,2,2,BufferUtils.createByteBuffer(16),null,ColorSpace.sRGB); |
|
|
|
|
Texture2D tx=new Texture2D(img); |
|
|
|
|
Texture2D tx2=new Texture2D(img2); |
|
|
|
|
|
|
|
|
|
assertTrue(tx2.getImage().getColorSpace()==ColorSpace.sRGB); |
|
|
|
|
assertTrue(tx2.getImage().getColorSpace()==ColorSpace.sRGB); |
|
|
|
|
|
|
|
|
|
AssetManager assetManager = TestUtil.createAssetManager(); |
|
|
|
|
MaterialDef def=new MaterialDef(assetManager,"test"); |
|
|
|
|
def.addMaterialParamTexture(VarType.Texture2D, "ColorMap",ColorSpace.Linear, null); |
|
|
|
|
Material mat=new Material(def); |
|
|
|
|
|
|
|
|
|
mat.setTexture("ColorMap",tx); |
|
|
|
|
assertTrue(tx.getImage().getColorSpace()==ColorSpace.Linear); |
|
|
|
|
|
|
|
|
|
mat.setTexture("ColorMap",tx2); |
|
|
|
|
assertTrue(tx2.getImage().getColorSpace()==ColorSpace.Linear); |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
public void testSelectNamedTechnique_GLSL100Cap() { |
|
|
|
|
supportGlsl(100); |
|
|
|
|