Difference between revisions of "XB PointStream"
Line 30: | Line 30: | ||
[http://www.fastscan3d.com/download/samples/ OBJ Sample Files]<br /> | [http://www.fastscan3d.com/download/samples/ OBJ Sample Files]<br /> | ||
--> | --> | ||
+ | |||
+ | ===Parser Interface=== | ||
+ | <pre> | ||
+ | /* | ||
+ | "onstart" | ||
+ | "onparse" | ||
+ | "onfinish" | ||
+ | |||
+ | @param {String} eventName | ||
+ | @param {Function} func | ||
+ | */ | ||
+ | addEventListener(eventName, func) | ||
+ | |||
+ | |||
+ | /* | ||
+ | @param {String} Path to resource | ||
+ | */ | ||
+ | load(path) | ||
+ | |||
+ | |||
+ | /* | ||
+ | Returns the version of this parser | ||
+ | |||
+ | @returns {String} parser version | ||
+ | */ | ||
+ | getVersion() | ||
+ | |||
+ | /* | ||
+ | */ | ||
+ | getNumParsedPoints() | ||
+ | |||
+ | /* | ||
+ | */ | ||
+ | getNumTotalPoints() | ||
+ | |||
+ | /* | ||
+ | @returns {Number} value from 0 to 1 | ||
+ | */ | ||
+ | getProgress() | ||
+ | |||
+ | /* | ||
+ | */ | ||
+ | getFileSize() | ||
+ | </pre> | ||
===Performance Issue Ideas=== | ===Performance Issue Ideas=== |
Revision as of 15:11, 23 November 2010
Contents
Releases
A cross-browser JavaScript tool which will emulate Arius3D's PointStream viewer. It will be able to quickly render a large amount of point cloud data to the <canvas> tag using WebGL.
XBPS 0.1
XBPS 0.2
XBPS 0.3
XBPS 0.4
XBPS 0.4.5 [Only Lib | Full]
XB PointStream Dev Links
3D Image Gallery
Blogs
Specifications
LightHouse
Github
Twitter
YouTube Videos
Development Resources
WebGL Specification
WebGL Cheat Sheet
OpenGLES 2.0 man pages
Parser Interface
/* "onstart" "onparse" "onfinish" @param {String} eventName @param {Function} func */ addEventListener(eventName, func) /* @param {String} Path to resource */ load(path) /* Returns the version of this parser @returns {String} parser version */ getVersion() /* */ getNumParsedPoints() /* */ getNumTotalPoints() /* @returns {Number} value from 0 to 1 */ getProgress() /* */ getFileSize()
Performance Issue Ideas
- Spatially partition point cloud into Bounding volume hierarchy and do bounding volume frustum culling
- Do static rendering
- Render low LOD when rotating point cloud
- Push as much as we can to CPU and GPU
- Use progressive "mesh" optimization to render objects if they are far from the camera
- Allow user to control LOD
- Stream point cloud, dynamically create and merge bounding volumes
- Pre-create Bounding volume hierarchy