Umbra blog

Recent posts

April 9, 2020

Knee-Deep in the Dead again - DOOM IS HERE

Jarno Muurimäki
With the recent release of DOOM Eternal, we dug into our blog archives to resurrect this absolute gem posted in May 2016 from our very own, the one and only, resident ass-hat, DPO, Murkku - the Cloud Anarchist. According to him, DOOM Eternal is still the best way to celebrate Easter - a constant, soul-soothing, mouth-watering, gore-infused, ass-kicking, buttery smooth 60 fps piece-of-entertainment…
April 1, 2020

Rendering Large 3D Scenes in Unity

Antti Ylimutka
One of the biggest issues our customers and partners encounter is the sheer amount of time it takes to import large 3D models into game engines - let alone optimizing them for smooth runtime performance. Umbra SceneStream approaches the problem from a different perspective by letting you skip: Importing the original 3D asset Manually optimizing the 3D asset Before we dive deeper into the how, I…
March 25, 2020

SceneStream 1.7.15 - Release notes

Antti Ylimutka
It’s been a while since we’ve updated you all what we’ve been up to. But up we have been despite the adversities our planet and society is facing. Hope you are all safe and sound! Enter SceneStream As any engineering heavy company, we have been rather imaginative when it comes to product names. We finally took some time to sit down to figure out a descriptive and functional name for… well, what…
January 31, 2020

RealityCapture to Browser with Umbra SceneStream

Manu Ravio
Photogrammetry models allow us to capture the world around in exquisite detail — but that detail often comes with a drawback: large models don't perform well in real-time rendering. Whether you use them in a game-engine or display them on a website, detail is lost in optimizing models for performance. In the following I will show you how to turn your high-resolution photogrammetry model into an…
May 31, 2019

Umbra Mesh Compression - Overview

Vinh Truong
In the pursuit of efficient 3D content streaming, data compression is essential. To understand where and how Umbra uses compression, I am going to briefly explain our processing pipeline. In short, Umbra encodes arbitrary 3D scenes into a hierarchical representation and stores it in our Cloud platform for high-performance over-the-network delivery. To determine which assets need to be downloaded…
May 24, 2019

1.6.14 Release Notes

Antti Ylimutka
Umbra's backend enables easy optimization and delivery of high-resolution, high-performance 3D models to web browsers and native apps. Content developers can forget the polygon, resolution and memory limitations and simply upload all 3D content in full resolution. As a result, meshes to us are like paintings to an artist: never good enough and always with room for improvement. And improve them is…
May 17, 2019

1.6.13. Release Notes

Antti Ylimutka
It’s been a while since we’ve shared what we’ve been up to… but the good thing is that we’ve been up to a lot! Below you can find a collection of updates we’ve pushed live during the last weeks. Point cloud support In case you hadn’t noticed, Umbra supports point clouds via the Command Line Interface shipped as a part of our SDK-package. Supported formats include LAS and XYZ. You can find step-by…
February 28, 2019

Fixing laser scans with Deep Learning

Pekka Väänänen
Laser scanning produces exceptionally detailed 3D point clouds of real-world locations, but there are often lots of missing areas that the scanner didn't see. Is it possible to bring them back somehow? I had the opportunity to investigate this question at Umbra for my Master's thesis, and to focus on applying modern neural network techniques to the problem. The approach taken here is to cast…
November 13, 2018

Solving Volume-to-Volume Visibility

Turkka Äijälä
Recently I've been looking into solving the visibility of any volume from any volume. Specifically, given two volumes, do any two points within them see each other? Implementing a visibility query that answers this could be the ultimate tool for occlusion culling and sort of a fundamental building block for other visibility operations. After all, operations such as point visibility and object…
November 6, 2018

How Does Umbra Triangulate 3D Geometry?

Niilo Jaba
In computer graphics, there are multiple different ways to represent 3D geometry. Basically, these can be broken down to three different groups: volumetric representations with a set of polyhedrons, surface representations with a set of polygons and point clouds with a set of points. All of these have advantages and limitations for different use cases. In real-time rendering, triangle-based…
August 26, 2018

High-Resolution Photogrammetry and Umbra

Otso Makinen
Our goal is to capture the real world into a virtual 3D model at the highest possible resolution. This is a step-by-step tutorial on how the content in the Love Bridge demo was made. (You can also skip to the end to see the live demo) Equipment Camera setup we used for the photogrammetry: Canon EOS 6D Mark II Canon 20 mm 2.8 wide-angle lens Tripod Shooting the photos We shot the photos at F/1…
May 8, 2018

Large Point Clouds: San Simeon

Jasin Bushnaief
A while ago, I wrote about a scalable pipeline for processing point clouds. While the text gave an overview of what such a pipeline might look like, it was quite abstract. This time, instead of hand-waving on a very high level, I’m going to present some actual results. There is a great point cloud data set of a coastline inSan Simeon, CA available at OpenTopography. The data represents a 75-mile…