fixed a bug causes infinite loop
viewportRegion is now ivec3, added validateEffectResources
added loading effect procedure