3D 모델을 볼 때 약간의 장면을 만들려고합니다.GLGE API setRot/setRotX가 작동하지 않습니다.
GLGE Collada 예제를 수정하여 코드에서 .dae 모델을 추가했습니다.
http://goleztrol.nl/SO/GLGE/01/
내가 지금까지 작동
있어 무엇. 애니메이션을 사용하여 카메라를 회전합니다. 이 모델은 다음과 같은 코드를 사용하여, 현장에서 추가 및 제거 '추가'및 '제거'버튼을 사용하여
('오리'신경 쓰지 마. 그것은 원래의 예에 오리이었다.)
var duck = null;
function addDuck()
{
if (duck) return;
duck = new GLGE.Collada();
doc.getElement("mainscene").addCollada(duck);
duck.setId("duck");
duck.setDocument("amyrose.dae");
duck.setLocY(-15);
duck.setRotX(1);
duck.setScale(2);
}
function removeDuck()
{
if (!duck) return;
doc.getElement("mainscene").removeChild(duck);
duck = null;
}
문제
이제는 모델이 눕고 서 있어야합니다. 요소의 다양한 메소드가 작동하는 것 같습니다. 위치가 설정되고 눈금이 설정되지만 setRotX에 대한 호출이 무시 된 것 같습니다. api에서 다양한 다른 메소드를 시도했지만 setRotY, setRot, setQuatX 및 setDRotX가 모두 실패한 것으로 보입니다. 나는 어떤 오류도 발생하지 않는다. 나는 1.57 (약 90도이어야 함) 값을 시도했지만, 1에서 180까지의 다른 값도 시도했다.
내가 뭘 잘못하고 있는지 알 수 없다. 물론 Blender에서 모델 자체를 회전시킬 수는 있지만 GLGE API를 사용하여 모델을 만들고 싶습니다. 업데이트
내가 데모 모델, seymourplane_triangulate.dae
을로드
는 회전 작동합니다. 분명히 내 모델은 회전 할 수 없다는 점이 다릅니다. 나는 그 이유를 이해하지 못한다. 모델이 여러 가지 분리 된 메쉬로 만들어 졌기 때문에 그럴 수 있다고 생각했지만 스케일링 및 이동이 작동하는 이유를 알지 못합니다.
이 모델의 문제점을 아는 사람이 있습니까? 그리고 그것을 고치기 위해 내가 할 수있는 일은 무엇입니까?
장면이 포함 된 XML 파일의 초기 회전 설정이 작동합니다. 다른 요소 (예 : 전체 장면)에 회전을 설정하면 효과가 있습니다.
업데이트에 콜백에서이 작업을 수행 할 수 있습니다. 그것은 회전하지만, 이렇게로드 할 때 스킨을로드하지 않습니다. 분명히 AmyRose와 Seymour Plane의 차이는 분명합니다. Blender를 사용하여 문제를 해결하는 방법을 아는 사람이 있습니까? – GolezTrol