제가 여러분들 도움으로 유니티2D로 방향에 따라서 총알이 나가는 것도 구현했는데 이제는 맵이동할떄 그 총알이 나가기 위해서 같이 붙여놓았던 Gizmo를 넣고 하니까 맵이동이 안되네요 왜그럴까요 ㅠㅠ따로 할때는 잘됬는데 합치면 맵이동이 안되요 스크립트 같이 올리니까 고수님들 도움이 절실해요@@@
참고로 각각 스크립트 따로 만들어서 넣은거예요 아래에는 보기편하게 그냥 쭉 붙여놓은겁니다.
<캐릭터에 이처럼 Gizmo가 붙어서 움직이게된다>
Gizmo를 통해서 방향 확인 스크립트
public class MyGizmo : PlayerMove
{
public float dist = 0.5f;
public Transform tr;
public Transform target;
private Vector3 vector;
public Color _color = Color.red;
public float _radius = 0.3f;
private void OnDrawGizmos()
{
Gizmos.color = _color;
Gizmos.DrawSphere(transform.position, _radius);
}
// Start is called before the first frame update
void Start()
{
tr = GetComponent();
}
// Update is called once per frame
void Update()
{
tr.position = target.position - (Vector3.forward * dist);
if (Input.GetAxisRaw("Vertical") != 0 || Input.GetAxisRaw("Horizontal") != 0)
{
vector.Set(Input.GetAxisRaw("Horizontal"), Input.GetAxisRaw("Vertical"), transform.position.z);
if(vector.x <=1&&vector.x>0)
{
tr.rotation = Quaternion.Euler(0, 0, 270);
}
if (vector.x >= -1 && vector.x
{
tr.rotation = Quaternion.Euler(0, 0, 90);
}
if (vector.y <= 1 && vector.y > 0)
{
tr.rotation = Quaternion.Euler(0, 0, 0);
}
if (vector.y >= -1 && vector.y
{
tr.rotation = Quaternion.Euler(0, 0, 180);
}
}
}
}
TransferMap 클래스의 OnTriggerEnter2D가 제대로 호출되는지 로그 뽑아보셨나요?
제가 is trigger체크했었으니까 아마 제대로 호출됬을거같아요
기즈모는 저 카메라아이콘이나 좌표아이콘 등등 화면에 그림을 그리는건데 드로우기즈모 왜하는건지 모르겟고 - dc App
기즈모가 원래 빈 게임오브젝트가 모양이 안보여서 그걸 보기편하게 하는것은 맞지만 총알발사 같은거를 할때 총알 생성위치가 보이지 않으니까
트랜스퍼맵에보면 파인드오브젝트에서 마이기즈모클래스를 안넣어줬네 - dc App
아 그거만 그럼 넣어주면 괜찮아지나요??
그건모르겟음.. 그리고 기즈모클래스에서 캐릭터무브를 구현하면 안좋지 - dc App
ㄹㄹ개고마워 @@@@역시 인디게임 갤러리 최고내 해결됬어요 ㄳㄳㄳ
다행이네 ㅋㅋ 그리고 단순히 위치확인만 하려면 인스펙터맨위에 오브젝트 색갈 설정하는거 있음 - dc App
유니티 공홈 게임튜토리얼 싹 따라만들어보는게 좋아보임 - dc App