Vamos a uma bela receita de como capturar teclas pressionadas no windows usando C++ :Primeiro visitamos a Microsofthttp://msdn.microsoft.com/en-us/library/windows/desktop/ms646301(v=vs.85).aspxDescobrimos que para descobrir qual tecla esta sendo pressionada no windows de uma pessoa, se usa a funcao ou metodo GetKeyState que esta na biblioteca WinUser.h, so que se incluirmos o winuser em nosso projeto ira gerar um monte de erros. O motivo disso e que winuser necessita de outras bibliotecas na qual nao esta incluida nela mesma. Ela e apenas um pedaco de uma biblioteca maior o Windows.h e esta biblioteca que voce deve adicionar a seu projeto.Depois devemos achar o codigo a qual queremos verificar se foi pressionado aquele botao. Para isso a microsoft deu outra maozinha http://msdn.microsoft.com/en-us/library/aa243025(v=vs.60).aspx. Essa e uma lista com a numeracoes de codigo de cada botao de seu teclado.Temos agora o codigo e o metodo Estamos recebendo censura na TV na internet estamos sendo perseguidos, neste site fiz uma coletania de videos que explica os ultimos acontecimentos na qual devemos lutar pelos nossos direitos que estao sendo usurpados por invasores estrangeiros. PT nao e brasileiro! Sua bandeira e do comunismo, suas taticas sao de guerrilha, devemos nor unir contra esse mal e sumir com esse partido o mais rapido possivel... E hoje estava la brincando com meu Box2D (uma biblioteca de fisica para games) gastei o dia todo estudando ele, sabe o que e nem sair para comer? Em fim, trombei com um erro que consegui driblar, mas que nao sei se e o jeito correto. Se alguem souber um jeito melhor poste nos comentario.Codigo//Metodo que verifica uma colisao no jBox2Dpublic void verificarColisao(){//Step e o que faz o mundo andar mundo.step(0.1f, 6, 2);//Metodo que verifica a colisao de 2 corpos mundo.setContactListener(new ContactListener(){//Se houve um contato cai aquipublic void beginContact(Contact contact) {//Captura os 2 corpos que fizeram contato atribuindo a um Objeto CorpoBody corpoA = contact.getFixtureA().getBody();Body corpoB = contact.getFixtureB().getBody(); //Verifica se os corpos sao do tipo Bola, poderia ser de tipos distintos como Bala e Garrafa, mas aqui sao 2 bolas que irao se explodir ao se tocarem if((corpoA.getUserData().equals("Bola") && corpoB.getUserData().equals("Bola")) || (corpoB.getUserData().equals("Bola") && corpoA.getUserData().equals("Bola")) ){ //Aqui que mora o problema, se usarmos mundo.destroyBody(corpoA); ira gerar um erro. O motivo acredito seja porque ainda esteja em meio a testes de colisao. Para consertar isso adicionei os corpos que desejo remover em uma Matriz Array chamada de corposRemove e no final do codigo mando passar por todos os corpos que desejo remover. corposRemove.add(corpoA); corposRemove.add(corpoB); } @Override public void endContact(Contact contact) { // TODO Auto-generated method stub Gdx.app.log("Aviso:", "Fim do contato"); } @Override public void preSolve(Contact contact, Manifold oldManifold) { // TODO Auto-generated method stub } @Override public void postSolve(Contact contact, ContactImpulse impulse) { // TODO Auto-generated method stub } }); //Podemos colocar um If aqui para ver se ha corpos que desejamos retirar a fim de evitar processo desnecessario, passamos pela lista de corpos e se acharmos algumo destruimos . for(int i =0; i < corposRemove.size; i++){ mundo.destroyBody(corposRemove.get(i)); corposRemove.removeIndex(i); }. }Bom, como pudemos ver para se remover um corpo de forma correta devemos destrui-lo apos ter saido das verificacoes de colisao.