Java-Gaming.org Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (804)
Games in Android Showcase (237)
games submitted by our members
Games in WIP (867)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 ... 113 114 [115] 116 117 ... 216
  ignore  |  Print  
  What I did today  (Read 3630946 times)
0 Members and 7 Guests are viewing this topic.
Offline Roquen

JGO Kernel


Medals: 518



« Reply #3420 - Posted 2015-12-17 01:42:36 »

Offline SHC
« Reply #3421 - Posted 2015-12-17 01:43:40 »

Published WebGL4J into maven central, version 0.2.7 is uploaded.



I'm now pretty excited.  Roll Eyes

Offline ShadedVertex
« Reply #3422 - Posted 2015-12-17 02:06:02 »

SHC, that's aweosome! Congrats!

I started work on a voxel engine I've been planning on making for quite some time now. It's going well enough, and I'm getting the hang of LWJGL Cheesy
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ra4king

JGO Kernel


Medals: 508
Projects: 3
Exp: 5 years


I'm the King!


« Reply #3423 - Posted 2015-12-17 07:01:28 »



For folks who don't get this beautiful pun: this picture is of a spoiler, which is goes on the back of a car to stabilize it:


So.... Star Wars spoiler... Grin Grin Grin

Offline ShadedVertex
« Reply #3424 - Posted 2015-12-17 14:55:50 »

I just finished implementing my very own algorithm to procedurally generate terrain! It's not using Simplex Noise or Perlin Noise. It's really my own algorithm, completely and absolutely.

Here are a couple of pics for you good people:




The first image shows a 25x25 world.
The second one shows a 35x35 world.
They run at 95 FPS and 45 FPS respectively.

I might be able to run a 64x64 world, but the calculations take pretty long and it would take maybe half an hour to load a 64x64 world.

Offline Longarmx
« Reply #3425 - Posted 2015-12-17 15:52:33 »

Are you doing any rendering optimizations yet? (i.e. adjacent face culling, frustum culling) That 45fps should be quite a bit higher if you are.

Offline KaiHH

JGO Kernel


Medals: 787



« Reply #3426 - Posted 2015-12-17 16:56:39 »

As a programmer I always dodged and avoided artwork whenever possible. But now it's time to bite the bullet and learn it!
My first low-poly tree model:

Followed this great Blender tutorial for it.
And I have to say, using Blender is really dead simple. The most crucial part is to imagine what available transformation steps are necessary to get from a primitive cylinder to something more elaborate. But for now that part is taken care of by guided tutorials.
Btw: edge loops in Blender are awesome! Smiley
Offline Slyth2727
« Reply #3427 - Posted 2015-12-17 18:34:27 »

snip

I have to say it... dat noise on the shadow.
Looks good though!
Offline ShadedVertex
« Reply #3428 - Posted 2015-12-18 02:34:07 »

Are you doing any rendering optimizations yet? (i.e. adjacent face culling, frustum culling) That 45fps should be quite a bit higher if you are.

I'm doing frustum culling, but not back face culling.

I haven't done any optimizations at all. Right now the number of draw calls are twice the number of blocks, because for every block I have to draw the block itself AND its outline. That's probably why the FPS isn't so great.
Offline Longarmx
« Reply #3429 - Posted 2015-12-18 03:49:48 »

I'm doing frustum culling, but not back face culling.

I haven't done any optimizations at all. Right now the number of draw calls are twice the number of blocks, because for every block I have to draw the block itself AND its outline. That's probably why the FPS isn't so great.

Ah, there's your slowdown: Roughly 85,000 draw calls per frame Pointing

Also, I wasn't referring specifically to back-face culling (though you should add that as it is dead simple). I was referring to not rendering faces that were directly adjacent to other cubes (think of a face sandwiched between two cubes) and thus could not be seen from any angle.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Ecumene

JGO Kernel


Medals: 200
Projects: 4
Exp: 8 years


I did not hit her! I did not!


« Reply #3430 - Posted 2015-12-18 05:34:47 »

I haven't done any optimizations at all. Right now the number of draw calls are twice the number of blocks, because for every block I have to draw the block itself AND its outline. That's probably why the FPS isn't so great.

Are you using VBOs? Do some batching, stick all those vertices for the entire world into one buffer then you only have to do a single draw call! (Or two in your case) Then do a simple calculation on each block to find if there are blocks on all sides, then just don't add it to the buffer. If you want to get fancy, check each side of the block to see if there are neighbors for that side and not add that face either.

When the world changes by blocks being added / removed, update the world batch.

The CPU is the bottleneck here.

Offline ShadedVertex
« Reply #3431 - Posted 2015-12-18 10:56:37 »

I have no idea how I'm supposed to batch all those VBOs into a single one. I optimised the rendering process by rendering only the blocks which are exposed. Out of sight blocks won't be rendered.

Also, the problem right now is the generation time -- it takes roughly an hour and 25 minutes to generate a 50x50 world. That's the problem with my algorithm. It looks natural, but it's really, really slow.

EDIT: I also optimised the generation process to drastically reduce the number of objects created during the smoothening process.
Offline KaiHH

JGO Kernel


Medals: 787



« Reply #3432 - Posted 2015-12-18 11:03:11 »

Just learnt about rigging/armatures/bones and added a two-bones armature to the tree above. Damn this is fun, although weight painting is touchy to get the desired result. Now, the same tree from above waving in the wind. And three trees with low-poly hills and stars. Smiley
Offline KaiHH

JGO Kernel


Medals: 787



« Reply #3433 - Posted 2015-12-18 13:02:52 »

I have no idea how I'm supposed to batch all those VBOs into a single one.
First, you build one large ByteBuffer which can house all vertices of all the cubes of your chunk.
In a first step, without adjacent face removal, you then just put the eight corner vertices of all the cubes that make up your chunk into that ByteBuffer. And accordingly you build up the index/element buffer with the 36 indices per cube. Simple as that.
If you don't use an index/element buffer right now, you then just insert the 36 vertices per cube for all cubes in your chunk.
Don't view your single cube VBO as "atomic". You can always procedurally build the vertices and indices/elements that make up a cube and store them in a ByteBuffer in sequence.
In a second step, things can get a little bit more elaborate by using the index/element buffer to share the four vertices that the common face of two adjacent cubes have in common, and then not duplicating those vertices in the VBO anymore. This however requires a bit of math-fiddling-around to compute the right index of one vertex per cube-face. If your procedural mesh generation is consistent, though, that is easy.
Offline ShadedVertex
« Reply #3434 - Posted 2015-12-18 13:05:14 »

I'll try that out, definitely. Thanks, KaiHH Cheesy Right now, though, my focus is on trying to reduce the amount of time the world generation process takes.
Offline Kefwar
« Reply #3435 - Posted 2015-12-18 15:51:01 »

I published my website. http://kefwar.xyz/ Cool

Ofcourse I have not made it all today. It is running on my own CMS and is mobile responsive. No external libraries used, not even jQuery.

Offline sazkul7c1

Junior Newbie


Exp: 3 years



« Reply #3436 - Posted 2015-12-18 17:02:30 »

"Not even JQuery"

You are a brave man considering how many JS quirks the browsers have.
Offline Ecumene

JGO Kernel


Medals: 200
Projects: 4
Exp: 8 years


I did not hit her! I did not!


« Reply #3437 - Posted 2015-12-18 20:04:10 »

I published my website. http://kefwar.xyz/ Cool

ayy .xyz represent
http://ecumene.xyz
EDIT: It's down again for now. I'm installing my new poweredge server today!

Offline theagentd
« Reply #3438 - Posted 2015-12-19 00:35:39 »

I wrote a small method that loops over glIs***() functions with all IDs in a certain range to count how many active objects there are of each type. It's useful for finding memory leaks.

When I start the Insomnia engine test program:
Quote
OpenGL object counts
    Textures:  79
    Samplers:  0
    FBOs:      30
    RBOs:      0
    Buffers:   58
    VAOs:      70
    Shaders:   145
    Programs:  67
    Pipelines: 0
    Queries:   740
    TransFeed: 0

After switching settings a few hundred times:
Quote
OpenGL object counts
    Textures:  75
    Samplers:  0
    FBOs:      26
    RBOs:      0
    Buffers:   58
    VAOs:      2625
    Shaders:   343
    Programs:  265
    Pipelines: 0
    Queries:   740
    TransFeed: 0

Whoops. =<

Code: http://www.java-gaming.org/index.php/topic,36955.new.html#new

Myomyomyo.
Offline princec

« JGO Spiffy Duke »


Medals: 1136
Projects: 3
Exp: 20 years


Eh? Who? What? ... Me?


« Reply #3439 - Posted 2015-12-19 02:10:44 »

I still dunno why you bother with VAOs. They're a travesty of design.

Cas Smiley

Offline Ecumene

JGO Kernel


Medals: 200
Projects: 4
Exp: 8 years


I did not hit her! I did not!


« Reply #3440 - Posted 2015-12-19 03:07:40 »

I still dunno why you bother with VAOs. They're a travesty of design.

What should we use? :O

Offline theagentd
« Reply #3441 - Posted 2015-12-19 03:14:12 »

I still dunno why you bother with VAOs. They're a travesty of design.

What should we use? :O
Just generate a single VAO after creating the OpenGL context, bind it and use it forever.

They do save a few OpenGL calls every now and then though. I don't have to rebind my model VBOs every frame.

EDIT: Found this: http://www.openglsuperbible.com/2013/12/09/vertex-array-performance/. Looks like VAOs can have a noticeable CPU performance impact.

Myomyomyo.
Offline ShadedVertex
« Reply #3442 - Posted 2015-12-19 11:31:14 »

I started work on a 3D voxel engine. I'm going to write an SDK for it, much like the jMonkeyEngine SDK. And for that, I'm going to use the NetBeans platform. This is gonna be exciting Cheesy
Offline mag
« Reply #3443 - Posted 2015-12-20 02:23:15 »

Started having fun with 2d lighting again and just implemented depth offsetting. Smiley
Heights: red < blue < green
Offline J0
« Reply #3444 - Posted 2015-12-21 12:06:20 »

Today I'm not feeling like continuing the RPG part of my project... I think I'll just have a go at the tower defence part in Swing, see how that goes. Smiley

Offline Ed_RockStarGuy
« Reply #3445 - Posted 2015-12-21 14:49:19 »

Started learning Japanese today. I have 3 years to learn it fluently before I plan to move there Cheesy
Offline DavidBVal
« Reply #3446 - Posted 2015-12-21 14:53:17 »

I clicked the dreaded button. Published on Play Store.  Shocked

Offline KaiHH

JGO Kernel


Medals: 787



« Reply #3447 - Posted 2015-12-21 18:30:08 »

Watched one of the more fascinating Blender tutorials about doing a building (exterior) and tried reproducing half of it: https://www.youtube.com/watch?v=3jJGBzAxXKo
Hell of a lot of work. Also all my needs for good textures are now satisfied: http://www.textures.com/
along with creating specularity maps, normal maps, displacement maps and occlusion maps for them: http://www.crazybump.com/
My morph from an OpenGL developer to a 3D artist is going along well so far. Smiley
Offline Roquen

JGO Kernel


Medals: 518



« Reply #3448 - Posted 2015-12-21 19:48:08 »

Here's some light x-mas reading for ya'll: https://gist.github.com/AbstractAlgorithm/d0194f477adf829822ff
Offline DarkCart

JGO Kernel


Medals: 124
Projects: 9
Exp: 50 years


It's all in the mind, y'know.


« Reply #3449 - Posted 2015-12-21 21:58:23 »

I made a website that lets you send e-cards.

Taken down

The darkest of carts.
Pages: 1 ... 113 114 [115] 116 117 ... 216
  ignore  |  Print  
 
 

 
Riven (439 views)
2019-09-04 15:33:17

hadezbladez (5294 views)
2018-11-16 13:46:03

hadezbladez (2213 views)
2018-11-16 13:41:33

hadezbladez (5562 views)
2018-11-16 13:35:35

hadezbladez (1156 views)
2018-11-16 13:32:03

EgonOlsen (4592 views)
2018-06-10 19:43:48

EgonOlsen (5467 views)
2018-06-10 19:43:44

EgonOlsen (3127 views)
2018-06-10 19:43:20

DesertCoockie (4023 views)
2018-05-13 18:23:11

nelsongames (4739 views)
2018-04-24 18:15:36
A NON-ideal modular configuration for Eclipse with JavaFX
by philfrei
2019-12-19 19:35:12

Java Gaming Resources
by philfrei
2019-05-14 16:15:13

Deployment and Packaging
by philfrei
2019-05-08 15:15:36

Deployment and Packaging
by philfrei
2019-05-08 15:13:34

Deployment and Packaging
by philfrei
2019-02-17 20:25:53

Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08
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!