implemented new renderer interface