Sign in to follow this  

Terrain project

This topic is 3580 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

First post after lurking for years! I'm going to make a terrain project in which I would like to implement all available terrain technology. This wil be written in Java/JOGL because I want to learn more about Java and there is not much source available in Java. Therefore I will release the source for every technique to the public domain! I want to do something like Shamus Young did.. Here is a list with the techniques I want to implement:
	rendering
		brute force
		geomipmapping
		geometry clipmapping (CPU)
		geometry clipmapping (GPU)
		chunked lod
		ROAM
		ROAM2
		geomorphing

	data
		heightmap
		displacement mapping
		procedural(perlin noise/fractal)

	texturing
		splatting
		multitexture
		procedural texture
		normal mapping
		parallax mapping
		megatexture

	atmosphere
		atmospheric scattering

	shadow
		shadowmap
		variance map
		LiPSM
		PSSM

	culling
		frustum
		occlusion

	techniques
		overhangs
		caves
		arbitrary view distance
		scenegraph

	lighting
		static
		dynamic
		ambient
		radiosity
		global illumination
Is there any technique I left out?

Share this post


Link to post
Share on other sites
Hi DeDi,

thats a huge TODO list ;-)

since you like to implement these techniques in Java I recommend to make a cross post to www.javagaming.org forums. I am sure there is a lot of community interest in your project.

here is my attempt to build a hybrid engine based on ROAM in java

(is geomorphing really a rendering technique? For me it is more a gimmick you may apply to almost every technique.)


>whats missing
-water
-think about planets too (real 3d is sometimes more difficult than "2d" terrain)
-just start coding, your list is already long enough ;-)

Share this post


Link to post
Share on other sites
Just a piece of advice rather than anything to do with your list in particular.

You're going to be implementing a lot of different techniques and getting the interface for all of those correct up front is probably not possible for an amateur coder (i don't know how good you are) so my single piece of advice would be to plan out what you feel is a reasonable interface/structure for you code and then implement one of those techniques from each section.

Then implement another one of the techniques. When you implement this second technique you may find that the initial interface you wrote doesn't suit the implementation of this and further techniques. Don't panic, this is the learning part ;) Refactor the interface to suit *both* techniques and you'll have learn't more than many others already.

Refactoring code that isn't suitable for the task is a large part of commercial games development, get used to it and don't be afraid of it.

Good luck

Andy

Share this post


Link to post
Share on other sites

This topic is 3580 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this