I need to run at least 25 windows concurrently with each window rendering a different game state. I am storing all the 25 game states in the array of type GameState allGameStates[25].
For each of the window, i am currently doing this to register a different draw callback for each of the 25 windows.
glutCreateWindow(title);
glutDisplayFunc(allGameStates[i].Draw);
The issue here is that glutDisplayFunc requires a parameter of type function ptr, and i cannot pass in a member function ptr.(i am using GLUT which is in C)
It is not feasible to make the Draw function static as i require the Draw function to render differently accordingly to the other variables in the game state object.
How do i overcome this problem?