I have been going through the code for fast preview and I have come up with some initial ideas how to tackle the problem for zooming in the preview.

1. Meshes:

Upon each remapping of a mesh, the remappers (or something else) would also create a bounding box for each mesh which will be used for fast approximation of whether the mesh is inside the viewing area of the preview or not.

On zooming event, the meshes that are inside the viewing area will be assigned a dirty state if level of detail of the mesh needs to be updated.

Also these boxes can be used to completely disable drawing some meshes even when zooming is not taking place. This could be just some preview tool.


2. Textures:

For the textures, I propose that the current scheme of deciding the size of textures remains the same, and additional texture memory is "reserved" for creating textures of larger resolutions in the zooming scenario.

Also this allocation of extra textures might be done in parallel to increase responsiveness of the zooming action.



Also, to increase the efficiency of this system, I propose to refactor the current system a bit and instead of having one display_list/texture per image we divide every image into smaller parts and handle these parts separately, each with its own bounding box, display list and texture.


Best,
Darko

--
You received this message because you are subscribed to the Google Groups "hugin and 
other free panoramic software" group.
A list of frequently asked questions is available at: 
http://wiki.panotools.org/Hugin_FAQ
To post to this group, send email to hugin-ptx@googlegroups.com
To unsubscribe from this group, send email to 
hugin-ptx+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/hugin-ptx

To unsubscribe from this group, send email to hugin-ptx+unsubscribegooglegroups.com or 
reply to this email with the words "REMOVE ME" as the subject.

Reply via email to