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.

Work in Progress / BlitzTerrain

Author
Message
Zotoaster
19
Years of Service
User Offline
Joined: 20th Dec 2004
Location: Scotland
Posted: 26th Jun 2009 18:17
Could you give some sort of explanation? Does it use some kind of quadtree structure or something? I'm also interested in how you actually deal with the object and the vertexes (in the broadest possible sense, as well as some detail).
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 26th Jun 2009 19:28 Edited at: 26th Jun 2009 20:12
Errm, it uses Karls Terrain Algorithm? To be honest, I have no idea what the algorithm is called. It could be quadtree, but it depends what that is.

I'm afraid that I cant give away any of the secrets behind BlitzTerrain. But as the newsletter says, Its a LOD Switching algorithm. I think that gives away how it works.


I'm going to be spending this weekend fixing bugs and experimenting with ideas I created quite a while ago.

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
AndrewT
17
Years of Service
User Offline
Joined: 11th Feb 2007
Location: MI, USA
Posted: 26th Jun 2009 20:45
Quote: "Does it use some kind of quadtree structure or something?"


The LOD itself seems to be fairly simple--I think he divides the terrain up into several sectors, then generates LOD levels for each sector. Each sector is set to a certain LOD level depending on its distance from the camera.

However then you end up with holes like this:



And so extra vertices must be generated to seam the edges together:



i like orange
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 26th Jun 2009 21:34
Textur mode 0 now works!

Fixed 3 bugs!


Andrew T, yep, you have your nail in the right place!

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 26th Jun 2009 22:02
Quad Rotation is finnished!!!

Im getting some screenshots and explanation ready for you...

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 26th Jun 2009 22:22
Have you ever seen this annoying effect?






This is caused by the tiles rotation. The bigger the tiles, the more annoying this becomes. So ive developed a simple algorithm called Quad Rotation. This calculates the best way the quad would look and rotates it to that way. Getting rid of this annoying effect.






Another cool thing about Quad Rotation, is that it makes your wireframes look more interesting.




See how the tiles face the direction of the slope?

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 26th Jun 2009 22:34
After some hovering around, I have found another problem which quad rotation fixes.

Before:




After:



New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
draknir_
18
Years of Service
User Offline
Joined: 19th Oct 2006
Location: Netherlands
Posted: 26th Jun 2009 22:49
Very, very impressive work. I'm waiting for a GDK version, but when that gets released, I'm all over this. I believe this will be pretty much the ultimate solution for DBP/DGDK terrains.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 00:13
draknir_, Thanks

Its my older brothers birthday tomorrow. And my younger brothers the day after. So I may not be able to work a great amount over the weekend.

I have a really small list of changes I have made. So the C++ conversion will be quite quick this time.

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 27th Jun 2009 00:50
That rotation bug was slightly annoying, glad that's fixed!



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 01:16 Edited at: 27th Jun 2009 01:18
Its not a bug, its a feature. Advanced terrain does not fix it. This really [beep] me off. So now I or anyone else no longer have to be [beep] off by it. I'm glad it worked first time and took no longer than 5 minutes to code.

I've fixed alot of the bugs in 1.5 and I think 1.5a is almost ready for release. I'm really surprised of this because I thought that it will take until next week to get rid of them all. Pinholes are still there but alot less than there was in 1.4 (they were actual lines back then).

Im going to start working in a shader soon, that will normal map the terrain, to keep the detail in the low detail LOD levels and multitexturing. If all that's possible, then I will be very happy .


Heres the list of bugs i posted yesturday

pinholes are back! [NOT FIXED]
occasionally getting a seam pop through [FIXED]
Texture mode 0 doesn't work at all [FIXED]
Crash when any other LOD level but 4 is used (so basically, you must run 4 LOD Levels) [FIXED]
VRAM usage higher than DBPro version. (Caused by conversion errors, I had to make it work ) [FIXED]

4/5 bugs

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 27th Jun 2009 01:25
Well, the bug that was fixed by rotation anyway.



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 01:33 Edited at: 27th Jun 2009 01:35
1.5a is complete!!! And its alot better than 1.5 (bug wise). Just incase this is another 1.5 though, I'm going to release it to the beta testers for 1 day. The binary will be released tomorrow afternoon if the bug count is low and there are no crash bugs.

EDIT: make that one hour, with plenty of tea, I can test all the features in that time.

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 01:53 Edited at: 27th Jun 2009 02:06
BlitzTerrain 1.5 will be released in 7 minutes!

Get it here:
http://devstorm.phpbbnew.com/viewtopic.php?f=24&t=38&p=75#p75


EDIT: 1.5 IS NOW AVAILABLE FOR DOWNLOAD!

BlitzTerrain is no longer in Beta stage! However, help files and demos still need updating. Ill be working on those next.

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 27th Jun 2009 02:13
I'm on it .



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 02:25 Edited at: 27th Jun 2009 02:26
Attached is the first beta of the new demo system

Includes 5 demos

TerrainWithLOD
TerrainNoLOD

LargeTerrainWithLOD (needs a texture)
LargeTerrainNoLOD (needs a texture)

AdvancedTerrain Demo (for comparison)


Please feel free to use any bit of code you want!

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.

Attachments

Login to view attachments
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 16:46 Edited at: 27th Jun 2009 16:49
Just invented a brand new algorithm.

Its a brand new structure to terrain engines, allows much less vertexbuffer usage and CLOD as well as all the other features inside BlitzTerrain. Ill be adding this feature next.

It will require a full rewrite of UT BuildTerrain, Sector Generation and the anti seam system. but the increase in quality will make it pay off. It will also give me a filetype to use for terrains.

More info will be released when I've finished developing it. It will take up to 1 month to complete (estimate).


Currently, the exclusion system doesnt exclude vertices, they will be excluded in the new structure.

Also, the LOD Levels only support that LOD Level throughout the sector. Making high lod levels have very small tiles where the detail is not needed. This will be fixed and the FPS increase will rocket high. - I think this system is called CLOD.

Much less RAM usage, Always a plus.

New specs: Nvidia Geforce 9600GS 768MB, AMD Anthlon x64 X2 4000+ (2.6GHz Dual core), 3GB DDR2 800MHz RAM and a big hard drive.
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 27th Jun 2009 17:42
@kaedroho

Is there anywhere I can pick up V1.04 again? I just installed 1.05 and now Fields is crashing with a "Fields.exe has encountered a problem and needs to close" error. I've made some major changes to the code, so it might not be BlitzTerrain, but I need to check.



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 27th Jun 2009 17:51 Edited at: 27th Jun 2009 19:38
Get it here: http://www.mediafire.com/?mhzzoknzw0d


You guys would be impressed what can be done with this new feature. It will be like a super version of quadtree. Except it will beable to make different shapes and sizes of tiles. Giving even more speed than the well known quadtree algorithm.

BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 28th Jun 2009 02:01
Thanks - I reverted to that version and all works fine now. I'll try to track the problem.



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 28th Jun 2009 02:19 Edited at: 28th Jun 2009 02:23
Also should warn you that none of the demo downloads on the first page are working - they link to some random site with lots of ads and popups, and then a message saying to go back and refresh the page.

EDIT: Me bothers you again . Do you have any demos that are tried-and-true with the newest version I can check out?



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 02:27
Yes, about 6 posts up ^^^

Posted: 27th Jun 2009 00:25

BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 28th Jun 2009 02:37
Whups . Well, anyway, that demo does not work either. I get the same "BlitzTerrainDemos.exe" has encountered a problem and needs to close. We are sorry for the inconvenience." Shows up right after the compile finishes, before any sign of the program shows up on screen. It also happens if I just run the compiled EXE.



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 02:44 Edited at: 28th Jun 2009 02:47
I did have that problem just before I released the dll. But I fixed it then recompiled. I wonder if I released the right one...

EDIT: Correct dll was released. This is a little odd...

Could you upload the compiled exe? so we can see if its your dbpro or blitzterrain messing up? (basically, if it doesnt work on my comp then its DBPro)

tschwarz
19
Years of Service
User Offline
Joined: 13th Feb 2005
Location: 127.0.0.1
Posted: 28th Jun 2009 04:19
All 5 demos run fine for me, other than the known issues like pinholes. Looking forward to the final release once you have completed it.
Diggsey
18
Years of Service
User Offline
Joined: 24th Apr 2006
Location: On this web page.
Posted: 28th Jun 2009 13:40
@kaedroho
I downloaded the demos, and they are very good! Even when I put the camera in the worst possible position on the largest terrain I still got a steady 60 FPS.
I'd love to see some demos of the more advanced features

A few suggestions (I don't know how possible they are with your system):
1) Optionally don't apply LOD to the very tops and bottoms of terrain peaks and dips, because it is noticeable when they change.
2) Alter individual tile LOD levels based on the change in slope, so when the slope changes are more dramatic, more detail is used (would be a good thing to precalculate).
3) (This might already be possible) add a command to save all terrain information to a file, so that the loading function can just load the whole thing in as a huge block very quickly.

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 13:56
Quote: "Optionally don't apply LOD to the very tops and bottoms of terrain peaks and dips, because it is noticeable when they change."


This might be possible with Sector Detail. Changing the distances of LOD for each individual sector. (WIP)


Quote: "Alter individual tile LOD levels based on the change in slope, so when the slope changes are more dramatic, more detail is used (would be a good thing to precalculate)."


This is in WIP. Ill add this into my new "QuadMapping" system. Which is basically a format for storing internal data. QuadMaps can also be saved out and loaded.

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 18:18 Edited at: 28th Jun 2009 18:50
Working on the help files today.

So far, ive changed every command to have the BT prefix at the beginning and also added the command with prefixs in "syntax".

Im now working on adding the 19 new commands including all the RTMS commands.

Later, ill add some info pages to help people get started.

Ill also link it to the ini file so F1 will work. I will also make an offline copy to put with the dll

BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 28th Jun 2009 20:13 Edited at: 28th Jul 2009 22:03
Here's the compiled EXE of the demo you posted June 27th.
Edit: Removed!

Quote: "Im now working on adding the 19 new commands including all the RTMS commands."

Yay!



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 21:08 Edited at: 28th Jun 2009 21:11
Quote: "Quote: "Im now working on adding the 19 new commands including all the RTMS commands."
Yay!"


I meant the helpfiles.


Helpfiles are done! Find them here:

http://technology.blitzwerks.co.uk/BlitzTerrain/Help/




BmacZero. Try updating DBPro. Its not found one of the functions which was added in a later release.

Diggsey
18
Years of Service
User Offline
Joined: 24th Apr 2006
Location: On this web page.
Posted: 28th Jun 2009 21:31
I'm just being picky, but shouldn't 'HigherTerrain' be 'RaiseTerrain' (raise is the opposite of the verb 'to lower')

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 21:59 Edited at: 28th Jun 2009 22:00
lol, I've been getting the exact same thing from Obese87 here: http://forum.thegamecreators.com/?m=forum_view&t=153168&b=2

My english is bad... and its getting bader...

Diggsey
18
Years of Service
User Offline
Joined: 24th Apr 2006
Location: On this web page.
Posted: 28th Jun 2009 23:19
Quote: "My english is bad... and its getting bader..."

lol, I take it that was intentional

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 28th Jun 2009 23:23
Well, half and half. Its what I usually say, but I know its wrong.

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 29th Jun 2009 20:38
No updates today I'm afraid. I've been tutoring some people today.

James H
17
Years of Service
User Offline
Joined: 21st Apr 2007
Location: St Helens
Posted: 30th Jun 2009 14:59
Any chance you can make an offline version of the helpfiles? I am currently only able to access the internet via my local library for a limited time - I`ll be lucky if this post makes it...
Internet is very slow for a few sites from here because of the number of networked machines and the libraries ability to employ someone who knows exactly what they are doing.
The Wilderbeast
19
Years of Service
User Offline
Joined: 14th Nov 2005
Location: UK
Posted: 30th Jun 2009 15:04
If I am not mistaken the latest download includes the offline help files - unless it is just a frame with the online version embedded.

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 30th Jun 2009 15:12
Quote: "Any chance you can make an offline version of the helpfiles? I am currently only able to access the internet via my local library for a limited time - I`ll be lucky if this post makes it...
Internet is very slow for a few sites from here because of the number of networked machines and the libraries ability to employ someone who knows exactly what they are doing."


Sure, the on line help files are currently not complete. Were just beta testing them.


Quote: "If I am not mistaken the latest download includes the offline help files - unless it is just a frame with the online version embedded."


I think they were in the version I sent you. But I removed them because they were way out of date when the release was made.

CuCuMBeR
21
Years of Service
User Offline
Joined: 11th Jan 2003
Location: Turkey
Posted: 30th Jun 2009 15:13 Edited at: 30th Jun 2009 15:27
errr...i just downloaded the latest thing, but there are no projects to run in the rar file?

EDIT: oh okay, i found them in a seperate post above.
Ran them all, and it looks all flawless.
with my work laptop which is not made for 3d stuff i get 39fps with the huge terrain.

with my monster desktop i get fps of 1800+

good work, congrats.

Do we have to pay for this beta for commercial/non-commercial use or is it freE?

There is always one more imbecile than you counted on.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 30th Jun 2009 15:16 Edited at: 30th Jun 2009 15:17
As I mentioned earlier. I'm completely redoing them. The current 1.5 dll will become the full release dll when I've redone all the help files and demos.


There was a beta of the new demo system posted earlier.

Posted: 27th Jun 2009 00:25 (BST)

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 30th Jun 2009 15:59 Edited at: 30th Jun 2009 16:00
Just fixed the culling bug with multiple cameras.

Now I just got to fix those pinholes then BlitzTerrain is bug free!

CuCuMBeR
21
Years of Service
User Offline
Joined: 11th Jan 2003
Location: Turkey
Posted: 30th Jun 2009 17:01
EDIT: oh okay, i found them in a seperate post above.
Ran them all, and it looks all flawless.
with my work laptop which is not made for 3d stuff i get 39fps with the huge terrain.

with my monster desktop i get fps of 1800+

good work, congrats.

Do we have to pay for this beta for commercial/non-commercial use or is it freE?

There is always one more imbecile than you counted on.
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 30th Jun 2009 18:07 Edited at: 30th Jun 2009 18:17
The free release is allowed for commercial and non commercial uses free of charge. Crediting the author is not required.

1.5 is a beta of the free release so the same rules apply.


EDIT: I'm close to finding the solution to the pinholes. I now know that most of them appear on LOD seams. Possibly, my new LOD seam code is very slightly inaccurate.

CuCuMBeR
21
Years of Service
User Offline
Joined: 11th Jan 2003
Location: Turkey
Posted: 2nd Jul 2009 16:49 Edited at: 2nd Jul 2009 16:56
I have one request.
first of all, please indicate if the solution is already out there but i cant see it.
here is the part of code i use at the end of building terrain:



Thing is, when i refer to "ter" it positions only the first created object, it doesnt position, rotate or set values for every object created. Thus object size x() command(s) also return values for the first created part only, not the whole thing.

I would like it to position the whole thing according to, and the object size commands to return the total size, not one part.

EDIT:
Nevermind, i found there are commands to set the position of the terrain and get the size of it.

Could you add couple more commands involving rotation too?

There is always one more imbecile than you counted on.
BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 2nd Jul 2009 20:30
I reverted to DBPro V7.4 b7c and all seems to work fine now .



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 2nd Jul 2009 21:50
I reverted to DBPro V7.4 b7c and all seems to work fine now.

It works fine for me on the latest version. It appears to be a problem with the 'get display width' command. Which is present in both versions.


Airslide
20
Years of Service
User Offline
Joined: 18th Oct 2004
Location: California
Posted: 3rd Jul 2009 00:16
Quick request - if you do this, I'll jump on it when it's available for purchase

Basically, could you make commands to flatten an area of the terrain to a specific height, with optional smoothing? An option for doing this with a rectangular shape rather than just a spherical one would be nice too.

The reason I ask is because the project I am currently drafting up looks to be something similar to say, Novalogic's older Delta Force series. Basically, I'll have a big, natural terrain to work with, and then the mission editor will be in charge of placing objects such as buildings. It'd be nice if I could flatten out the area the building takes up at load time so that I don't need to re-do the heightmap every time I add/remove a building, and it also makes it a lot easier for users to make custom content that looks nice

kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 3rd Jul 2009 00:22
Yeah, I have this on the list for new brush commands.

Find the thread here: http://devstorm.phpbbnew.com/viewtopic.php?f=24&t=56


BMacZero
18
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 3rd Jul 2009 00:22
Quote: "Basically, could you make commands to flatten an area of the terrain to a specific height, with optional smoothing? An option for doing this with a rectangular shape rather than just a spherical one would be nice too."

That would be very handy for me also, although I'm sure one could write a DBP function with the RTMS commands to do this.



Diggsey: I have a spine and memory, but one memorable guy says he hates me. What am I?
kaedroho
17
Years of Service
User Offline
Joined: 21st Aug 2007
Location: Oxford,UK
Posted: 3rd Jul 2009 00:24
Yeah, all the brush commands are possible to do with 'set point height' and 'get gound height'. I just want to save people time from writing their own brushes.


Login to post a reply

Server time is: 2024-11-23 10:53:31
Your offset time is: 2024-11-23 10:53:31