Ultima Online's terrain
Ultima Online's terrain
I wonder how they made the ultima online's terrain. It's HUGE. It's also 3D, i think.. Not sure tough, it just looks like 3D. I wonder if that kind of terrain could be created with Irrlicht? Like, have a huge height map and a huge color map, in the color map each color means some texture, yellow for sand, dark yellow for puke, green for grass, blue for water, gray for stone, dark gray for cobblestones etc etc. And the textures would be nicely blended together, so no hard edges. And then create a map file with these. Would it be possible?
Here's an example of a system that i need:
1 pixel is 1 tile in game. A pixel, where is, for example, that specific green color, it textures a tile in the 3d terrain with a grass texture that is assigned to that specific green color. And the tile textures should be nicely blended so that it does not look like this: http://img223.imageshack.us/my.php?imag ... amenq2.jpg (the window under the example window is the target quality) (and that example window is a very old test crated with darkbasic pro). Can anyone assist?
1 pixel is 1 tile in game. A pixel, where is, for example, that specific green color, it textures a tile in the 3d terrain with a grass texture that is assigned to that specific green color. And the tile textures should be nicely blended so that it does not look like this: http://img223.imageshack.us/my.php?imag ... amenq2.jpg (the window under the example window is the target quality) (and that example window is a very old test crated with darkbasic pro). Can anyone assist?
Mmmm.. my wild guess would be to create a matrix of data which would be your map, in every location of your matrix you store a number which refers to an enumeration of textures and during the drawing process you draw all the textures you need to draw while "browsing" (don't know if it's the correct word) the map inside a loop..
Anyways that "blending" effect in my opinion, could be done with a transparent effect at the edges of the texture and when you draw every square you make them overlap a little so the transparency mixes and gives a nice blended effect.
This is a little drawing I took in GIMP (yes, my drawing skill sucks very bad) to make an example...
The outer red/blue square is the size of the texture, the inner red/blue square is the fully-shown part of the texture and the gray area is the part in between with a bit of transparency (depending on your need), when you draw them you make them touch and penetrate with each other and the effect should be like that.
I honestly don't know all the details of how to do that in irrlicht (or any other engine) because I have never tried it, it was just the first thing that popped in my mind...
...well, not really.. Honestly I'm working to a 2d/3d map like that for my RPG game and that was all I could think for it, but I haven't tried to implement it in a program yet, we'll have to wait
ps: this topic is revelant to my interest as mentioned above, need more solutions!
Anyways that "blending" effect in my opinion, could be done with a transparent effect at the edges of the texture and when you draw every square you make them overlap a little so the transparency mixes and gives a nice blended effect.
This is a little drawing I took in GIMP (yes, my drawing skill sucks very bad) to make an example...
The outer red/blue square is the size of the texture, the inner red/blue square is the fully-shown part of the texture and the gray area is the part in between with a bit of transparency (depending on your need), when you draw them you make them touch and penetrate with each other and the effect should be like that.
I honestly don't know all the details of how to do that in irrlicht (or any other engine) because I have never tried it, it was just the first thing that popped in my mind...
...well, not really.. Honestly I'm working to a 2d/3d map like that for my RPG game and that was all I could think for it, but I haven't tried to implement it in a program yet, we'll have to wait
ps: this topic is revelant to my interest as mentioned above, need more solutions!
There is a free open source Ultima Online client, wich has great terrain system. http://www.iris2.de/images/1/12/20080123003725_984.png They say they use 'multi-texturing'.
http://www.iris2.de/index.php/Dev_Blog# ... ng_terrain
http://www.iris2.de/index.php/Dev_Blog# ... n_progress
That is just what i am looking for.. but how to make it?
http://www.iris2.de/index.php/Dev_Blog# ... ng_terrain
http://www.iris2.de/index.php/Dev_Blog# ... n_progress
That is just what i am looking for.. but how to make it?
-
- Admin
- Posts: 3590
- Joined: Mon Oct 09, 2006 9:36 am
- Location: Scotland - gonnae no slag aff mah Engleesh
- Contact:
D-Eagle wrote:There is a free open source Ultima Online client, wich has great terrain system... but how to make it?
Please upload candidate patches to the tracker.
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
Need help now? IRC to #irrlicht on irc.freenode.net
How To Ask Questions The Smart Way
May be i'm stupid, but i haven't see here any problem.
What are you looking for?
if it "blending" function - click on search button of the forum
if it "multitexturing" - click on search button of the forum
if it "tiling" - you're know what to do yet
in that screen you linked previous is a standard 2.5D scene, as i remember there doesn't use any blending/multitexturing procedural, there are prepainted images, but noone forbids you use any procedural texturing
about a world - you have a matrix or an array of the numbers (for example World[n][m]), which number is a textureID and type (i mean - wall,water or something else), it realised very simply and used at the moment only part of the world not all (dynamic load/unload to/from memory). it isn't problem to code it all geniusly is simply ))
Good luck with your searching.
What are you looking for?
if it "blending" function - click on search button of the forum
if it "multitexturing" - click on search button of the forum
if it "tiling" - you're know what to do yet
in that screen you linked previous is a standard 2.5D scene, as i remember there doesn't use any blending/multitexturing procedural, there are prepainted images, but noone forbids you use any procedural texturing
about a world - you have a matrix or an array of the numbers (for example World[n][m]), which number is a textureID and type (i mean - wall,water or something else), it realised very simply and used at the moment only part of the world not all (dynamic load/unload to/from memory). it isn't problem to code it all geniusly is simply ))
Good luck with your searching.