• Register

Travel with your newly found raft through the ocean and get to The River, fighting against anyone and everything in your way. They keep coming so do not rest. Fight with increasingly harder vessels and environments, while improving your raft with the flotsam you find. If you thought being alone in the middle of the ocean was difficult, getting near The River is hellish. Don't quit, don't die, and you will hear the Roar of The River soon... Or later. If you can.

Post news Report RSS The minimap

Well, we all need some kind of direction or minimap.... And any minimap must have some kind of background, or be completely transparent. As some systems do not really enjoy transparencies in their shaders, we kept to a solid one. This the path we ended up to get one as we liked.

Posted by on

Being Kon-TiKi a shooter, third person (third vessel more correctly), we needed or wanted some kind of minimap. The ocean is a vast place and without directions you loose your goal.

We already have made some frames for the minimap.

From pre-rendered high poly made in blender, with several thousands of triangles, to our current one which is simply a low poly torus with some displacement added.

Well, we started modeling it in blender and ended up with this, below. With a triangle count of 4758, we decided it was too much, so we rendered it and imported as a texture.

frame high 4758


As a texture, we started with a different model, without the knot. You can see below the result. It was too plastic. Rejected.

MinimapFrameHigPoly


We cannot forget the overall look of Kon-TiKi. LOW poly. SO we returned quickly to blender to make a quick torus with some decimations and displacements. And we got something more like what we wanted.

MinimapFrameLowPoly


That is ok. We used it several days but something was not quite right. The shading was static (it was pre-rendered), so we could not have any kind of smart 3d minimap... It was just a picture placed on a 3d space. But...

We already were working with a low poly version, so why not using it as a mesh? Done that. The result for the minimap frame is below. There is a specific light attached to it, so that when the player moves and rotates, and lights on the frame do change the coloring. That was what we really wanted. Job done! Note, the thick part of the frame is where "north" is. Didn't like the way the knot was going.


frame final


So, just put some background and all the items and done. And that was what we did. But a flat background would look... boring. So, as we are really in 3d space for the minimap, just put some background circle and that is that. The only thing we did not want was a plain and plane circle.

The background was already a procedural generated circle so the first though was: add some noise to the vertex and that is that. The result, as expected, is below.... boring!

boring circle


So, the solution we went for was to create the circle boundary, then generate some random points inside the circle and voilá. But before that, we needed some details. First, we needed some uniformly distribution of random points, instead of just choosing a random angle and random distance (our first try). And secondly, we choose to do a Delaunay triangulation of all those points to minimize extreme triangles (triangles with one side very long compared to the other ones). Below is the result, in mesh. A great improvement from the above one.

minimap paper ish mesh


With this, we just needed to add some random noise to each vertex (in depth axis) so the lighting was visible. Note that in a static image, the difference in light is a bit indistinguishable.

minimap paper ish 3d


minimap paper ish


Well, as most of the time, the minimap will face the camera, we do not really need to have it as a mesh, so we will get the generated data, and create a texture with the normal calculated from the above method. And we will end up with a good "3d" texture :)

https://facebook.com/vosdalhttps://twitter.com/vosdalhttps://vimeo.com/vosdalhttps://www.youtube.com/channel/UCKpAHhnEPtB8FRvzB-ueLSg


p.s. the green triangle is your vessel. The red circle is the goal (a buoy) and the pink-ish circles are enemies.

Post comment Comments
drjd24
drjd24 - - 299 comments

Holy crap. All that work just for the minimap :) (First time seeing this game too and you managed to impress me, good job >.<)

Reply Good karma Bad karma+2 votes
n1k0p0l Author
n1k0p0l - - 4 comments

thanks drjd24. now imagine the work for a big map :D

I'm posting from time to time some news on the development and visuals of KTK... This is the first

Reply Good karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: