private void addUniform(String uniformName, String uniformType, HashMap<String, ArrayList<GLSLStruct>> structs)
	{
		boolean addThis = true;
		ArrayList<GLSLStruct> structComponents = structs.get(uniformType);
		
		if(structComponents != null)
		{
			addThis = false;
			
			for(GLSLStruct struct : structComponents)
			{
				addUniform(uniformName + "." + struct.name, struct.type, structs);
			}
		}
		
		if(!addThis)
			return;
		else
		{
			int uniformLocation = glGetUniformLocation(resource.getProgram(), uniformName);
			
			if(uniformLocation == 0xFFFFFFFF)
			{
				System.err.println("Error, couldn't find uniform: " + uniformName);
				new Exception().printStackTrace();
				System.exit(1);
			}
			
			resource.getUniforms().put(uniformName, uniformLocation);
		}
	}