GLuint to GLint
fixed crash bugs causes by null pointer access
use findAndReplace instead of regex at wildcard, fixed match basename
use reference instead of creating offscreen color texture