About Store Forum Documentation Contact



Post Reply 
Sandbox Tech Demo Project
Author Message
georgatos7 Offline
Member

Post: #1
Sandbox Tech Demo Project
Hey,

Being a casual gamer i came to appreciate the sandbox genre for the freedom in gameplay, the immersion and community involvement it can offer. Having an interest myself (as a hobby) in game engines and 3D modeling i have decided to experiment on a few feature ideas i had, in order to create something like an early tech demo and see how they would actually feel.

So i've been experimenting a few months back with Esenthel in order to get to know the engine and see if i could implement those features at least at some basic level.

Features i wanted to experiment on:
-Immersion (day and night).
-Weather Effects.
-Voxel terraforming system.
-Realtime Lens Flares.
-Improved bloom and Eye Adaptation (in order to enhance the dark to light area contrast during digging).
-Realistic textures and especially for metal armor.

Sadly due to the lack of free time i had to take a break during summer but now i'll be spending some time again in order to try to optimize and polish up those features and try to get them together.

Environment Test
The scene contains placeholder assets and the goal was to achieve a satisfying level of immersion for day and night time.




Voxel Test
Currently the voxel system is at a very basic level of implementation, it's unoptimized, it has some left over code from previews tries and it uses mostly engine built-in functionality in order to create the mesh, normals etc that should be replaced with a custom implementation.
The method that is used here is a version of dual contouring (also tried Marching Cubes) but the final part of the intersection point calculation isn't merged yet with the rest of the code shown in the video and that's the reason for the jugged edges at the current stage. A triplanar texture projection is used for the rock and snow materials for both the diffuse and normal maps.







Post Process Effects
For the post process i'm mainly using the backbuffer to draw (much faster) for the various steps (threshold, blurring, further processing), so i avoid rendering to textures as much as i can even though at some point in order to combine the effects it will be unavoidable.
All the effects except the color correction and the radial chromatic aberration are at a basic stage and should be worked on to improve their aesthetics.




Simple Weather and Dirty Metal Material Test
Among the first things i tried with the Esenthel engine are this very simple single layer Dynamic Cloud Coverage system (done in the cpu at the time) along with a Dirty Metal Material test.






I'm including some helpful links i've found while trying to figure out how to implement those features.

Environment
https://www.youtube.com/watch?v=VDkaJdWXldk (Snowy terrain)
https://www.youtube.com/watch?v=p0o3bqoM0Qg (Heightmap, Colormap, Splatmap extraction)
https://www.youtube.com/watch?v=qU0hdaFARQo (Used that to make my skybox from a skydome with a 90o FOV camera in 3DS Max but without vertically compressing the dome mesh)
http://www.cgskies.com/ (Skydomes)

Voxel
http://procworld.blogspot.gr/ (A very good source of info especially the older blog posts)
https://upvoid.com/devblog/ (Lots of good info)
http://forum.unity3d.com/threads/after-p...aft.63149/ (Huge amount of info on minecraft-like voxel implementations with lots of similar code and ideas about biome creation, lighting etc)
http://www.frankpetterson.com/publicatio...ontour.pdf (Dual Contouring Info)
http://www.reddit.com/r/VoxelGameDev/com...of_detail/ (Dual Contouring info)

Post Processing

Generic Info, Tutorials and Presentations
http://ogldev.atspace.co.uk/index.html (All purpose tutorials.)
http://www.opengl-tutorial.org/ (Very good site with very detailed tutorials)
http://scrawkblog.com/ (Awesome Blog)
http://john-chapman-graphics.blogspot.gr/ (John Chapmans Blog)
http://devlog-martinsh.blogspot.gr/ (Great Blog with lots of info)
http://dmg3d.blogspot.gr/ (Great Blog with lots of info)

HLSL and Shaders in general
https://msdn.microsoft.com/en-us/library...85%29.aspx (HLSL)
http://www.opserver.de/ubb7/ubbthreads.p...ber=423265 (Downsampling Methods)

Blurring
https://www.youtube.com/watch?v=Vi94GhaHpz0 (Double Pass Box Blur Explanation)
http://http.developer.nvidia.com/GPUGems..._ch40.html (GPU Gems : Gaussian Blur)
http://www.jhlabs.com/ip/blurring.html (Explanation of different kinds of blurring methods)
https://software.intel.com/en-us/blogs/2...algorithms (Nice info on blurring)

Lens Flares
http://john-chapman-graphics.blogspot.gr...flare.html (John Chapman Lens Flare)
https://docs.unrealengine.com/latest/INT...index.html (UE Lens Flare)

Bloom/AiryDisk
http://forum.unity3d.com/threads/se-natu...st-1610406 (Main Airy Disk Bloom thread)
http://www.gamedev.net/topic/631659-hdr-...ng-format/ (RGBM Encoding)

Color Correction
http://http.developer.nvidia.com/GPUGems...ter24.html (Color correction based on LUT Texture)
https://docs.unrealengine.com/latest/INT...index.html (Generic info with LUT texture available for download)

Color Encoding
http://graphicrants.blogspot.jp/2009/04/...oding.html (Multiplier encoding)
http://en.wikipedia.org/wiki/Single-prec...int_format (Exponent Encoding, not color)

Atmospheric Scattering
http://dmg3d.blogspot.gr/2013/11/atmosph...light.html
http://scrawkblog.com/2013/07/04/atmosph...-in-unity/
http://outerra.blogspot.gr/2011/07/fog-and-dust.html

Fog
http://blog.demofox.org/page/2/
https://docs.unrealengine.com/latest/INT...index.html (UE Fog for reference)

Light attenuation
https://imdoingitwrong.wordpress.com/201...tenuation/
(This post was last modified: 02-05-2016 01:46 AM by georgatos7.)
11-05-2014 11:06 PM
Find all posts by this user Quote this message in a reply
Tottel Offline
Member

Post: #2
RE: Sandbox Tech Demo Project
That's very impressive!

I love the snow landscape you have going there, it looks fantastic.
And the voxel editor and the shaders are darn cool too!

Do you plan on using this for a project?
11-05-2014 11:21 PM
Find all posts by this user Quote this message in a reply
Rofar Offline
Member

Post: #3
RE: Sandbox Tech Demo Project
Looks really good. Quite impressive.
11-05-2014 11:43 PM
Find all posts by this user Quote this message in a reply
Pixel Perfect Offline
Member

Post: #4
RE: Sandbox Tech Demo Project
Simply speechless! Excellent work, has to be the most impressive rendered output I have seen in this engine. Nice touch with all the technical references too! Keep up the great work.

As Tottel already asked ... are you planning on using this functionality for a project?
11-05-2014 11:59 PM
Find all posts by this user Quote this message in a reply
georgatos7 Offline
Member

Post: #5
RE: Sandbox Tech Demo Project
Thanks guys, i followed lots of threads here in the forums for technical help and art inspiration and i posted those links i find in case they might be of good use to you too.

While "trying" to be realistic i was hoping to reach the stage where i would allow a number of players to log in a multiplayer medieval fantasy themed environment that would offer some basic functionality like terraforming, single attack and block moves basic AI and an upgraded visual experience with some dynamic image-based effects. The simultaneous goal was to achieve a satisfying level of immersion through the realistic look of the world in terms of size, texture, weather etc.

So the project's goal was/is to make that showcase demo that would include those basic features. Still too ambitious, especially if you consider that i'm just a hobbyist with no professional experience doing this on free time, so we see as we go.
(This post was last modified: 11-06-2014 10:57 AM by georgatos7.)
11-06-2014 12:04 AM
Find all posts by this user Quote this message in a reply
Ezequel Offline
Member

Post: #6
RE: Sandbox Tech Demo Project
This looks really great, I'm impressed!
What resolution did you use for the landscape textures?
11-06-2014 12:59 AM
Find all posts by this user Quote this message in a reply
Esenthel Online
Administrator

Post: #7
RE: Sandbox Tech Demo Project
Wow!

That's very very cool, and very very pro, yeah I know I've just used 4xVery, but it's justified wink

Great Job!

Edit:
Facebooked - https://www.facebook.com/EsenthelEngine
11-06-2014 01:25 AM
Find all posts by this user Quote this message in a reply
georgatos7 Offline
Member

Post: #8
RE: Sandbox Tech Demo Project
Hehe, well all the maps i used where 1024x1024. I actually never used a texture to texture the terrain, but a pale version of the texture to tint it.
That also allowed me to add some interesting variation on the terrain while watching from afar.

So the steps i followed to import and texture the chunks where:
1) On the "Select elements to import", select only the "Height" tab.
2) Add your heightmap and enable Set tab below the image, set Min Max Height and press import. This imports the heightmap alone and retains the material basis you had when you created the ground patches (snow in my case).
3) Then i tinted the terrain by applying a pale version of the texture map as a color. So i deselected the "Height" and selected "Color" tab, i've added the pale texture map as the image and selected "SET" below the color image and pressed Import.
4) I then used a Splat map to apply the second material (rock in my case). So i deselected the "Color" tab and selected the "Material" Tab, added the splatmap as the image, selected the required channel, selected BLEND<--(important) with 1.000 as a blend value, drag and dropped the rock material on the first slot of "Materials for image channels" and pressed Import and was done.

I'm sure you can actually do those steps as many times as you like or until you achieve the complexity you require with all your materials and color tint values in place for the chunk.

Hope this helps. Let me know if there is anything else you'd like to know.
(This post was last modified: 11-06-2014 11:56 AM by georgatos7.)
11-06-2014 02:00 AM
Find all posts by this user Quote this message in a reply
fatcoder Offline
Member

Post: #9
RE: Sandbox Tech Demo Project
Now this is the kind of showcase I enjoy seeing.
One that demonstrates some technical achievements that one can be proud of.

I would love to see some of those post-processing effects make their way into the built-in EE shaders. Something I recently brought up actually.

Tri-planer terrain shading is also something that has been asked about a lot. *hint* *hint* Greg grin

This showcase just helps to show how important these features are for EE.

One question I have (a bit off-topic); how are you writing custom shaders with the trial of EE? I thought you had to own the source version of EE in order to write custom shaders as you need the shader headers. I have only ever done custom shader work in the old EE version that I own the shader headers for. I haven't tried in the new EE version, so maybe I'm missing something?
11-06-2014 02:43 AM
Find all posts by this user Quote this message in a reply
georgatos7 Offline
Member

Post: #10
RE: Sandbox Tech Demo Project
(11-06-2014 02:43 AM)fatcoder Wrote:  One question I have (a bit off-topic); how are you writing custom shaders with the trial of EE? I thought you had to own the source version of EE in order to write custom shaders as you need the shader headers. I have only ever done custom shader work in the old EE version that I own the shader headers for. I haven't tried in the new EE version, so maybe I'm missing something?

Well thanks a lot man and also thanks for the link with the useful presentation.
I owned the binary license for some time, and i purchased the headers from the store at that time, also i'm using various versions of Esenthel and i intend to upgrade to the latest version at the time i will be merging those features together.
11-06-2014 03:23 AM
Find all posts by this user Quote this message in a reply
3DRaddict Offline
Member

Post: #11
RE: Sandbox Tech Demo Project
I'm flabbergasted!

The ability to merge light,color and shade together with technical know-how
is a real talent indeed.

I'm just coming to realize the beneficial use of custom shaders in my project, and its amply demonstrated by this breathtaking showpiece!
(This post was last modified: 11-06-2014 06:29 AM by 3DRaddict.)
11-06-2014 06:16 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Harry Offline
Member

Post: #12
RE: Sandbox Tech Demo Project
That looks really great. I didn't know that such things could be achieved in EE. Also thanks for the links. Specially for lens flare, because I'm going to implement it in near future smile
11-06-2014 10:09 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Rubeus Offline
Member

Post: #13
RE: Sandbox Tech Demo Project
Georgatos and Raddict both; you guys should be putting these shaders up on the EE store. I'm sure I'm not the only one that wouldn't mind picking a few up.
11-07-2014 12:23 PM
Find all posts by this user Quote this message in a reply
georgatos7 Offline
Member

Post: #14
RE: Sandbox Tech Demo Project
Yeah thanks a lot man but i don't think they are currently flexible enough to be used in an actual project. Maybe once some additional needed functionality is implemented i can release a demo for everyone to try.
11-07-2014 02:54 PM
Find all posts by this user Quote this message in a reply
Dalmat Offline
Member

Post: #15
RE: Sandbox Tech Demo Project
Fantastic work!

I would gladly play with it! smile
11-07-2014 07:44 PM
Find all posts by this user Quote this message in a reply
Post Reply