Ver Fonte

updated api.

JavaSaBr há 7 anos atrás
pai
commit
2b4790689e

+ 1 - 0
jme3-core/src/main/java/com/jme3/shader/BufferObject.java

@@ -20,6 +20,7 @@ public class BufferObject extends NativeObject {
 
     public enum Layout {
         std140,
+        std430,
     }
 
     /**

+ 11 - 0
jme3-core/src/main/java/com/jme3/shader/BufferObjectField.java

@@ -9,6 +9,17 @@ import static java.util.Objects.requireNonNull;
  */
 public class BufferObjectField {
 
+    /**
+     * The method to create a new field.
+     *
+     * @param name the field's name.
+     * @param type the field's type.
+     * @return the new field.
+     */
+    public static BufferObjectField field(final String name, final VarType type) {
+        return new BufferObjectField(name, type);
+    }
+
     /**
      * The field name.
      */

+ 4 - 0
jme3-core/src/main/java/com/jme3/shader/ShaderStorageBufferObject.java

@@ -11,6 +11,10 @@ public class ShaderStorageBufferObject extends BufferObject {
         super(binding, layout, fields);
     }
 
+    public ShaderStorageBufferObject(final int binding, final BufferObjectField... fields) {
+        super(binding, Layout.std430, fields);
+    }
+
     public ShaderStorageBufferObject(final int id) {
         super(id);
     }

+ 2 - 2
jme3-core/src/main/java/com/jme3/shader/UniformBufferObject.java

@@ -7,8 +7,8 @@ package com.jme3.shader;
  */
 public class UniformBufferObject extends BufferObject {
 
-    public UniformBufferObject(final int binding, final Layout layout, final BufferObjectField... fields) {
-        super(binding, layout, fields);
+    public UniformBufferObject(final int binding, final BufferObjectField... fields) {
+        super(binding, Layout.std140, fields);
     }
 
     public UniformBufferObject(final int id) {