코딩 잘 못하니 코딩고수한텐 불편할 수 있어
불편하면 욕해도 되
배경 스크롤 코드를 예전에 짰는데 뭔가 비효율적인 것 같아서 계속 바꾸고 바꿨었는데 이 문제는 아직도 원인을 도무지 모르겠어
뭐가 문제였냐면 위 짤처럼 오브젝트 사이에 틈이 벌어지는거야
전에 짰던 코드들은 그냥 사이사이 점점 벌어지고 난리도 아니였는데
위치맞추고 하는 코드들을 조금씩 넣었더니 배열 끝과 첫번째 오브젝트 사이만 벌어져;;;
코드에는 배열이 null이고 public으로 선언시키고 인스펙터상에서 넣었어
원소는 8개고 각각 x값이
-11.2 _ -8 _ -4.8 _ -1.6 _ 1.6 _ 4.8 _ 8 _ 11.2
3.2씩 차이가 나
아래는 코드
- public class BGScroll : MonoBehaviour
- {
- public Transform[] ChildrenTr = null;
- private float ScrollSpeed = 1.0f;
- public float ScrollSpeedMul;
- public float ScrollEndX = -11.2f;
- public float RespawnY = 0.0f;
- public float RespawnX;
- private Vector2 Power = new Vector2(-1, 0);
- void FixedUpdate()
- {
- ScrollSpeedMul = GameObject.Find("BG").GetComponent<BGManager>().Speed;
- for (int i = 0; i < ChildrenTr.Length; i++)
- {
- if (ChildrenTr[i].position.x <= ScrollEndX)
- {
- if(i == 0)
- {
- RespawnX = ChildrenTr[ChildrenTr.Length-1].position.x + 3.2f;
- } else
- {
- RespawnX = ChildrenTr[i-1].position.x + 3.2f;
- }
- }
- }
- }
- }
왜 첫번째만ㅋㅋㅋㅋ
Vector2 Pos = new Vector2(RespawnX, RespawnY);
Vector2 Pos = ChildrenTr[i].position; Pos.Set(RespawnX, RespawnY); 이부분 대체하는거 맞아? 그렇다면 그대로인데
???
이미지 크기가 얼만한지도 알려줘야지
아
크기에 비해서 사이 간격을 적게 주는거 아님 ?
오브젝트 x 스케일이 5, 이미지 x 크기는 64 인데
만약 그러면 스크롤되는 오브젝트 7개 사이사이마다 틈이 있어야되는거 아냐?
for 문 안에서 이동 + 뒤로 이동이 다 들어가 있어서 그런것 같음 for문 2개로 나눠서 1개는 이동 1개는 위치 체크 후 뒤로 이동 하도록 수정해봐
알겠음
0번 배경이 마지막 배경 뒤로 붙은 이후에 마지막 배경이 앞으로 이동해서 사이에 간격이 생김
오?
오 미친 신이시여 감사합니다