Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (527)
Games in Android Showcase (127)
games submitted by our members
Games in WIP (593)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 ... 3 4 [5] 6 7
  ignore  |  Print  
  LWJGL BlockWorld  (Read 32870 times)
0 Members and 1 Guest are viewing this topic.
Offline Longor1996
« Reply #120 - Posted 2013-04-03 19:52:23 »

Hi.

Does anyone here plan anything?

I may not always think much of the level of software engineering in much of the code that's slung around these parts, but that said: what's wrong with hacking just for fun?


There is nothing wrong with it!
I was just wondering, because it seemed like no one makes any plans at all for their voxel-engines.
A voxel-engine without any planning is going to be refactored a lot.
By having a good plan you won't have to refactor that much.

Im saying that only because no one should go trough the pain called "code refactoring".
But without any plan one will have to go trugh that many many times.

- Longor1996

PS: If this post seems somehow unfriendly/non-constructive, please mind that i have an ill, and im not in the best mood because of that.

Sorry for my bad English! That's because i am from Germany.
Offline Vermeer

JGO Coder


Medals: 16



« Reply #121 - Posted 2013-04-03 20:25:56 »

Hi Longor

Your question does not seem at all unfriendly. And you have made a good point about refactoring, it would be a reall mess to refactor my code into a full game.
Though I am having to go through that process with the code somewhat to make parts of it useable in another project. It is something that is invaluable on a big project.

I'm not sure if a post was removed, but sometimes getting something to work is just fun too!

Offline steg90

Senior Devvie


Medals: 1



« Reply #122 - Posted 2013-04-03 21:15:25 »

My two cents worth,

I've been a software engineer for 18 years, mainly C++, albeit not using OpenGL, so for me, this is a learning process, just having fun and many frustrations, but that is programming and that is what drawn me to it when I did my first degree, since then I've gone on to do a PhD in emotional engineering and I think that has damaged my brain some  Grin  So, doing a voxel engine is kinda fun, and most importantly, educational.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline HeroesGraveDev

JGO Kernel


Medals: 300
Projects: 11
Exp: 3 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #123 - Posted 2013-04-04 02:57:38 »

Just a random Question again:
Does anyone that makes a Voxel Engine make any plans?
It seems like everyone just want's to clone Minecraft as fast as possible,
ignoring all good programming principles while doing so.

Does anyone here plan anything?

- Longor1996

We're not really cloning Minecraft.
We're doing what any voxel engine based game should have.
And anyway, Minecraft isn't really what anyone here is aiming for. There are endless ways a voxel engine can go.
Voxel Engines have lots of varieties, and the points which you believe are from Minecraft are really used in most voxel engines.

In conclusion:

We may as well be cloning Infiniminer. Cool

Offline Vermeer

JGO Coder


Medals: 16



« Reply #124 - Posted 2013-04-11 20:19:40 »

Update

I will be now working mainly on my other project:
http://www.java-gaming.org/topics/3d-turnbased-rougelike-lwjgl/29229/view.html

However I will perhapse use this sandbox environment to test various effects, a cubeword project is ideal for that.
For my other game I will have a 3d partical system and this is a test in the blockworld environment to see how viable that would be.

<a href="http://www.youtube.com/v/CC-xB8DcA2s?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/CC-xB8DcA2s?version=3&amp;hl=en_US&amp;start=</a>

I'm not sure if im allowed to have 2 active threads?
Offline Mike

« JGO Spiffy Duke »


Medals: 86
Projects: 1
Exp: 6 years


Java guru wanabee


« Reply #125 - Posted 2013-04-11 20:28:40 »

The friction is a bit too low (looks like they are gliding on ice), other than that, nice explosion! Smiley

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline Vermeer

JGO Coder


Medals: 16



« Reply #126 - Posted 2013-04-11 20:43:30 »

The friction is a bit too low (looks like they are gliding on ice), other than that, nice explosion! Smiley

Hi yea I see what you mean. That's easy to change, just a float value. But It's just made me think, I ought to make them bounce about! Will get onto that tomorrow.

Thought your game was amazing, will keep checking it out. Smiley
Offline steg90

Senior Devvie


Medals: 1



« Reply #127 - Posted 2013-04-12 07:17:19 »

@Vermeer - your game looks awesome ;-)
Offline dime26

Senior Devvie


Medals: 2
Projects: 3
Exp: 5 years


Should traffic wardens be armed?


« Reply #128 - Posted 2013-04-12 09:52:08 »

The explosions are cool, I like where this is going, do you have a list of features that you will implement?

Interested what you might do with this.

Looks great
Offline Vermeer

JGO Coder


Medals: 16



« Reply #129 - Posted 2013-04-12 19:49:00 »

Explosion tests, including 2000 block explosion test.

<a href="http://www.youtube.com/v/be_wCOCp3uU?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/be_wCOCp3uU?version=3&amp;hl=en_US&amp;start=</a>

<a href="http://www.youtube.com/v/UkVlxca072o?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/UkVlxca072o?version=3&amp;hl=en_US&amp;start=</a>



@dime ty, I am only using this as a test project now to try things out for my other game.

@steg. Thank you, yours is looking good too. Smiley
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline steg90

Senior Devvie


Medals: 1



« Reply #130 - Posted 2013-04-12 19:56:05 »

Damn that is looking so good :-)  Very pleased for you and this is inspiring.

Did you do a new routine for the ray cast?

Offline Vermeer

JGO Coder


Medals: 16



« Reply #131 - Posted 2013-04-21 19:54:05 »

There has been some inspiring projects in this thread, so I wanted to delevlop this a little more!

Update

Infinite random terrain....and jetpack to view it with Smiley

<a href="http://www.youtube.com/v/pNd2sn1Fxow?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/pNd2sn1Fxow?version=3&amp;hl=en_US&amp;start=</a>



Offline steg90

Senior Devvie


Medals: 1



« Reply #132 - Posted 2013-04-21 20:54:15 »

Cool Vermeer,

Do you unload chunks when they are not in view and then load new ones?

Online matheus23

JGO Kernel


Medals: 113
Projects: 3


You think about my Avatar right now!


« Reply #133 - Posted 2013-04-22 20:30:05 »

@Vemeer:
Pro-tip:
Use another simplex noise layer to generate the grass colors Wink

See my:
    My development Blog:     | Or look at my RPG | Or simply my coding
http://matheusdev.tumblr.comRuins of Revenge  |      On Github
Offline Vermeer

JGO Coder


Medals: 16



« Reply #134 - Posted 2013-06-09 19:11:39 »

Update
I am doing some more work on this to learn some things I will need for my other game.

The biggest change is from VBO's to Display lists. That may sound odd, but FPS is much increased. My management of static VBO was probably not ideal. I can go into specific details if required.

I have also temporarily removed infinite terrain to improve the feel of everything and restructure the code to be more game orientated, in preparation for adding multiplayer support.

I am currently adding trees and shaders - in preparation for using my own textures. I also plan to use the UI from my other game, as its designed to work in any project.

I have added large scale water (that does not flow yet) but it feels like water, effect movement and vision, and I have added sounds too( but they didn't record, that will be sorted for next update). I'm thinking of joining GitHub soon and will put the project up there.

Do you unload chunks when they are not in view and then load new ones?


Yes, I had a fixed number of chunks, and moved data into them to overwrite un-needed chunks. (will put this back in soon)

@Vemeer:
Pro-tip:
Use another simplex noise layer to generate the grass colors Wink

Thanks for that, I will do that when I get around to biomes!

here is latest update:-

<a href="http://www.youtube.com/v/bVLixGQIwP4?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/bVLixGQIwP4?version=3&amp;hl=en_US&amp;start=</a>


Offline Oskuro

JGO Knight


Medals: 40
Exp: 6 years


Coding in Style


« Reply #135 - Posted 2013-06-09 19:33:16 »

We're not really cloning Minecraft.
We're doing what any voxel engine based game should have.
And anyway, Minecraft isn't really what anyone here is aiming for. There are endless ways a voxel engine can go.
Voxel Engines have lots of varieties, and the points which you believe are from Minecraft are really used in most voxel engines.

I agree with the assertion that voxel engines have many possibilities, my problem with what most people building them does is this:


Is it so hard to try and use textures that aren't an almost exact match to Minecraft's?

When at first glance voxel engines (even in development stages) look like Minecraft clones, then it is to be expected that people will think they are clones.

When engines like the one on this thread feel and behave pretty much like Minecraft, up to how broken blocks fall as spinning smaller versions of themselves, then the "I'm doing something different" defense wears thin.

Mind you, it is perfectly fine if you want to make a Minecraft clone as a way to learn stuff (I'm not one to speak of originality myself), but just don't get pissed when someone inevitably points it out. Smiley


But seriously, people, come up with a different standard block instead of dirt with grass on top.

Offline davedes
« Reply #136 - Posted 2013-06-09 20:36:00 »

A Minecraft clone is actually a pretty good way to learn OpenGL and 3D concepts. Smiley Who cares what the product looks like -- this is a programming forum, after all.

Offline Vermeer

JGO Coder


Medals: 16



« Reply #137 - Posted 2013-06-09 21:15:24 »

@oskuro

Thanks for your comments. I will take this in a new direction eventually, like I'm planning water shaders etc. I will try to make the graphics different!  But I do take what you mean. Actually part of the idea is replication, it's like having a specific goal, sure the problems of playability and what makes a good game is solved, but my quest is to try learn how to implement things. And being original, without the underpinning skills is a bit much for me.
In short, it's a way to focus and solve specific problems.

A Minecraft clone is actually a pretty good way to learn OpenGL and 3D concepts. Smiley Who cares what the product looks like -- this is a programming forum, after all.

Thanks Davedes, also thank you for the amazing tutorials on shaders. This is what I'm reading!
https://github.com/mattdesl/lwjgl-basics/wiki
Your normal maps in lesson 6 is awesome. Smiley


Offline Mike

« JGO Spiffy Duke »


Medals: 86
Projects: 1
Exp: 6 years


Java guru wanabee


« Reply #138 - Posted 2013-06-09 21:22:15 »

The biggest change is from VBO's to Display lists. That may sound odd, but FPS is much increased. My management of static VBO was probably not ideal.

My tests showed the same so it isn't as weird as you may think Smiley. Display lists are actually very well optimized in the drivers, so from a performance point of view when rendering is a toss up between the two. Sometimes the one is quicker and sometimes the other. The huge performance gain you get from VBO's are when doing something that updates. For example, in my game the fps drops with about 10-20% when using VBO's on my gfx card, but the time it takes to load in the landscape into memory is about 200-400% quicker.

If you want to support all kind of computers you can give the players the option what to use (like minecraft does). If not just take one and go with it, the difference in switching isn't big enough to rewrite everything.

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline Oskuro

JGO Knight


Medals: 40
Exp: 6 years


Coding in Style


« Reply #139 - Posted 2013-06-09 21:58:19 »

 Don't take me too seriously, just a pet peeve of mine that most voxel-games after Minecraft seem to use the grass on dirt block that is, literally, Minecraft's icon Wink


The reality is that the basic voxel engine will always be very similar to Minecraft until you get to developing more advanced content. Just steer away from creepers and everything will be ok.

Offline Simn
« Reply #140 - Posted 2013-06-10 06:53:14 »

@Vermeer You probably have answered this question, but did you use JBullet for the bouncing blocks that flew into the air when you destroyed a block?

Anyways, looks great, as your dungeon game! Cheesy

- Simn
Offline Vermeer

JGO Coder


Medals: 16



« Reply #141 - Posted 2013-06-10 14:35:04 »

@Vermeer You probably have answered this question, but did you use JBullet for the bouncing blocks that flew into the air when you destroyed a block?

No, I just used a few vector calculations..
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
//first I give the blocks random horizontal velocity at a random angle
//when its constructed

this.yVel = 2;
yRot = (float) Rand.nextInt(360);
hVelocity = (float) 1/50f;

//then I do the transformations on each entity like this in the update loop
for(Entity Ent : entities){
      //find the ground level for the entity  
      ground = getGroundLevel(Ent.getX(), Ent.getY(), Ent.getZ());
           
         
      //apply vertical calculation ie, its vertical velocity  
      Ent.setY((float) (Ent.getY()+Ent.getyVel()*TIME_STEP*2));
      Ent.setYVel( Ent.getyVel() +((float) (GRAVITY*TIME_STEP)));
         
      if(Ent.getY()<=ground+0.7f)   {
            Ent.setYVel(-(Ent.getyVel()/4));
               
            Ent.setY(ground+0.7f);
            Ent.sethVelocity(Ent.gethVelocity()/1.8f);
               
            }  
           
//move the enity horizontally
      Ent.setX(Ent.getX() + ((float) Math.sin(Ent.getyRot() * piover180) * Ent.gethVelocity()));
      Ent.setZ(Ent.getZ() + ((float) Math.cos(Ent.getyRot() * piover180) * Ent.gethVelocity()));
           
         
           
      Ent.tick();

//I also check if it needs removing, or if player is near it.


Thanks for your positive comments Smiley
Offline Vermeer

JGO Coder


Medals: 16



« Reply #142 - Posted 2013-06-10 19:22:41 »

Update

I finally made some textures! 2 colours of fog, sky box, movement tweaks.
Sounds still wont record Sad

<a href="http://www.youtube.com/v/8LZJfpM7MKM?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/8LZJfpM7MKM?version=3&amp;hl=en_US&amp;start=</a>
Offline Vermeer

JGO Coder


Medals: 16



« Reply #143 - Posted 2013-06-13 10:03:26 »

Update

Using shaders now. Added Scrolling water effect, and discarding fragments.
Added glass with translucency, and Leafs with transparency.
Water now scrolls slowly.

I can post the shaders if anyone would like them- but they are only basic.

<a href="http://www.youtube.com/v/hKn1Q-mU8EE?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/hKn1Q-mU8EE?version=3&amp;hl=en_US&amp;start=</a>

Offline RobinB

JGO Ninja


Medals: 44
Projects: 1
Exp: 3 years


Spacegame in progress


« Reply #144 - Posted 2013-06-13 19:18:54 »

Looking great!.
Opacity is really anoyying to implement, thumbs up that you managed to fix that.
Offline opiop65

JGO Kernel


Medals: 159
Projects: 7
Exp: 3 years


JumpButton Studios


« Reply #145 - Posted 2013-06-14 14:34:03 »

Oh yes please, post the shaders! Would be awesome to study them while I'm learning how to do shaders myself!

Offline Vermeer

JGO Coder


Medals: 16



« Reply #146 - Posted 2013-06-14 18:16:48 »

Yea, opacity can be a pain. Hopefully is sorted!

Shaders.....http://pastebin.java-gaming.org/aacfa371065

In your java program - to communicate with the shaders you use the uniform variables:-

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
glUseProgram(shaderProgram); 

   int loc = GL20.glGetUniformLocation(shaderProgram, "u_texture");
   GL20.glUniform1i(loc, 0);
         
   int loc1 = GL20.glGetUniformLocation(shaderProgram, "iGlobalTime");  
   GL20.glUniform1f(loc1, f);     //f is a float that is based on a counter or delta time
       
    //set scroll mode to 1 (scroll)
   int loc2 = GL20.glGetUniformLocation(shaderProgram, "scroll");          
   GL20.glUniform1i(loc2, 1);

//Do rendering stuff


glUseProgram(0); //stop using the shader program


           



This example instructs the shader to enable the scrolling for the water. You need 2 textures in the texture atlas adjacent to each other horizontaly.
Offline Vermeer

JGO Coder


Medals: 16



« Reply #147 - Posted 2013-06-20 11:24:00 »

Update

Added inventory, with mouse wheel selection, Workbench, Furnace + mockup GUI.
Added axe movement (not show in video)
Refactoring of code with comments.

<a href="http://www.youtube.com/v/emMQi-YiaAo?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/emMQi-YiaAo?version=3&amp;hl=en_US&amp;start=</a>
Offline sproingie

JGO Kernel


Medals: 202



« Reply #148 - Posted 2013-06-20 17:42:13 »

I think you should use a shader to make the whole world look like the Furnace GUI does right now Smiley
Offline NegativeZero

JGO Knight


Medals: 36
Projects: 2


Zero but not.


« Reply #149 - Posted 2013-06-20 22:14:25 »

TBH, I've never seen a non-random-gen voxel engine. I think it would be a really cool direction to take, as you could do a lot with it. And in my opinion, built worlds always look much nicer than otherwise.
Pages: 1 ... 3 4 [5] 6 7
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

PocketCrafter7 (12 views)
2014-11-28 16:25:35

PocketCrafter7 (7 views)
2014-11-28 16:25:09

PocketCrafter7 (8 views)
2014-11-28 16:24:29

toopeicgaming1999 (74 views)
2014-11-26 15:22:04

toopeicgaming1999 (64 views)
2014-11-26 15:20:36

toopeicgaming1999 (15 views)
2014-11-26 15:20:08

SHC (29 views)
2014-11-25 12:00:59

SHC (27 views)
2014-11-25 11:53:45

Norakomi (32 views)
2014-11-25 11:26:43

Gibbo3771 (28 views)
2014-11-24 19:59:16
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!