Articles of opengl es

Можно ли рендерить в RGB888 с OpenGL?

Я играл некоторое время с OpenGL на Android на разных устройствах. И если я ошибаюсь, рендеринг по умолчанию всегда выполняется с использованием формата RGB565. Тем не менее я хотел бы сделать более точные цвета с помощью RGB888. В документации GLSurfaceView упоминаются два метода, которые относятся к форматам пикселей: Метод setFormat (), открытый SurfaceHolder , возвращаемый […]

Основы NDK и OpenGL для Android

Я пытаюсь работать с NDK для рендеринга изображения openGL на Android. Я взял базовый курс графики и знаком с открытым GL. Я рассмотрел несколько примеров, таких как проект в Сан-Анджелесе, но понятия не имею, что происходит. Я знаком с такими вызовами, как glBegin (GL_LINES) ;. Я не вижу ничего подобного в этом месте. Кажется, что […]

Текст Android Рисование с opengl es падает через несколько минут

Я создал поверхность opengl, и все работает отлично, однако, когда я пытаюсь нарисовать текст на нем, используя следующий метод: public void loadFPSTexture(GL10 gl){ Bitmap bitmap = Bitmap.createBitmap(256, 256, Bitmap.Config.RGB_565); bitmap.eraseColor(Color.BLACK); Canvas canvas = new Canvas(bitmap); Paint textPaint = new Paint(); textPaint.setTextSize(35); textPaint.setFakeBoldText(true); textPaint.setAntiAlias(true); textPaint.setARGB(255, 255, 255, 255); canvas.drawText("FPS "+reportedFramerate, 10,35, textPaint); gl.glGenTextures(1, texturesFPS, 0); gl.glBindTexture(GL10.GL_TEXTURE_2D, […]

Какова цель onSurfaceChanged?

Я не совсем понимаю, какова цель этого метода. В документации для Android говорится, что это когда размер экрана изменяется. Означает ли это размер окна просмотра или что именно это означает? Какие вызовы opengl следует делать в методе.

Как передать int массив в шейдер Android OpenGl

Я очень новичок в OpenGl и шейдерах в целом. Я хочу использовать статический массив int из моего java-кода в шейдере фрагментов, чтобы манипулировать цветом камеры. Есть ли способ передать в моем массиве int шейдер или просто заставить шейдер иметь доступ к моему массиву? Спасибо, Майк

GlClearColor не работает правильно (android opengl)

Я хочу изменить цвет фона моего приложения во время выполнения. Таким образом, при нажатии кнопки я сначала вызываю: GLES20.glClearColor(color[0], color[1], color[2], color[3]); Затем я звоню: GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT | GLES20.GL_DEPTH_BUFFER_BIT); И он ничего не делает! Он сохраняет текущий цвет фона – не меняет его. Но когда я приостанавливаю приложение и возобновляю его, цвет фона меняется. EDIT: Я […]

Open GL Bad Config Ошибка на Samsung S4

Я получаю следующую ошибку на Samsung S4 10-21 16:25:44.100: E/AndroidRuntime(29778): FATAL EXCEPTION: GLThread 11320 10-21 16:25:44.100: E/AndroidRuntime(29778): Process: <bundle ID>, PID: 29778 10-21 16:25:44.100: E/AndroidRuntime(29778): java.lang.RuntimeException: createContext failed: EGL_BAD_CONFIG 10-21 16:25:44.100: E/AndroidRuntime(29778): at android.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1201) 10-21 16:25:44.100: E/AndroidRuntime(29778): at android.opengl.GLSurfaceView$EglHelper.throwEglException(GLSurfaceView.java:1192) 10-21 16:25:44.100: E/AndroidRuntime(29778): at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1042) 10-21 16:25:44.100: E/AndroidRuntime(29778): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1409) 10-21 16:25:44.100: E/AndroidRuntime(29778): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1248) Ошибка […]

Android. Как перемещать объект в направлении, к которому он обращен (с использованием Vector3 и Quaternion)

Я использую libGDX (совершенно новый для него на самом деле) и Android. И я хочу переместить 3d-объект в направлении, в котором он находится (с некоторой скоростью). Я думаю, что это основной вопрос, но он не может найти прямой ответ. У меня есть Quaternion, представляющий вращение объекта (направление), и у меня есть Vector3, представляющий позицию объекта. […]

Как сделать мультисэмплинг в Android OpenGL ES?

Возможный дубликат: Как избавиться от краев Jagged в Android OpenGL ES? Я хочу сделать Antialiasing в своих приложениях. Но он не работает независимо от того, что я сделал. Мой код public void onSurfaceCreated(GL10 gl, EGLConfig config){ g10 = gl; gl.glClearColor(0f, 0, 0.0f, 1.0f); gl.glEnableClientState(GL10.GL_VERTEX_ARRAY); gl.glEnableClientState(GL10.GL_TEXTURE_COORD_ARRAY); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_REPEAT); gl.glTexParameterx(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_REPEAT); gl.glSampleCoverage(1.f, true); gl.glEnable(GL10.GL_DITHER); gl.glEnable(GL10.GL_MULTISAMPLE); […]

Играть в видео с помощью opengles, android

Как играть в видео, используя opengl es в android?