1088 Commits

Author SHA1 Message Date
Kirill Vainer
14438e78e3 fix null checks 2016-04-02 15:09:04 -04:00
Kirill Vainer
21e63687cf MPO: add null override list check 2016-04-02 15:09:00 -04:00
Kirill Vainer
5588e859cb MPO: clear param for null textures 2016-04-02 15:08:55 -04:00
Kirill Vainer
06b817e116 MPO: add javadoc 2016-04-02 15:08:49 -04:00
Kirill Vainer
8344994328 MPO: use List instead of ArrayList
Also rename get*Overrides to get*MatParamOverrides to be more specific.
2016-04-02 15:08:45 -04:00
Kirill Vainer
50658b8e53 MPO: add ability to disable an override 2016-04-02 15:08:40 -04:00
Kirill Vainer
5d2f2b19e6 spatial: fix bug in remove/clear MPO
add unit test for those methods
2016-04-02 15:08:31 -04:00
Kirill Vainer
5be03af564 material: fix sort id unit test failure 2016-04-02 15:08:26 -04:00
Kirill Vainer
59614e177c MPO: implement overrides on uniforms and add test 2016-04-02 15:08:21 -04:00
Kirill Vainer
2b35f288c2 MPO: implement propagation and add test
Conflicts:
	jme3-core/src/main/java/com/jme3/scene/Node.java
	jme3-core/src/main/java/com/jme3/scene/Spatial.java
2016-04-02 15:08:17 -04:00
Kirill Vainer
280733c1ce material: move technique logic into its own package 2016-04-02 15:04:45 -04:00
Kirill Vainer
10a87ce24e add StaticPassLightingLogic 2016-04-02 15:04:40 -04:00
Kirill Vainer
cb5c1395b3 initial implementation of MPO (untested!) 2016-04-02 15:04:33 -04:00
Kirill Vainer
80af02e1f3 syntax error fixes 2016-04-02 15:04:21 -04:00
Kirill Vainer
0f1c35c5f0 minor formatting changes
Conflicts:
	jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglContext.java
2016-04-02 15:03:52 -04:00
Kirill Vainer
e8df94de1c FastMathTest: ignore failing test (for now) 2016-04-02 14:57:33 -04:00
Kirill Vainer
6a47319dbb DefineList: fix build error
Also add additional unit tests for DefineList.
2016-04-02 14:57:21 -04:00
Kirill Vainer
9d035f747a Add the new material system
Also includes some unrelated tests

Conflicts:
	jme3-core/src/main/java/com/jme3/renderer/RenderManager.java
	jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java
2016-04-02 14:57:10 -04:00
Kirill Vainer
49339497fa Uniform: fix crash when using vector4array 2016-04-02 14:47:59 -04:00
Kirill Vainer
e6d829fac4 GLRenderer: added fast uniforms - still need to fix Uniform.clear() 2016-04-02 14:47:53 -04:00
Jan Ivenz
4abba9b56c Get normals and tangent synced with mikk tangent space. 2016-04-01 22:55:52 +02:00
Nehon
556aaa4396 Normalized the wNormal and wTangent before computing the TBN mat in the PBRLighting frag shader 2016-04-01 22:08:20 +02:00
Jan Ivenz
75791883ec For LightFilter to be implementable frustumCheckNeeded and intersectsFrustum need to be accesible. 2016-03-30 22:14:24 +02:00
Jan Ivenz
98a9f5c628 Fixed shader generation bug for array variables. 2016-03-30 21:58:27 +02:00
Jan Ivenz
c6143ae640 Rendering depth to texture arrays. 2016-03-30 21:58:26 +02:00
Jan Ivenz
4162fb9447 Texture arrays are now allowed as color buffer render targets. 2016-03-30 21:58:25 +02:00
javasabr
98f1bfc0c1 fixed NPE 2016-03-29 06:48:47 +03:00
Paul Speed
68ace33dbd Fixed an NPE when jmeClone() was asked to clone a null. 2016-03-28 11:06:29 -04:00
Paul Speed
78a5a25fc1 Added the app state varargs constructor to LegacyApplication and
modified SimpleApplication to use it.
2016-03-28 11:03:58 -04:00
Paul Speed
3c56afeae6 Converted Application to an interface and renamed the old Application to
LegacyApplication.  This is a breaking change for any class extending Application
directly.
And regardless, if you refer to Application then you will need to clean build
your app... and any of your dependencies that also refer to Application.  Basically,
anything using an AppState will need to be clean built against the next alpha.
2016-03-28 01:47:33 -04:00
Paul Speed
ab6fb03171 Converted spatial over to use Cloner to do its various
deep and semi-shallow cloning.  I'd be very surprised if nothing
is broken as there is only so much testing I can easily do.
Also various fixes for places I forgot to call super.cloneFields().
2016-03-27 06:14:52 -04:00
Paul Speed
f7c16e878e Modified the clone function lookup to support inheritence.
It's just too useful for things like Mesh which has a dozen
or more subclasses... more useful than the limitations.
2016-03-27 05:38:43 -04:00
Paul Speed
2028f3b3f8 Added 'finer' logging for the clone() method to provide visibility for
debugging.
Added a setClonedValue() method to force uncloned or precloned references
in some specific use-cases.
Added an isCloned() method to tell if an object has already been cloned
in this cloner's 'session'.
2016-03-27 04:53:12 -04:00
Paul Speed
c6aac78f42 Added a clone() method and implement Cloneable.
Removed whitespace from the ends of lines.
2016-03-27 04:51:31 -04:00
Nehon
da9d38fee6 Updated the Tank maps, (SP2 generates smaller maps) also reverted last calibration changes as it was screwing up the real life models... 2016-03-26 18:44:00 +01:00
Nehon
e2f180811c PBR calibration with recent changes 2016-03-26 15:36:37 +01:00
Nehon
7190da4df0 PBRLighting Uses the world normal fetched from the texture... 2016-03-26 10:47:49 +01:00
Nehon
65a8ee0f2e PBRLighting now use the world normal to fetch irradiance instead of the reflection vector.
Also added some comment for the parallax fix to explain what it does and where it comes from
2016-03-26 10:32:59 +01:00
Paul Speed
eda92656dd Updated AudioNode with a JmeCloneable cloneFields() method
to clone its fields.  Some small change in behavior since the new
methods will clone the filters, too, to avoid 'user surprise'.
2016-03-26 04:19:59 -04:00
Paul Speed
2f246b25bb Added cloneFields() method to BitmapText thought it's probably
fruitless since BitmapText isn't even properly saveable and couldn't
possibly have worked for any dynamic text with the old clone()
method.
Also a bunch of white space changes removing spaces at the ends of
lines.
2016-03-26 04:08:51 -04:00
Paul Speed
3f1c696e26 Adding a comment about the strange shared fields in BitmapTextPage
that I'm not going to touch with a ten foot pole.
2016-03-26 03:55:58 -04:00
Paul Speed
7665fef2de ParticleEmitter and related classes (ugh) now implement JmeCloneable.
It hasn't replaced the old clone() method yet and is still untested.
2016-03-26 03:46:48 -04:00
Paul Speed
6e999aa79b Tired of committing around the generated version.prpoerties
file... so I'm remove it and fixing it with a .gitignore.
2016-03-26 03:45:34 -04:00
Rémy Bouquet
27f6f85dab Merge pull request #454 from MeFisto94/MECloneIssue
Allow MotionEvents to be cloned (NPE)
2016-03-26 00:39:09 +01:00
Nehon
754c256a66 Merge branch 'master' into PBRisComing 2016-03-25 23:50:19 +01:00
Nehon
07088452ff Fixed binormal calculation in Single pass lighting 2016-03-25 23:49:07 +01:00
Paul Speed
2bdb3de2f5 Started implementing the JmeCloneable stuff for Spatial
and Mesh.  Still need to catch some of the outer subclasses of
Node and Geometry.  Nothing is hooked up or tested yet.
2016-03-25 04:31:10 -04:00
Jan Ivenz
b87b582f98 Fix incorrect normal map shading in PBRLighting. 2016-03-25 03:01:32 +01:00
MeFisto94
665908cdee Improved the MotionEvent Cloning to not throw an NPE or edit constant Vectors 2016-03-24 20:52:17 +01:00
Rémy Bouquet
911b4be868 Merge pull request #455 from MeFisto94/SplineIssue
Fixed a NPE when Serializing a Spline without points.
2016-03-23 23:01:21 +01:00