본문 바로가기

Unity

(43)
각도를 Radian값으로 바꾸기. float Radian = 계산하고자 하는 360각도 * Mathf.Deg2Rad; // 0도는 시계방향으로 3시에서 시작해서 각도가 올라감에 따라 시계 반대방향으로 커진다.// leftFrontRad은 this.gameobject.position을 기준으로 왼쪽 상단(즉 90+45 = 135Digree)값을 Radian값으로 구하려 한다.// 135도에 Mathf.Deg2Rad를 곱해주면 135도에 대한 Radian값이 산출된다.// Mathf.Deg2Rad 는 라디안 값을 구해주는 공식. 구해진 각도를 Vector3로 구하기 위해서는 다음과 같은 공식을 활용하면 된다. Vector3(Mathf.Cos(leftFrontRad), 0.0f, Mathf.Sin(leftFrontRad));
LineRenderer Point와 Point를 연결하는 라인을 그린다. public Camera mainGameCamera; // 터치할때 화면을 보여줄 카메라public LineRenderer LR; // 라인렌더 선언public Vector3 TouchPOS; // 터치 포지션public Vector3 DregPOS; // 드래그 포지션// Update is called once per frame void Start(){LR = this.gameObject.GetComponent (); // 라인렌더러를 선언함.LR.material = new Material (Shader.Find("Transparent/Diffuse")); // 라인랜더링시 사용할 매터리얼.LR.material.color = Color.red; // 라..
라이트 설치의 사례 1차. Sun Light만 설정해 주었다. 2차. Spot Light를 추가 설치하여 몇가지 반짝이는 포인트를 주었으며, GI를 추가 하였음. 3차. 쉐이더에 주변을 반사하는 Reflection적용이 되질 않고 있음.... 주변 반사를 위해 Reflection Prob를 설치하였고 Type를 RealTime으로 설정하였음.보다 극적인 효과를 위해 반사판과 형광등을 Light오브젝트가 아닌 Cube오브젝트에 쉐이더로 Emision을 높이는 방법으로 추가 하였음.(이렇게 하면 라이트를 설치 하지 않아도 라이트와 비슷한 효과를 낼 수 있음)
실시간 텍스쳐 변경(Realtime Change Texturer) 실시간 텍스쳐 변경을 성공했다. 1. 스크립트에서 GetComponent를 이용해서는 변경되지 않는다.2. 변경할 Material의 Prefab파일을 직접 건드려 주는 것이 가장 확실하다.(파츠가 나눠져 있을 경우를 감안해서..)3. 버튼오브젝트의 Inspector에서 이벤트발생시 사용될 함수에 GameObject 인자가 필요하면 버튼 Object가 인자로 알아서 들어간다(우연히 발견함) 추가 사항으로 라이트 설치를 해 보았음
Transform.Rotate 정리 1. public void Rotate(Vector3 eulerAngles);요약: 인자로 벡터의 각 원소값을 Degree로 받음.eulerAngles는 Degree값을 말함. 2. public void Rotate(Vector3 eulerAngles, [DefaultValue("Space.Self")] Space relativeTo);요약: 인자로 벡터의 각 원소값을 Degree과, Rotate기준(Space.Self, Space.World)로 받음. 디폴트는 Space.Self 3. public void Rotate(Vector3 axis, float angle);요약: 첫번째 인자로 정해진 축을 기준으로 두번째 인자의 degree만큼 회전함. 4. public void Rotate(Vector3 a..
블럭에 대한 반사 처리 오류 블럭에 대한 반사 처리 테스트중 다음과 같은 문제를 발견하였다. 충돌반사 처리 과정에서 좌우로의 충돌은 정상적으로 작동하나, 위아래의 충돌을 전혀 인식하지 못했다.. 어째서지? 사이드의 벽면과 다를게 없는데...
Unity 씬전환 (Change Scenes) 당연하겠지만 하나의 게임을 하다보면 장면 전환이 이루어 진다.게임에서 말하는 Scene이란, 로그인 화면에서 게임화며으로, 또는 게임화면에서 점수 화면으로. 등의 장면을 전환하는 것을 Scene전환이라고 말한다.(게임내 영상의 Scene전환이랑은 다르다.) 게임을 제작시 각각의 Scene을 독립적으로 만들어 관리하도록 한다.(게임 실행 Scene에서는 게임 플레이만 가능하고, 점수 Scene에서는 랭크만 보여지도록 하는 것은 두개의 Scene파일로 이루어져 있는 것이다.(반드시 그런것은 아니다.)) Scene전환을 하기위서는 먼저 프로젝트에 각각의 Scene을 등록하는 과정을 거쳐야 한다(등록전에 각각의 Scene파일을 만들어 놓는건 당연한 것이고...) Scene등록을 위해서는 Build Setting..
OnCollisionEnter : 충돌체크 오브젝트에 RigedBody를 반드시 추가해야 함. void OnCollisionEnter(Collision col) // Unity 예약함수(충돌을 인식할 gameObject에 넣는다.) { if (col.gameObject.CompareTag("target")) // 부딛힌 오브젝트의 태그가 target이라면.. { Debug.Log("bingo"); // 빙고를 출력 } }