Shadows don't appear in normal gamestate

Hi



I tried to get shadows with a ShadowedRenderPass. But I only get shadows if I

pause the game (then a menu appears and the background is the normal game).

I really think that I miss or missunderstand something with these RenderPasses.

Here are important parts of my Main-Class:


   public static void initNewGame() {
      int respawn = gameCycle.getRespawnTime();
      int countDown = gameCycle.getEndCountDown();
      Game game = GameFactory.createNewGame(gameCycle.getNextScenario(), respawn, countDown);
      
      cleanUp();
      
      final MenuState menuState = new MenuState(null);
      addNewGameState(menuState, false);
      ((MenuState)GameStateManager.getInstance().getChild("menu")).getMenu().getMainMenu().enableContinueButton(true);
      
      final IngameState ingameState = new IngameState(game);
      addNewGameState(ingameState, true);
      ingameState.initIngameWindows();
      
      final SpawnMenuState spawnMenuState = new SpawnMenuState();
      addNewGameState(spawnMenuState, true);
   }
   
   private static void addNewGameState(final SimpleGameState state, final boolean setActive) {
      GameStateManager.getInstance().attachChild(state);
      state.setActive(setActive);
      
      BasicGameStatePass gamePass = new BasicGameStatePass();
      gamePass.setState(state);
      passManagerState.getManager().add(gamePass);
   }
   
   private static void cleanUp() {
      GameStateManager.getInstance().deactivateAllChildren();
      GameStateManager.getInstance().detachAllChildren();
      GameStateManager.getInstance().cleanup();
      
      passManagerState = new PassManagerGameState();
      passManagerState.setActive(true);
      GameStateManager.getInstance().attachChild(passManagerState);
   }



And here a method of my IngameState:


   public void updateShadowSettings() {
      String shadowStatus = GraphicSettings.getInstance().getShadowString();
      if(shadowStatus.equals("Off")) {
         shadowPass.setRenderShadows(false);
         shadowPass.setEnabled(false);
         if(Main.passManagerState.getManager().contains(shadowPass))
            Main.passManagerState.getManager().remove(shadowPass);
      } else {
         if(!Main.passManagerState.getManager().contains(shadowPass))
            Main.passManagerState.getManager().add(shadowPass);
         shadowPass.setEnabled(true);
         shadowPass.setRenderShadows(true);
         if(shadowStatus.equals("High"))
            shadowPass.setLightingMethod(ShadowedRenderPass.ADDITIVE);
         else
            shadowPass.setLightingMethod(ShadowedRenderPass.MODULATIVE);
      }
   }


The ShadowedPass is initialized in the Constructor of IngameState (Occluders are there added to
the ShadowedPass, too). And of course there is also a light that casts shadows.
What must I also do?

Hm, seems that nobody really has a suggestion about my prob… Maybe someone could

tell at least, that additional infos are necessary? :confused:

Add your Shadow pass to the game manager last.