Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Newcomers DBPro Corner / Sphere and Heightmap question

Author
Message
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 17th Dec 2008 14:35
So I have been fooling around with a few games I am still designing. They're all coming along nicely except for one. Reason being I CANNOT FIGURE OUT how to 'make' a terrain editor for a spherical object IE a planet. It has been killing me for more than half a year. So I need some help. There are obviously going to be several ways do to this unless there is no way to do this in which I will be buying a new keyboard. Go a head and give me your best idea or way of doing this... I will resolve which method is best. Normally I would give some code and ask what I was doing wrong- but- in this case, I didn't even know where to start. Any one know of away how to apply a height map to a sphere (obviously not directly as you can't with spheres) and alter such a height map for a terrain sculpting basis?

Any thoughts are welcomed!

-Daryn

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
zenassem
21
Years of Service
User Offline
Joined: 10th Mar 2003
Location: Long Island, NY
Posted: 17th Dec 2008 14:43
Please excuse me if I sound ignorant, but I am trying to envision what you are trying to accomplish and I'm not sure I understand. Why would you need a height map on a sphere for a planet?

At the point that the planet is spherical wouldn't you be too far away from it to worry about the height map? I would think that only as you got very close to the surface would a height map be necessary, and at that point the surface would be pretty flat.

Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 17th Dec 2008 15:59
You're right in that the first initial view would be plain images... but the point of this isn't for a space game, but more a god game. (Mention spore and be shot... it's far to cute and small for meh! And I shall not play it) You can take form and walk on this planet as it develops. But when doing so it is impossible for me enjoy it as there are no planetary features such as mountains. No topography at all. So, If I can find a way, any way height map or not- to edit the planets shape some how, then erosion, smoothing, craters from asteroids, volcanoes and so on, would be more appealing then just... "picturing it"

Hope that clarifies and no offense to Sporians

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
pcRaider
16
Years of Service
User Offline
Joined: 30th May 2007
Location:
Posted: 17th Dec 2008 16:25
You read here.
http://en.wikipedia.org/wiki/Polar_coordinate_system
You will be interested.
"Spherical coordinates"
zenassem
21
Years of Service
User Offline
Joined: 10th Mar 2003
Location: Long Island, NY
Posted: 17th Dec 2008 16:26 Edited at: 17th Dec 2008 16:31
I haven't played spore. I have too look at some reference pics becuase I still can't picture the viewing angle.

edit:
Ah so it's a really false perspective. Something like this? But you want more height differentiation?


Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 17th Dec 2008 21:08
Sperical Planets - DBC newcomers??
This is really a very difficult problem and should be under the DBP board.

It depends what detail you want. If you want quite a low detailed sphere then that is quite possible and I have a few examples of where it works perfectly.

However, for a more detailed planet with terrain which looks good enougth to walk on you are going to really have a tougth time. I am trying to develop a LOD system for terrain and hopefully this will be aplicable to spheres too.

It seems that we are both striding for the same goal. A game with the initial idea of spore, just with much more depth and not so cartoony/cute. May I suggest we join forces?
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 18th Dec 2008 04:09
Quote: "I haven't played spore. I have too look at some reference pics becuase I still can't picture the viewing angle.

edit:
Ah so it's a really false perspective. Something like this? But you want more height differentiation?
"


Primarily.

Quote: "You read here.
http://en.wikipedia.org/wiki/Polar_coordinate_system
You will be interested.
"Spherical coordinates""


Thank you! This was even more helpful.

Quote: "Sperical Planets - DBC newcomers??
This is really a very difficult problem and should be under the DBP board.

It depends what detail you want. If you want quite a low detailed sphere then that is quite possible and I have a few examples of where it works perfectly.

However, for a more detailed planet with terrain which looks good enougth to walk on you are going to really have a tougth time. I am trying to develop a LOD system for terrain and hopefully this will be aplicable to spheres too.

It seems that we are both striding for the same goal. A game with the initial idea of spore, just with much more depth and not so cartoony/cute. May I suggest we join forces?"


I am very open to it, although my form of evolution comes not from the player but the players choices. (EG you don't play the creature but you do have the power to change it or kill it and so on and so fourth) And just to be fair to myself I got the idea from simplanet not spore (even though will wright made both ) I am honored to share what ideas I completed with you.

-Daryn

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 18th Dec 2008 23:20 Edited at: 18th Dec 2008 23:22
Quote: "my form of evolution comes not from the player but the players choices.(EG you don't play the creature but you do have the power to change it or kill it and so on and so fourth) And just to be fair to myself I got the idea from simplanet"


To make this into a fun and involving game could be very difficult. Just a word of warning: SimPlanet feels more like a game where you test and muck around where as Spore feels like it is (or at least could be) a journey through time and evolution. E.g. People seemed to love the cell, creature and space phase of spore but hate the civ and tribe. I would be intreaged by what your GOD game turns out to be.

When I finish my LOD planet engine I will gladly share it with you and I expect that most of our code and methods will be exchangable. It should be entirly possible to make a game containing both elements (the ultimate SimEverything)
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 19th Dec 2008 08:08
Whilst the title is still to be determined from the finished product, the object of the game is to create a successful species and influence the means for it to evolve. The stages still exist (cell, creature and so on) but with more detail and rather play the cell/creature you are trying to evolve, You influence the population of these cells/creatures and so on. This is how many races are formed. And unlike Spore, you can reach the Sentient stage with more than one race at a time. I came to the conclusion to 'play god' with playing Spore. (The tools you get that allow you to alter a planet seemed more a deity thing then a space thing.) So you play god and have the option to play any animal/cell/tribe/civilization/space colony and do this AS YOU ARE the supreme being of your universe.

Our ideas are the same but from a different perspective. I am definitely going to share with you whatever you wish. As long as you help me with the LOD system portion. As I am using a global interface from the start of the program. Each part of the globe has different regions. You can select these and then form life from various tools. Then, when life forms, you can play as the creatures you select in this region. Right now, I am still building this interface but I've had some really nice help and break throughs with it. I will gladly share this with you when I finish it and fully understand and incorporate it completely into my game. Fair enough?

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 19th Dec 2008 21:01
Sounds fasinating. I think I have the LOD working for a simple grid (5km by 5km) but the only problem is the speed. It works fine but the commands to generate the texture make it can be slow.

To achieve the double texture effect of advancded terrain I am texturing the object and the colouring the vertices by setting their diffuse value. This in itself is not slow. The problem is that I must "convert the object" every time a new mesh is added.

When this command is taken out "convert object fvf 1,338" it works really quickly but you only get black and white objects (no textures). Do you know of a way of doing this faster? The system will probably suffer no noticble loss to speed when scaled up.

No Media Required
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 20th Dec 2008 01:11
Sorry for the double post.

I have solved my own problem and found that by seperating each tile into its own object the convert object fvf command is much, much faster and the speed is now quite reasonable.

One thing you will notice is that each terrain tile is surrounded by an inprint or wall in the terrain object. This is because I do not know how to create a gap filler technic and so the outside of the terrain objects must be at the same height for them to fit together with no gaps. Is it noticable and if so can you think of any ways to combat it?

qwe
20
Years of Service
User Offline
Joined: 3rd Sep 2003
Location: place
Posted: 20th Dec 2008 02:53
what i would do is -

have a two dimensional array. each point in the array will correspond to one "matrix value" (in this case, sphere value)

basically, just adjust the distance of a particular vertex from the center of the sphere, of each sphere vertex, based on its relevant value in the matrix

so you'd want to make the matrix easily editable, so maybe make the matrix load from a bitmap/heightmap as you say, but you'd have to keep in mind, depending on how mathematically you convert the heightmap to the matrix values, you might have stretching and so blank pixels more and more as you get to the top and bottom of the bitmap (like a real "world map") or you might have a normal full bitmap and it would automatically average the values when it needs to cut those vertices (since there are less vertices at a north or south latitudinal line on the sphere than there are at a more central (equatorial) line)

--

in sum, a bitmap stores height values, and those height values are actually distance values for each vertice on a sphere

let me know what you think
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 20th Dec 2008 11:30
Quote: "Sounds fasinating. I think I have the LOD working for a simple grid (5km by 5km) but the only problem is the speed. It works fine but the commands to generate the texture make it can be slow.

To achieve the double texture effect of advancded terrain I am texturing the object and the colouring the vertices by setting their diffuse value. This in itself is not slow. The problem is that I must "convert the object" every time a new mesh is added.

When this command is taken out "convert object fvf 1,338" it works really quickly but you only get black and white objects (no textures). Do you know of a way of doing this faster? The system will probably suffer no noticble loss to speed when scaled up.

No Media Required
"


Quote: "Sorry for the double post.

I have solved my own problem and found that by seperating each tile into its own object the convert object fvf command is much, much faster and the speed is now quite reasonable.

One thing you will notice is that each terrain tile is surrounded by an inprint or wall in the terrain object. This is because I do not know how to create a gap filler technic and so the outside of the terrain objects must be at the same height for them to fit together with no gaps. Is it noticable and if so can you think of any ways to combat it?

"


Wow. This is something very nice even in child form (kill me not!) As for the gaps. It is noticible. But how they are noticible is what bothers me. Maybe if there was a way to incease the LOD view based on the camera's distance. (As I only seem to notice a signif. difference when you view several lods at once. Also bare in mind that the Terrain itself can't be perfect. Items you place on them will also enhance their 'total view.'

OTHER THAN THAT lol. I would suggest perhaps implementing a way to store each corners values. Setting rules for how corners must meet will also help. (Vertex rules are BIG AND NASTY like my mom.lmfao) You would need some thicker math to place slopes and angles relative to each vertex. I am in love with this but am going to investigate another way vertex paint/place. (if you call it that ) Reason being I will need every bit of power behind the AI sys and Global Dominance.

One thing I was looking into was What qwe^^^ above said. If the camera is "X" amount of distance away from a tile then we could alter the height map, which, if the height/angle is the same as the tile next to it, we can bind the vertexes. This would then lower the power needed to display a more complex mesh and thus we have a simple LOD system. (I am not aware of unbinding them afterwords so I may be wrong in more then one area ) As you move further and futher away, these vertexes create a 'flat' globe and the texture is altered along the way.

But Lord Einstein It is a brilliant piece of code though very complex for my understanding. Let's keep posting here until we colaborate on a more one on one basis (if you'd prefer that)

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 20th Dec 2008 11:50
I don't mind posting on the forums and it has the added bonus of other people being able to comment and improve upon our work (but hopefully not steal it lol). I think I have a solution for the edges which I will try out. As for finally mapping it to a sphere I want to get the terrain working perfectly before I do that. I do have some basic ideas which dark coder told me about. I am going to have 6 of these terrain objects on each side of the sphere (imagine it as a cube) and then just move pieces in and out from the centre. I will keep you posted.

Quote: "very nice even in child form"

What is that suppost to mean lol
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 20th Dec 2008 16:42
Lol. Glad to hear about the solution, (The child response was about pre-matured content. lol- It's what I call anything that requires some fine tuning... like my piano... lots of fine tuning )

I figured as much, that you would have done the cube method. It's not to rough and not very hard to understand. Now, my problem with this is that my globe has regions. To implement the cube mapping (in the way you might/will) would only complicate how each region loads. So I am looking else where for that. But I am still posting here... We can give a lot to each other, not just an occasional child reference lmfao.

If I find in the next couple of days that the region method is far to cpu heavy then i will abandon it. Until then it is mah babeh

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 20th Dec 2008 17:23
You could always do 6 reigions (1 per side of a cube) or split each side into more reigions. What exactly is this reigion method? what are you trying to do?
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 20th Dec 2008 22:24
No you are correct. tiles per cube would work. If you go to http://www.citiesxl.com/ and browse their media... look at the planet view. This is nearest the idea I am heading for. You pick an area of the sphereical map and then play that *matrix* or plane. I can then tell the computer how to read the height map (which started this forum ) and display the land's more complex features in "plain-view" drawing back out to the planet view, I've yet to figure a way to alter it further. You'll fully understand if you look at the link.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 21st Dec 2008 01:14
Wow. Shame my computer will never be able to run that game. What they may be doing there is using the area you select on a planet and then sampling the hight from that point using raycasts. This can be used to create a heightmap for an area but if you want to be able to travel across the entire planet then it is not sufficient (not only in practicality but also in speed).

I have found the solution to the terrain edge problem and I am now contemplating how to map the terrain onto a sphere. The demo shows how I plan to do it at the moment. The smaller and more clustered tiles at the edges should not make a difference, in theory.

Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 21st Dec 2008 04:40
I recently found a lovely sawtooth function (Thanks be to whoever you are [I can't remember your name!!!] for showing me) that implements time. You can refer to this as an example:


You may have to fill in, in some spots but its super simple- I just wrote it out here. Basically it increments time based on the angle of the sun from the planet. This is good as we can then adjust the hours for each planet rather than come up with a whole game/hour sys. relying on the system clock.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 21st Dec 2008 05:17
Sorry for the 2X post. I just looked at your code more indepth. It's very nice. I thought about something in spore. When you play as a creature, the entire world isn't loaded... just portions or a full continent. The same should be done earlier in the game for our ideas... its great on power usage and shouldn't slow the background tasks as much as having a full global reference point from cell stage to beyond. Just a thought. Also, is there a way to UV map each tile as if it were a sphere or must it look as such overall. Or are you planing on making a sphere or tetra sphere that relies on the values of each vertex to form an implied heightmap? It is pretty cool. I'll see what I can come up with and post you some of my material in the next couple of days.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 21st Dec 2008 09:31
The sawtooth demo is a very intresting way of doing time (had to correct alot of it for it to run ).

As for not loading the entire planet. This is exactly what LOD is. It stands for Load On Demand. It means that the world is loaded on the fly as you travel around. Thats what the terrain demos I have posted do. They upgrade a very simple mesh to a more detailed and advanced mesh as you get closer. I would not be able to display the enitre planet in this fashion as it would lag like the clappers.

As for texturing. I was planning on texturing it as a cube with a different texture per face. When you get closer however the detail texture is used and the vertexes diffuse value is set just like in the 2D demo.

The altitude of terrain will now be the distance from the centre. By using the same forumlar I used for generating heights in the 2D example, and by upgrading it to 3D, I should be able to easily split each square into a much more high detailed square.

On the 2D example each vertex stores a height value and when it is replaced by a more detailed mesh it is set to thake the exact height of the previus mesh. Obviusly there are more points and so I must work out the height at midway points. The height is then increased or decreased by a random amount. Since the randomize value is set to a function of its position the same number is generated for each vertex. Meaning you can leave an area, come back and it will be exactly the same.

I'm sorry I haven't been able to do more to the sphere demo in the last few hours, I have been asleep.
Pillarofire
20
Years of Service
User Offline
Joined: 31st Dec 2003
Location: Good Question, <looks around.>
Posted: 21st Dec 2008 11:50
@Lord Einstein - Nice work on the LOD, looking good. I had some code that creates a DBO object just like the built-in matrix, kinda like what you were doing. Just thought I'd post it, might help your cause.





Quote: "
I recently found a lovely sawtooth function (Thanks be to whoever you are [I can't remember your name!!!] for showing me) that implements time.
"

Lol. No worries mate.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 21st Dec 2008 21:05
Ok. I think I think this sphere mappig could possible work. I ahve been able to do it for the top section and must now repeat it for all other 5 faces of a cube. Check out the code, notice also how I was able to smooth out the edges, pretty snazzy. I also changed the way you view it to a spaceship (makes planet viewing easier) which conincidently is a cube.

Now I need to do the same thing for the other faces. Speed is my main consern at the moment as it can be a little slow. Probably because of all of the distance commands that use phythagorus, thats alot of square rooting - quite a slow mathematical procedure.

Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 22nd Dec 2008 00:10
YATTA!

It works. Spherical LOD engine. Very slow mind you but it works! The engine has yet to be updated with real textures, atmospheric effects and climate differences across the planet.

I am very conserned with the speed of the program now, it may not be too noticible whilst walking on the planets surface but whilst flying a plane it can really be anoying. The phythagorus distance function is making it quite slow and I shall try to find an alternative. The smoothing command also makes it quite a bit slower but I think this is nessacary otherwise the planet terrain looks like a chesboard.

Please look at the code and see if you can find anyways to improve speed:


Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 22nd Dec 2008 01:52
WOW. Take a bow man take a bow! wow. this is amazing. a few notes on the lod. When you draw away from the planet, the further and further you go the object becomes very distorted. (I KNOW that LODs are meant to do this... but it's appearance you may want to refine some how but I am so happy with it now!) LMFAO. This is great. Also, I want to see you incorporate multiple levels of tiles. Snow and so on. Or base a height differation based on the tiles distance from the center of the object. But I can wait to see that then. LOL Now I feel like a college school girl w/ a crush. MAKE it stop lmfao.

j/k Good work!

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 22nd Dec 2008 02:58
sorry for the 2X post. I was wondering if and when you had the time to shed some knowledge of the vertexdata commands and utilizing them, would you pass some knowledge to me. At the moment I am creating textures and objects for use further in the game. As for the regions, if I understood this better (your super nice work ) then I could utilize both systems. But I can't do that as I really have no knowledge what so ever w/ DBpro's vertex editing/manip. sys. If not I can look else where and still colab. But if I knew what I was dealing with, I could deal better myself Anyway and either way, that's friggen awesome!

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 22nd Dec 2008 08:22
Quote: "When you draw away from the planet, the further and further you go the object becomes very distorted"


I made the terrain tiles automaticly hide themselves when they are too far away. This prevents the terrain tiles on the otherside of the planet being rendered. Or, you might be refering to the zdepth fighting. Either way I plan to solve it by texturing the object with a texture of the land masses when you zoom out.


Quote: "Or base a height differation based on the tiles distance from the center of the object."


Not entirely sure what you mean by this, if you mean change make the altitude distance from the center then this is already achieved by the engine.


Quote: "I want to see you incorporate multiple levels of tiles. Snow and so on."


I was planning on changing the vertexdata diffuse value as you travel to the pole and equator to give the effect of climate variations. e.g. as you move to the poles they become whiter. I already have a system like this built and I have already identified all of the colours which go from lava planets to frozzen ice planets.


Quote: "that's friggen awesome!"


Thanks man, it took alot of frustraiting work to get it working but I feel as if it is far from done, graphics and speed need desprate upgrades and the code is still a bit messy. Thanks for helping me and commenting on the engine. How is your reigion engine going?


Quote: "I am creating textures and objects for use further in the game."


Creating objects and textures in DBP is really difficult. It is best to load them externaly and edit them if nessacary.


Quote: "I was wondering if and when you had the time to shed some knowledge of the vertexdata commands and utilizing them, would you pass some knowledge to me."


They are quite hard to get your head around in the begining but I think I now have a good grasp of them, not mesh memblocks yet though. I would be willing to teach you but it may take a little while. I'm going to do it a little later as I want to go have breakfast and this post is large enougth.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 22nd Dec 2008 14:47
Woopie. I took advantage of the Darkstudioâ„¢ offer and bought it, along with blugui and Dark AI. (Would you like my job lol) I am sure it will come in handy. I am creating textures externaly with the Texture maker you can buy here and The height from the center... I meant that your mountains and such will be great Thank you for agreeing to help.

The region system can only be completed once I have a reasonable way to implement a height map or something similar. (Which besides you and a few helpful pointers... I am still fumbling to understand and implement.) The only thing I had some trouble with was saving the location on the planet in which you last played. But I figured it out. When I can, I'll post something. However I am away from my main comp. now so I am without my DBpro oh the pain!!!

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 24th Dec 2008 23:45
I have been able to improve the speed drastically and have added some basic media and simple physics. I have now made it into the "Clayson Engine" the free LOD planetry engine.

It is not finished yet and I need to finish the vehicles as well as add a real physics engine. I have some experience in using Newton so I think I will use that. Please download the demo and give it a go.

Attachments

Login to view attachments
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 13th Jan 2009 08:42
I bow to you! This is awesome. Really man whew. I have abandoned the regional system I was designing. Now I have simplified my idea down to several easy but beautiful interfaces. One, the user enters the game and is positioned in outer space looking down on a planet. On this planet are several locations (dots/stars/whatever tickles you)you can click to start a new game. Once you've picked one, it loads the corresponding terrain and such. It's not the system I had in mind and I am still working on a procedural terrain system for the globe but all in all its a step for me... who bows to you

Now, as for the evolution. I have nearly scratched my god idea. You can play as a god... to another planet, once you've beaten the many stages (cell, tribal, creature and so on) and as for space, the Dark AI I purchased will help a lot. The only thing I really need some one to help me with is as I said before- the vertex commands in DBPro. Not that I haven't figured some of it out, but for roads and such I will need some understanding of such commands to create placible items and so fourth. But I am still bowing!

I started looking into shaders last week. I found a nice ocean shader through Nvidia® and have been tweaking it so the 3d 360° DDS file is replaced with the actual environment's reflection. I also have Blue Gui as well as tree magik and other things so what I create is limited only by creativity. Where are you now at this project?

Still bowing-
D.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 27th Jan 2009 22:56 Edited at: 27th Jan 2009 22:58
I have not been able to do too much work and I was kind of afraid this thread was dead (hence the long respond time). I experimented with a 3D tile based system but it seems quite obsolite as the tiles are not the same shape. I have also been trying to expand my new knowledge of vertexs to create an evolution editer (one could program a computer to use it). The body works on a simular system to spores version but currently lacks the interface. I expanded my Clayson engine to have some atmospheric effects, forests and some simple AI. However, my project was currupted and it needs salvaging. To be honest I don't care too much as I can salvage it and the code needs to be rewritten (it was getting quite unstable and messy).

My end result will hopefully be as follows:
> Players start as a single cellular organisum and must collect food to grow levels. When they reach a high enougth level the player gets to edit their creature.
> As the creature gets larger more experience is requried to grow levels and as the player updates the brain they must get to higher levels to reproduce and evolve.
> By the time the player is sufficiently advanced to use tool and start a civilization they are only evolving once every few days of play (much slower evolution).
> The player can construct their city and must fight against other species to become the dominant species on their planet.

A planet can have 25 different creatures. Each of these can have one nest / village. As well as 10 civilizations with 1 city and 3 villages each. A civilization can also command up to 3 armies.

As the player walks around the planet they will encounter creatures depending on nearby nests, cities and armies. If two enemy armies engage in combat the player can go there and see units from both sides fighting it out. However, these are just spontaniusly created units and the real battle is just the strength of each army getting reduced over time untill one is destroyed.
A simular system can be used to manage a planets ecosystem on a simple scale by comparing species strengths and proximaty of nests. Random mutations can be made at set periods and added to the mix and the end result should be evolution of the AI species. The really intresting thing is that the players actions acturly have an effect on the ecosystem. e.g. killing hundreds of wolves will make them extinct and so the computer will replace them with a random mutation of another currently existing creature.

I have plans for entering the space age but it would be wise to leave those till later considering this large work load.

The idea of a God game is appealing but I think this game style could be much nicer and more fun to play.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 28th Jan 2009 00:12
Here is a really simple way of simulating an ecosystem on a planet. Each of the numbers represents a strain of creature. The creatures randomly encounter one another based upon the proximity of their nests. A roll is take for their strength value. The victor gains 1 extra life and the looser loses one. Now, if a species is destroyed then a new strain of another species takes over (a star is placed next to the name). Run this simulation for a while and you will see that all of the species on the planet are decended from only a few of the original creatures and the rest have become extinct. What you are left with is the stronger creatures.
Obviusly this is not how evolution works, but for a game simular to ours it is a pretty simplistic way of allowing creatures to evolve over time without requiring much maths. All that needs to be done is to add an evolution editor (allowing edits to be made to the creature model) and a way to calculate the strength of these modifications.

Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 31st Jan 2009 11:41
Well when we get to making "parts," we can assign these objects Id's that tie to a value... this value determines strength and defense against other parts of this type or adds to a creature ID... this is done through evolution and/or the creature editor. As for the evolution editor- you just need to catergorize the body part objects in sections... such as arms legs and so on... you can add further detail to this and modify it in anyway you want.

I don't know how you'll call these body part points for lack of a better term, maybe apply with LUA scripts or something and call them through out the game... IDK. Hope you get it... I can't code all of it yet.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 31st Jan 2009 11:46
Say the ohject number is 1... then the part number is "strength = +1,"... the creature ID is the total of all points... so if you had three say, arms then- the total would be a larger number... depending on the total value of the creature ID and the amount of creatures... the enigne can determine whihc is greater to survive. Okay night night time.

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 31st Jan 2009 13:00
Yea - the details of such a system arn't really important untill the creator has been made. But something along those lines. I was going to make the editor have a vertebrai which can be bent or rotated. The plaeyr can then add an organ to each verterai such as an arm, head or leg. Dependign on the values set for this the species is stronger or weaker.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 31st Jan 2009 22:27
Oh and as a cool effect, (NOT FX) when you place a body part, you could- depending on a radius (1 unit) the body part's vertex's have, you could delete sections and weld them together... It's how maxis did it in spore

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 1st Feb 2009 01:21
Ah - that is called metaballs. It is avery difficult technic and very slow, one guy did it in Dark Basic but it was so slow that it was difficult to utalise. Plus, the problem is that the arms become glued to the body when they get close. This is not really a diserable effect when it happens half way down the arm or between the legs. However, if we could get it to do that where the limbs and body join it could be very nice.

Try and see what sort of evolution editor you can knock up and I'll do the same. I have a prototype one which I built ages ago. However, it is very limiting and I have found a much better way to mould the body simular to that of spores.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 2nd Feb 2009 23:01
In my own venture into this, I want to propose something to you... I may and probably will regardless, but it's a thought- In "Spore," the vertebra/spinal cord system relies on limbs and how they connect... IE, you can come up with anything simple and with some eye candy... pretty complex... But some aquatic life forms have no back bones or spines at all- and rely on the water's density to counter this. (like squids, octopus' jelly fish and so on.) I think I am going to try implementing a "location" or "niche" variable. This way, if a player decides rather then make a land animal, he/she can make an aquatic animal, or other type of animal- the vertebra system can change accordingly to what they chose. Now, how they act in the water is the trick... it may need some simple physics... or we can simply trick the player in how it "feels to be in the water."

Now, I know that you can't just "grow gills," but if you can integrate body parts into each character- say webbed feet being one... then fins... the creature(s) would then be more suited in the water... at the next migration, the nest is nearer to water... then gills are available if a creature/plant in the water is eaten. Then they could integrate completely into the land aquatica. I don't see why underwater cities can't form or why a sprite over the camera with high transparency can't act as a "water proof camera" effect... but this is just theory.

I will be seeing if I can integrate all of these ideas into my project STARTING with the creature creator. I also think that we should be able to externally (still in game) make creatures and save them in a directory. They could later be auto-gen. as other species when a player starts a new game. My dark AI is going to be a BIG help with this.

-Daryn

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 3rd Feb 2009 09:34
It would be possible to create non vertebra creatures, e.g. the backbone system could be replaced with a section system to create arthoropodes or the backbone could be hidden from the player so they can create invertebrates (the vertibrais can easily be scaled).

I'm not entirly sure what you mean by a "location" or "niche" variable but if you can program something with the freedom as you described then go for it.

As for the evolution. It doesn't have to be realistic, realistic isn't always fun. Make it so the player can change to gills but they first have to switch to amphibius. If the player makes the wrong choice over their mutation for that generation and dies before they reach level 1 then we could make it they get to redo their mutation for that generation.

The transparent sprite over the camera works really well. I did a simular effect a while ago. I used 4 sprites and scrolled them across the screen depending upon the players direction of movement. I also have a nice bubble effect which has many plains textured as bubbles going up to the surface. It looks quite effective with both effects and a bit of fog. You just need to make sure that the sprite is not too opaque as the the player will get frustraited at the limited vision.

Do you mean you want acess to the evolution eidtor via the main menu? If so then this is easily possible.

Earlier did you say that you had purchased tree magik. If so I would much apreciate it if you made me some low detail trees acompanied with a top down image and a side image of it them that I can create some pretty awsome forests for the game.

As for your Dark AI. I'm not entirly sure it will work properly on a planet as creatures don't move in 2D. However, you may be able to still use it.
Daryn Alsup
15
Years of Service
User Offline
Joined: 5th Jul 2008
Location: In your head... dun dun DUN!!!!!!!!
Posted: 6th Feb 2009 03:47
Okay well first I found a way to use the dark ai in 3d... simple add the height of each vertex or use the pick object/screen/vector commands as reference and do nearly the same thing with dark ai's 2d coordinates. If on an actual terrain... add the terrain height to the path per unit of movement. It's a bit of a spill on memory usage... so coming up with our own movement system may be a must... but zones, agressiveness and so fourth should be easier to do with D.AI... which some how reminded me-

I think we should post this under a new topic. Sphere/height map is now an invalid name/title for this thread- as we have since come up with alternatives. If you feel like posting it insead of myself, you're free too... but if you'd rather me... or want to pass the work to me , (j/k) say so and it shall be done. But I think we're not drawing the greatest amount of people who may have some tips UNDER the current name of our thread. Do you agree?

Jack and Jill went up a hill to fetch a pale of water... but Jill got tired of his s#%& so she shot him.
Lord Einstein
18
Years of Service
User Offline
Joined: 22nd Oct 2005
Location: Well here, of course...
Posted: 18th Apr 2009 02:38

Login to post a reply

Server time is: 2024-05-18 14:45:00
Your offset time is: 2024-05-18 14:45:00