2010-06-02 8 views
3

어떤 언어로도 구현을 찾고 있는데, 구현되고 사용되는 방법에 대해 자세히 알고 싶습니다. 그러나 내 자신을 굴릴 수는 있지만 하나만 찾을 수 있습니다. Owyl, 불행히도 예제가 들어 있지 않습니다. 그것이 어떻게 사용되는지.동작 트리 구현

누구나 내가 코드를 탐색 할 수있는 다른 공개 소스를 알고 있는데, 어떻게 사용되는 지에 대한 몇 가지 예를 볼 수 있습니다.

EDIT : 행동 트리는 데이터 구조의 이름입니다.

+0

행동 트리는 AI에서 사용되는 데이터 구조입니다. –

+0

아, 알 겠어! 해명 해줘서 고마워. –

답변

1

나는 당신이 맞다는 것을 모르지만 나무를 구현하는 것이 더 나은 선택이라고 생각합니다. 예를 들어 F # 또는 하스켈과 같은 공식 언어를 사용하는 것입니다. Haskell을 사용하면 유연하고 빠른 트리 구조를 사용할 수 있고 F #에서는 다중 코드 언어를 사용하여 코드에서 트리 구조를 구문 분석하고 처리 할 수 ​​있습니다.

여러분을 돕기를 바랍니다.

+0

공식 언어 란 무엇입니까? –

+0

보세요 @ http://en.wikipedia.org/wiki/Noam_Chomsky 및 http://en.wikipedia.org/wiki/Formal_language – kockiren

2

저는 C++에서 제 행동 트리를 구현했고 Protothreads Library에서 수정 된 코드를 사용했습니다. Coroutines in C도 좋습니다. 이 도구를 사용하면 여러 스레드를 사용하지 않고 여러 동작을 동시에 실행할 수있는 동시 루틴 시스템을 구현할 수 있습니다. 기본적으로 각 트리 노드에는 자체 코 루틴이 있습니다.

0

.NET에서 구현 된 동작 트리는 YVision 프레임 워크에서 찾을 수 있습니다. 우리는 이들이 NUI (Natural User Interface) 응용 프로그램 개발에 특히 적합한 것으로 나타났습니다. 그것은 오픈 소스은 아니지만 무료입니다 당신은 우리가 튜토리얼을 구현 방법에 대한 정보를 찾을 수 있습니다 http://www.yvision.com/support/tutorials/

편집 : 날 우리가 AI보다 훨씬 더 많은 것을 위해 행동 트리를 사용하는 것이 추가 할 수 있습니다. 게임 루프에서 서브 시스템의 동기화조차도 이들에 의해 정의됩니다. cases page을 확인하여 로봇, 카메라 기반 상호 작용, 증강 현실 등 사용중인 응용 프로그램의 범위를 확인하십시오. 프레임 워크를 다운로드하고 샘플을 시험해보고 구현에 대한 피드백을주십시오.

5
+1

Clojure - http://github.com/nakkaya/alter-ego –

+0

자바 스크립트 : https://github.com/6RiverSystems/blueshell – JBCP

3

https://skill.codeplex.com/을 살펴보십시오. 이것은 행동을위한 BehaviorTree 코드 생성기입니다. 당신은 소스 코드를 다운로드하여 그것이 유용한 지 확인할 수 있습니다.

0

https://github.com/TencentOpen/behaviac은 정말 훌륭한 것입니다.

behaviac는 비헤이비어 트리, 유한 상태 시스템 및 계층 적 작업 네트워크를 지원합니다. 비헤이비어는 설계자가 설계 및 디버깅하고, 내보내고, 실행될 수 있습니다.

C++ 버전은 클라이언트와 서버 측에 적합합니다.

그리고 오픈 소스입니다!