<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi, all<div class=""><br class=""></div><div class="">Last week I still focus on performance issues.</div><div class=""><br class=""></div><div class="">- replace the link rendering method by using custom geometry and make it can have width</div><div class="">- set the camera depth to fix link invisible when zooming</div><div class="">- fix raycasting intersects according to mrdoob/three.js#1842</div><div class="">- fix link hover highlight effect. But if we use this hover effect, we can’t use the material reusing to improve performance</div><div class="">- simplify event controller</div><div class=""><br class=""></div><div class="">I also try to use Web Worker to accelerate the vertices position calculation, but I found it is slower than no Web Worker…</div><div class=""><br class=""></div><div class="">And during weekend I want to add more interaction for our graph, like drag and brush selection, but I found it is very difficult if we use current simple data structure. Because if you want to find the links between two nodes or nodes binding by a link, you should travel nodes or links over and over again or render again and again. So I read some articles and discovered appropriate data structure like:</div><div class=""><br class=""></div><div class="">• <a href="https://en.wikipedia.org/wiki/Quadtree" class="">https://en.wikipedia.org/wiki/Quadtree</a></div><div class="">• <a href="https://en.wikipedia.org/wiki/Octree" class="">https://en.wikipedia.org/wiki/Octree</a></div><div class=""><br class=""></div><div class="">If you give me more time I think I can optimize performance under it. </div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">There are two articles I think good:</div><div class=""><br class=""></div><div class="">- <a href="https://github.com/Jam3/jam3-lesson-webgl-shader-intro" class="">https://github.com/Jam3/jam3-lesson-webgl-shader-intro</a></div><div class="">- <a href="https://github.com/Jam3/jam3-lesson-webgl-shader-threejs" class="">https://github.com/Jam3/jam3-lesson-webgl-shader-threejs</a></div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Next week plan:</div><div class=""><br class=""></div><div class="">- learn quadtree and try to use it in project</div><div class="">- add more interaction: drag</div><div class=""><br class=""></div><div class=""><br class=""></div><div class="">Best regards,</div><div class=""><br class=""></div><div class="">Xiang</div><div class=""><br class=""></div></body></html>