2012-05-10 4 views
9

방금 ​​CS282 - Computer Physics Simulation에 대한 독립적 인 학습 과정을 마쳤습니다. 내가 다니고있는 대학에서 처음으로 제공되었습니다. 교과서는 이안 밀링턴 (Ian Millington)에 의해 "게임 물리 엔진 개발 : 게임용으로 강력한 상업용 물리 엔진을 구축하는 방법"이었습니다. 이 책은 문법 오류로 가득차 있으며, 유용한 참고 자료는 코드 작성이 어렵습니다. 책과 함께 제공되는 소스 코드는 책에서 설명하는 것보다 훨씬 완벽하며 엔진을 사용하여 독자적으로 뭔가를 수행하는 방법에 대한 입문서가 없기 때문에 특히 그래픽 목적으로 코드를 해독하는 데 어려움이 있습니다. , 사실 깨지거나 구현되지 않은 곳에서, 또는 책에서 사용하는 그래픽 유틸리티 인 GLUT를 사용하는 방법과 더 이상 개발되지 않은 것입니다! 실제로,이 책에 나오는 대부분의 참고 문헌은 지난 10 년 동안 나온 것이 아니며, 15 년 된 코드를 가르치는 데별로 좋지 않습니다. 이 텍스트는 초보자 환경에서 물리 시뮬레이션의 큰 그림을 보여줄 수있는 훌륭한 자료이지만 CS 학생이 참여할 수있는 친숙한 샌드 박스를 소개하지는 않습니다.물리학 시뮬레이션 시작

이것은 기본적으로 작동하는 것과 작동하지 않는 것 '티. 교수님도 ActionScript를 물리 엔진과 함께 사용하기위한 교과서를 포함 시켰지만 물리 엔진이 어떻게 작동했는지에 대한 사전 지식이 필요했습니다.

내 질문은 이것이다 :

나는 반사 용지를 작성하는 과정에서 그리고 난 CS 학생들이 뛰어 수있는 쉬운 방법을 제공 이러한 텍스트에 대한 대안을 추천 할 수 있도록하고 싶습니다 코드를 작성하고 사실상 파이썬으로 노동의 결실을 볼 수 있어야합니다. 누구든지이 목적에 유용한 유용한 리소스 및/또는 텍스트를 추천 할 수 있습니까? 이 과정을 수강 한 사람들에게 당신의 경험은 무엇입니까?

+0

이것이 얼마나 관련성이 있는지 모르지만 [book] (http://www.amazon.com/Real-Time-Collision)입니다. -Detection-Interactive-Technology/dp/1558607323/ref = sr_1_1? ie = UTF8 & qid = 1336613300 & sr = 8-1) 나는 꽤 잘 쓰 였다고 생각했던 충돌 탐지에 대해 읽었습니다. – moowiz2020

답변

1

이것은 책에서 사용하는 그래픽 유틸리티이며 더 이상 개발되지 않았습니다!

틀린. FreeGLut 프로젝트를 확인하십시오.

아무도 좋은 리소스 및/또는이 목적에 유용한 텍스트를 추천 할 수 있습니까? 이 과정을 수강 한 사람들에게 당신의 경험은 무엇입니까?

Chris Hecker's physics articles을 살펴볼 수 있습니다. 그들은 오래되었지만 유용합니다. CS 학생들이 연주하는

그것은 친화적 인 샌드 박스를 소개하지 않습니다.

친절한 샌드 박스 "프로그램 아무"을 의미합니다. "재생"하려면 즉시 사용할 수있는 물리 엔진 (Bullet Physics (소스 코드와 함께 제공됨) 또는 PhysX)을 사용할 수 있지만 괜찮은 물리 시뮬레이션을 처음부터 작성하는 방법을 가르치는 것은 의심 스럽습니다. 기존 엔진이 오래 동안 개발 된 이유가 있습니다 ...

+0

그래, openGLUT과 같은 GLUT 파생물이 있지만 GLUT 자체는 더 이상 개발되지 않습니다. 위키피디아의 GLUT 기사 : "Kilgard의 GLUT 라이브러리는 더 이상 유지 관리되지 않습니다." – LavaHot

+0

또한 "sandbox"는 학생들이 코드를 추가하지 않고 기존의 물리 엔진을 사용하여 플레이한다는 것을 의미하지 않았습니다.네,이 수업은 힘들었지 만 무언가를 어떻게 작동 시킬지 찾아내는 불필요한 형사 작업이있었습니다. 저는 학생이 강제 생성기 또는 정밀한 충돌 감지기와 같은 엔진의 일부분을 정의하고 무언가에 연결하여 그래픽 데모를 얻을 수있는 클래스를 작성하는 방법을 원합니다. 그래픽은 저자 엔진에서 많이 사용되었지만 책에서 전혀 다루어지지 않았습니다. – LavaHot

+1

@LavaHot : "그러나 GLUT 자체"API가 동일하다면 누가 그것을 유지하는지 또는 그것이 "원본"인지 여부는 중요하지 않습니다. 이것이 모듈 식 설계의 장점입니다. 인터페이스가 동일한 경우 다른 라이브러리를 사용할 수 있습니다. "학생은 몇 가지 측면을 정의하는 수업을 작성할 수 있습니다."나는 쉽게 할 수있는 방법을 상상할 수 없습니다. 기존 엔진 (소스 코드 - ODE/Bullet)은 확장 성을 허용하지만 모든 개념이 특정 방식으로 엔진과 상호 작용해야하므로 상당히 복잡해질 수 있습니다. 나는 ODE/Bullet 두 가지 모두 "사용자 클래스"데모를 포함해야한다고 생각하지만 나는 certian이 아닙니다. – SigTerm