Показать сообщение отдельно
Старый 07.08.2014, 15:37
Dron1564 вне форума Посмотреть профиль Отправить личное сообщение для Dron1564 Найти все сообщения от Dron1564
  № 11  
Ответить с цитированием
Dron1564

Регистрация: Oct 2010
Сообщений: 69
Вы абсолютно правы, я использовал не правильный меш
Правильный меш, код:
Код AS3:
    private var _vertexData:Vector.<Number> = new <Number>[
        0,0,0, 0, 0, 0, 1,// x, y, z, r, g, b,a
        1, 0, 0, 0, 0, 0, 1,
        1, 1, 0, 0, 0, 0, 1,
        0, 1, 0,0, 0, 0,1
    ];
 
 
        var perspectiveProjectionMatrix:Matrix3D = new Matrix3D();
        var scaleX:Number = 2.0 / _stage.stageWidth;  // 2.0 / 500
        var scaleY:Number = -2.0 / _stage.stageHeight; // -2.0 / 375
        perspectiveProjectionMatrix.copyRawDataFrom(
                new <Number>[
                    scaleX, 0.0, 0.0, 0.0,
                    0.0, scaleY, 0.0, 0.0,
                    0.0, 0.0, -1.0, 0.0,
                    -1.0, 1.0, 0.0, 1.0
                ]
        );
        var modelViewMatrix:Matrix3D = trs(stage.stageWidth/2,stage.stageHeight/2, _rotation*Math.PI/180, _width*_globalScaleX, _height*_globalScaleY );
        var resultMatrix:Matrix3D = new Matrix3D();
        resultMatrix.prepend(perspectiveProjectionMatrix);
        resultMatrix.prepend(modelViewMatrix);
        _context.setProgramConstantsFromMatrix(Context3DProgramType.VERTEX, 0,resultMatrix , true);

Работает идеально, ещё раз спасибо.