Jump to content
  • Advertisement

#0 Basic World Generation

GRASBOCK WindyOrange

720 views

This is my first Entry.

I have coded myself a custom engine in C using OpenGL. I have just fixed a lot of bugs regarding the World Generation resulting in this very smooth and giganting noise World.

The world is procedurally generated and can expand very far outside (depending on how much RAM you have). The Image attached shows the World that has been generated by exploration of 200 Entities in a few seconds. The World is made up of Chunks which are 16*16 Segments (or blocks might be more familiar to you). At the same time it has about 5 layers rendered ontop of each other giving the world the depth that it needs.

It is of course laggy when zooming out at this scale. 

2018_05_15_2038.thumb.PNG.73021e92a9c3783fee200574c5ed9a9d.PNG



2 Comments


Recommended Comments

would totally want to see more pictures, both zoomed in and out! looks really intressting.

Share this comment


Link to comment
10 hours ago, Tordin said:

would totally want to see more pictures, both zoomed in and out! looks really intressting.

I haven't changed much because i am busy thinking up algortihms; so I will only post this into the comment/

2018_05_16_2155.PNG

2018_05_16_2156.PNG

2018_05_16_2157.PNG

2018_05_16_2158.PNG

Share this comment


Link to comment

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
  • Advertisement
  • Advertisement
  • Blog Entries

  • Similar Content

    • By JustHusk
      Hi there,
      So i'm an inexperienced student learning games dev at college and im studying c#, in my spare time im trying to work on a text adventure game with a narrative. My issue is that i dont know how to make the decisions, well not simply anyhow.
      I could write out 50 variables for each decision to read from the player but that would become very tedious and too messy to even comprehend when im adding content. I was thinking of adding functions to hold each decision or area but im at a lack of knowledge on how to jump to a function or if it's even a good solution. I know i could use an array and each decision be a number but that just doesn't seem like a good solution to me either.
      Any advice would be appreciated and this whole topic might sound dumb to a professional so be understanding please haha.
      Thanks,
      Luke
    • By Ruslan_Abdullakh
      Hello there! I'd like to show you my new game - Hurry Birdie. It's an endless game where you have to dodge tree brunches and stones falling from above. Your birdie flies from side to side and speeds up when you press the screen.
       
      Features:   * Nice design; * You can unlock new birdies; * Easy to play; * Leaderboard; * Good timekiller.   Download here: iOS: https://itunes.apple.com/app/id1434970622?mt=8 Android: https://play.google.com/store/apps/details?id=com.abdullakh.hurrybirdie
    • By babaliaris
      Hello!
      I'm trying to understand how to load models with Assimp. Well learning how to use this library isn't that hard, the thing is how to use the data. From what I understand so far, each model consists of several meshes which you can render individually in order to get the final result (the model). Also from what assimp says:
      One mesh uses only a single material everywhere - if parts of the model use a different material, this part is moved to a separate mesh at the same node The only thing that confuses me is how to create the shader that will use these data to draw a mesh. Lets say I have all the information about a mesh like this:
      class Meshe { std::vector<Texture> diffuse_textures; std::vector<Texture> specular_textures; std::vector<Vertex> vertices; std::vector<unsigned int> indices; } And lets make the simplest shaders:
       
      Vertex Shader:
      #version 330 core layout(location = 0) in vec3 aPos; layout(location = 1) in vec3 aNormal; layout(location = 2) in vec2 aTexCoord; uniform vec3 model; uniform vec3 view; uniform vec3 projection; out vec2 TextureCoordinate; out vec3 Normals; void main() { gl_Position = projection * view * model * vec4(aPos, 1.0f); TextureCoordinate = aTexCoord Normals = normalize(mat3(transpose(inverse(model))) * aNormal); } Fragment Shader:
      #version 330 core out vec4 Output; in vec2 TextureCoordinate; in vec3 Normals; uniform sampler2D diffuse; uniform sampler2D specular; void main() { Output = texture(diffuse, TextureCoordinate); }  
      Will this work? I mean, assimp says that each mesh has only one material that covers it, but that material how many diffuse and specular textures can it have? Does it makes sense for a material to have more than one diffuse or more that one specular textures?  If each material has only two textures, one for the diffuse and one for the specular then its easy, i'm using the specular texture on the lighting calculations and the diffuse on the actual output.
      But what happens if the textures are more? How am i defining them on the fragment shader without knowing the actual number? Also how do i use them? 
    • By Josheir
      I'm having trouble with glew sharing some defines that I can't resolve.  Does anyone know of a way to get the following statements working instead of an include with glew (glew resolves the red squigglies too.)
      glColor3f(0, 1, 0.); glRasterPos2i(10,10); I really want to use a quick glut command for now.  The command uses the statements above.
      Thank You,
      Josheir
    • By PerezPrograms
      Hello everyone,
      While I do have a B.S. in Game Development, I am currently unable to answer a very basic programming question. In the eyes of OpenGL, does it make any difference if the program uses integers or floats? More specifically, characters, models, and other items have coordinates. Right now, I am very tempted to use integers for the coordinates. The two reasons for this are accuracy and perhaps optimizing calculations. If multiplying two floats is more expensive in the eyes of the CPU, then this is a very powerful reason to not use floats to contain the positions, or vectors of game objects. 
      Please forgive me for my naivette, and not knowing the preferences of the GPU. I hope this thread becomes a way for us to learn how to program better as a community.
       
      -Kevin
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!