Jump to content

  • Log In with Google      Sign In   
  • Create Account


Voxel-Engine | OpenGL + C++


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
12 replies to this topic

#1 Techieman   Members   -  Reputation: 123

Like
0Likes
Like

Posted 10 May 2013 - 01:07 PM

Hello,

I'm new here so I hope I didn't post it on the wrong subforum.

 

Well, I'm posting here because I've an question. A friend and I are making a game that's using OpenGL 1 and C++. 

The most significant part may be the voxel engine. That's my problem. I've no Idea that seems to be good.

Ideas:

 1) Generating Colored Perlin Noise maps for each layer and load map from this file

 2) Using the random-function provided by the Windows OS and generating map by these random values.

 

Is there a good way that YOU would recommend?

 

So, well, I hope you've some better ideas for me that could help us to manage this smile.png

 

Thanks Techie

 

EDIT: We're not / won't be using STL! 


Edited by Techieman, 10 May 2013 - 01:08 PM.


Sponsor:

#2 kauna   Crossbones+   -  Reputation: 2356

Like
0Likes
Like

Posted 10 May 2013 - 02:29 PM

EDIT: We're not / won't be using STL! 

 

Why not? You have something better?



#3 TheChubu   Crossbones+   -  Reputation: 4186

Like
1Likes
Like

Posted 10 May 2013 - 08:18 PM

EDIT: We're not / won't be using STL! 

I'm no C++ coder but not using the standard libraries provided by the development tools seems a bad idea.


Edited by TheChubu, 10 May 2013 - 08:19 PM.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

 

My journals: dustArtemis ECS framework and Making a Terrain Generator


#4 Lightness1024   Members   -  Reputation: 736

Like
0Likes
Like

Posted 10 May 2013 - 09:13 PM

If you want to use only OpenGL 1, you'll end up with a ... 1995 looking game... well. You could use CPU power to leverage that limitation for example by running marching cubes to polygonize your voxel cloud.

About STL... hm, you may check STL Port, EASTL and µSTL if you don't want to use your compiler's STL.

 

For prodecural generation, any random funciton will do, the quality of the fractal loosely depends on the quality of the base random function, it is much more dependent on the function that you apply above that random function, and most of the time the rand() will be called multiple times, completely hiding faults that the rand function may have.

If you still want super crazy random functions you can go check boost mersenne twister.

 

If you use a 3D perlin function, you'll end up with a level that looks like a cloud. 2D perlins generates interesting heightmaps, you could voxelize a surface following the heightmap and then modelize caves and cliffs manually from there...



#5 unbird   Crossbones+   -  Reputation: 4973

Like
1Likes
Like

Posted 10 May 2013 - 09:20 PM

This journal post of JTippetts might interest you.

#6 VladR   Members   -  Reputation: 722

Like
1Likes
Like

Posted 11 May 2013 - 04:25 PM

EDIT: We're not / won't be using STL!

Congratulations on this sound business decision ! If you are paid by the hour, you will certainly get rich !

VladR    My 3rd person action RPG on GreenLight:    http://steamcommunity.com/sharedfiles/filedetails/?id=92951596

 


#7 VladR   Members   -  Reputation: 722

Like
2Likes
Like

Posted 11 May 2013 - 04:39 PM


If you want to use only OpenGL 1, you'll end up with a ... 1995 looking game... well

..well that's still not as bad as, say, Minecraft.

 

Few, pre-shader games of yesterday:

unreal2.jpg

50474921.jpg

 

 

Quality Art Assets (if you can afford them) can go a really long way even on old tech...


VladR    My 3rd person action RPG on GreenLight:    http://steamcommunity.com/sharedfiles/filedetails/?id=92951596

 


#8 Satharis   Members   -  Reputation: 949

Like
0Likes
Like

Posted 11 May 2013 - 05:22 PM

If you want to use only OpenGL 1, you'll end up with a ... 1995 looking game... well

..well that's still not as bad as, say, Minecraft.

 

Few, pre-shader games of yesterday:

 

 

Quality Art Assets (if you can afford them) can go a really long way even on old tech...

I knock on Minecraft all the time, but, to be fair a voxel based game world would have much different technical constraints than the average FPS like unreal. There's arguably a lot more to draw and a lot less static geometry that you can use rendering tricks on. I highly doubt you could have taken a game like unreal and make it like minecraft while still maintaining the same look on that hardware.

 

These days, sure, it could probably look like that. Back then? Highly doubt it. They put a lot of work into optimizing those pretty levels.

 

Plus, as we all know, fps's are pretty much the mainstay of best graphics for a generation of consoles or tech. But still Minecraft looks the way it does due to developer choice not due to technical constraints, so it's a rather moot point anyway. Opengl 1 is the only thing at topic here and that would.. well, not scale as WELL with hardware as a modern version but certainly be much stronger than back then.


Edited by Satharis, 11 May 2013 - 05:23 PM.


#9 VladR   Members   -  Reputation: 722

Like
0Likes
Like

Posted 11 May 2013 - 05:45 PM

I knock on Minecraft all the time, but, to be fair a voxel based game world would have much different technical constraints than the average FPS like unreal.

Since we are talking about technical quality, I have to assume you are not talking about average gameplay, but about "average" technical excellence.

 

I couldn't disagree more.

 

You -clearly- have not experienced the technology shock from running the Unreal 1 for the very first time on your machine. Or you weren't really a strong gamer, so you might not really care at that time.

The technology Wow factor like that didn't happen more than 4-5 times in whole 3D gaming history. I'm pretty sure I did not experience a technology jump like that, since that time, due to the simple fact, that the difference in 3d effects for next games was merely incremental.

 

Not even shaders themselves brought such a wow factor. Not even Crysis (which was also just a relatively small difference to the then-next-best-looking game).

 

The performance and feature-set of Unreal1's SW rasterizer were absolutely mind-blowing. 3DFX renderer was certainly very nice an fast (but that was expected),  but the SW rasterizer was something ucomparable to anything else on the market at that time and for a very long time after that.


VladR    My 3rd person action RPG on GreenLight:    http://steamcommunity.com/sharedfiles/filedetails/?id=92951596

 


#10 VladR   Members   -  Reputation: 722

Like
0Likes
Like

Posted 11 May 2013 - 06:03 PM


I highly doubt you could have taken a game like unreal and make it like minecraft while still maintaining the same look on that hardware.

Uhm, no smile.png

 

Your gaming history must have clearly started way, way too late.

 

 

Ever played Commanche 1 ? You know, that first voxel helicopter simulator ? I played it on my AMD 386 DX 40 MHz in 1992.  Fourty Megahertz.

 

I used to play lots of flight simulators back then and it took almost 10 times a faster HW (and 3D cards) to come up with comparably better visuals, taking into account the difference in performance. Yes, the voxel renderer was that much ahead.

 

If you ever had a chance to play the level, where they enabled water reflections for the first time and flew through some narrow canyons and then played the next-best-looking game of that times, it would be like Crysis vs Wolfenstein 1 (yes, the one which ran on 80286).

 

I clearly remember how years went past, and although the quality of polygon rasterizers have been steadilly rising, yet it took way too many years to surpass the voxel quality of Commanche.

 

Talking about voxels, do you recognize this ?

Outcast1b.jpg


VladR    My 3rd person action RPG on GreenLight:    http://steamcommunity.com/sharedfiles/filedetails/?id=92951596

 


#11 Satharis   Members   -  Reputation: 949

Like
0Likes
Like

Posted 11 May 2013 - 07:30 PM

Since we are talking about technical quality, I have to assume you are not talking about average gameplay, but about "average" technical excellence.

I couldn't disagree more.

You -clearly- have not experienced the technology shock from running the Unreal 1 for the very first time on your machine. Or you weren't really a strong gamer, so you might not really care at that time.
The technology Wow factor like that didn't happen more than 4-5 times in whole 3D gaming history. I'm pretty sure I did not experience a technology jump like that, since that time, due to the simple fact, that the difference in 3d effects for next games was merely incremental.

I'm not.. sure what you mean here, what does that have to do with the way games of the genre are implemented?

Not even shaders themselves brought such a wow factor. Not even Crysis (which was also just a relatively small difference to the then-next-best-looking game).

The performance and feature-set of Unreal1's SW rasterizer were absolutely mind-blowing. 3DFX renderer was certainly very nice an fast (but that was expected), but the SW rasterizer was something ucomparable to anything else on the market at that time and for a very long time after that.

I'm confused how you got on the topic of "it was mind blowing" out of the topic of "making unreal look that good took a lot of technical refinement and rendering tricks. Trying to do a minecraft like giant voxel world in that same tech and hardware would be a nightmare."

Rendering of as many blocks as minecraft does, the lighting calculations and just the assortment of things that Minecraft does, dolled up in unreal 2 look even would likely perform abyssmally on that hardware. Minecraft is quite a bit more "low res" than unreal 2 and it still has performance issues(not just from the platform or the game type itself of course, I'm sure you could recode it for much better performance, but as a baseline.)

Uhm, no smile.png
 
Your gaming history must have clearly started way, way too late.

Well you're definitely making me feel young, more power to you.
 

Ever played Commanche 1 ? You know, that first voxel helicopter simulator ? I played it on my AMD 386 DX 40 MHz in 1992.  Fourty Megahertz.
 
I used to play lots of flight simulators back then and it took almost 10 times a faster HW (and 3D cards) to come up with comparably better visuals, taking into account the difference in performance. Yes, the voxel renderer was that much ahead.

I would hesistate(sort of) to say that most games made with their voxel space engine didn't hold a candle to unreal in terms of visuals. Of course that's kind of the point. That's a very early and yet advanced voxel engine and it still didn't have to deal with what Minecraft does(lighting updates and destructable terrain.) The main draw of voxels back then was the detail it added to terrain over things like basic heightmaps. It wasn't really about it being destructable like it is now.

And no I never played it.

If you ever had a chance to play the level, where they enabled water reflections for the first time and flew through some narrow canyons and then played the next-best-looking game of that times, it would be like Crysis vs Wolfenstein 1 (yes, the one which ran on 80286).

Seems a bit subjective but alright. Personally I think most graphical advancements looked amazing at the time. NES->Snes->N64 games looked astounding when I moved between them. N64 was probably my favorite console of all time, and yet now they look like garbage in comparison. Even though I still love thier visual style, the 2d games especially.
 

Talking about voxels, do you recognize this ?

Nope.

#12 Lightness1024   Members   -  Reputation: 736

Like
0Likes
Like

Posted 13 May 2013 - 08:34 AM

Talking about voxels, do you recognize this ?

I do ! its outcast. Though I always believed it was voxel based (like everybody) I just read on wikipedia that it is actually heightmap raycasting.

Also, a disagree that there were no Wow factors after the nintees, because I count Far Cry as the reference for technology shock in terms of visuals, for the 2000-2010 decade.

Unreal tournament 2003 had an interesting evolution as well, particularly as a successor of the somehow pure classic UT.

incidentally UT 2003 came full of visual noise that disturbs gameplay. That's why, along with counter strike source, I have considered skill-based shooting generation games dead. Like quake 3, CT and UT, because the minimalist design that is necessary for the brain to function at max speed (for aiming), would look ugly today.

(edit: also those graphics monsters never reached 85 FPS (meduim/good CRT) at this period, because CPU/GPU power was still evolving super fast and most people had outdated hardware to run these things at the pace were e.g. Q3 should run, to be competitive. some people even played at 125FPS)


Edited by Lightness1024, 13 May 2013 - 08:38 AM.


#13 Techieman   Members   -  Reputation: 123

Like
1Likes
Like

Posted 15 May 2013 - 01:05 PM

Well, some nice discussion, but I want to hold it short:

 

Thank you all for answering, even it's not all about voxel terrain generation ^^

It's knowledge, thought, and anything you know is good.

 

Unbirds link seems very interesting to me, I need to take time to read it  :)

 

 

Thanks Techie,






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS