Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (686)
Games in Android Showcase (198)
games submitted by our members
Games in WIP (758)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
   Home   Help   Search   Login   Register   
  Show Posts
Pages: [1]
1  Java Game APIs & Engines / OpenGL Development / Re: VBO Instancing tutorial? on: 2013-12-08 22:24:33
The code for the test app is open source. Although it's extremely simple compared to my game, it's meant to let me have a performance and code organization benchmark, something I can settle on and be happy with before updating my game.

The specific code that builds each chunk:

The VBO portion the chunk actually renders with:

There are some additional performance changes I want to make, mainly using indexed vertices instead since so may are duplicates, but I'm still encountering such poor performance that I'm not going to switch my game to this. However, since people tend to say VBO performance is excellent, I'm wondering what I've done wrong.
2  Java Game APIs & Engines / OpenGL Development / Re: VBO Instancing tutorial? on: 2013-12-08 19:35:24
After improving my block face culling in my test app, the rendering is MUCH better - enough so that the VBOs perform just as well as the display lists I currently use.

However there's still a full performance death when I render 16x16 chunks (each chunk as 16x16x16 blocks) instead of 15x16.

I don't understand why one extra row of chunks kills performance. I see nothing that explains it when I profile with visualvm, etc.

I have posted about this on stack overflow (with links to code)
3  Java Game APIs & Engines / OpenGL Development / Re: VBO Instancing tutorial? on: 2013-12-08 17:44:44
I see, ya that makes sense.

I started a few weeks ago on a 3d block world game, and in that I'm using display lists to cache the faces of exposed blocks in each chunk. This method works extremely well, in fact the only performance problem is some noise calculations.

However, I posted on stackoverflow because I've had an impossible time getting my block-picking ray casting working. It's always half a block off. Anyway, so many people have been recommending that I use VBOs instead of display lists but so far I'm still not convinced there's a big benefit. I've written an experimental app where I can play with VBO rendering and I've gone through a lot of learning trying to get them to perform well - I finally had things running adequately with 10x10 chunks of 16x16x16 blocks - but then when I try to bump it up to 20x20 chunks, the fps essentially slows to a crawl. I need to update this testing app with the same face culling logic the real app uses, because until I am really culling all faces, it's not a good performance measure.
4  Java Game APIs & Engines / OpenGL Development / VBO Instancing tutorial? on: 2013-12-08 16:24:47
I'm looking for java-specific tutorials or examples on using instancing for VBOs. I've found a few poorly documented tutorials for other languages, but they're less than helpful. I can't find anything specific for java because of how often the word "instance" is used to mean other things. At the most, all I find is a description without any real examples.

I've been building a test app where I render 20x20 chunks of a Minecraft-style game using VBOs. Trying to reach peak performance before I move forward with converting my actual 3d block world game.

5  Games Center / Archived Projects / Lifeform - A game of genetic and mechanical evolution on: 2013-11-21 22:40:39
I've been developing my first-ever game. It's getting to a point where it's playable and I need to start gathering feedback and bug reports. I'll soon be launching a kickstarter to hopefully fund an iOS version (and maybe additional pc/mac development).

Lifeform is a game about genetic and mechanical evolution. You evolve a 2d creature by reproducing with other creatures. The abilities you gain are determined by genetics. In addition, you can gather items and construct mechanical upgrades to supplement you genetics.

Watch a basic introduction on YouTube


Download launcher:



Note: Mac users, if Gatekeeper complains about an untrusted file, you'll need to temporarily disable Gatekeeper ( We'll be properly including our developer certificate before our big launch.

This launcher will download the latest version of the demo (and any updates we release) automatically, so this should be the only download required.

I'm still working on adding wiki content so please be patient while I get recipes and other content finished.

I appreciate all feedback and critique. Please keep in mind that it's my first game and the goal with this demo was to allow someone to play for 15 minutes or more.

6  Game Development / Newbie & Debugging Questions / Including slick-util in maven builds, and how to distribute? on: 2013-08-29 05:43:02
I'm converting a project to lwjgl and trying to use slick-util as well (fonts/images/sounds especially). There's no slick-util maven repo anywhere (nor slick2d itself anymore) that I can find, and I'm not sure how to properly get my maven-built jar to run with it. I've included local dependencies before using systemPath:


maven package
process runs without issue, but when I try to run the jar, it errors out with a ClassNotFoundException. There's no mention of slick-util in the manifest and I can't find out how to make my game load that jar properly.

Side question: how do I ensure when I distribute my applications, the game properly installs these libraries?

7  Game Development / Newbie & Debugging Questions / Re: Define fixed coordinate starting point on an “infinite” map on: 2013-05-31 05:16:28
I've been coding this game for a week solid, this is hurting my brain now - lol.

I think a big problem for me is that all of my code is based on the movement around the viewable area - so I'm trying to think about how best to integrate this.

The only way for me to know what coordinate the player has moved to is to track the distance from "spawn" they travel, right?
8  Game Development / Newbie & Debugging Questions / Re: Define fixed coordinate starting point on an “infinite” map on: 2013-05-31 04:14:03
Ok, help me walk through the thought process:

- New game starts. I generate terrain for a fix size and decide that the first tile will become known as "0,0"
- I use a method to properly convert world coords to screen coords, so that portion of the map can be seen
- Player moves to 1,000x1,000, saves the game. During save, I write to a file their coords - 1000x1000
- Loads the game the next day. I load the save game file, read the world coords
- Then again I covert those world coords to screen coords, and place the player back.

That sounds like it'll work, is that what you're recommending?
9  Game Development / Newbie & Debugging Questions / Re: Define fixed coordinate starting point on an “infinite” map on: 2013-05-31 04:07:17
Can you clarify what "make a normal world" and "fixed coordinates" mean? Right now, I'm generating terrain for the "viewable area" when the game starts and then new terrain as the player moves.
10  Game Development / Newbie & Debugging Questions / Define fixed coordinate starting point on an “infinite” map on: 2013-05-31 03:45:56
How do you determine world coordinates for a 2d top-down "infinite" terrain map? Screen coordinates that I use to render everything are relative the viewable frame, and once I add a save-game feature the players starting point should be where they were when they last quit...

So I have one relative-based coord system, a player starting point that will likely not always be the same - how do I come up with a system of "fixed" coordinates that can be used to describe locations on the map?

I've asked this in multiple places and so far, no one's had any ideas.

Example: Even though it's 3d, Minecraft generates world coordinates that are some how tied to a fix point of the map. They're not based on the player location and obviously don't depend on translating the screen coordinates.

Pages: [1]
roseslayer (568 views)
2016-08-06 11:43:29

roseslayer (524 views)
2016-08-06 09:43:11

xTheGamerCodes (596 views)
2016-08-04 15:40:59

xTheGamerCodes (591 views)
2016-08-04 15:40:24

orrenravid (937 views)
2016-07-16 03:57:23

theagentd (1014 views)
2016-07-11 14:28:54

Hydroque (1112 views)
2016-07-06 05:56:57

Hydroque (1068 views)
2016-07-03 08:52:54

GrandCastle (885 views)
2016-07-01 09:13:47

GrandCastle (647 views)
2016-07-01 09:09:45
Rendering resources
by Roquen
2016-08-08 05:55:21

Rendering resources
by Roquen
2016-08-08 05:52:42

Rendering resources
by Roquen
2016-08-08 05:50:38

Rendering resources
by Roquen
2016-08-08 05:49:53

Rendering resources
by Roquen
2016-08-08 05:32:39

Making a Dynamic Plugin System
by Hydroque
2016-06-25 00:13:25

Java Data structures
by BinaryMonkL
2016-06-13 21:22:09

Java Data structures
by BinaryMonkL
2016-06-13 21:20:42 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‑
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!