|
@@ -93,7 +93,8 @@ For example applying this shader to a sphere would render a solid blue sphere on
|
|
|
== How to use shaders in JME3
|
|
|
|
|
|
You probably heard that JME3 is “shader oriented”, but what does that mean? +
|
|
|
-Usually to use shaders you must create what is called a program. This program specify the vertex shader and the fragment shader to use. +
|
|
|
+Usually to use shaders you must create what is called a program. This program specify the vertex shader and the fragment shader to use.
|
|
|
+
|
|
|
JME3 encloses this in the material system. Every material in JME3 uses shaders. +
|
|
|
For example let’s have a look at the SolidColor.j3md file :
|
|
|
|
|
@@ -123,7 +124,7 @@ MaterialDef Solid Color {
|
|
|
|
|
|
----
|
|
|
|
|
|
-For more information on JME3 material system, i suggest you read this link:http://jmonkeyengine.org/groups/development-discussion-jme3/forum/topic/jmonkeyengine3-material-system-full-explanation[topic].
|
|
|
+For more information on JME3 material system, I suggest you read link:https://hub.jmonkeyengine.org/t/jmonkeyengine3-material-system-full-explanation/12947[jMonkeyEngine3 material system - full explanation].
|
|
|
|
|
|
|
|
|
=== JME3 Global uniforms
|
|
@@ -131,7 +132,7 @@ For more information on JME3 material system, i suggest you read this link:http:
|
|
|
JME3 can expose pre-computed global uniforms to your shaders. You must specify the one that are required for your shader in the WorldParameters section of the material definition file (.j3md). +
|
|
|
Note that in the shader the uniform names will be prefixed by a “g_”. +
|
|
|
In the example above, WorldViewProjectionMatrix is declared as uniform mat4 g_WorldViewProjectionMatrix in the shader. +
|
|
|
-The complete list of global uniforms that can be used in JME3 can be found link:http://code.google.com/p/jmonkeyengine/source/browse/trunk/engine/src/core/com/jme3/shader/UniformBinding.java[here].
|
|
|
+The complete list of global uniforms that can be used in JME3 can be found in link:https://github.com/jMonkeyEngine/jmonkeyengine/blob/master/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java[UniformBinding.java].
|
|
|
|
|
|
|
|
|
=== JME3 Lighting Global uniforms
|
|
@@ -155,7 +156,7 @@ These uniforms are passed to the shader without having to declare them in the j3
|
|
|
=== JME3 attributes
|
|
|
|
|
|
Those are different attributes that are always passed to your shader. +
|
|
|
-You can find a complete list of those attribute in the Type enum of the VertexBuffer link:http://code.google.com/p/jmonkeyengine/source/browse/trunk/engine/src/core/com/jme3/scene/VertexBuffer.java[here].
|
|
|
+You can find a complete list of those attribute in the Type enum of the VertexBuffer in link:https://github.com/jMonkeyEngine/jmonkeyengine/blob/master/jme3-core/src/main/java/com/jme3/scene/VertexBuffer.java[VertexBuffer.java].
|
|
|
|
|
|
[NOTE]
|
|
|
====
|
|
@@ -348,4 +349,4 @@ a|g_NormalMatrix
|
|
|
|
|
|
=== Useful links
|
|
|
|
|
|
-link:http://www.eng.utah.edu/~cs5610/lectures/GLSL-ATI-Intro.pdf[http://www.eng.utah.edu/~cs5610/lectures/GLSL-ATI-Intro.pdf]
|
|
|
+link:http://www.eng.utah.edu/~cs5610/lectures/GLSL-ATI-Intro.pdf[http://www.eng.utah.edu/pass:[~]cs5610/lectures/GLSL-ATI-Intro.pdf]
|