> I haven't done any graphics programming in years, but I thought you'd want to keep the number of draw calls down, do you need to cluster these triangles into fewer draw calls?
GPUs draw can draw 10,000's of vertices per draw call, whether they are connected together into logical objects or are "triangle soup" like this. There is some benefit to having triangles connected together so they can "share" a vertex, but not as much as you might think. Since GPUs are massively parallel, it does not matter much where on the screen or where in the buffer your data is.
> Is there any work being done to optimize a volumetric representation of scenes and from that create a set of surfaces with realistic looking shaders or similar?
This is basically where the field was going until nerfs and splats. But then nerfs and splats were such HUGE steps in fidelity, it inspired a ton of new research towards it, and I think rightfully so! Truth is that reality is really messy, so trying to reconstruct logically separated meshes for everything you see is a very hard way to try to recreate reality. Nerfs and splats recreate reality much easier.
Matterport | Senior Software Engineers in Frontend/3D, iOS or Android | US Remote | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 4,500,000 highly detailed 3D models of real places captured by our cameras, amounting to over 4.5PB of data.
* We serve over 100 million 3D views every month, which amounts to over 50 billion requests and 2.5PB of data.
We're looking for engineers for our fully remote 3D (WebGL) and mobile (iOS/Android) teams.
* The 3D team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before GraphQL APIs serve the data to the WebGL and VR applications, which is what the end user sees.
* The Mobile team makes our 3D scanning applications, that let our users scan 3D models with your phone, or control a 360 or 3D camera. We write in Swift (iOS) and Kotlin (Android), and often get to do a lot of high performance, graphics-heavy stuff in addition to the more normal UI work.
If one of these teams peaked your interest, send your resume and some words to hakon (at) matterport (dot) com!
Matterport | Senior Software Engineer, Frontend/3D | US Remote | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 4,000,000 highly detailed 3D models of real places captured by our cameras, amounting to over 4PB of data.
* We serve over 90 million 3D views every month, which amounts to over 45 billion requests and 2PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you have worked with 3D engines before, or if already know "normal" web development well, and want to take the next step into the world of 3D and WebGL, send me a note at hakon (at) matterport (dot) com.
Matterport | Senior Software Engineer, Frontend/3D | Sunnyvale / San Francisco, CA | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 4,000,000 highly detailed 3D models of real places captured by our cameras, amounting to over 4PB of data.
* We serve over 90 million 3D views every month, which amounts to over 45 billion requests and 2PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you have worked with 3D engines before, or if already know "normal" web development well, and want to take the next step into the world of 3D and WebGL, send me a note at hakon (at) matterport (dot) com.
Matterport | Senior Software Engineer, Frontend/3D | Sunnyvale / San Francisco, CA | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 3,000,000 highly detailed 3D models of real places captured by our cameras, amounting to over 3PB of data.
* We serve over 90 million 3D views every month, which amounts to over 45 billion requests and 2PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you have worked with 3D engines before, or if already know "normal" web development quite well, and want to take the next step into the world of 3D and WebGL, send me a note at hakon (at) matterport (dot) com.
Matterport | Senior Software Engineer, Frontend/3D | Sunnyvale / San Francisco, CA | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 3,000,000 highly detailed 3D models of real places captured by our cameras, amounting to over 3PB of data.
* We serve over 90 million 3D views every month, which amounts to over 45 billion requests and 2PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you have worked with 3D engines before, or if already know "normal" web development quite well, and want to take the next step into the world of 3D and WebGL, send me a note at hakon (at) matterport (dot) com.
Matterport | Senior Software Engineer, Frontend/3D | Sunnyvale / San Francisco, CA | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 2,000,000 highly detailed 3D models of real places captured by our cameras, amounting to over 2PB of data.
* We serve over 60 million 3D views every month, which amounts to over 30 billion requests and 1PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you already know "normal" web development quite well, and want to take the next step into the world of 3D and WebGL, send us a note!
Matterport | Senior Software Engineer, Frontend/3D | Sunnyvale / San Francisco, CA | Full-time | ONSITE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 1,800,000 highly detailed 3D models of real places captured by our cameras, amounting to over 2PB of data.
* We serve over 60 million 3D views every month, which amounts to over 30 billion requests and 1PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you already know "normal" web development quite well, and want to take the next step into the world of 3D and WebGL, send us a note!
Matterport | Staff Software Engineer, 3D | Sunnyvale / San Francisco, CA | Full-time | ONSITE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
Some interesting facts about us:
* We host over 1,800,000 highly detailed 3D models of real places captured by our cameras, amounting to over 2PB of data.
* We serve over 60 million 3D views every month, which amounts to over 30 billion requests and 1PB of data.
The WebGL team makes our 3D viewing and editing applications for the web and VR. Core technologies include Typescript, THREE.js, WebGL and Preact. The team sits at the very end of our 3D pipeline: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, before REST APIs serve the data to the WebGL and VR applications, which is what the end user sees.
If you already know "normal" web development quite well, and want to take the next step into the world of 3D and WebGL, send us a note!
Matterport | Senior Backend Engineer | Sunnyvale / San Francisco, CA | Full-time | REMOTE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery The Backend Engineering Team works on our Platform and APIs. The stack is Django/Python/Postgres on AWS, and Fastly as a CDN. We're a small team right now, at 4 engineers who mostly do Django and 3 who mostly do infrastructure and developer tools.
We're hiring more in this area because we're starting to get some very interesting scaling challenges:
* We host over 700,000 highly detailed 3D models of real places captured by our cameras, amounting to over 600TB of data.
* We serve over 20 million 3D views every month, which amounts to over 10 billion requests and 400TB of data.
Our APIs are used by all parts of the company: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, and consumed by our Javascript/WebGL and VR applications. The Backend team makes new additions to the API constantly, and works to ensure the APIs are secure, scale well, and are well tested.
Matterport | Senior Backend Engineer | Sunnyvale / San Francisco, CA | Full-time | ONSITE VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
The Backend Engineering Team works on our Platform and APIs. The stack is Django/Python/Postgres on AWS, and Fastly as a CDN. We're a small team right now, at 4 engineers who mostly do Django and 3 who mostly do infrastructure and developer tools.
We're hiring more in this area because we're starting to get some very interesting scaling challenges:
* We host over 700,000 highly detailed 3D models of real places captured by our cameras, amounting to over 600TB of data.
* We serve over 20 million 3D views every month, which amounts to over 10 billion requests and 400TB of data.
Our APIs are used by all parts of the company: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, and consumed by our Javascript/WebGL and VR applications. The Backend team makes new additions to the API constantly, and works to ensure the APIs are secure, scale well, and are well tested.
Matterport | Senior Backend Engineer | Sunnyvale / San Francisco, CA | Full-time | ONSITE, VISA
Matterport makes a 3D camera and web platform that allows users to easily capture and display 3D models of physical spaces. Check out some example spaces in our gallery: https://matterport.com/gallery
The Backend Engineering Team works on our Platform and APIs. The stack is Django/Python/Postgres on AWS, and Fastly as a CDN. We're a small team right now, at 5 engineers who mostly do Django and 3 who mostly do infrastructure and developer tools.
We're hiring more in this area because we're starting to get some very interesting scaling challenges:
- We host over 600,000 highly detailed 3D models of real places captured by our cameras, amounting to over 600TB of data.
- We serve over 15 million 3D views every month, which amounts to over 7 billion requests and 300TB of data.
Our APIs are used by all parts of the company: 3D data gets uploaded from our cameras, processed by our vision pipeline in C++, Python, and TensorFlow, and consumed by our Javascript/WebGL and VR applications. The Backend team makes new additions to the API constantly, and works to ensure the APIs are secure, scale well, and are well tested.
We did the exact same thing! This one time, me and my group of similarly nerdy friends sat in a different room and opened all of the CD-trays in the computer lab during a computer class. The teacher came running to the room we sat in, and we were so sure we had been caught. But no, she started explaining that all the computers were acting up horribly, and that we were the only ones who could help her. She didn't know how right she was :)
So we helped her naturally, undoing our own work and uninstalling NetBus. I'm not sure she ever figured out it was us, though.
They DID figure out who was spamming "net send" messages to certain people. A kind of war had started, where people would compete in sending the most net sends to each other, forcing the other side to click "OK" on a message box. It got sort of nuclear once we discovered batch scripts and for loops.
We have over 400,000 3D spaces, which together have been viewed more than 100 million times, and we’re growing fast. We’re hiring in all engineering disciplines, but these two in particular:
You like designing elegant APIs and Django services, and optimizing them to withstand large amounts of traffic. Automated tests make you happy, and automated deployments make you even happier. You will be working on a small team of backend and infrastructure engineers to keep our platform fast and stable. https://jobs.lever.co/matterport/f633efc3-c694-4025-89e5-ff6...
---
Senior/Lead Frontend Engineer in 3D (Typescript, Redux, Preact, THREE.js, WebGL)
You’re an experienced front-end engineer who is comfortable with React/Redux or frameworks with similar concepts, and want a new challenge. WebGL/3D experience is not required, you can learn that as you go. You will be working with a small team on modular 3D applications where performance, automated testing and usability are top priorities. https://jobs.lever.co/matterport/f93e9e3c-a615-4262-b97c-760...
More positions at https://matterport.com/careers/positions/. If you have any questions about these roles, our teams or our stack, send me a note at hakon @ our domain.
It's actually harder than it seems to cut off the ceiling, houses may have all sorts of weird heights, angles and corners, doors, arches... Any simple solution might work for 80-90% of models, but our viewer has to work for 100%. So we only remove faces with backface culling currently, we're going to do better soon though :)
Hey, dev here, thanks for not giving up on the first try :) WebGL is still pretty new, so it has some quirks.. but you seemed to be particularly unlucky. Does WebGL usually work on your W7/FF33 setup? (does http://get.webgl.org/ work?) As for the W8.1/FF33 case, does it work if you try again, or is it still the same?
The dollhouse view is actually a low detail version of the 3d model, with low resolution textures, it's just really not meant for a close inspection :) Load time and performance has been high priority for us, particularly because we also support mobile devices. We might do something like streaming in higher quality mesh/textures in the future, and allow closer inspection.
As for VR... we're playing around with it a whole lot, and it actually looks really great! Hopefully it'll get in front of more people somehow soon.
You can call it photogrammetry, it uses both 2d imagery and 3d depth data from depth sensors (think Microsoft Kinect or Google Tango) to make the 3d model. The viewer limits your movement when you are inside to be able to project panorama images onto the model, so you get the image quality of 2d images while you're still in a 3d model. 3d scanning tech just isn't good enough yet that you would be happy with how it looked up close if you are trying to sell a house, for instance.
Don't know Photoscan or 123D catch enough to comment spesifically, but in general many other 3d companies focus on scanning small objects or features, while we do large buildings/indoor spaces/rooms better (faster/better quality/cheaper/more convenient) than anyone else I've seen :)
GPUs draw can draw 10,000's of vertices per draw call, whether they are connected together into logical objects or are "triangle soup" like this. There is some benefit to having triangles connected together so they can "share" a vertex, but not as much as you might think. Since GPUs are massively parallel, it does not matter much where on the screen or where in the buffer your data is.
> Is there any work being done to optimize a volumetric representation of scenes and from that create a set of surfaces with realistic looking shaders or similar?
This is basically where the field was going until nerfs and splats. But then nerfs and splats were such HUGE steps in fidelity, it inspired a ton of new research towards it, and I think rightfully so! Truth is that reality is really messy, so trying to reconstruct logically separated meshes for everything you see is a very hard way to try to recreate reality. Nerfs and splats recreate reality much easier.