1 / 14

Snapper Programming

Dive into the world of Snapper Programming in this comprehensive guide covering memory management, objects vs values, animations, and more. Discover key features like Insert, Select, Snap, Stretch, and Render, and learn how to optimize performance with BSP and efficient algorithms. Master the art of Snapper Programming for enhanced graphics development.

orlandoj
Download Presentation

Snapper Programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What’s taking so long? Snapper Programming Linköping, November 4, 2008 / Staffan

  2. System fundamentals • Memory, gc, heap, stack • Objects vs values • Cost and abstraction • Snappers • Animations • ...

  3. Features - What do we need to do? • Insert • Select • Snap • Stretch • Parts • Print • Render

  4. Features - What do we need to do? • Insert • Select • Snap • Stretch • Parts • Print • Render BSP

  5. Features - What do we need to do? • Insert • Select • Snap • Stretch • Parts • Print • Render Neighbors

  6. Features - What do we need to do? • Insert • Select • Snap • Stretch • Parts • Print • Render Graphics

  7. BSP (binary space partitioning) • Space.snappers? (Snapper[]) • Cant do linear search! • Limit search • Depends on fast snapper local bound • ...

  8. Bottlenecks • Memory • Geometry (lines & triangles) • Local bound & BSP • Snapping & invalidation • The evil neighbors • Parts, hooks & other hazards • Undo system / what’s being copied • Drawings / what’s being streamed • …

  9. General concepts for efficiency • Do it only once 1 : Caching • Do it only once 2 : Invalidation • Do it only if it’s necessary (vs rebuild all) • Structure (know what you are doing, be in control) • Algorithms and data structures • …

  10. Example 1

  11. Example 1 continued

  12. Example 2

  13. Example 2 / protect modify

  14. Example 2 / protect bound change

More Related