목록유니티 (18)
거의 알고리즘 일기장
몬스터 움직임 Script using System.Collections; using System.Collections.Generic; using UnityEngine; public class Enermy : MonoBehaviour { Rigidbody2D rigid; //-1 0 1 Animator anim; public int nextMove; SpriteRenderer spRender; private void Awake() { spRender = GetComponent(); anim = GetComponent(); rigid = GetComponent(); Think(); } private void FixedUpdate() { //move rigid.velocity = new Vector2(next..
하나하나 맵을 구성하는것은 아마 매우 힘들것이다. 이를 위한 기능이 있다. 바로 타일맵이다. 타일맵 사용법 사용하는 방법은 매우 간단하다. 밑의 그림을 보면 알 수 있다. Tile Palette에 들어가 뜨는 창에 이용한 sprite들을 넣는다. 그리고 창에 있는 여러가지 기능들을 사용한다. 그 외 기능들은 골드메탈 유튜브에 들어가 영상을 찾아보면 자세히 나온다. 하다보면 collider가 자동으로 생기는데 적절하게 범위가 설정되지 않는 문제가 생길수도있다. 이럴때는 sprite에 들어가 pysics shape를 적절히 설정해야 한다. 1. sprite로 들어가 아틀라스 이용할때 하는 sprite editor에 들어간다. 2. pysics shape 선택 3. 선택후 바꿔주기 동작 참고 https://w..
아틀라스를 사용하는 이유? 드로우콜을 줄이기 위해서 사용 ( 최적화와 관련 ) 애니메이션 동작 이동, 점프 ( 애니메이션 모션까지 ) Player C# Script using System.Collections; using System.Collections.Generic; using UnityEngine; public class Player : MonoBehaviour { public float maxSpeed; public float jumpPower; bool isJump; Rigidbody2D rigid; SpriteRenderer spriteRenderer; Animator anim; private void Awake() { isJump = false; anim = GetComponent(); ri..
게임설명 완성 동작 참고 https://www.youtube.com/channel/UCw_N-Q_eYJo-IJFbNkhiYDA 골드메탈 게임 개발 & 그림 그리기 & 게임 플레이 각종 컨텐츠를 방송하는 스트리머 골드메탈 채널입니다. 주 컨텐츠는 게임 개발이며 유니티 엔진을 기반으로 컨텐츠를 진행합니다. - 2019.03.15 구독자 5천명 돌파! 감사합니다. - 2019.12.02 구독자 1만명 돌파! 감사합니다. www.youtube.com 후기 재밌다.ㅎㅎ
Canvas : UI가 그려지는 도화지 역활의 컴포넌트 스크린 : 게임이 표시되는 화면, 해상도로 크기 결정 폰트는 꼭 라이센스 확인! text image -> image파일은 default에서 sprite로 바꿔야 쓸수있음 image type -> filled에서 fill method, fill amount를 이용해서 그려지게 할수도 있음. button -> transition -> color tint 누를때 색깔 바뀌는 모드 navigation -> 뭐 그냥 웹에서 tab키 눌렀을때 다른버튼으로 가는데 그거 방향 설정임 OnClick() : 버튼이 눌렸을 이벤트, 눌렀다 놨을때가 한번 캔버스에 ui꾸밀때 가장 중요한 부분 ancher : 어느 한곳(기준점)을 잡아 거리를 유지함!! 참고 https:/..
1. 중력 적용하기 RigidBody: 물리효과를 받기 위한 컴포넌트. Add Component에서 RigidBody를 추가하면 됨.(2D :RigidBody 2D) Mass : 질량 Drag : 공기저항 Use Gravity : 말 그대로 중력체크 Is Kinematic : 이걸 체크하게되면 부딪쳐도 움직이지 않음, 물리현상에 관여 안하는듯 (스크립트로 움직이기 전까지) 2. 충돌 영역 정하기 Collider: 물리효과(충돌판정)을 받기 위한 컴포넌트. 물체 주변에 보이는 녹색선. 없을시 타 물체와 충돌하지 않음 물리 판정은 보이는 물체가 기준이 아니라 Collider 수치에 따라 결정됨.(Radius-반지름) 3. 재질 만들기 새로 재질을 만들어 드랍하면 적용 Metallic : 0~1까지 철재질을 ..
deltaTime이 왜 필요한가? 만약에 친구랑 카트라이더 게임을 하기로 했다. 친구의 컴퓨터 fps : 60, 내 컴퓨터 fps : 10 && 친구의 차 기종 == 내 차 기종 && 그외 모든조건동일 왜 속도 차이가 날까? 필요성 멀티플레이 할때 좋은 컴퓨터와 안 좋은 컴퓨터의 프레임차이 때문에 update함수의 도는 속도가 다르게 작용해서 위와 같은 치명적인 오류가 있을 수 있다. 그렇다면 deltaTime이란? 위의 문제를 해결하기 위한것. 같은 프레임이 적으면 큰 값이고, 프레임이 많으면 작은 값이다. 이를 이용한다면 30fps도 60fps의 컴퓨터도 모두 공평하게 게임을 이용할수 있다. Time.deltaTime 사용법 using System.Collections; using System.Col..
1. 공하나 만들기 ( create sphere ) 2. c# 스크립트 만들기 3. c#스크립트 키고 (더블클릭) 밑에 코드 입력 using System.Collections; using System.Collections.Generic; using UnityEngine; public class Move : MonoBehaviour { Vector3 target = new Vector3(8, 1.5f, 0); // Update is called once per frame void Update() { ////1. MoveTowards //transform.position = // Vector3.MoveTowards(transform.position, target, 1f); ////2. SmoothDamp, ..