RSS feed Articles


Introduction

Last time we've introduced you to the photogrammetry technique telling you about our first steps in creating high quality content using such technology. This time we will continue our tale about our research in such field of work but this time we will be focusing on material creation. Well, let's get to it.

Photoshoot and processing

After our first photoshoot at our closest forested areas it was quite clear that we had to find a perfect spot with variety of interesting objects to shoot and varied landscape in order to use our time more effectively. City park areas though is not abundant with fallen trees, huge rocks and rocky cliffs. After a short search we've managed to find a perfect place - a federal reservation «nearby» the city area.

Long story short we've gathered and took off over there on a small «expedition» over 130 kilometers which turned out to be quite a fairy tale to tell!

Lost Story: Dev.Log #4 stuff

Shooting various surfaces for the sake of creating materials was quite troublesome and difficult experience. In order to create an interesting material with a wide range of details it is required to make photos of rather wide area - at least 3×3 meters. That said, one has to shoot an object in close proximity in order to get the highest level of detail possible and each close shots have to intersect one another, ideally close shots have to intersect at least for 50-60% (this exact intersection will be used later in the process of photogrammetry).

That process requires slow paced movement along the required territory and taking a lot of shots (150-200 photos) in one try while being in a very uncomfortable state. Taking breaks is risky of losing the precise spot you've stopped at or because of a chance of losing the required lighting if a sun comes out of the clouds while you were resting. The other matter to be taken into consideration is where you step. A moved branch, a bootprint, even forgotten belongings in the shot - everything can be accidentally added into the game which would be really really bad.

Even though at first we thought that shooting different surfaces for material creation seemed more difficult (at least physically) than shooting objects, it turned out to be even faster eventually. We've managed to shoot six natural materials, lots of forest photo-references, couple of models and some brick material on our way home, even though it wasn't in our plan, and all done in a single day! Brick material turned out to be quite useful though.

Lost Story: Dev.Log #4 stuff

Photo processing for material creation is not that much different than the process described in the previous part of the diary, the only difference is a bigger number of polygons on models. You can see the results on the image above - high poly models of the surfaces (11-16 mln triangles) each with 16 384 pixel albedo map.

Tiling

Since we've decided to use photogrammetry initially as a method of creating landscape materials (ground, grass, rocks), eventually we had to come across the tiling problem. Tiling - is a method for 3D graphics optimization used for filling wide spaces when only one texture is being applied on polygons. This texture then reappears in every direction filling the said space. The edge transitions of such texture should be as smooth as possible in order for the texture to look as nice as possible.

It is quite obvious that smooth continuous edges are very hard to get with photogrammetry. One variant for solving such issue is decking together nine copies of high poly model and using a special software custom change the shape of the polygonal net to get smooth transitions. Unfortunately such process takes a lot of time and each new material will have to be processed from the very beginning. That means this method isn't suitable for fast processing of photogrammetry results. This is why we've chosen another way.

Our decision was to work with texture maps that we already have from our high poly models and to prepare them for tiling in one of the special programs used for creation of procedural materials. The best thing about it is that we've managed to create our own custom graph templates and saved a lot of precious time on creating similar materials.

Lost Story: Dev.Log #4 stuff

We've created two big templates (see image above) consisting on dozens of operations. One of them is designed for materials with chaotic structure (grass, dirt, moss, rocky surfaces and other natural materials), the other is for materials with more or less repeating pattern (brick, tiles and other hand-made materials). But both templates are similar in the ability to extract and adjust additional texture maps for creating a full material without any quality loss.

In order not to lose quality while preparing materials for tiling we had to drastically change standard tiling graph-scheme included with the program. Our new graph-scheme allows us to use additional detail height info for mixing different tiles (copies of the original texture map).

The original graph simply mixes the edges of texture map tiles. Such method is plausible while creating albedo map tiling, but using the same method with normal maps is risky in terms of losing information on tile intersections. This is the reason for refusing to use the original graph. You can compare the results of normal maps preparations on the image below.

Based on our newly made tiling graph we were able to create another graph for tiling materials with patterns (where we've added more settings for mixing mask and tile deformation). The second tiling graph has grown into the second template.

That said, after we've prepared the first material we've already got a fully functional template that we can now use to create new "chaotic" materials in two day's time (photoshooting time excluded). And the brick material turned out to be a great base for the second template that will definitely help us in creating patterned materials in the future.

Results

Well, it's time to draw the conclusion of our two developer diaries. And what's better to summarize our conclusion than images of our final results? That's right, nothing! Here below you can see the renders of the final materials.

Lost Story: Dev.Log #4 stuff

Lost Story: Dev.Log #4 stuff

We've also prepared a small scene on the test map to show you the new models and materials as they would look in-game. In the same video you can see the changes of our map that occurred during the two days of preparation. Please tell us if you enjoy such format.

Lost Story: Dev.Log #4 Media

We would also like to point out that this is not the final build for natural locations. We still have to work on new trees, grass and other natural materials, as well as the skybox.

And some more screenshots for closer detail inspection.

Lost Story: Dev.Log #4 Media

Lost Story: Dev.Log #4 Media

Lost Story: Dev.Log #4 Media

Lost Story: Dev.Log #4 Media

And now let's get back to our results in the text format. We believe that our photogrammetry experiment turned out a success. Not only did we get new experience but we've also created a chain of methods on working with such technology.

Photogrammetry has proven to be a reliable and powerful tool for developers that can help in solving a variety of difficult issues with limited resources and we've enjoyed working with it. We will definitely do more photoshoots out in nature to gather new objects and materials and we are also thinking about getting in the industrial zones for unique hand-made materials (even objects perhaps). Stay tuned, this is going to be fun!

And that is all we have for now. Stay tuned and don't forget to share your opinion with us regarding the Dev.Logs and the project's wellbeing in general!

Your hedgehogs in shades from
Rock Path Collective.

SnakEscape <3 Linux & Mac

SnakEscape <3 Linux & Mac

News 0 comments

Today we've uploaded a first major update for out game that bring our cute game about Mr. Apple adventures to more platforms! To celebrate this event...

Lost Story Dev.Log #4 - Part One: Photogrammetry for Models

Lost Story Dev.Log #4 - Part One: Photogrammetry for Models

News 6 comments

Winter is finally stepping back and spring is taking over, which means that we are happy to present our new Dev.Log! Initially the topic for this article...

Tricky question

Tricky question

News 9 comments

We would like to play a game with you while we are preparing for our next Dev.Log! Specifically we would like to ask you a tricky question regarding the...

SnakEscape has been released on Steam!

SnakEscape has been released on Steam!

News 3 comments

It's time to dive into the world of floating islands, hungry snakes and apples! You will join Mister Apple in his efforts to complete 60 unique game levels...

Comments  (0 - 10 of 214)
CW3D
CW3D

Any news on Lost Story? You said you would post something about it.

Reply Good karma Bad karma+2 votes
HopeLessCatE Creator
HopeLessCatE

Respawngatheringofgamedevel2016.sched.org

We also prepare new dev.logs about all events that we visited this summer.

Reply Good karma+1 vote
CW3D
CW3D

If anyone is interested, I made a mod that replaces the hl2 ep2 track "Eon Trap" with Lost Story's "Ahead" track :D Gamebanana.com

Reply Good karma Bad karma+2 votes
CW3D
CW3D

You guys back from White Nights? If so, how was it? And do you have anything to show us?

Reply Good karma Bad karma+2 votes
HopeLessCatE Creator
HopeLessCatE

We're planing to make post about White Nights & Starcon 2016 events on next week c:

Reply Good karma+1 vote
CW3D
CW3D

Would someone be able to replace hl2ep1's "Self Destruction" track with lost story's "Run In Dark" track? Moddb.com You know, the track that plays at the elevator part in ep1? plz replace with run in dark :3

Reply Good karma Bad karma+1 vote
CW3D
CW3D

And maybe replace hl2 ep2 "Eon Trap" track with Lost story's "Ahead" track? Moddb.com

Reply Good karma Bad karma+1 vote
Trscorpion123
Trscorpion123

wooooo this is looking cool maaan

Reply Good karma Bad karma+1 vote
Mort_Brain
Mort_Brain

Now I cant believe you are doing it on Source Engine!

Reply Good karma Bad karma+3 votes
GUI-27
GUI-27

TitanFall runs on a god damn Source Engine

Reply Good karma Bad karma+2 votes
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Icon
Lost Story: The Last Days of Earth
Platforms
Windows, Mac, Linux
Developer & Publisher
Rock Path Collective
Engine
Source
Contact
Send Message
Release date
Game watch
Start tracking
Share
Style
Theme
Realism
Players
Single Player
Project
Indie
Twitter

Latest tweets from @hl2loststory

RT @matttwood: Hey, wow. Valve will be 20 years old tomorrow.

Aug 24 2016

"Alone we can do so little, together we can do so much." — Helen Keller Trello.com #GoForTheGold

Aug 6 2016

Hello, I'm Mr. Apple! :) #indiedev #gamedev #indiegame #anime T.co

Jul 29 2016

This mad apple will come for you! @Gamer_RTweets Steamcommunity.com#indiedev #gamedev #indiegame T.co

Jul 29 2016

"Snake mode" for SnakEscape is now in OBT! @Gamer_RTweets Steamcommunity.com #indiedev #gamedev #indiegame T.co

Jul 27 2016

Typical SnakEscape developer face! #indiedev #vkfest T.co

Jul 25 2016

#HalfLife spin-off's producer @Draconifore on Photogrammetry at #RSP16! @GamerRTer #loststorygame #indiedev #gamedev T.co

Jul 22 2016

Embed Buttons
Link to Lost Story: The Last Days of Earth by selecting a button and using the embed code provided more...
Lost Story: The Last Days of Earth
Statistics
Last Update
Watchers
967 members
Articles
19