/** * Returns an instance of a GLSL data type for the given {@link DataType}. * * @param dataType * @return */ protected ShaderVar getInstanceForDataType(DataType dataType) { return getInstanceForDataType(null, dataType); }
public ShaderVar xy() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".xy"); v.mInitialized = true; return v; }
public ShaderVar index(int index) { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + "[" + index + "]"); return v; }
out = getInstanceForDataType(left); else if(left == DataType.IVEC4 || right == DataType.IVEC4) out = getInstanceForDataType(DataType.IVEC4); else if(left == DataType.IVEC3 || right == DataType.IVEC3) out = getInstanceForDataType(DataType.IVEC3); else if(left == DataType.IVEC2 || right == DataType.IVEC2) out = getInstanceForDataType(DataType.IVEC2); else if(left == DataType.VEC4 || right == DataType.VEC4) out = getInstanceForDataType(DataType.VEC4); else if(left == DataType.VEC3 || right == DataType.VEC3) out = getInstanceForDataType(DataType.VEC3); else if(left == DataType.VEC2 || right == DataType.VEC2) out = getInstanceForDataType(DataType.VEC2); else if(left == DataType.MAT4 || right == DataType.MAT4) out = getInstanceForDataType(DataType.MAT4); else if(left == DataType.MAT3 || right == DataType.MAT3) out = getInstanceForDataType(DataType.MAT3); else if(left == DataType.MAT2 || right == DataType.MAT2) out = getInstanceForDataType(DataType.MAT2); else if(left == DataType.FLOAT || right == DataType.FLOAT) out = getInstanceForDataType(DataType.FLOAT); else out = getInstanceForDataType(DataType.INT);
public ShaderVar xyzw() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".xyzw"); v.mInitialized = true; return v; }
/** * Returns an instance of a GLSL data type for the given {@link DataType}. * * @param dataType * @return */ protected ShaderVar getInstanceForDataType(DataType dataType) { return getInstanceForDataType(null, dataType); }
public ShaderVar xyz() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".xyz"); v.mInitialized = true; return v; }
out = getInstanceForDataType(left); else if(left == DataType.IVEC4 || right == DataType.IVEC4) out = getInstanceForDataType(DataType.IVEC4); else if(left == DataType.IVEC3 || right == DataType.IVEC3) out = getInstanceForDataType(DataType.IVEC3); else if(left == DataType.IVEC2 || right == DataType.IVEC2) out = getInstanceForDataType(DataType.IVEC2); else if(left == DataType.VEC4 || right == DataType.VEC4) out = getInstanceForDataType(DataType.VEC4); else if(left == DataType.VEC3 || right == DataType.VEC3) out = getInstanceForDataType(DataType.VEC3); else if(left == DataType.VEC2 || right == DataType.VEC2) out = getInstanceForDataType(DataType.VEC2); else if(left == DataType.MAT4 || right == DataType.MAT4) out = getInstanceForDataType(DataType.MAT4); else if(left == DataType.MAT3 || right == DataType.MAT3) out = getInstanceForDataType(DataType.MAT3); else if(left == DataType.MAT2 || right == DataType.MAT2) out = getInstanceForDataType(DataType.MAT2); else if(left == DataType.FLOAT || right == DataType.FLOAT) out = getInstanceForDataType(DataType.FLOAT); else out = getInstanceForDataType(DataType.INT);
public ShaderVar rgb() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".rgb"); v.mInitialized = true; return v; }
public ShaderVar rgba() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".rgba"); v.mInitialized = true; return v; }
public ShaderVar add(float value) { ShaderVar v = getReturnTypeForOperation(mDataType, DataType.FLOAT); v.setValue(this.mName + " + " + Float.toString(value)); v.setName(v.getValue()); return v; }
public ShaderVar divide(float value) { ShaderVar v = getReturnTypeForOperation(mDataType, DataType.FLOAT); v.setValue(this.mName + " / " + Float.toString(value)); v.setName(v.getValue()); return v; }
/** * Subtracts two shader variables. Equivalent to GLSL's '-' operator. * * @param value * @return */ public ShaderVar subtract(float value) { ShaderVar v = getReturnTypeForOperation(mDataType, DataType.FLOAT); v.setValue(this.mName + " - " + Float.toString(value)); v.setName(v.getValue()); return v; }
/** * Multiplies two shader variables. Equivalent to GLSL's '*' operator. * * @param value * @return */ public ShaderVar multiply(float value) { ShaderVar v = getReturnTypeForOperation(mDataType, DataType.FLOAT); v.setValue(this.mName + " * " + Float.toString(value)); v.setName(v.getValue()); return v; }
/** * Subtracts two shader variables. Equivalent to GLSL's '-' operator. * * @param value * @return */ public ShaderVar subtract(ShaderVar value) { ShaderVar v = getReturnTypeForOperation(mDataType, value.getDataType()); v.setValue(this.mName + " - " + value.getName()); v.setName(v.getValue()); return v; }
/** * Adds two shader variables. Equivalent to GLSL's '+' operator. * * @param value * @return */ public ShaderVar add(ShaderVar value) { ShaderVar v = getReturnTypeForOperation(mDataType, value.getDataType()); v.setValue(this.mName + " + " + value.getName()); v.setName(v.getValue()); return v; }
/** * Multiplies two shader variables. Equivalent to GLSL's '*' operator. * * @param value * @return */ public ShaderVar multiply(ShaderVar value) { ShaderVar v = getReturnTypeForOperation(mDataType, value.getDataType()); v.setValue(this.mName + " * " + value.getName()); v.setName(v.getValue()); return v; }
/** * Divides two shader variables. Equivalent to GLSL's '/' operator. * * @param value * @return */ public ShaderVar divide(ShaderVar value) { ShaderVar v = getReturnTypeForOperation(mDataType, value.getDataType()); v.setValue(this.mName + " / " + value.getName()); v.setName(v.getValue()); return v; }
/** * Divides the value of one shader variable by the value of another and * returns the remainder. Equivalent to GLSL's '%' operator. * * @param value * @return */ public ShaderVar modulus(ShaderVar value) { ShaderVar v = getReturnTypeForOperation(mDataType, value.getDataType()); v.setValue(this.mName + " % " + value.getName()); v.setName(v.getValue()); return v; }
public ShaderVar xy() { ShaderVar v = getReturnTypeForOperation(mDataType, mDataType); v.setName(this.mName + ".xy"); v.mInitialized = true; return v; }