Is it possible to render minimap in a different way?

Started by
6 comments, last by JohnnyCode 10 years, 1 month ago

Hi,

I am new to 3D rendering. Currently I have an idea about minimap. As far as I know, minimap generally rendered by a camera facing the terrain. In this way, minimap shows the upper faces of all the mesh to render.

I am wondering whether it is possible to render the minimap like the meshes have a different material, or merge with a normal map and height map of the meshes. What I means is that to add more mesh information(e.g. normal, height) into the 2D minimap, not just a simple rendering form a sky camera. Is it possible or valuable to do so?

Thanks.

Advertisement
Nothing says the minimap has to be a view of your main world at all. You could have an entirely separate scene, with simpler geometry for each entity since you don't need to render full geometry from the world for a minimap. For example, in my game I set up the minimap as a separate scene and each entity that has a presence in the minimap uses a simple small bit of hex geometry to draw. I have camera set to draw that scene after the main scene is drawn:

aG592y8.jpg

You can really do it any way and with any geometry/materials in that second see you desire.

Are you meaning create another scene for rendering minimap? Would that be too complicated? I don't want to create a copy of my game scene so that I can use different materials or geometry. I just want to create one scene, and render the minimap based on it.

Are you meaning create another scene for rendering minimap? Would that be too complicated? I don't want to create a copy of my game scene so that I can use different materials or geometry. I just want to create one scene, and render the minimap based on it.

Minimap is just different presentation of that scene not different scene itself. For gameplay and UI design reason it has to be clearly readable. Totally different needs than main scene rendering.

Are you meaning create another scene for rendering minimap? Would that be too complicated? I don't want to create a copy of my game scene so that I can use different materials or geometry. I just want to create one scene, and render the minimap based on it.

That's exactly what I mean. The minimap is much smaller on-screen than the main view. That means that it doesn't need to be anywhere near as detailed as the main scene, so re-drawing the main scene itself, but with different materials, is doing WAY more work than is necessary, even before the work of iterating the scene and changing all of the materials, then iterating and changing them back for the next main view render. If a piece of geometry is represented by 1000 faces in the main view, it can be represented by a dozen or less in the minimap, and that's a thousand-fold savings you've made.

And it should only be complicated if the design of your scenes is complicated and/or broken. If done right, it's as easy as

minimapscene=new Scene();

And you don't create a direct copy of your main scene. You add different geometry to the minimap scene, to account for the fact that the view is smaller. Sure, you need some means of tying the minimap geometry and the main view geometry together, but that should be trivial if designed right.


Minimap is just different presentation of that scene not different scene itself. For gameplay and UI design reason it has to be clearly readable. Totally different needs than main scene rendering.

quite true. look at the local map in Skyrim, basically a top down x-ray view of the level map. rather useless at times, what with all the overlapping levels they love to use. Sometimes i'm temped to break out pencil and paper to hand map a level like i'm playing table top D&D again.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php


And you don't create a direct copy of your main scene. You add different geometry to the minimap scene, to account for the fact that the view is smaller. Sure, you need some means of tying the minimap geometry and the main view geometry together, but that should be trivial if designed right.

Thanks. I want to solve this problem by automatically create a readable by some calculation or specific shader. Is this valuable? I mean is it valuable or worth to find a solution to automatically create a minimap that meets our needs and reduce the work to create a second scene?


And you don't create a direct copy of your main scene. You add different geometry to the minimap scene, to account for the fact that the view is smaller. Sure, you need some means of tying the minimap geometry and the main view geometry together, but that should be trivial if designed right.

Thanks. I want to solve this problem by automatically create a readable by some calculation or specific shader. Is this valuable? I mean is it valuable or worth to find a solution to automatically create a minimap that meets our needs and reduce the work to create a second scene?

in case the large scale view of your scene does not expand the already loaded scene you do not have to recreate anything, just draw the scene again from top down drawing every node of scene in a diffrent way than normaly, like a dot, brown square or so. you can also simplify it by a static map texture, drawing only relevant volatile objects, player, and other. Remember also you can draw tha large scale scene with the same shaders as in detail view offline, to a texture map, resulting in a static asset that will very accurately represent top down of the very scene, and than use this static map to display few volatile objects of player interest. You will be able to recreate this static map in seconds, to ease your production process and have very accurate top view. But many times it will demand a little post processing to hide extreme tilling visible and so on.

This topic is closed to new replies.

Advertisement