Модераторы: javastic
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> вывод текста 
:(
    Опции темы
admsasha
Дата 26.5.2012, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 28.1.2005

Репутация: нет
Всего: 6



Нужно в приложении сделать вывод текста, например отсчет времени


В интернете нашел примерно следующую реализацию.
Код

        int[] textures = new int[1];
        gl.glGenTextures(1, textures, 0);        
        
        Bitmap mBitmap = Bitmap.createBitmap(256, 256, Bitmap.Config.ARGB_4444);
        Canvas canvas = new Canvas(mBitmap);
        mBitmap.eraseColor(0);
        
        Paint textPaint = new Paint();
        textPaint.setTextSize(32);
        textPaint.setAntiAlias(true);
        textPaint.setARGB(0xff, 0x00, 0x00, 0x00);
                                Typeface chops = Typeface.createFromAsset(context.getAssets(),"test.ttf");
                                 textPaint.setTypeface(chops);

        canvas.drawText(text, 10,30, textPaint);
        
        
        gl.glBindTexture(GL10.GL_TEXTURE_2D, textures[0]);
        
        gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MIN_FILTER, GL10.GL_NEAREST);
        gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_MAG_FILTER, GL10.GL_LINEAR);
        
        gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S,GL10.GL_CLAMP_TO_EDGE);
        gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T,GL10.GL_REPEAT);

        GLUtils.texImage2D(GL10.GL_TEXTURE_2D, 0, mBitmap, 0);



Но вот что не понятно. Текст динамический, т.е. за время существования приложения создается сотня текстур. Неужели это правильный подход ?


PM MAIL WWW ICQ Jabber   Вверх
skitalec6
Дата 8.6.2012, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 6.6.2012
Где: Самара

Репутация: нет
Всего: нет



Код

Paint mScorePaint = new Paint();
        mScorePaint.setTextSize(23);    
        mScorePaint.setStrokeWidth(4);
        mScorePaint.setStyle(Style.FILL);
        mScorePaint.setTextAlign(Paint.Align.LEFT);
        mScorePaint.setFakeBoldText(true);


Код

protected void onDraw(Canvas canvas){

canvas.drawText("Text",25, 30, mScorePaint);

}



Или вам требуются именно с текстурой?
PM MAIL WWW   Вверх
admsasha
Дата 8.6.2012, 16:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 763
Регистрация: 28.1.2005

Репутация: нет
Всего: 6



нет, требуется именно в opengl. canvas и opengl использовать одновременно не получится (не считая рисование в текстуре). На сколько я знаю.

Это сообщение отредактировал(а) admsasha - 8.6.2012, 16:55
PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Android | Следующая тема »


 




[ Время генерации скрипта: 0.0627 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.