-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Abstract out tree & alignment rendering to allow for future WebGL renderer #29
Comments
cc @rbuels |
it is an interesting concept. I would personally probably avoid creating an abstraction beforehand on a system we dont really know very well (webgl). would probably more or less translate it directly over if needed |
and, given that, i think the sooner we decide we want to go webgl the better even if it puts some stuff on pause |
Right, that all makes sense. I would be very interested in seeing this migrated to WebGL, although it depends on whether it fits Rob's priorities of course. I think there are strong arguments for WebGL: this was originally motivated by/funded for COVID (and cov2tree.org is WebGL - see #25), also now that there's a WebGL renderer out there (cov2tree) the bar is effectively higher - that is the standard to beat; and just generally because I still like the idea of animations (even if WebGL wouldn't get us all the way there) and being more scalable/performant, of course. |
random note: I started trying out using pixijs for this which has a webgl backend but my initial try was actually was pretty slow. can try to push on it more though as I imagine there are a bunch of ways that can try to optimize it https://github.com/GMOD/react-msaview/tree/pixijs |
To achieve smooth animation and/or ultrafast rendering, we would probably need WebGL. This is lower priority than the fundamental desired features of react-msaview (i.e. an integrated tool for navigation of genome, protein, MSA, tree, and structure), but could be something we do in future. The goal of this issue is to ensure that the code is forward-compatible with this, by building in enough abstraction into the tree- and alignment-rendering components that they could later be replaced by WebGL renderers. (Animation would presumably require more finesse than simply changing the underlying rendering code, but we can at least allow for the possibility of reimplementation in WebGL to make rendering faster.)
The text was updated successfully, but these errors were encountered: