code to log when we're not painting for lack of blocks and when we restore
painting so that we can further debug the proverbial blue screen situation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2598 542714f4-19e9-0310-aa3c-eee0fc999fb1
can be serious popping when entire buildings don't come into view until
after we've started displaying.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2597 542714f4-19e9-0310-aa3c-eee0fc999fb1
aren't (we can't truly know if a block is visible until we resolve it
because objects of arbitrary height can overlap the view bounds even if
the block's footprint does not); resolve the definitely visible ones first
and go ahead and start drawing once the known visible blocks are ready.
This cuts the time spent on the "blue screen" by about 75%.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2595 542714f4-19e9-0310-aa3c-eee0fc999fb1
we do allow derived classes to dictate whether or not unresolved tiles are
passable. Additionally, we sanity check the number of nodes searched when
computing paths.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2581 542714f4-19e9-0310-aa3c-eee0fc999fb1
resolved; adjusted influential bounds based on new strategy for scrolling
around and resolving blocks.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2567 542714f4-19e9-0310-aa3c-eee0fc999fb1
its bounds immediately rather than waiting for the remaining queued blocks
to be resolved.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2525 542714f4-19e9-0310-aa3c-eee0fc999fb1
traversable so that if a sprite claims to have relocated somewhere outside
your resolved scene bounds, we'll just bee line them to their new
location. Since the user can never click outside their resolved view
bounds, we won't ever compute an invalid path for them. Joy.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2522 542714f4-19e9-0310-aa3c-eee0fc999fb1
blocks resolved. In the future, we could attempt to resolve the blocks
that are needed to repaint the visible view first and allow repaint as
soon as those blocks are resolved.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2486 542714f4-19e9-0310-aa3c-eee0fc999fb1
same mechanism for including and excluding blocks.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2464 542714f4-19e9-0310-aa3c-eee0fc999fb1
upper left which is something they're already much more likely to be
making use of directly.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2443 542714f4-19e9-0310-aa3c-eee0fc999fb1
scene model and associated business to store scene data in an arbitrary
set of blocks rather than fixed arrays; finally stuck a fork in scene
width and height as well as view width and height along with origin offset
and a few other now obsolete bits.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2434 542714f4-19e9-0310-aa3c-eee0fc999fb1
bounds to preserve the current center point when we are resized. Deep
sixed "bounded" and some other needless fiddling.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2430 542714f4-19e9-0310-aa3c-eee0fc999fb1
recomputing visible objects, etc. if no blocks were loaded or flushed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2429 542714f4-19e9-0310-aa3c-eee0fc999fb1
become the hover object if derived classes really want it (like the
editor).
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2423 542714f4-19e9-0310-aa3c-eee0fc999fb1
- Combined SceneViewPanel and IsoSceneView into one happy panel.
- Ditched the DisplayMisoScene notion; the new MisoScenePanel now manages
resolved scene information (like base, object and fringe tiles) itself
so that it can...
- ...support scrolling scenes by keeping blocks of resolved base, fringe
and object information loaded only for what is potentially visible
rather than for the whole scene.
Other things were surely cleaned up or broken in the process to keep a
keen eye out.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2413 542714f4-19e9-0310-aa3c-eee0fc999fb1