base structure + Texture2D and ReasourceFactory