일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- AS3
- iphone
- swf
- file
- sdk
- Game
- Mac
- texture
- 게임
- XML
- Ane
- 3d
- Android
- 배열
- Build
- builder
- unity3D
- ios
- class
- AIR
- smartfoxserver
- flash builder
- unity
- 경로
- 단축키
- 아이튠즈
- path
- 태그를 입력해 주세요.
- Flash
- 영어
- Today
- Total
목록개발관련(Development) (305)
상상 너머 그 무언가...
rigidbody.freezeRotation = true; 위와 같이 적어주면 rigidbody 에 회전 움직임에 대해서는 물리적용이 안받게 된다. 예를 들어 지면에 붙어 있는 box는 회전값이 물리적용 받게되면 x축으로 회전이 되지 않지만 물리적용에 회전값을 고정시키면 지면에 붙어있어도 x축으로 회전이 가능하다. 지면에 있는 box는 밑면이 바닥과 붙어있기 때문에 자전을 할 수 없는데 (회전하러면 90도 굴러야 한다, 좌표값도 바뀐다 ) freezeRotation 값을 true로 주게되면 지면에 붙어있어도 중심축을 기준으로 회전이 가능하다
static function Clamp (value : float, min : float, max : float) : float Description Clamps a value between a minimum float and maximum float value. 어떤 캐릭터의 목 회전값이 최소 -85, 최대 85 각도까지만 회전이 되게끔 하고 싶은데 입력되는 회전값이 -360 부터 360 까지 입력된다면? neckRotation = Mathf.Clamp( InputAngle, -85, 85 );
OpneNI 관련된 unity sample 스크립트를 분석 중에 다음과 같은 스크립트를 보게 되었다. Debug.Log(String.Format("[{0}] New user", UserId)); C# 레퍼런스를 찾아보니 콤마 뒤에 있는 UserId 변수에 있는 값이 {0} 위치에 대입되는 기능이였다. 대입시킬 값이 두개 이상이면 {1}, {2}... 이런식으로 index 숫자를 한개식 증가시켜 입력해주면 된다. ("{0} {1}", "Decimal", "Hex") 뒤에오는 매개변수에 매칭되는 { } 문장은 단순 index값 뿐만이 아니라 옵션이 두가지 더 있다. {index[,length][:formatString]} 한글로 옮겨 적자면 ==> {인텍스,길이:스트링포멧} 예제를 보자 String.Form..
내 컴퓨터만 그런건지는 정확히 모르겠으나 다운로드 링크인 http://download.macromedia.com/pub/labs/flashplatformruntimes/incubator/flashplayer_inc_playerglobal_022711.swc 위 경로를 선택하면 zip 파일로 다운로드가 되버렸다. ㅡㅡ;; 검색에 검색을 해본 결과 swc 파일이 zip파일로 받아졌다는걸 알아내서 adobe lab 사이트에서 설명된 링크에 해당 파일을 슥 넣었더니 flashplayer 11로 퍼블리싱이 되었다. ※ 위의 파일을 playerglobal.swc 파일로 이름을 바꿔서 경로에 넣어줘야된다.
유니티 관련 블로그에 보면 코드네임 Molehill 이라는 플래시 플레이어에 하드웨어 3D를 지원한다는 내용과 함께 대부분이 다 미정이지만 만약 한다면 두가지 방향으로 진행될거 같다고 하네요 플래시툴 배경에서 유니티의 GameObject 클래스를 사용하는것과 유니티툴 배경에서 유니티가 자동으로 액션스크립트로 변환해서 퍼블리싱해주는것 뭐 뭐든간에 개발하는 사람 입장에서는 환영할 이야기다.
와우... 플래시 하길 잘했다는 생각이 막 드는군요 ^^ http://www.bytearray.org/?p=2310 unity3D 에서도 조만간 플래시로도 퍼블리싱이 가능하게 지원할 거라고 하네요
어도비에서 새 플래시 플레이어 버전을 준비중인데 3D엔진이 지원될 예정인가보다 몇일전 Unity3D 프로그램으로 프로젝트를 마치고 난 뒤 접하는 정보라 과연 unity3D가 좋을지 flash3D가 좋을지는 뚜껑을 열어봐야 알거 같다 ^^ 더 자세한 내용을 알고 싶으면 Adobe Lab 사이트를 방문해보자~ Flash IDE에서 3D 지원 플래시플레이어 설정방법 If you are using Adobe Flash Professional: You can create your own profile to publish to a specific SWF version in Adobe Flash CS5. See this package, it contains a sample FlashPlayer11.xml file f..
아이폰 소셜네트워크 게임인 스머프는 마치 백터이미지를 확대 축소하는것처럼 게임의 이미지가 큰 외곡없이 확대축소 되는듯 보이는게 신기해서 자세히 들여다 봤더니 뭔가 눈에 띌만한 차이점을 찾았다. 아래 이미지 두개를 자세히 비교해보자 두 이미지를 비교해보면 확대축소중 특정 스케일일때 이미지의 퀄리티가 달라지는걸 볼 수 있는데 추측을 해보면 최소로 축소했을때의 저해상도 이미지를 중간 스케일까지 이용해서 확대축소를 하고 최대로 확대했을때 보여지는 고해상도 이미지를 중간스케일 부터 사용하여 확대 축소를 하는것으로 보인다. 정리를 하자면 최소로 작게 축소가 되어 화면에 보여질 객체가 많을땐 저해상도 이미지를, 최대로 확대했을땐 화면에 보여질 객체가 몇개 안되므로 고해상도 이미지를 화면에 보여줌으로 그래픽 처리하는데..
특정 경로의 리소스를 로드하는 명령어인 LoadAssetAtPath 나 스트리밍으로 파일을 읽는 StreamReader 명령어의 경우 불러 읽어들일 파일의 path를 지정하게 되어 있는데 경로 생략하고 파일명만 string으로 입력시 기본 unity프로젝트 폴더의 Assets 폴더에서 해당 파일을 찾게되고 특정 폴더안에, 안에, 안에 있는 파일에 접근하기 위해서는 아래 예제와 같이 /를 구분자로 하여 경로를 적어주면 된다. img = (Texture2D)Resources.LoadAssetAtPath("Assets/###Stage3###/GameQuestioner/question.jpg", typeof(Texture2D)); //sr = new StreamReader(Application.dataPath ..
위 두 이미지와 같이 Install New Software... 실행중에 오류가 발생했다. 왜 이러나 싶어서 구글에 검색해봤더니 영어로 뭐라뭐라 적혀있었는데 결론은 mac에 이클립스를 쓰러면 Mac 하드웨어의 로컬 드라이브에 이클립스 폴더를 위치하라는 얘기 같았다. NTFS형식의 외장하드에 이클립스 폴더를 두고 실행해서 생긴 문제 같았다. 이클립스 폴더를 맥북 하드로 이동하여 실행했더니 이상없이 설치가 되었다.
엄지를 x축 방향(오른쪽) 으로 향하게 하고 검지를 y축 방향( 위쪽 ) 방향으로 향하게 하고 중지를 z축 방향( 앞쪽 ) 방향으로 향하게 되어 있다... 수학에서 예전부터 사용되어져 온 좌표계는 오른손 좌표계이다. openGL 에서도 오른손 좌표계가 사용된다. 오른손 좌표계는 왼손좌표계에서 처럼 엄지와 검지를 x, y축으로 맞춰보면 중지가 자기자신(본인)을 향하게 뻣어있는걸 볼 수 있다. 왼손좌표계와 오른손 좌표계의 차이점은 z축 값의 양이 눈에서 멀어질때 양수인지 가까워질때 양수인지 z축 값의 음과 양의 방향이 반대로 되어 있는것이다.
updateStageTextToDeviceFont(); function updateStageTextToDeviceFont() { dom = fl.getDocumentDOM(); var theLayers = dom.getTimeline().layers; for (var i = 0; i < theLayers.length; i++) { var theElems = theLayers[i].frames[0].elements; for (var c = 0; c < theElems.length; c++) { if (theElems[c].elementType == "text") { theElems[c].fontRenderingMode = "device"; } } } }