Проблемы с добавлением Physijs.Vehicle к сцене - PullRequest
0 голосов
/ 28 мая 2019

Ошибка при добавлении Physijs.Vehicle в Physijs.Scene THREE.Object3D.add: объект не является экземпляром THREE.Object3D

Попытался просмотреть пример транспортного средства на странице Physijs, но те же шаги не работают. Соответствующий код из примера:

var loader = new THREE.JSONLoader();
loader.load( "models/mustang.js", function( car, car_materials ) {
    loader.load( "models/mustang_wheel.js", function( wheel, wheel_materials ) {
            var mesh = new Physijs.BoxMesh(
                car,
                new THREE.MeshFaceMaterial( car_materials )
            );
            mesh.position.y = 2;
            mesh.castShadow = mesh.receiveShadow = true;

            vehicle = new Physijs.Vehicle(mesh, new Physijs.VehicleTuning(
                10.88,
                1.83,
                0.28,
                500,
                10.5,
                6000
            ));
            scene.add( vehicle );

мой код:

var physiBox = new Physijs.BoxMesh(
         box.geometry,
         box.material
    );
physiBox.name = "PhysiBox";
var vehicle = new Physijs.Vehicle(physiBox, new Physijs.VehicleTuning(
                10.88,
                1.83,
                0.28,
                500,
                10.5,
                6000
            ));
scene.add(vehicle );

Стоит отметить, что я могу обойти эту ошибку, передав в файл vehicle.mesh, но тогда на транспортном средстве явно не настроены физические параметры. Похоже, что другие Physijs Mesh являются расширением THREE.Mesh, но не Vehicle, что вызывает проблемы.

1 Ответ

0 голосов
/ 28 мая 2019

Кажется, это известная проблема с Physijs: https://github.com/chandlerprall/Physijs/issues/282

...