[HN Gopher] Show HN: Mountain Peaks in WebGL
       ___________________________________________________________________
        
       Show HN: Mountain Peaks in WebGL
        
       Author : pheelicks
       Score  : 187 points
       Date   : 2020-12-25 16:37 UTC (6 hours ago)
        
 (HTM) web link (felixpalmer.github.io)
 (TXT) w3m dump (felixpalmer.github.io)
        
       | pheelicks wrote:
       | Hi HN, Merry Christmas to all!
       | 
       | I made this as a demonstration of the open data available from
       | the Austrian government under the www.basemap.at project. The
       | rendering engine is built on top of THREE.js and can be found
       | here: https://github.com/felixpalmer/procedural-gl-js/
       | 
       | For those in the southern hemisphere, there is also a similar
       | visualization of the national parks of New Zealand:
       | https://felixpalmer.github.io/new-zealand-3d/
        
         | fh973 wrote:
         | Where do you get the DEM from?
        
           | capableweb wrote:
           | > https://github.com/felixpalmer/procedural-gl-js/
           | 
           | > Key features
           | 
           | > Batteries included elevation data. Global 3D data coverage
           | courtesy of nasadem.XYZ
           | 
           | > https://www.nasadem.xyz/
        
         | mauflows wrote:
         | Very cool! How is the elevation data textured in this demo?
        
         | sillysaurusx wrote:
         | Just want to say, love the mobile interface on iOS. Smooth as
         | butter, super controllable, intuitive. I don't know whether you
         | designed it or if it came with the engine, but either way,
         | quite lovely.
        
           | jtbayly wrote:
           | I disagree with one aspect.
           | 
           | Rotation doesn't work the way it does in every other iOS UI,
           | and so it took me forever to figure out how to rotate. On a
           | related note, it kept inexplicably rotating whenever I would
           | zoom in and out.
           | 
           | Still impressive and smooth, though. And might just be part
           | of the library chosen.
        
             | pheelicks wrote:
             | Could you elaborate? I'm also an iOS user and find it
             | intuitive. But of course I would, as I've spent hours
             | developing it and can't see the issues in the way a new
             | user would. If you move two fingers in a rotating fashion
             | the map rotates, does it not do this for you?
        
               | jtbayly wrote:
               | No. If I move two fingers from side to side it rotates.
               | If I try to rotate two fingers, nothing happens. If I
               | _also_ happen to also move them closer together /further
               | apart, then it zooms. Or if I happen to end up slightly
               | further left or right, then it rotates. The result is
               | that when attempting to rotate 90 degrees right, it might
               | zoom out slightly and rotate left a few degrees.
               | 
               | Edit: this is an image to show how I rotate things on my
               | phone and computer trackpad: https://cdn1.iconfinder.com/
               | data/icons/gestureworks_gesture_...
        
               | anarazel wrote:
               | Not an iOS user, but I somehow expected rotation to work
               | if I rotate two fingers against each other (I.e. draw a
               | circle with two fingers at the same time). But I just
               | need to swipe sideways with two fingers.
        
           | pheelicks wrote:
           | Well, I made the engine - so the answer is both :) Glad you
           | like it. I still feel the pinch zoom could be improved though
           | so that the focal point was at the center of the touch
           | points, but otherwise it is pretty close to the native
           | controls
        
         | chime wrote:
         | Can you let the user zoom further, even if it is a bit lo-res?
        
       | recursive wrote:
       | This is working much better than it was last time I saw it on the
       | front page. Nice work.
        
       | yincrash wrote:
       | Apparently my setup was on the GPU blocklist in chrome so I had
       | to enable #ignore-gpu-blocklist in chrome://flags
       | 
       | This demo did not want to run on CPU only :)
        
       | tomcam wrote:
       | Bonus: can nick the names and use for IKEA furniture
        
         | codetrotter wrote:
         | Most of those names don't look very Swedish. Only one that I
         | see really working is Daniel.
         | 
         | And as far as I can tell there is no IKEA furniture named
         | DANIEL. They could use that name for some furniture that would
         | complement the BILLY bookshelves for example.
        
         | arghwhat wrote:
         | ... IKEA furniture doesn't use German names.
        
       | turbinerneiter wrote:
       | Leiwand!
        
       | Keyframe wrote:
       | Hmm, I can see rendering only as a flat map. Is it supposed to
       | have height to it?
        
         | pheelicks wrote:
         | Yes, there very much should be a 3rd dimension. If you're
         | having issues I'd appreciate if you could file an issue on
         | https://github.com/felixpalmer/procedural-gl-js mentioning what
         | device you have along with the output from
         | https://webglreport.com/
         | 
         | In the meantime, there are some video captures on my twitter:
         | https://twitter.com/pheeelicks
        
         | arifmeticus wrote:
         | Same. I'm on desktop Firefox 84
        
         | strictfp wrote:
         | Same here. Could it be some rate limiting of the height data?
         | I'm on a Samsung S20.
        
         | Patient0 wrote:
         | Same here. Maybe it does not work correctly on all platforms?
         | I'm using an old Android phone (Samsung G8)
        
       | hans1729 wrote:
       | I have some rendering-issues: https://i.imgur.com/D0LW0r9.png
        
         | pheelicks wrote:
         | That's not a bug, it's Germany! The aerial imagery comes from
         | the Austrian basemap.at dataset, which only covers Austria. If
         | you use imagery that covers multiple countries this isn't an
         | issue, but for this project I wanted to try out the basemap.at
         | data. See https://github.com/felixpalmer/procedural-gl-js/ for
         | more
        
       | ajnin wrote:
       | Why is the polar angle constrained so much?
        
         | pheelicks wrote:
         | Generally just a choice for the demo - in part because
         | restricting the view distance means less data to download (thus
         | lower cost to serve!). If you switch the phone to portrait you
         | will be able to see the horizon.
         | 
         | The library itself (https://github.com/felixpalmer/procedural-
         | gl-js) lets you configure the angle freely.
        
       | la_fayette wrote:
       | Amazing work! Is there any open data for elevation for germany?
        
         | pheelicks wrote:
         | There are a number of global elevation datasets. Check out
         | JAXA, EUDEM or NASADEM for example. Processing them into a
         | usable form is another issue.
         | 
         | For the Procedural GL JS library we use NASADEM, via the
         | www.nasadem.xyz service, which has almost global coverage (up
         | to 60 degrees N)
        
       | bigdict wrote:
       | Merry Christmas! This is really well done. This gets very close
       | in the look and feel to Google Maps/Earth.
        
       ___________________________________________________________________
       (page generated 2020-12-25 23:00 UTC)