3D 공간에서 대화 형 데이터 시각화를 수행하는 작은 웹 앱을 개발할 계획입니다.Backbone.js 및 three.js - 캔버스가있는 MVC
가장 넓은 브라우저 호환성을 위해 WebGL, 캔버스 또는 SVG를 사용하여 동일한 장면을 렌더링 할 수 있으므로 three.js가 최상의 선택입니다.
이상적으로, 나는 멋진 MVC 레이어를 제공하고 아약스 쓰기에 지루한 일을 피하기 위해 backbone.js를 사용하고 싶다. 그러나 내가 그걸로 멀리 가기 전에 누군가 경험/팁/단어가 있는지 궁금해했다. 그 일을하려고 애쓰는 데
캔버스 또는 WebGL을 가정하면 backbone.view가 three.js 모델을 지원하기 위해 매우 쉽게 추상화 된 것처럼 보입니다. 렌더링 함수는 오버라이드 (override) 될 예정입니다. 나는 캔버스에 간단한 청취자를 붙일 수 있고, 그 다음에 우리는 몇 가지 3 가지 방법을 사용할 수 있습니다. 이벤트를 발생시키는 특정 모델을 끌어 내기 위해 속임수를 씁니다 (가장 어려운 작업 인 것처럼 보입니다). 백본 모델 및 컬렉션은 내 API로 제대로 작동합니다 (필자는 생각합니다). 컨트롤러는 아마도 조금 더 어려울 지 모르지만 카메라 위치 등을 저장하여 사용할 수도 있습니다.
SVG 렌더링에서는 모든 요소가 DOM에 포함되어있어 분명히 단순화되었지만 장면에 1,000 개 이상의 개체가있는 경우에도 SVG가 좋은 옵션인지 궁금합니다. 누구나 SVG에서 큰 장면 그래프를 경험 한 적이 있습니까?
렌더링이나 백본과 유사한 다른 라이브러리가 더 좋은 방법일까요? 이 문제에 대한 제안은 열려 있습니다.
콘텐츠 간의 전환을 관리하는 데 'Backbone.Controller'를 사용하는 것이 좋습니다. 나는. 여러 게임이나 여러 레벨 또는 많은 새로운 데이터를로드해야하는 모든 것을 관리합니다. 컨트롤러는 또한 특정 게임/레벨에 대한 마크 해시 뱅 URL을 예약 할 수 있도록 해시 뱅 라우팅에 연결되어야합니다. – Raynos
안녕하세요. 관심사로서, 어떻게이 일을 시작 했습니까? 복잡한 컴퓨터 그래픽을 사용하는 backbone.js 앱의 사례를 거의 보지 못했고 모델을 캔버스의 "보기"에 바로 바인딩 할 수 없기 때문에 최상의 솔루션인지 궁금합니다. – Binaromong