Java-Gaming.org Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (744)
Games in Android Showcase (225)
games submitted by our members
Games in WIP (825)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 ... 57 58 [59] 60 61 ... 194
  ignore  |  Print  
  What I did today  (Read 2097484 times)
0 Members and 5 Guests are viewing this topic.
Offline actual

JGO Coder


Medals: 25



« Reply #1740 - Posted 2015-02-16 22:13:07 »

PM me a slight alteration of your nick and I'll make it happen. Soon. This is a one time offer, because it would make barely any sense to offer it twice.

Heck no, this is the most pseudo-popular I have ever been!





* edit: unclosed quote tag
Offline BurntPizza

« JGO Bitwise Duke »


Medals: 485
Exp: 7 years



« Reply #1741 - Posted 2015-02-16 22:13:50 »

* wants to feel popular, creates an account with a username like 'help' or 'think' Tongue

'a', 'it', 'the' etc.
Offline Jono
« Reply #1742 - Posted 2015-02-16 22:26:51 »

I finally have a solid initial implementation of a Goal planning system. It allows for entities to have goals and subgoals and to replan as circumstances change. A lot of GOAP material available is fiarly complicated from an implementation side, and it took a while for me to get to a simpler system that meets my needs.

I worked on a planning system too, but mine's overly complicated.

Today I fixed some bugs exposed by the fall-in-love and decide-sexuality actions.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Mike

« JGO Spiffy Duke »


Medals: 149
Projects: 1
Exp: 6 years


Java guru wannabe


« Reply #1743 - Posted 2015-02-16 22:48:25 »

Made a new website for State of Fortune (same url as before: http://stateoffortune.com/). Was mainly to try out parallax scrolling and having much larger pictures without having to click on small thumbnails. The picture quality isn't great in jpeg, but the size difference is huge, which is nice for mobile devices so I'll stick with jpeg over png for now Smiley

Mike

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

JGO Coder


Medals: 42



« Reply #1744 - Posted 2015-02-16 22:55:42 »

To be honest, I am not sure about the new website.
"I want all the options without scrolling"
And at least for me the images are jiggling around while I scroll.

-ClaasJG

My english has to be tweaked. Please show me my mistakes.
Offline Mike

« JGO Spiffy Duke »


Medals: 149
Projects: 1
Exp: 6 years


Java guru wannabe


« Reply #1745 - Posted 2015-02-16 23:04:10 »

To be honest, I am not sure about the new website.
"I want all the options without scrolling"
And at least for me the images are jiggling around while I scroll.

Apparently the pictures don't even show up in IE9. I'll have a look for another library I guess. Sad

I could add some buttons on top to jump to the forum/download/credits section. Seeing as I don't have much text on the page I mainly wanted a website that points out the graphical quality, and the previous site didn't do that Smiley

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline kingroka123
« Reply #1746 - Posted 2015-02-16 23:05:51 »

@Mike you should add a automatic waypointed scroll system like on the Moto G webpage
Offline ClaasJG

JGO Coder


Medals: 42



« Reply #1747 - Posted 2015-02-16 23:07:47 »

Maybe a "floating control panel" on the right side and the images in the background (~as slideshow?)

My english has to be tweaked. Please show me my mistakes.
Offline cylab

JGO Kernel


Medals: 174



« Reply #1748 - Posted 2015-02-16 23:20:28 »

Added triplanar texture coordinates generation to my texture "synthesis" shader:



Mathias - I Know What [you] Did Last Summer!
Offline Mike

« JGO Spiffy Duke »


Medals: 149
Projects: 1
Exp: 6 years


Java guru wannabe


« Reply #1749 - Posted 2015-02-16 23:30:29 »

Maybe a "floating control panel" on the right side and the images in the background (~as slideshow?)
@Mike you should add a automatic waypointed scroll system like on the Moto G webpage

Thanks for the ideas! I'll look into changing it again somewhere down the road, most likely based on your ideas. For now I got it working in IE9 and will go back to programming on the game itself Smiley

Mike

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Ashedragon

JGO Coder


Medals: 27
Projects: 1
Exp: 4 years


The best person you could possibly be is yourself.


« Reply #1750 - Posted 2015-02-17 04:09:20 »

I spent the majority of the day redesigning Fragile Soul's menu:
<a href="http://www.youtube.com/v/aOgWwiMn9XU?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/aOgWwiMn9XU?version=3&amp;hl=en_US&amp;start=</a>

boo
Offline cylab

JGO Kernel


Medals: 174



« Reply #1751 - Posted 2015-02-17 06:56:04 »

Parallax scrolling is the <marquee> of 2012-2015 Wink
Meh. I think it looks great!

Mathias - I Know What [you] Did Last Summer!
Offline Mike

« JGO Spiffy Duke »


Medals: 149
Projects: 1
Exp: 6 years


Java guru wannabe


« Reply #1752 - Posted 2015-02-17 06:58:38 »

@Mike:
The number one rule of web design (and pretty much all digital content creation): Don't do something just because you can.

Parallax scrolling is the <marquee> of 2012-2015 Wink

- Jev

I couldn't, that's why I did it Smiley I think it'll look great with the additional menu to quickly go to a section. The good thing about the current layout is that the graphics get a very large attention on the page, which is the only thing the game has going for it at the moment.

I don't think we should put any more into this thread as it isn't about web design. Once I change it down the line I'll put in another "What I did today".

Mike

EDIT: I added the navigation as suggested. As it was only a few minutes of work I thought it was silly not to do it Smiley

My current game, Minecraft meets Farmville and goes online Smiley
State of Fortune | Discussion thread @ JGO
Offline theagentd
« Reply #1753 - Posted 2015-02-17 15:49:19 »

I found some nice optimizations for bounds testing in shaders. Basically my motion blur was blurring over the edge of the screen, resulting in either black color if I used texelFetch() which gave a dark aura around the screen when in motion, or being clamped to the edge pixel if I used texture() which inflated the weights of the edge pixels. Neither of these looked very good, so I decided to simply remove the samples that fell outside the screen. However, detecting these scenarios was expensive.

Simply using an if-statement to test whether the coordinates are inside the screen was dead slow as this was compiled to 1 branch per sample.
1  
2  
3  
if(texCoords.x >= 0 && texCoords.y >= 0 && texCoords.x < resolution.x && texCoords.y < resolution.y){
   samples += 1.0;
}


However, there's a trick you can use. By casting the resulting boolean to a float, we can convert the boolean to 1.0 if it's true and 0.0 if it's false! Exactly what we want!
1  
      samples += float(texCoords.x >= 0 && texCoords.y >= 0 && texCoords.x < resolution.x && texCoords.y < resolution.y);

Sadly, this still compiles to the same thing as the if-statement. That's weird since I know that GPUs have specific instructions to set the value of a register based on a simple comparison. As an example, this line:
1  
float x = float(someValue < 1);

compiles to this instruction:
1  
x: SETGT       R0.x,  1.0f,  PV0.x  

It would seem that the boolean &&-operators are messing this up, causing it to revert to branches. Let's try casting the result of each comparison to floats and then use a simple float multiply between them to effectively and them together.
1  
samples += float(texCoords.x >= 0)*float(texCoords.y >= 0)*float(texCoords.x < resolution.x)*float(texCoords.y < resolution.y);

Bam! The comparison compiles to 2 SETGE (greater-equals) instructions, 2 SETGT (greater-than) instructions and 3 multiplies. I need to do this 16 times per pixel, once for each sample, so this saves a load of work! There is one final optimization we can make to improve this code on AMD's vector GPUs. AMD's older GPUs are a bit funny in that they run each shader on 4 or 5 different cores at the same time, trying to do as much as possible at the same time. This code:
1  
float x = a + b + c + d;

would fit this extremely badly. GLSL requires the GPUs to enforce the order of the operations, so none of these instructions can be run in parallel. First we do a+b, then (a+b)+c, then finally ((a+b)+c)+d, which requires 3 cycles. If we add some "unnecessary" parenthesises, we can encourage vector GPUs to do these additions in parallel without affecting the performance of scalar GPUs that don't have this problem:
1  
float x = (a + b) + (c + d)

This only takes 2 cycles, as a+b and c+d can both be calculated in the first cycle, and then (a+b)+(c+d) can be calculated in the second cycle, making this chain of addition 50% faster. Doing this for the bounds testing gives this code:
1  
samples += (float(texCoords.x >= 0)*float(texCoords.y >= 0))*(float(texCoords.x < resolution.x)*float(texCoords.y < resolution.y));


Theoretical performance of the 4 versions of bounds checking done for 16 samples on a Radeon HD 6870:
1. 2.04 pixels per second
2. 2.02 pixels per second
3. 11.20 pixels per second
4. 11.79 pixels per second

All in all, that's a 5.78x improvement compared to a naive if-statement.

Myomyomyo.
Offline BurntPizza

« JGO Bitwise Duke »


Medals: 485
Exp: 7 years



« Reply #1754 - Posted 2015-02-17 15:59:23 »

Nice.
There needs to be something like Souper but for shader code, although it would probably be more effective on pre-compiled shaders.
Offline Roquen

JGO Kernel


Medals: 516



« Reply #1755 - Posted 2015-02-17 16:35:54 »

Manipulation of sign bits is handy on the CPU as well (both float and integers).  Have I ever mentioned that GL compiling GLSL from source in the driver was a really terrible idea?? Wink
Offline Riven
Administrator

« JGO Overlord »


Medals: 1327
Projects: 4
Exp: 16 years


Hand over your head.


« Reply #1756 - Posted 2015-02-17 16:36:02 »

1  
      samples += float(texCoords.x >= 0 && texCoords.y >= 0 && texCoords.x < resolution.x && texCoords.y < resolution.y);

Sadly, this still compiles to the same thing as the if-statement. That's weird since I know that GPUs have specific instructions to set the value of a register based on a simple comparison.

It's not that weird, because this statement:
1  
b = texCoords.x >= 0 && texCoords.y >= 0 && texCoords.x < resolution.x && texCoords.y < resolution.y


is roughly equal to:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
init: if(texCoords.x >= 0)
   if(texCoords.y >= 0)
      if(texCoords.x < resolution.x) {
         b = (texCoords.y < resolution.y);
         goto end;
      }
      else
         goto lab;
   else
      goto lab;
else
   goto lab;

lab: b = false;
end:


The early-out (what's the name...) of '&&' causes a lot of branches.

Hi, appreciate more people! Σ ♥ = ¾
Learn how to award medals... and work your way up the social rankings!
Offline BurntPizza

« JGO Bitwise Duke »


Medals: 485
Exp: 7 years



« Reply #1757 - Posted 2015-02-17 16:39:31 »

The early-out (what's the name...)

Short-circuiting

And yeah, I'm curious how non-ss comparisons perform:
samples += float(texCoords.x >= 0 & texCoords.y >= 0 & texCoords.x < resolution.x & texCoords.y < resolution.y);


Offline Roquen

JGO Kernel


Medals: 516



« Reply #1758 - Posted 2015-02-17 16:55:06 »

Nice.
There needs to be something like Souper but for shader code, although it would probably be more effective on pre-compiled shaders.
Super optimizers are an interesting toy thing to do, but they're insanely slow.  Also this page's results aren't too encouraging. 31*i no result?  Constant multipliers and divisors over integer -> addition chains.
Offline pitbuller
« Reply #1759 - Posted 2015-02-17 18:11:25 »

I found some nice optimizations for bounds testing in shaders. Basically my motion blur was blurring over the edge of the screen, resulting in either black color if I used texelFetch() which gave a dark aura around the screen when in motion, or being clamped to the edge pixel if I used texture() which inflated the weights of the edge pixels. Neither of these looked very good, so I decided to simply remove the samples that fell outside the screen. However, detecting these scenarios was expensive.
...

I have seen this kind of pattern multiple times. Its hlsl but maps well to hardware.
1  
2  
if (dot(1.0, saturate(texCoords) - texCoords) != 0.0)
  samples += 1.0;
Offline theagentd
« Reply #1760 - Posted 2015-02-17 19:24:31 »

I found some nice optimizations for bounds testing in shaders. Basically my motion blur was blurring over the edge of the screen, resulting in either black color if I used texelFetch() which gave a dark aura around the screen when in motion, or being clamped to the edge pixel if I used texture() which inflated the weights of the edge pixels. Neither of these looked very good, so I decided to simply remove the samples that fell outside the screen. However, detecting these scenarios was expensive.
...

I have seen this kind of pattern multiple times. Its hlsl but maps well to hardware.
1  
2  
if (dot(1.0, saturate(texCoords) - texCoords) != 0.0)
  samples += 1.0;


I tried a similar version too:
1  
samples += float(texCoords == clamp(texCoords, vec2(0), resolution));


8.30 pixels per second.

EDIT: If your coordinates are normalized and you use clamp(<value>, 0.0, 1.0), the clamp becomes free, in which case this one is ALMOST as fast as the float multiplied version (version 4).

EDIT2: Turns out that clamp DIDN'T become free. Since the texture coordinate varying input is never modified, there is no previous instruction that clamp can piggyback on, so it needs to add a MOV instruction with CLAMP to get the same result. It's faster than a MIN and a MAX, but still slower than the optimized float multiplied thingy.

Myomyomyo.
Offline wessles

JGO Kernel


Medals: 326
Projects: 4


All coding knowledge will be useless at peak oil.


« Reply #1761 - Posted 2015-02-17 21:46:47 »

I made a shader mod for Luftrausers. It is supposed to imitate old CRT arcade monitors, complete with warping and scan-lines.

I have been trying to make a shader like this for a whole year, and I finally made it when messing with modding. Now to find a game of my own to put it in Clueless...

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

RFLEX.
Offline Ecumene

JGO Kernel


Medals: 196
Projects: 4
Exp: 8 years


I did not hit her! I did not!


« Reply #1762 - Posted 2015-02-18 06:22:18 »

Just spent the last 3 days working non-stop on xbox controllers in java for the robotics team - Works flawlessly.
I'm leaving to go to the competition in about 5 days.

Also,
http://www.ecumene.xyz/
http://thmedia.ecumene.xyz/

Offline SHC
« Reply #1763 - Posted 2015-02-18 06:31:56 »

Started on my 3D platformer using SilenceEngine.



Got gravity, lighting, and also controller input using Generic/XBOX controllers done. Still need to load levels from file, and also add a nice story around it.

Offline kingroka123
« Reply #1764 - Posted 2015-02-18 18:04:10 »

Made a twitchy shooter yesterday.
*1.8mb gif*
Click to Play
Offline EgonOlsen
« Reply #1765 - Posted 2015-02-18 20:25:48 »

Added automapping for the dungeons. I actually didn't want to do that, but...i did it anyway... Grin


Offline Mac70
« Reply #1766 - Posted 2015-02-18 21:52:12 »

Added automapping for the dungeons. I actually didn't want to do that, but...i did it anyway... Grin



This is starting looking like Skyrim mobile. Cheesy
Offline pitbuller
« Reply #1767 - Posted 2015-02-18 22:08:24 »

I coded a simple camera frustum to ground plane clipping algorithm. It does help a ton for calculating minimum shadow frusta.
Ground plane is calculated dynamically from minimal height of heightmap that intersect the current camera split per cascade.
Up to 2Millions triangle savings with improved effective resolution.
Offline Slyth2727
« Reply #1768 - Posted 2015-02-18 22:54:24 »

Dynamic, penumbra'd (yes that's now a word), multisource shadows with blending. Oh, and some fake normal mapping. I also implemented map creation from lua files, like you see in the top left.
Based off of davedes article!
Edit: I also have the solving of a rubiks cube completely memorized and can do it all without looking at a reference Cheesy


Offline matanui159

JGO Coder


Medals: 11
Projects: 1
Exp: 10-12 months


Aww... So cute...


« Reply #1769 - Posted 2015-02-19 06:13:12 »

This is more of: 'what I'm doing today' or 'what I'm doing at the moment'
But, I'm setting up Ubuntu on a virtual machine... I was extremely bored today so I thought... What the heck... I'll see what all the fuss is over...

Is it sad that I still get a fright when the computer beeps at me...
Pages: 1 ... 57 58 [59] 60 61 ... 194
  ignore  |  Print  
 
 

 
Ecumene (149 views)
2017-09-30 02:57:34

theagentd (214 views)
2017-09-26 18:23:31

cybrmynd (301 views)
2017-08-02 12:28:51

cybrmynd (288 views)
2017-08-02 12:19:43

cybrmynd (297 views)
2017-08-02 12:18:09

Sralse (291 views)
2017-07-25 17:13:48

Archive (968 views)
2017-04-27 17:45:51

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

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

theagentd (1430 views)
2017-03-24 15:32:08
Java Gaming Resources
by philfrei
2017-12-05 19:38:37

Java Gaming Resources
by philfrei
2017-12-05 19:37:39

Java Gaming Resources
by philfrei
2017-12-05 19:36:10

Java Gaming Resources
by philfrei
2017-12-05 19:33:10

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
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!