2011-12-19 8 views
0

私は特定の位置にテキストを表示する球を開発しています。私はCBFGで試してみましたがAPIですが、画面上の固定位置にテキストが表示されています。しかし、私はonTouchListenerで動かすことができる動的なテキストを持つ必要があります。私の球でそれは上のビットマップで、うまく動作しますが、私はテキストでそれを作ることができますか?オブジェクト上のOpenGLのテキスト

+2

が含まれて聞こえますレンダリングされたテキストを生成し、生成されたテクスチャを球面に配置します。テキストをビットマップにレンダリングし、それを球のテクスチャとして使用する必要があります。 – Nerdtron

+0

mmh大丈夫ですが、テキスト位置と球面上の位置を一致させる必要があります(コンパスのように次数に依存します)。どのように可能ですか?いい例はありますか? –

+0

テクスチャ座標を使用して、球上のテクスチャの位置/向きを制御します。テクスチャ座標はテクスチャ内の位置をジオメトリの頂点に割り当てます。おそらく、テクスチャマッピングのどのサンプルでも始められるはずです。テクスチャを球にマッピングする方法、テクスチャ座標を球にマッピングする方法を制御する情報、実行時にテクスチャイメージにレンダリングする情報などが必要になります。 – Nerdtron

答えて

0

私は私の問題を解決する:あなたは、実行時にテクスチャを生成するように

TextView textV = new TextView(context); 
     LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(128, 128); 
     textV.setLayoutParams(layoutParams); 
     textV.setTextColor(Color.WHITE); 
     textV.setBackgroundColor(Color.TRANSPARENT); 
     textV.setGravity(Gravity.CENTER); 
     textV.setText(text); 

     textV.setDrawingCacheEnabled(true); 
     Bitmap b = Bitmap.createBitmap(textV.getLayoutParams().width, textV.getLayoutParams().height, Bitmap.Config.ARGB_8888);     
     Canvas c = new Canvas(b); 
     textV.layout(0, 0, textV.getLayoutParams().width, textV.getLayoutParams().height); 
     textV.draw(c); 
     textV.setDrawingCacheEnabled(false); 

そのコードで私はテクスチャとして使用することができますビットマップを取得します;-)

関連する問題