datahead <automailer(a)forum.secretchronicles.de> writes:
Post via forum by datahead <cjj_009@xxxxxxxxxx>:
The cLevelScene class maintains a list of active levels, named m_active_levels.
What is the purpose of having multiple active levels?
Is it referring to multiple sub levels for a given played level,
multiple levels in a world, or something else?
It refers to sublevels. The implementation comes from original
OpenGL/SDL TSC, which does it like that as well. You enter a level,
which is then the first active level (and the only one in
m_active_levels). Inside the level you then enter a sublevel, it is
pushed onto the m_active_levels list, and when you return, it is kept
still in that list, which accelerates further entering of the same level
(remember, level loading is an expensive operation). That implementation
can surely be improved (preloading of sublevels!), but the purpose of
the SFML port is not to make optimisations to the game’s architecture,
but to port it to SFML. Optimisations should be done afterwards,
otherwise the SFML port branch mutates to a general-purpose development
It has nothing to do with world level waypoints. The cLevelScene
instance is (well, shall be, it is not implemented yet) destroyed when
you activate the final level exit.
GnuPG key: F1D8799FBCC8BC4F