안녕하세요.XNA 4.0 : 화면에 그려진 후 텍스트를 제거하는 방법은 무엇입니까?
나는 "Pass Complete!"라는 텍스트를 그리려고합니다. 이 코드 화면합니다 : 문 IF 적절한를 해고 않습니다
spriteBatch.DrawString(font, "PASS COMPLETE!", new Vector2(30, 130), Color.White);
합니다. 그러나 화면에서 텍스트를 제거하려면 어떻게해야합니까? 나는 여기서 어디로 가야하는지 전혀 모르겠다. 강사가 나를 구글에 대답 시키거나 교과서에서 찾길 바란다. 나는 내 XNA 교과서를 다 읽고 있었고 나는 그 텍스트를 삭제할 콘센트가 없음을 발견했다.
도움 주셔서 감사합니다.
업데이트 :
protected override void Draw(GameTime gameTime)
은 내가 IF 문이 여기에 포함되어있다. 기본적으로 p_Receiver와 충돌을 검사하고 bool이 체크 아웃하면 DrawString을 그립니다. 내가 다른 각도에서 이걸보아야 할까?
최종 :
는 내가 대답으로 다음과 그 전에 더 나은 일하고으로 앞서 갔다. :)
if (PassInfo == 3) {
(timer code)
(IF timer not "used up" then run the draw)
지금은 유용합니다.
고맙습니다.
그런 다음 화면에서 블록을 구성하여 화면을 업데이트하고 그 위에 페인트해야합니까? Color.DarkGreen이라는 배경을 가지고 있기 때문에 충분히 간단합니다. – AriesTiger
초급 수준의 XNA 앱이 화면의 일부분 만 다시 그리는 것은 아주 드문 일입니다. 앱이 드로 사이클마다 전체 화면을 다시 그릴 가능성이 훨씬 큽니다. SpriteBatch.DrawString (...) 호출에 중단 점을 두어이 방법을 확인 할 수 있습니까? 실제로 매번 다시 그려지는 경우, 간단한 대답은 그것을 제거하기 위해 그리기를 멈춰야한다는 것입니다. – lzcd
루프에서 반복해서 다시 그려지는 것이 맞습니다. 그래서 내가 추측하고있는 다른 수표를 더해야합니까? 어쩌면 While 문? – AriesTiger