Weekly update #3: Terrain manipulation and foundation creation.

posted in the game for project unirule
Published January 20, 2017
Advertisement

O.k, so last week I made a post on Thursday detailing the progress I made with regards to terrain manipulation, but I only previewed it and never actually committed to a submit, so I just chucked it up to a bad day.

Over the past couple weeks I've been programming a lot, especially this week. I think so far I've logged 20hr of sit down time, which it's quite remarkable what I've been able to achieve in this short amount of time.

Some pictures to show what I've accomplished:
Screenshot from 2017-01-19 23-01-08.png
In the picture above you can see the world is divided into 68 shapes of proportional size and shape, kinda like a squished cross or something.
in order to maximise the detail and minimise the processing power I divided the world up into these shapes and then depending on where the camera is located determines which shapes are visible at a given time. So as you zoom around the world, very fluidly, it seems as though the whole world is loaded, but nah, just a few shapes. And of course the closer you zoom into the world the fewer and fewer shapes the system has to process. Nothing new in that respect, did this part months ago but, now I've created buffer geometry, not THREE.BufferGeometry, but rather geometry that is buffered into memory with a defined vertices and face count. the total vertices and faces never change, only the location of vertices and faces. Each of the 68 world geometries is paired with it's own buffer Geometry. From this buffered geometry comes dynamic user assets and also plants, minerals and stuff, as it stands, each shape should be able to host about 1000 unique objects of varying complexity, no Notre-Dame but sufficient for what I'm going for. Oh and each buffered geometry currently has two material types, plain and metal, but this can easily be scaled up. Very proud of this.

Screenshot from 2017-01-19 22-51-53.png
Now on to terrain manipulation So in the above screen shot we see a plot of land to be edited.

Screenshot from 2017-01-19 22-52-24.png
Now we see the land has been curved, it can also be flattened, the surface color has been changed just for reference, I'll likely keep some aesthetic aspect to this, but haven't settled on a color or idea yet.

Screenshot from 2017-01-19 22-53-04.png
Here we see a thin foundation laid over top the surface. This foundation has a plane from which all walls will orient themselves if a structure is to be built on this pad, as in all walls will be perpendicular to the surface of the foundation.

Screenshot from 2017-01-19 22-50-12.png
And here we see me playing around with the foundation menu and some of the 'solid' structures that are possible. the two shown and many others are possible with my dynamic asset creator. No need to resort to a predefined list of assets, you can make your own pyramid or what ever. Not only that, the AI will dynamically interact with your created assets as well, walking on their floors, climbing up their stairs, maybe even sleeping in one or two of them depending, but first the little buggers will have to build your masterpiece. The little spec in between the two structures, that is the size of an AI, of course you have a better view of it zoomed in more, but right now it's just an stretched box.

Please feel free to comment or ask questions.
:D

[ added content 27/01/17 ]

Previous Entry Orientation Vector
Next Entry Z-model
3 likes 6 comments

Comments

Navyman

I like the idea of the plane to give the buildings a local value to set walls and items correctly.

January 20, 2017 07:28 PM
Awoken

So rather than make a new Journal Entry I decided to just update this one with some pictures.

First, now if you modify the terrain you'll need to select a location for the displaced earth as seen in picture 1 and 2.

Secondly, I've made a very easy to use simple model creator. It's not finished but the idea is it can run in your browser and you can create content for this project, such as trees or animals or what ever. Once it's finished you'll be able to export to a format that can be uploaded into my project, and the model creator will also allow you to assign variation offsets for a given vertices so as to produce a like model but of a different variation. The model creator will give you a total vertices count and face count. The idea is to create a stylised tree or animal with as few vectors and faces as possible. If you view the man in my avatar that is sort of the style I'm going for. If anyone is interested in giving it a shot I'll send you the file and you can create content for this project. And since the expectations are low, literally a couple dozen faces and vertices, you don't need to worry about it being a next gen model.

Third, now with just a click of the button on a previous foundation you can extend a structure with a matched slope or offsets. This comes in handy because rather than trying to do the math in your head it will automatically adjust the slopes so you're creation looks proper. Like in the goofy pyramid on the bottom.

January 27, 2017 05:25 PM
Navyman

Think this should have been in a new entry. It would give you more room to expand and see how much attention this addition generates. Just a thought.

January 28, 2017 04:38 PM
Awoken

yeah I think you're right. What I'll probably do is finish up the model building program and then add a few more finishing touches to the foundation part and then do two separate posts.

January 29, 2017 03:22 PM
Embassy of Time

Interesting! As you noted on my own blog, we seem to be swimming in roughly the same waters. I was wondering if you have links to somewhere that you get your terrain generating algorithm from?? Also, is there blog post about what your game is intended to be about?

April 19, 2017 07:40 AM
Awoken

No, no link, but if you message me your email address I can send you a file that will work in your browser if you'd like.

As for a blog post, at the moment I'm creating a website to host this game, on the website I mention more about what the game is supposed to be about and hopefully I will be able to generate interest. But as of yet I don't have too much written on the specifics, I don't have an game playable, but once I do I'll have much more to talk about. Right now it's just 'it would be cool if...'.

April 20, 2017 01:36 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement