레이블이 unity3d인 게시물을 표시합니다. 모든 게시물 표시
레이블이 unity3d인 게시물을 표시합니다. 모든 게시물 표시

2011년 12월 8일 목요일

Using Simple Path in unity3d


SimplePath로 Pathfinder를 바꿔보았다.
1. 성능은 그닥 좋지 않다.
2. Rigidbody용 Steering을 갖고 있어서, non-Rigidbody를 위한 Steer는 따로 만들어야 한다.
3. Obstacle Avoidance를 위한 시스템이 존재하긴 하지만, 움직이는 주체 자신을 Obstacle로 정하면, Path를 아예 만들지 못한다. 결국, 움직이는 객체에 Obstacle을 둘 수가 없다.

2번은 해결했지만, 3번의 이유로 결국 예전 Pathfinder로 돌아감.

Unity 3.5를 다시 기대해본다;;

2011년 11월 21일 월요일

a* pathfinding in unity3d

http://arongranberg.com/astar/docs/changelog.php

3.07 버젼이 나왔다.

XPath라는 것이 추가되었는데, 게임로직에 맞게 커스터마이징이 가능할 듯 하다!
기다리던 기능이다!

Local Avoidance만 더 추가되면 좋겠는데...

2011년 6월 3일 금요일

playmaker in unity3d

visual programming을 할 수 있도록 해주는데... 꽤 쓸만해 보인다.

visual programming의 뒷 배경에는 잘 정리된 아키텍쳐가 있어야 하기 때문에,
칭찬할 만 하다.

http://hutonggames.com/playmaker.html

terrain in unity3d for iOS

unity3D에서 iOS에서는 terrain엔진을 지원하지 않는다.

terrain4mobile이라는 것을 asset store에서 구매해서 사용하기로 결정;;;
그밖에도 asset store에서 여러가지를 구매했다.

2011년 5월 30일 월요일

unitysteer in iOS

무엇때문인지 몰라도, unitysteer가 iOS에서 전혀 동작하지 않는다.

contact mail을 보낸 결과 다음과 같은 메일을 받았다.


http://www.arges-systems.com/articles/252/unitysteer-experimental-vehicle-and-radar-changes/

Unity has some issues with Linq on iOS."



도움이 되었다면, 광고를 클릭 ㅎㅎ ^^

2011년 5월 24일 화요일

FSM in unity3d

http://www.playmedusa.com/blog/2010/12/10/programming/a-finite-state-machine-in-c-for-unity3d/

좋은 소스 ^^ NPC구현에 적합.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

messaging in unity3d

결론적으로, direct call에 비해서 현저히 느리다. iPhone에서는 특히.
http://forum.unity3d.com/threads/38094-Is-SendMessage-really-that-bad

하지만, general object에 posting을 해야하고, 자주 쓰지 않는 경우는 써도 될 듯 하다.

다음은, listener 기반 event handler이다. 객체간 통신이 아니라, broadcast 용으로 쓸만하다.
http://www.unifycommunity.com/wiki/index.php?title=CSharpMessenger_Extended
http://forum.unity3d.com/threads/37896-Programming-architectures?p=244521#post244521

객체간 통신을 위한 notification을 위해서도 누군가(prime31) 이미 만들어 놓았다.
샘플 소스도 같이 들어 있다.
http://forum.unity3d.com/threads/37896-Programming-architectures?p=244521#post244521

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 5월 23일 월요일

js to c# in unity3d

http://www.m2h.nl/files/js_to_c.php

unity3d의 javascript 파일을 c#으로 바꿔준다.
웹사이트에 들어가서, copy & paste하면 되고,
class이름을 바꿔서 쓰면 된다. ^^

참 고마우신 분 ㅋ

pathfinding and steering in unity3d

http://angryant.com/path.html

http://www.arges-systems.com/articles/274/unitysteer-2-2-released/

이 두 소스가 좋아 보인다.
둘간에 연동도 된다고 한다.

gameprefabs에도 pathfinder가 있다.
http://www.gameprefabs.com/products/show/192


활용하거나 응용하려면 시간이 꽤 들겠지만,
만들어져 있는게 있어서 시간 절약하니 좋다~ ^^

unity3d 커뮤니티가 꽤 있어서 다행이다~

multi touch 용 소스는
http://blogs.unity3d.com/2009/09/05/touch-phases-example-iphone-project/
을 보면 되는데, 소스 공개 여부가 불투명하다.
simple gesture system이 gameprefab 에서 공개중이다.
http://www.gameprefabs.com/products/show/132

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

unity3d child animation

child에 warrior라는 객체가 있고 그 안에 "dodge"라는 animation이 있다고 하면,
다음과 같이 하면 된다.
GameObject.Find("")가 아니라 transform.Find("")이다.

public class SomeObject : MonoBehavior
{

private Transform Warrior;

void Update()
{
  Warrior = transform.Find("Warrior");

  if ( !Warrior.animation.isPlaying )
 {
Warrior.animation.Play("dodge");
 }

}
}

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 5월 16일 월요일

unity plugins

http://prime31.com/

Unity Asset Store로만으로 먹고 사는 회사?(사람?)인 듯 하다.

Unity로 만든 게임을 퍼블리싱하기 위한 필요한 플러그인들을 제공하고 있다.

In App Purchasing을 위한 Storekit,AdMob Plugin,iAd Plugin등을 제공한다.
Native Toolkit으로 Native App과 연동도 쉽게 할 수 있도록 제공한다.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 5월 15일 일요일

some resources in unity3D

C#으로 된 예제(javascript로 된 예제만 많다. http://www.m2h.nl/unity/ 여기에 다른 소스들도 참고할 만하다! )
http://u3d.as/content/m2h/c-game-examples/1sG

c# 코딩할때 주의할 점 ( 공식 아티클, 꼭 읽어야 함 )
http://unity3d.com/support/documentation/ScriptReference/index.Writing_Scripts_in_Csharp.html

unity3d game development by example의 소스( 책 pdf파일 불법이지만 돌아다닌다. 따라서 어둠의 경로를 좋아하시는 분은 책 안 사도 됨;; 전 샀어요~ ^^ )
http://www.packtpub.com/support?nid=6081

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 5월 2일 월요일

using c# and javascript simultaneously in unity3d

unity3d에서 지원하는 C#과 javascript를 모두 쓸 수는 없을까?

여기에 답이 있다.
http://www.41post.com/1935/programming/unity3d-js-cs-or-cs-js-access

즉, 폴더만 다르게 하고, 서로 reference가 가능하다!

이것을 응용한다면, javascript에 익숙한 개발자와 c#에 익숙한 개발자가 함께 작업이 가능하다. 또는, 프로그래밍의 특성에 따라서 언어를 나눌수도 있으리라.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

prefab in unity3d

http://unity3d.com/support/documentation/video/6.html

prefab이라는 구조가 있는데, 비슷한 인스턴스를 만들때 쓰인다.
나의 용어로는 schema로 썼었는데, 그 개념과 유사하다.
prefab의 원뜻은, "공장에서 부품의 가공과 조립을 하여 놓고 현장에서 설치만 하는 건축"이다.
즉, instance의 값들을 inherit(상속)해서, modify가 필요한 것만 고쳐서 사용하여, 재활용성을 높인다.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 4월 29일 금요일

unity3d shiva3d airplay SDK comparison for online game



Issues
Unity3D
Shiva3D
AirPlay SDK
Platforms
+PC,Mac
+Palm
+bada,Symbian
Community
More
Less
Few
Native
Limited
Better
C++ only
Tool
Good
Fair
No
Rendering
Good

Fair

Limited

Socket
C# socket
only for Shiva Server
BSD socket
I18N
Unicode
Support
Not Sure
Total Score
90
70
51

현재까지 제가 알아본 바대로 적었습니다.
Unity3d가 인기가 많은 이유가 있네요.
C#을 싫어하지 않는다면, Unity3D를 선택해야 할 듯 합니다.
Unity3D를 쓰고, 서버를 구현한다면, C#으로 하는게 코드 공유가 되서
생산성에 좋을 듯 합니다. Photon Server 를 쓰면 될 듯.
Low Latency를 요하는 게임을 구현한다면, C++로 만들어야 할텐데, 코드 공유가 안되니,
서버 프로그래머가 따로 필요하겠네요.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^

2011년 1월 25일 화요일

3D Game Engines in iPhone and Android

다음은 iphone에서 알려진 3d engine들이다.

1. oolongengine
2. SIO2
3. shiva3D
4. unity3D
5. airplay SDK
--> 1,2는 소스를 제공함. 3,4는 소스를 제공하지 않음.
--> SIO2는 c소스임. 구조화 미숙. 하지만, 많은 기능들을 제공함.
--> oolongengine은 아직 할 일이 너무 많음.

--> 3,4번 모두 소스를 제공하지 않는다.

하지만, 중요한 것은 android 지원여부인데, 3,4번은 지원함.
--> 모두 inmature(미숙) 상태로 판단됨. 왜냐하면, 게임개발을 위한 풍부한 샘플이 존재하지 않고, 툴셋이 부족함.

소스를 제공하면서, 안드로이드까지 지원하는 엔진은 없음.
(소스 제공여부가 중요한 이유는, 게임의 특징이 엔진의 기능을 넘어설때 매우 중요하다!
 엔진의 기능 이하에서 구현한다고 할 경우에는, 가장 안정된 SDK를 선택하는 것이 나을 것이다.)


따라서, 소스 오픈이 중요하다면, 차라리 기존의 오픈소스엔진인 OGRE와 IrrLicht를 선택하는 것이 나음.
둘 중에 배우기 쉬운 인터페이스와 게임개발 리소스가 많은 것을 선택하는 편이 나음.
android와 iphone을 안정적으로 지원하느냐가 큰 선택 사항이 될 것임.
어떤 게임을 만드느냐도 큰 영향을 끼칠 것임.
 ( http://gbox3d.tistory.com/: irrlicht Engine 관련 )
( http://parkpd.egloos.com/3202581 : Ogre Engine 관련 )

몇일전까지만 해도, irrlicht에 대해서 호감이 더 있었지만,
설치에 있어서, irrlicht는 해줘야 할 일이 많고, 다른 플랫폼과 소스를 다르게 써야하는 문제가 생겨서 당분간은 보류하고, 그 문제를 푼 이후에 다시 시도하기로 했다.
따라서, 현재로서는 iPhone,MacOSX에서는 Ogre3D가 오픈소스중에서는 최고라고 봐야 할 듯 하다.
알아보니, ogremax라는 exporter도 지원해서(비록, 윈도우에서만 실행되지만), ogre가 더 낫다고 판단된다.
Ogre를 android에서 돌리는 것은, jni를 사용해야 할 듯 한데, irrlicht에서 사용하는 것과 같은 방식으로 해야 할 듯 하다. 아직은 정식으로 지원하지 않는 듯 하다.

또한, airplay sdk라는 cross-platform sdk가 있다. 아직 평가해보진 않았지만, 반드시 해 보아야 할 sdk이다.하지만, unity3d가 가장 인기가 있고 안정적으로 보인다.
( unity3d를 설명하는 동영상 http://www.youtube.com/user/TornadoTwins#p/c/11F87EB39F84E292/0/5-X-Ebh1kYA )

Ogre3D,Irrlicht 모두 MacOSX에서 제대로 build하는 것은 까다롭다.
공부용으로 쓴다면, Mac이 아닌 Windows에서 할 것을 권장하고,
Release가 필요할때, 다른 플랫폼으로 옮기는 것을 따로 셋업하는 것을 권장한다.
그때가 되면, 큰 문제이긴 하지만, 풀 수 있거나, 이미 풀 수 있을 것이다.

도움이 되셨다면, 광고 클릭을 ㅎㅎ ^^