본문 바로가기

유니티

Rigidbody AddForce 한계속도 정하기 velocity를 이용해 최고속도 제한 소스코드 public float movePower; public float maxVelocityX, maxVelocityZ; void limitMoveSpeed() { if (rigid.velocity.x > maxVelocityX) { rigid.velocity = new Vector3(maxVelocityX, rigid.velocity.y, rigid.velocity.z); } if (rigid.velocity.x max.. 더보기
회전, 좌우상하 움직이는 장애물 만들기 가장 우측 오브젝트부터 순서대로 이름을 적어줬습니다. 소스코드 using System.Collections; using System.Collections.Generic; using UnityEngine; public class MoveFloor : MonoBehaviour { //UD_Floor float initPositionY; float initPositionX; public float distance; public float turningPoint; //UD_Floor & LR_Floor public bool turnSwitch; public float moveSpeed; //RT_Floor public float rotateSpeed; void Awake() { if (gameObject.nam.. 더보기
델타타임은 FixedUpdate에서 사용하지 말것 FixedUpdate 함수는 고정프레임으로, 만약 델타타임을 사용할 경우 프레임을 보장받을 수 없음. 더보기
Input은 Update함수에 최적화 Input은 Update 함수에 최적화 되어있으니 Update에서 사용할 것. FixedUpdate에서 사용할 경우, 키 입력이 버벅거리는 문제 발생 더보기
23 . 게임 빌드 Build Settings -> 옵션 확인 -> Build 클릭 결과 더보기
22. 플레이어가 맵에서 낙하 시 리스폰 빈 오브젝트나 GameManager 오브젝트에 콜라이더 추가해서 크게 만들기, isTrigger 체크 스크립트에서 onTrigger 함수로 로직 작성 예) 스테이지 재시작 void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "Player") { SceneManager.LoadScene(stage); } } 결과 더보기
21. UI 만들기 Canvas 생성 후 텍스트, 버튼 생성하고 Anchor로 위치잡아주기 UI 접근 코드는 GameManager 스크립트에서 작성 소스코드 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; //UI에 접근하기 위해 필요 public class GameManager : MonoBehaviour { public int totaltemCount; public int stage; public Text stageCountText; //전체 Item 개수 public Text playerCountText; // 현재 플레이어가.. 더보기
20. Scene 추가 Project에서 마우스 우클릭으로 새로운 Scene 추가 다른 Scene에 있는 오브젝트를 복사 붙여넣기 Scene을 원하는 대로 수정하고(맵핑 제대로 되있는지 확인), Build Settings -> Add Open Scenes 클릭해서 Scene 추가 더보기