На некоторых устройствах (до настоящего времени Samsung Galaxy Note 2 и 3 + Xperia Z1) я получаю эту ошибку, вызову с вызовом Gluniformmatrix4fv (UmatrixLocation, 10, False, Matrix, 0), чтобы установить матрицу преобразования.
Ошибка: < /p>
java.lang.IllegalArgumentException: length - offset < count*16 < needed
at android.opengl.GLES20.glUniformMatrix4fv(Native Method)
< /code>
И это вызвано этой строкой в моем коде Textureshaderprogram: < /p>
glUniformMatrix4fv(uMatrixLocation, 10, false, matrix, 0);
< /code>
uMatrixLocation - указатель местоположения матрицы var
10 - количество матриц преобразования (так matrix.length () = 10 * 16 = 160 )
matrix - это Float [] Valible, содержащая все данные о преобразовании
, а 0 - смещение в матрице < /p>
Я пытался увеличить переменная графа для его решения, но без успехов. br />https://android.googlesource.com/platfo ... gles20.cpp
P> и эти конкретные строки делают проверку и выбросьте вышеуказанную ошибку: < /p>
_remaining = _env->GetArrayLength(value_ref) - offset;
if (_remaining < count*16) {
_exception = 1;
_exceptionType = "java/lang/IllegalArgumentException";
_exceptionMessage = "length - offset < count*16 < needed";
goto exit;
}
< /code>
any clue about why these devices throw the error?
Could the cpp file on these devices differ from the other devices?
added 20140114 18:47
These are the float values passed to glUniformMatrix4fv(uMatrixLocation, 10, false, matrix, 0)< /code> в переменной матрицы: < /p>
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.0
my float is: -0.8425926
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.098958336
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: -0.296875
my float is: -1.1574074
my float is: -0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: -0.098958336
my float is: -1.1574074
my float is: -0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.296875
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: -0.8240741
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: 0.8240741
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.0
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
< /code>
and this is my vertex shader:
uniform mat4 u_Matrix[10];
attribute lowp float a_MatrixIndex;
attribute vec4 a_Position;
attribute vec2 a_TextureCoordinates;
attribute vec3 a_Color;
varying vec3 v_Color;
varying vec2 v_TextureCoordinates;
void main()
{
v_Color = a_Color;
int MatrixIndex = int(a_MatrixIndex);
v_TextureCoordinates = a_TextureCoordinates;
gl_Position = u_Matrix[MatrixIndex] * a_Position;
}
Подробнее здесь: https://stackoverflow.com/questions/211 ... rixlocatio
Android, странная ошибка в Opengles 2.0 Calling Gluniformmatrix4fv (UmatrixLocation, 10, False, Matrix, 0) ⇐ Android
Форум для тех, кто программирует под Android
1739661983
Anonymous
На некоторых устройствах (до настоящего времени Samsung Galaxy Note 2 и 3 + Xperia Z1) я получаю эту ошибку, вызову с вызовом Gluniformmatrix4fv (UmatrixLocation, 10, False, Matrix, 0), чтобы установить матрицу преобразования.
Ошибка: < /p>
java.lang.IllegalArgumentException: length - offset < count*16 < needed
at android.opengl.GLES20.glUniformMatrix4fv(Native Method)
< /code>
И это вызвано этой строкой в моем коде Textureshaderprogram: < /p>
glUniformMatrix4fv(uMatrixLocation, 10, false, matrix, 0);
< /code>
uMatrixLocation - указатель местоположения матрицы var
10 - количество матриц преобразования (так [b] matrix.length () = 10 * 16 = 160 [/b])
matrix - это Float [] Valible, содержащая все данные о преобразовании
, а 0 - смещение в матрице < /p>
Я пытался увеличить переменная графа для его решения, но без успехов. br />https://android.googlesource.com/platform/frameworks/base/+/refs/heads/master/core/jni/android_opengl_gles20.cpp
P> и эти конкретные строки делают проверку и выбросьте вышеуказанную ошибку: < /p>
_remaining = _env->GetArrayLength(value_ref) - offset;
if (_remaining < count*16) {
_exception = 1;
_exceptionType = "java/lang/IllegalArgumentException";
_exceptionMessage = "length - offset < count*16 < needed";
goto exit;
}
< /code>
any clue about why these devices throw the error?
Could the cpp file on these devices differ from the other devices?
[b]added 20140114 18:47[/b]
These are the float values passed to glUniformMatrix4fv(uMatrixLocation, 10, false, matrix, 0)< /code> в переменной матрицы: < /p>
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.0
my float is: -0.8425926
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.098958336
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: -0.296875
my float is: -1.1574074
my float is: -0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: -0.098958336
my float is: -1.1574074
my float is: -0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.296875
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: -0.8240741
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: 0.8240741
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.9010416
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.5625
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 1.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: 0.0
my float is: -1.0
my float is: 0.0
my float is: 0.0
my float is: -1.1574074
my float is: 0.0
my float is: 1.0
< /code>
and this is my vertex shader:
uniform mat4 u_Matrix[10];
attribute lowp float a_MatrixIndex;
attribute vec4 a_Position;
attribute vec2 a_TextureCoordinates;
attribute vec3 a_Color;
varying vec3 v_Color;
varying vec2 v_TextureCoordinates;
void main()
{
v_Color = a_Color;
int MatrixIndex = int(a_MatrixIndex);
v_TextureCoordinates = a_TextureCoordinates;
gl_Position = u_Matrix[MatrixIndex] * a_Position;
}
Подробнее здесь: [url]https://stackoverflow.com/questions/21112743/android-strange-error-in-opengles-2-0-calling-gluniformmatrix4fvumatrixlocatio[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия