Changes between Initial Version and Version 1 of Ticket #910


Ignore:
Timestamp:
02/18/08 09:53:27 (5 years ago)
Author:
ArcRiley
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #910

    • Property Type changed from idea to task
    • Property Summary changed from move soy.Screen and soy.Window to soy.display, fold remaining _core into _internals to move soy.Window to soy.windows
  • Ticket #910 – Description

    initial v1  
    33The idea is to empty the root soy. namespace except for documentation.  This makes it easier to see the extensions in a dir() and the hierarchy cleaner. 
    44 
    5 We originally put these classes in _core in order to group all platform-specific code in one location.  That is no longer an issue.  _core is also no longer home to just the CoreLoop but the EventLoop and potentially soon the AudioLoop and NetLoop.  We may even want to consider extensions further lower than soy._internals such as breaking the loops into their own extensions. 
     5We originally put these classes in _core in order to group all platform-specific code in one location.  That is no longer an issue with Pyrex 0.9.6 
    66 
    7 Consolidating all internal code into _internals makes a lot of sense, and this move would clear up the soy.Window vs soy._core.Window confusion. 
     7Also, the idea of a single additional "CoreLoop" thread has proven to be disadvantageous, especially with Pyrex's new GIL support.  We could attain a much higher fps, in addition to smaller compiled size and less code complexity, by splitting CoreLoop into RenderLoop, PhysicsLoop, etc which are run by their respective extensions (soy.windows, soy.scenes, etc). 
     8 
     9Since everyone who has commented on this idea has agreed, including earlier talk of splitting physics and rendering for multi-core optimization, it's time to implement. 
    810 
    911Thinking into the future, we should be trying to resolve these API choices now to stabilize for Beta-3+.