Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (741)
Games in Android Showcase (225)
games submitted by our members
Games in WIP (823)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Fog of War in 2D RTS Game  (Read 3764 times)
0 Members and 1 Guest are viewing this topic.
Offline Kronos

Junior Devvie

Medals: 1

« Posted 2013-07-17 13:53:51 »

Hello guys Smiley

I'm making a 2d openGL RTS game with lwjgl. Everything is good so far, but I want to implement the fog of war.

I thought of alphamapping the units of the localplayer by blending them. I already made this alpha map effect with slick2D, but I am quite new to openGL and can't figure out to make this.
But there are two problems. I don't want to use textures for the "revealing map action" of a unit, instead I want to draw circles with individual radii. The second problem is, that the map is would only be revealed temporarly. If they move further, the map would be black with this solution. Instead it should be 50% transparent or something like that. YOu all know how fog of war works Cheesy

Please help me Smiley

Offline Kronos

Junior Devvie

Medals: 1

« Reply #1 - Posted 2013-07-17 14:15:38 »

Okay I think I solved the problem that the map is kept revealed bye just saving pixels to an array and so on. That shouldn't be the problem. The only one left is the rendering Cheesy the biggest Tongue

The Question again: Which blendFunc in combination with what other commands do I have put together in which order?

I really appreciate any code snippets Cheesy
Offline Kronos

Junior Devvie

Medals: 1

« Reply #2 - Posted 2013-07-23 13:05:06 »

No idea? Sad
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Kronos

Junior Devvie

Medals: 1

« Reply #3 - Posted 2013-07-24 12:16:48 »

Here is what I found now. Works fine


           GL11.glStencilFunc(GL11.GL_ALWAYS, 0x1, 0xffffffff);
           GL11.glStencilOp(GL11.GL_REPLACE, GL11.GL_REPLACE, GL11.GL_REPLACE);
           GL11.glColorMask(false, false, false, false);

      //draw white circle here
           GL11.glColorMask(true, true, true, true);
           GL11.glStencilFunc(GL11.GL_NOTEQUAL, 1, 1);
           GL11.glStencilOp(GL11.GL_KEEP, GL11.GL_KEEP, GL11.GL_KEEP);
                //draw black fog here
Pages: [1]
  ignore  |  Print  

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

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

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

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

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

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

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

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

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

theagentd (1373 views)
2017-03-24 15:32:08
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!