본문 바로가기

전체 글200

목표 좌표를 향해 Object 회전시키기 방법 1 - 즉시 회전transform.LookAt(newTarget.transform.position); 방법 2 - iTween을 이용한 회전시간 설정Vector3 relative = _char.transform.InverseTransformPoint(newTarget.transform.position);float angle = Mathf.Atan2(relative.x, relative.z) * Mathf.Rad2Deg;iTween.RotateTo(gameobject, new Vector3(0, angle, 0), 1.0f); 2013. 10. 22.
SVN을 통해 Unity3D 프로젝트 관리하기 Unity3D 프로젝트를 SVN 관리하기 위해서는 아래와 같이 설정하면 끝. 간단하다!(참고: Unity 4.2.0에서 정상동작 확인함) 1. 상단 메뉴에 Edit - Project Settings - Editor 를 누른다. 2. 오른쪽 Inspector창에 Editor Settings가 뜨는데 Version Control 항목을 Disable에서 Meta Files로 바꿔주고, Asset Srialization Mode를 Force Text로 바꿔준다. 3. SVN에 프로젝트 폴더에서 다음의 무시목록을 추가하고 Library 폴더도 무시.objTemp*.suo*.user*.pidb*.userprefs 4. SVN Import5. 다른 폴더에서 Checkout 후 정상동작 하는지 테스트!끝! 2013. 10. 17.
이미지 버튼 적용하기 OnGUI() 에서 기본버튼을 생성할때 준비한 Image로 버튼을 만들 수 있다. 1. 버튼에 사용할 이미지를 Project에 Import (Texture Type을 GUI로 선택) 2. Project 탭에서-> Create -> GUI Skin 을 생성 (버튼 갯수에 맞게)3. 아래의 그림과 같이 Inspector 에서속성을 설정 - Normal, Hover, Active 선택 4. OnGUI()에 아래와 같이 코딩 // 이전 페이지로 이동.GUI.skin = customSkin_Prev;if (GUI.Button(new Rect(Screen.width * 0.01f, Screen.height/2-78, 136, 136), "")) {Debug.Log("btnPrev Clicked");}// 다음 페이.. 2013. 10. 15.
iTween 사용방법 너무 잘 정리된 블로그가 있음.http://hatoru.tistory.com/157 예를들어 _char 이라는 GameObject를 이동하고 싶다면 아래와 같이 작성하면 된다.Hashtable h = new Hashtable();h.Add ("x", posChar.x);h.Add ("y", posChar.y);h.Add ("z", posChar.z);h.Add ("time", 2);iTween.MoveTo(_char, h); 자세한 사용법은 제작사 사이트에서 볼수 있음.http://itween.pixelplacement.com/documentation.php 애셋 스토어가 접속이 되지 않을때를 대비하여 이곳에 올려둡니다. (지금도 접속이 안되네요.;;) 이렇게도 가능.void OnRotateComplet.. 2013. 10. 15.
[PC] 현재 데스크탑 사양 - AMD FX-8120 몇 달전에 저렴한 가격으로 CPU만 업그레이드를 했다.AMD가 Intel CPU보다는 속도가 느리다던데. 실제 체감하는 속도도 왠지 그런거 같긴 하지만일단 가격이 착하고, 무려 옥타코어다 코어가 8개!!!!메인보드는 전에 쓰던거 그냥 쓰고, CPU만 3코어에서 8코어로 바꿨기 때문에 정말 적은 금액으로 실속있게 바꿨다.이제 RAM과 VGA만 바꾸면 되는데.. 사실 지금 사양도 별로 부족한건 모르겠다.고사양 게임을 즐기는것도 아니고, 해봐야 LOL 수준이라서.더더군다나 밤에는 이 데스크탑을 쓰지 못한다. 아이랑 같이 자기때문에 소음이 조금이라도 있는건아이에게 미안하므로. ^^ 그래서 난 맥미니로 LOL을 즐긴다. ㅠ.ㅠ 소리가 전혀 안난다. 조용한 PC를 찾는 사람들에게 강추한다!!!가격도 착하고, 차지하.. 2013. 10. 15.
Animation 재생방법 private Transform fox;private Animation anim;void Start () {fox = GameObject.Find ("Fox").transform;anim = fox.GetComponent();//anim.Play("Take 001");anim.CrossFade("Take 001");} 2013. 10. 14.
[API] Scene 로드가 완료되었을때 호출되는 콜백함수 Scene이 처음 로드될때는 호출되지 않네요. ;; // Scene 로드가 완료되면 호출.void OnLevelWasLoaded(int level) { Debug.Log ("OnLevelWasLoaded");} 2013. 10. 14.
[Script] Raycast를 이용한 Picking Update() 내에서 아래와 같이 하면 마우스 클릭 또는 터치한 위치에 해당하는 GameObject를 알아낼 수 있다. Collider가 설정되어 있어야 한다.! if (Input.GetMouseButtonDown(0)) {RaycastHit hit;Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);if (Physics.Raycast(ray, out hit)) {print ("Picked object name: " + hit.transform.name + ", position: " + hit.transform.position);txtPicked.text = "Picked : " + hit.transform.name;}} // 클릭했을때 (touc.. 2013. 10. 14.
[Script] Audio 재생하기 Scene이 시작될때 간단한 효과음을 재생하는 방법이다.좀더 다양한 활용을 위해서는 다른 자료를 찾아보기 바란다. 1. Audio File (mp3, wav, ogg 등)을 Assets/sound 폴더에 넣는다.2. 위 파일들의 속성에서 3D를 체크해제한다. (2D용의 경우)3. Script를 연결한 Object에 AudioSource Component를 추가한다.4. 방법1private AudioSource _audioSrc;private AudioClip auclip; void Awake() {_audioSrc = (AudioSource)GetComponent();} void Start() {string soundFile = "sound/25";Debug.Log ("Sound file: " + sou.. 2013. 10. 11.
XML Parser Sample Code using UnityEngine;using System.Collections;using System.Xml;using System.Collections.Generic; public class GHXMLParser {private PositionData data;public List loadXML() {List listStage = new List();TextAsset xmlData = new TextAsset(); xmlData = (TextAsset)Resources.Load("xml/draw_correct", typeof(TextAsset));XmlDocument xmlDoc = new XmlDocument();xmlDoc.LoadXml(xmlData.text);XmlElement root = xml.. 2013. 10. 11.
Child Object의 Component 접근하기 private ParticleSystem _ps;void Awake() {_ps = GameObject.Find("오브젝트명").자식오브젝트명;} 2013. 10. 11.
터치한 위치에 Image 표시하기 마우스 클릭 또는 Touch한 위치에 특정 Object (Prefab)를 생성하는 방법입니다. // 변수 - prefab 지정 public GameObject touchImg; // 그릴 이미지를 Prefab으로 생성해둔 후 Drag & Drop으로 Script변수에 지정 private Vector3 MousePos; void Update() { if (Input.GetButton("Fire1")) { MousePos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, - Camera.main.transform.position.z)); Vector3 pos = new Vector3(MousePo.. 2013. 10. 10.