Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (726)
Games in Android Showcase (216)
games submitted by our members
Games in WIP (796)
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] 2 3 ... 25
1  Game Development / Game Mechanics / Re: 2D soft shadows on: 2016-02-26 17:40:09
Just fix that geometry. With modern GPU triangle strips don't usually offer any performance benefits sometimes they can even make things worse. Just always use indexed triangles and life is easier.
2  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-02-25 21:11:28
quite frankly many aspects of the current ones (opengl and DX) are kinda silly, old and only make sense if you consider doing stuff like that a million years ago with crap hardware and super expensive ram.
Well, with OpenGL, yes, but with Direct3D actually no. Microsoft allowed itself to completely overhaul the whole API with every version. Something which the ARB sadly never did with OpenGL.
I find Direct3D 11 is actually pretty good (if it wasn't for COM) and close to Vulkan, with Direct3D 12 being even closer.
So if people learn Vulkan today, they'll feel right at home with Direct3D 11 and 12.

I second that. DX11 is quite solid. Little bit too restrictive but nothing too bad. On other hand OpenGL is just retarded.
3  Discussions / General Discussions / Re: Unity3D/2D on: 2016-02-25 20:21:51
If someone wanna 3D engine, why you do not use JMonkeyEngine? Why do you want to switch to C# or so if you have engine in Java? Shocked

You pick right tool to right problem. If you narrow your tool scope just to ones that use your flavor of the month language then you aren't really looking objectively.
4  Discussions / Miscellaneous Topics / Re: I hate hi-res graphics on voxel based games on: 2016-02-25 18:13:23
I hate this thread.
5  Game Development / Game Mechanics / Re: 2D soft shadows on: 2016-02-25 18:11:30
Exclude penumbras from lights geometry and then just render them as additive. All lighting is additive and penumbra areas are just partially shadowed lights. No need to make this any harder. If you render multiple lights to single buffer you can't solve this problem with blending anymore.
6  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-02-24 20:03:47
One thing I might potentially like about Vulkan is the possibility of more userfriendly API's being developed on top of Vulkan. I have no interest in dabbling in supertechnical details, but maybe something easier / better than OpenGL built on top of Vulkan, who knows.

If one wrappers Vulkan, he gets away from its design and closer to OpenGL one and then one might think what's the point if there is already OpenGL..

Vulkan is low level but that is not why it's fast. It's fast because it's designed for modern architecture. Because Vulkan is low level all sane developers will wrap it and add ton's of safety mechanism around it to crash as possible(asserts). That kind of abstraction won't cost anything on release build but keep it clean. API is also super slim so it's pretty easy to wrap. One nice One nice example of low level abstraction is this. c++ API for Vulkan  to get all c++ benefits with zero cost.
7  Discussions / General Discussions / Re: Unity3D/2D on: 2016-02-23 17:57:31
I don't think Unity is for beginners and only for people who are very good at modeling and texturing (or rich...).

  • Asset Store
  • Models cost money
  • Textures cost money
  • Modeling and Texturing is art

I wonder how texturing and modeling go hand and hand if you have a Java Engine versus their engine, meaning the time it takes to organize and tackle these projects. While you control model loading and texturing dynamically in Java Engines, Unity is very deterministic in what you use and how you can use them - for that all around support. But that is weighing portability versus extendability which is one of those no answer arguments of which is better.

If you integerated Unity with Blender then GG.

Programmers rarely can cope without artists no matter what the tool you use to make game.
8  Discussions / General Discussions / Re: Unity3D/2D on: 2016-02-23 17:56:03
Unity performance might not be the best but it still probably better than most of the home brew engines. Unity use industry standard occlusion culling system Umbra which is really hard to match with your own solution. It's also has all sorts of Frustum culling, static/dynamic batching etc. On CPU side you might have bit more struggle.
9  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-02-22 18:42:20
Upgraded from GTX 780 ti to GTX 980 ti.
10  Discussions / Miscellaneous Topics / Re: What I did today on: 2016-01-24 15:30:25
More reading.
11  Game Development / Game Mechanics / Re: 2D point in polygon algorithm on: 2016-01-23 20:24:38
Don't forget to add usual bounding box fast path early out test.
12  Discussions / Miscellaneous Topics / Re: Realistic graphics -- how can it be achieved? on: 2015-12-22 17:28:29
If you just want to understand and learn then start with unreal engine. There are lot's of documentation, presentations, videos and all code is available at github. You don't need to start from scratch and build AAA engine to know how it's done. You just need basic knowledge to learn from various sources. Roquen posted nice link collection. Just read everything from there.(I already have)
13  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-10-31 11:02:19
I discovered I may have ASPD, or to use the more common term, a sociopath. Not really sure how I feel about that. It explains many things, but.. It's interesting to think about.
I read somewhere something like this: "If you think you are sociopath you are not."
14  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-10-31 01:29:57
More simplifications.

You have this.
 // find horizon angle
float x = diff.z / length(diff.xy);
float elevationAngle = x * inversesqrt(x*x + 1); // ORIGINAL, SLOWER --> atan(diff.z / length(diff.xy));

But you can reduce this to just this.
float elevationAngle = diff.z / length(; // And luckily you have already calculated diffLength so just reuse that.

Wolfram alpha suggested this altenate form but it said that "Assumming x,y,z are positive" but I don't see any reason for that restriction. At least we know that diff is always non zero so I think that should be enough.
15  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-10-29 22:13:31

You have this.
vec3 unproject( vec2 tc, float depth ) {
        return vec3( (tc * 2.0 - 1.0) * frustumCorner, -1) * depth;

You can precalculate 2.0* frustumCorner and optimize it to this.

vec3 unproject( vec2 tc, float depth ) {
        return vec3(tc * frustumCorner2 - frustumCorner, -1) * depth;

16  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-10-16 20:53:04
Does anyone know about PBR using HDR textures?

What you mean?
Render target need to be HDR and all emissive/cubemap textures.
17  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-10-02 19:27:31
Got an offer from Google for a Summer internship! Yipee!!! Smiley
Not long ago you was flipping burgers. Nice.
18  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-09-25 21:44:04
Technically yesterday, but I wrote a small program that can convert a normal map (back) to a height map.

We need more details. How does it work? What assumptions are needed?
19  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-08-28 19:11:30
Moved to my first own house. No more rent bullshit.
20  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-08-22 21:51:35
Pretty much finished converting WSW to using JOML instead of LibGDX. Excellent library. Faster implementations, thread-safety out-of-the-box, smaller. Still awaiting a few features to be able to finish it and see how broken it is. =P

Did some profiling now that skeleton animation is over twice as fast thanks to JOML and found a physics bottleneck. The physics simulation uses a 2D grid to quickly find nearby bodies for collision detection. Each "tile" in the grid is just a list of bodies that are in that grid. To query nearby bodies, you pass in a position and a radius, and the grid returns all bodies that intersect the square the position+radius forms (circle test is too expensive). Since the grid tile size is bigger than the bodies, each body generally only needs to check 1 tile, or 2 or 4 if the query area extends across a grid boundary. While doing some optimizations getting rid of some unnecessary divides, I realized that there was a bug in there that expanded the search area by 1 tile in each dimension, meaning a 1x1 check turned into a 2x2, and a 1x2 check turned into a 2x3. This had a huge impact on performance as it basically does 2-4x as much work. In combination with getting rid of a few divides, Math.floors() and Math.ceils(), I almost managed to double the body-body collision testing performance.

What kind of perfomance scaling you have with increasing tile size. Many times I have found that making tiles much bigger than bodies is net win. Basically it increases number of hit test but fits cache much better.
21  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-08-21 20:20:56
Accidentally plugged node to wrong plug and computer just hard crashed. Infinite loop. Coding with ue4 Blueprints feels like doing bungee jumping with cord that is plait from spaghetti.
22  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java OpenGL Math Library (JOML) on: 2015-08-19 17:34:33
Matrix deconstruction without hefty assumptions is never going to be high performant. I needed to code this without corner cases for slicing game(Kinghunt) where I needed to dynamically reparent stuff and transformation chains were concatenated to matrices and didn't have time to change that. It was a very long day. If you have GPU Pro 5 in hand there is good article about ways to manage object hierarchies.
23  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java OpenGL Math Library (JOML) on: 2015-08-08 08:25:36
I had problems with motion vectors stuttering during slow motion. With time running 1/20th as fast, the difference between in positions between each frame was minimal and the motion vectors are scaled up based on 1.0/timeStep to compensate. This amplifies floating point errors in the object and view matrices enough to cause seemingly stationary objects to get long enough motion vectors to cause motion blur to kick in. Running at a high resolution further increased the floating point errors. Computing object physics, object matrices and camera matrices with double precision and only convert them to floats when uploading them to OpenGL solves this.

This isn't motion blur anymore. Camera based motion blur is based on shutter speed. For Hardland I chosed shutter speed to be 1 /100 s. So with 60fps framerate I scale motion vectors with (1/100) / (1/60) = 0.6. If framerate dips lower scaling value just goes smaller. For realistic motion blur you never can't have longer shutter time than frame rate.
if you crank up motion blur with slow motion it might be cool effect but it's not actually motion blur effect anymore.
24  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java OpenGL Math Library (JOML) on: 2015-08-07 20:43:48
By the way, I forgot to mention it earlier, but the 48--->68 FPS increase I got from JOML included calculating all physics, model matrices and camera matrices at double precision. The physics were noticeably slower (10-20% longer CPU time) due to this. Double precision did help a lot with motion blur inaccuracies during slow-motion (difference between two positions scaled up by a large number) and also reduced model and camera jitter a lot. This led to less motion blur and anti-aliasing reprojection artifacts in the scene.

EDIT: Skeleton animation was of course done at float precision.
How you are doing motion blurring? Sounds bit odd that you would ever have precision issues with it. I just use last frame mvp matrices which are always exact.(if object wasn't visible on previous frame I use current matrices which is not problem for temporal AA and hardly problem for motion blur.). Actual motion vectors are scaled from difference vectors using frame time and camera shutter time.
25  Java Game APIs & Engines / Engines, Libraries and Tools / Re: Java OpenGL Math Library (JOML) on: 2015-07-10 19:26:11
Planes don't actually need to be normalized if you never ask actual distance from the plane.
26  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-07-09 09:23:14
Spent the entire day preparing RFLEX for the greenlight push. The majority of the day was spent working on a game demo for the press kit. I spent the last 4 hours getting a list of 35 game writers to email, and making a game plan for greenlight Tongue.
Try to get contact with Youtubers. They are lot more valuable than game sites.
27  Game Development / Newbie & Debugging Questions / Re: LibGDX - Combine textures? on: 2015-06-15 17:32:01
You don't move or rotate textures. But meshes that are texture mapped. Putting all those textures to single atlas does not simplify this thing at all. It may improve performance but it does not make it simpler.
28  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-06-12 18:57:38
Upgraded our project to UE4.8. Everything seems to be going to right direction.
29  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-06-08 21:10:50
Yes! Managed to get the depth of field as good as physically possible when generating it from a sharp image.

Have you considered to combine motion blur and DOF. This way you could reuse most of the samples.
30  Discussions / Miscellaneous Topics / Re: What I did today on: 2015-06-06 07:34:31
Tried to get depth of field working. Didn't go very well, but by carefully dodging all the artifacts I could take the following screenshot.

Try this technique. It's lot simpler and there are tons of optimization opportunities.

Bruteforcing it is too slow for gameplay scenes but usually you want to use crazy dof/bokeh only for non action parts anyway.(cut scenes etc)
Hardland is actually shipped with naive variation of this but its only used when player inspect something or chat with npc.
Pages: [1] 2 3 ... 25
Archive (282 views)
2017-04-27 17:45:51

buddyBro (472 views)
2017-04-05 03:38:00

CopyableCougar4 (921 views)
2017-03-24 15:39:42

theagentd (933 views)
2017-03-24 15:32:08

Rule (946 views)
2017-03-19 12:43:22

Rule (913 views)
2017-03-19 12:42:17

Rule (916 views)
2017-03-19 12:36:21

theagentd (962 views)
2017-03-16 05:07:07

theagentd (890 views)
2017-03-15 22:37:06

theagentd (685 views)
2017-03-15 22:32:18
List of Learning Resources
by elect
2017-03-13 14:05:44

List of Learning Resources
by elect
2017-03-13 14:04:45

SF/X Libraries
by philfrei
2017-03-02 08:45:19

SF/X Libraries
by philfrei
2017-03-02 08:44:05

SF/X Libraries
by SkyAphid
2017-03-02 06:38:56

SF/X Libraries
by SkyAphid
2017-03-02 06:38:32

SF/X Libraries
by SkyAphid
2017-03-02 06:38:05

SF/X Libraries
by SkyAphid
2017-03-02 06:37:51 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!