JP2013206094A - Information processor and car navigation device - Google Patents
Information processor and car navigation device Download PDFInfo
- Publication number
- JP2013206094A JP2013206094A JP2012073967A JP2012073967A JP2013206094A JP 2013206094 A JP2013206094 A JP 2013206094A JP 2012073967 A JP2012073967 A JP 2012073967A JP 2012073967 A JP2012073967 A JP 2012073967A JP 2013206094 A JP2013206094 A JP 2013206094A
- Authority
- JP
- Japan
- Prior art keywords
- texture
- storage
- unit
- target
- management information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Memory System (AREA)
- Navigation (AREA)
- Image Generation (AREA)
Abstract
Description
本発明は、テクスチャアトラスを用いて描画する情報処理装置、カーナビゲーション装置に関する。 The present invention relates to an information processing apparatus and a car navigation apparatus that draw using a texture atlas.
従来のテクスチャマッピング技術としてハードウェア処理するものが知られている(例えば、特許文献1参照)。一般的に、ハードウェア処理はソフトウェア処理より消費電力が高く、コスト高となる。 A conventional texture mapping technique that performs hardware processing is known (for example, see Patent Document 1). In general, hardware processing consumes more power and costs than software processing.
グラフィクスハードウェアのAPI(Application Programming Interface)の代表的なものにOpenGL(登録商標)、OpenGL−ES(登録商標)、DirectX(登録商標)がある。これらで使用される描画高速化手法にテクスチャアトラスがある。テクスチャアトラスとは複数のテクスチャをまとめて一つのテクスチャとするものである。テクスチャアトラスの作成はCPUおよびGPUの負荷を大きくするため、事前に作成されたテクスチャアトラスを使用するか、任意のシーンAからシーンBへ遷移する間に作成するのが一般的である。 Representative examples of graphics hardware API (Application Programming Interface) include OpenGL (registered trademark), OpenGL-ES (registered trademark), and DirectX (registered trademark). There is a texture atlas as a drawing speed-up method used in these. A texture atlas is a combination of a plurality of textures into a single texture. Since the creation of the texture atlas increases the load on the CPU and GPU, it is common to use a texture atlas created in advance or during transition from any scene A to scene B.
カーナビゲーションシステムのような低スペックな組み込みシステムの場合、テクスチャを必要なタイミングでリアルタイムに効率よく読み込む必要がある。 In the case of a low-spec embedded system such as a car navigation system, it is necessary to efficiently read a texture in real time at a necessary timing.
本発明はこうした状況に鑑みなされたものであり、その目的は、テクスチャアトラスを低負荷で高速に作成する技術を提供することにある。 The present invention has been made in view of such circumstances, and an object thereof is to provide a technique for creating a texture atlas at a high speed with a low load.
上記課題を解決するために、本発明のある態様の情報処理装置は、複数のテクスチャを統合して一時格納するためのテクスチャキャッシュメモリに、メインメモリから複数のテクスチャを順次読み出して格納するテクスチャ格納部と、前記テクスチャキャッシュメモリ内の格納状態に応じて、前記テクスチャ格納部によって格納されるべきテクスチャを分割するテクスチャ分割部と、を備える。 In order to solve the above-described problem, an information processing apparatus according to an aspect of the present invention includes a texture storage that sequentially reads and stores a plurality of textures from a main memory in a texture cache memory for integrating and temporarily storing a plurality of textures. And a texture dividing unit that divides the texture to be stored by the texture storage unit according to the storage state in the texture cache memory.
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。 It should be noted that any combination of the above-described constituent elements and a conversion of the expression of the present invention between a method, an apparatus, a system, a recording medium, a computer program, etc. are also effective as an aspect of the present invention.
本発明によれば、テクスチャアトラスを低負荷で高速に作成できる。 According to the present invention, a texture atlas can be created at a high speed with a low load.
まず本発明の実施の形態を詳細に説明する前にテクスチャアトラスについて説明する。図1(a)−(b)は、APIを用いた複数テクスチャの描画について説明するための図である。図1(a)はテクスチャアトラスを用いない場合を示し、図1(b)はテクスチャアトラスを用いる場合を示す。APIの呼び出しにはオーバーヘッドがかかるため、その呼び出し回数が少ないほうが処理速度が速くなる。 First, the texture atlas will be described before the embodiment of the present invention is described in detail. FIGS. 1A to 1B are diagrams for describing drawing of a plurality of textures using an API. FIG. 1A shows a case where a texture atlas is not used, and FIG. 1B shows a case where a texture atlas is used. Since API calls require overhead, the smaller the number of calls, the faster the processing speed.
図1(a)は9つのテクスチャをそれぞれ別のファイルで管理している場合を示している。その内の4つのテクスチャを描画する場合、アプリケーションは、描画すべきテクスチャを有効にするためのバインド命令と、テクスチャを描画するための描画命令をそれぞれ4回コールする必要があるため、合計8回のコールが必要となる。 FIG. 1A shows a case where nine textures are managed by different files. When drawing four of the textures, the application needs to call the bind command for enabling the texture to be drawn and the draw command for drawing the texture four times, so that a total of eight times. Call is required.
図1(b)は9つのテクスチャを1つのテクスチャにまとめて、テクスチャアトラスとして1つのファイルで管理している場合を示している。図1(a)と同様に4つのテクスチャを描画する場合、アプリケーションは、描画すべきテクスチャアトラスを有効にするためのバインド命令と、テクスチャアトラス内のテクスチャを描画するための描画命令をそれぞれ1回コールすれば足りるため、合計2回のコールで足りる。 FIG. 1B shows a case where nine textures are combined into one texture and managed as one texture atlas with one file. When drawing four textures as in FIG. 1A, the application executes a bind command for enabling the texture atlas to be drawn and a drawing command for drawing the texture in the texture atlas once. A total of two calls will suffice, since it is enough to make a call.
このようにテクスチャアトラスを用いることにより、APIの呼び出し回数が減り処理速度が速くなる。このテクスチャアトラスは、CPUおよびGPUの負荷が非常に高いためアプリケーションのシーンとシーンの間に準備するのが一般的である。即ち同一シーンの描画中は、キャッシュメモリへのテクスチャ読み込み、テクスチャアトラスの生成は行わない。 By using the texture atlas in this way, the number of API calls is reduced and the processing speed is increased. This texture atlas is generally prepared between scenes of an application because the load on the CPU and the GPU is very high. That is, during drawing of the same scene, the texture is not read into the cache memory and the texture atlas is not generated.
なおゲームのように次のシーンで使用されるテクスチャが予め分かっている場合は、現シーンの描画中に次のシーンのテクスチャをキャッシュメモリにプリフェッチし、テクスチャアトラスを生成することができる。しかしながら、カーナビゲーションシステムのように次のシーンで使用されるテクスチャの予測が困難な場合は、テクスチャのプリフェッチは困難である。 If the texture used in the next scene is known in advance as in the game, the texture of the next scene can be prefetched into the cache memory during drawing of the current scene, and a texture atlas can be generated. However, when it is difficult to predict the texture to be used in the next scene as in a car navigation system, it is difficult to prefetch the texture.
またカーナビゲーション装置が設置される車両内は屋内と比較し温度環境が厳しくなる傾向がある。例えば屋内に設置されるTVなどは−10℃〜40℃程度の温度環境を想定して製造されることが一般的であるが、ダッシュボードに設置されるカーナビゲーション装置は−30℃〜80℃程度の温度環境を想定して製造されることが一般的である。例えば真夏の炎天下には、ダッシュボードの温度が80℃に到達することもしばしば起きる。したがってカーナビゲーション装置には、発熱が大きくなる高スペックのCPUおよびGPUの搭載に制限がある。 Also, the temperature environment tends to be severer in the vehicle where the car navigation device is installed than in an indoor environment. For example, TVs installed indoors are generally manufactured assuming a temperature environment of about −10 ° C. to 40 ° C., but car navigation devices installed on dashboards are −30 ° C. to 80 ° C. In general, it is manufactured assuming a certain temperature environment. For example, the dashboard temperature often reaches 80 ° C. under hot summer weather. Therefore, the car navigation device has a limitation in mounting a high-spec CPU and GPU that generate a large amount of heat.
またカーナビゲーション装置に限らず、コスト削減の観点から低スペックなCPU、GPUおよびメモリを搭載している組み込みシステムも多い。このような低スペックなハードウェア資源でプリフェッチせずにテクスチャを高速に描画するには効率的にテクスチャアトラスを作成することが求められる。 In addition to car navigation devices, many embedded systems are equipped with a low-spec CPU, GPU, and memory from the viewpoint of cost reduction. In order to draw a texture at high speed without prefetching with such low-spec hardware resources, it is required to efficiently create a texture atlas.
図2(a)−(b)は、テクスチャアトラスの作成方法を示す図である。図2(a)は一般的な手法により作成されたテクスチャアトラスを示す。図2(b)は本発明の実施の形態に係る手法により作成されたテクスチャアトラスを示す。本発明の実施の形態に係る手法ではテクスチャの分割を許容する。図2(a)と図2(b)を比較すると分かるように後者のほうが、同じサイズのテクスチャアトラスに多くのテクスチャを格納でき、無駄な空き領域が少ないことが分かる。 FIGS. 2A to 2B are diagrams illustrating a method for creating a texture atlas. FIG. 2A shows a texture atlas created by a general method. FIG. 2B shows a texture atlas created by the method according to the embodiment of the present invention. The method according to the embodiment of the present invention allows texture division. As can be seen by comparing FIG. 2 (a) and FIG. 2 (b), it can be seen that the latter can store more textures in the texture atlas of the same size and has less wasted free space.
図3は、本発明の実施の形態に係るカーナビゲーション装置1000のハードウェア機能ブロック図である。カーナビゲーション装置1000は、情報処理装置100、外部記憶装置200およびユーザインタフェース300を備える。
FIG. 3 is a hardware functional block diagram of the
情報処理装置100は、CPU10a、GPU10b、メインメモリ20およびビデオメモリ30を備える。CPU10a、GPU10bおよびメインメモリ20は同一のバス40にそれぞれ接続される。
The
CPU10aはメインメモリ20からプログラムを読み込み、そのプログラムにしたがい各種の処理を実行し、本カーナビゲーション装置1000全体を統括的に制御する。GPU10bは、CPU10aの処理量を低減するためCPU10aに代わり画像処理を実行する。例えば、ジオメトリ、レンダリング等を実行する。
The
メインメモリ20はROMおよびRAMを備え、各種プログラムおよびデータを格納する一次記憶装置である。ビデオメモリ30はVRAMで構成され、テクスチャキャッシュ31およびフレームバッファ32を含む。なお図2ではGPU10bとビデオメモリ30を別のブロックで描いているが、GPU10bとビデオメモリ30は1つのダイに混載されることが多い。
The
テクスチャキャッシュ31は、描画すべきテクスチャを一時保持するためのバッファである。本実施の形態では、テクスチャキャッシュ31は複数のテクスチャが統合されたテクスチャアトラスを一時保持する。フレームバッファ32はGPU10bによりレンダリングされた画像をフレーム単位で一時保持するバッファである。なおビデオメモリ30には、ポリゴンの頂点データを一時保持するための頂点キャッシュが設けられてもよい。
The
外部記憶装置200は、ハードディスクおよびフラッシュメモリの少なくとも一方を備える。また、リムーバブルメディアである光ディスク(例えば、DVD、Blu-ray Disc(登録商標))が装着される光ディスクドライブを備えてもよいし、メモリカードが挿入されるメモリカードスロットを備えてもよい。外部記憶装置200は、各種プログラムおよびデータを格納する二次記憶装置である。外部記憶装置200に記憶されるプログラムおよびデータは、メインメモリ20に読み込まれて使用される。
The
ユーザインタフェース300は、ユーザ操作を受け付け情報処理装置100に入力するとともに、情報処理装置100に生成された画像および音声をユーザに出力する。ユーザインタフェース300は、ディスプレイ310およびタッチパネル320を備える。ディスプレイ310は情報処理装置100に生成された画像を表示する。タッチパネル320はユーザによりタッチされた位置を示す位置信号を生成し、情報処理装置100に出力する。なおディスプレイ310とタッチパネル320は一体型であってもよい。ディスプレイ310とタッチパネル320はユーザインタフェース300の一例であり、ユーザインタフェース300は様々な形態が可能である。
The
図4は、本発明の実施の形態に係る情報処理装置100のソフトウェア機能ブロック図である。処理部10はCPU10aまたはGPU10bにより実行される処理機能を示す。処理部10は、操作指示受付部11、アプリケーション実行部12、画面管理部13、格納位置決定部14、テクスチャ格納部15、テクスチャ分割部16およびテクスチャ描画部17を備える。
FIG. 4 is a software function block diagram of the
メインメモリ20には画像データ保持部21、格納管理情報保持部22およびテクスチャ管理情報保持部23が構築される。画像データ保持部21は、ポリゴンの頂点データおよびテクスチャを含む、コンピュータグラフィックス画像を生成するためのデータを保持する領域である。格納管理情報保持部22は、テクスチャキャッシュ31内のテクスチャ格納状態を示す格納管理情報を保持する領域である。テクスチャ管理情報保持部23は、テクスチャキャッシュ31に格納されたテクスチャの格納位置を示すテクスチャ管理情報を保持する領域である。
In the
操作指示受付部11は、タッチパネル320から出力される位置信号に応じてユーザの指示を解読する。アプリケーション実行部12はユーザの指示に応じた機能を実行するためのアプリケーションプログラムをメインメモリ20から読み出して実行する。画面管理部13は、アプリケーション実行部12により実行されるアプリケーションおよびタッチパネル320から出力される位置信号に応じて、次に遷移すべき画面を決定する。画面管理部13は、遷移後の画面に必要な画像データをメインメモリ20の画像データ保持部21から読み出す。
The operation instruction receiving unit 11 decodes the user instruction according to the position signal output from the
この際、テクスチャ格納部15は画像データ保持部21から、遷移後の画面に必要な画像データのうち、テクスチャを順次読み出してテクスチャキャッシュ31に格納する。テクスチャ分割部16は、テクスチャキャッシュ31内の格納状態に応じて、テクスチャ格納部15によって格納されるべきテクスチャを分割することができる。
At this time, the
格納位置決定部14は、格納管理情報保持部22に保持される格納管理情報を参照して、テクスチャ格納部15によって格納されるべきテクスチャの格納位置を決定する。テクスチャキャッシュ31はテクスチャアトラスを格納するための二次元領域(以下、テクスチャアトラス領域という)を含む。格納位置決定部14は、当該テクスチャアトラス領域の水平方向および垂直方向の一方を主走査方向および他方を副走査方向とし、原則として順次走査方式にしたがい各テクスチャの格納位置を決定する。
The storage
以下、本実施の形態では水平方向を主走査方向とし垂直方向を副走査方向とする。また画面の左上隅から右下隅に向けて、原則として飛び越しをせずに順次走査方式にしたがい各テクスチャの格納位置を決定する。 Hereinafter, in this embodiment, the horizontal direction is the main scanning direction, and the vertical direction is the sub-scanning direction. In addition, the storage position of each texture is determined from the upper left corner to the lower right corner of the screen according to the sequential scanning method without skipping in principle.
格納位置決定部14は、格納されるべき対象テクスチャの格納位置を決定する際、対象テクスチャと主走査方向に隣接する隣接テクスチャとの接触状態を判定する。対象テクスチャの隣接テクスチャ側の辺に、隣接テクスチャと非接触の部分がある場合、格納位置決定部14は対象テクスチャの格納位置を副走査方向に一単位移動させる。その状態で順次走査方式にしたがい対象テクスチャの次の格納候補位置を決定する。隣接テクスチャと非接触の部分がない場合、現在の格納候補位置を対象テクスチャの格納位置に最終決定する。なお後述するが、対象テクスチャがテクスチャアトラス領域をはみ出す場合、この限りでない。
When determining the storage position of the target texture to be stored, the storage
次の格納候補位置でも対象テクスチャの隣接テクスチャ側の辺に、隣接テクスチャと非接触の部分がある場合、格納位置決定部14は対象テクスチャの格納候補位置を副走査方向にさらに一単位移動させる。その状態で順次走査方式にしたがい対象テクスチャの次の格納候補位置を決定する。この処理を格納位置が最終決定されるまで繰り返す。
If there is a non-contact portion with the adjacent texture on the adjacent texture side of the target texture even at the next storage candidate position, the storage
本実施の形態では格納位置決定部14は対象テクスチャの左辺と、隣接テクスチャの右辺との接触状態を判定する。なお対象テクスチャの次の格納候補位置がテクスチャアトラス領域の左端である場合、この判定はスキップされる。対象テクスチャの左辺が隣接テクスチャの右辺と非接触の部分がある場合、格納位置決定部14は対象テクスチャの格納候補位置を下方向に一単位移動させる。
In the present embodiment, the storage
格納位置決定部14は、順次走査方式にしたがい対象テクスチャの格納位置を決定する際、対象テクスチャの一部が主走査方向にテクスチャアトラス領域をはみ出す場合、対象テクスチャの格納候補位置を副走査方向に一単位移動させる。また対象テクスチャの一部が副走査方向にはみ出す場合、対象テクスチャがはみ出さなくなるように対象テクスチャをテクスチャ分割部16に分割させる。
When determining the storage position of the target texture according to the sequential scanning method, the storage
本実施の形態では格納候補位置において対象テクスチャの一部がテクスチャアトラス領域の右側にはみ出す場合、格納位置決定部14は対象テクスチャの格納候補位置を下方向に一単位移動させる。また格納候補位置において対象テクスチャの一部がテクスチャアトラス領域の下側にはみ出す場合、格納位置決定部14は対象テクスチャをテクスチャ分割部16に分割させる。
In this embodiment, when a part of the target texture protrudes to the right side of the texture atlas region at the storage candidate position, the storage
格納位置決定部14は対象テクスチャの格納位置を最終決定すると、格納管理情報保持部22内に保持される格納管理情報およびテクスチャ管理情報保持部23に保持されるテクスチャ管理情報を更新する。
When the storage
対象テクスチャが分割されてテクスチャキャッシュ31に格納される場合、格納位置決定部14は分割後のテクスチャ(以下、分割テクスチャと表記する)の配置座標および分割前のテクスチャのテクスチャIDをテクスチャ管理情報としてテクスチャ管理情報保持部23に登録する。対象テクスチャが分割されずにテクスチャキャッシュ31に格納される場合、格納位置決定部14は、非分割のテクスチャの配置座標、およびそのテクスチャIDをテクスチャ管理情報としてテクスチャ管理情報保持部23に登録する。
When the target texture is divided and stored in the
分割テクスチャおよび非分割のテクスチャが矩形形状で規定される場合、配置座標として頂点座標を登録することができる。さらに分割テクスチャおよび非分割のテクスチャが正方形または長方形の形状で規定される場合、左上頂点座標と幅、高さで登録できる。 When the divided texture and the non-divided texture are defined by rectangular shapes, vertex coordinates can be registered as arrangement coordinates. Furthermore, when the divided texture and the non-divided texture are defined by a square or rectangular shape, they can be registered with the upper left vertex coordinates, width, and height.
図5(a)−(c)は、本実施の形態に係るテクスチャ格納アルゴリズムを説明するための具体例1を示す図である。上述したように、テクスチャアトラス領域にテクスチャを左上から上優先して詰めていく。ただし、格納候補位置において対象テクスチャの左側が平らでない場合、平らになるまで格納候補位置を下にシフトする。平らであるとは、対象テクスチャの左辺と接する部分全体が直線であることをいう。なお、この直線は複数のテクスチャで形成されたものであってもよい。また格納候補位置がテクスチャアトラス領域の左端の場合、対象テクスチャの左側は平らである。 FIGS. 5A to 5C are diagrams showing a specific example 1 for explaining the texture storage algorithm according to the present embodiment. As described above, textures are packed in the texture atlas area with priority given from the upper left. However, if the left side of the target texture is not flat at the storage candidate position, the storage candidate position is shifted downward until it becomes flat. “Flat” means that the entire portion in contact with the left side of the target texture is a straight line. The straight line may be formed by a plurality of textures. When the storage candidate position is the left end of the texture atlas region, the left side of the target texture is flat.
格納候補位置において対象テクスチャの左側に対象テクスチャより高さが低い隣接テクスチャが存在し対象テクスチャの左側が段差となる場合、対象テクスチャの左側が平らでないため、その格納候補位置はNGである。 When an adjacent texture having a lower height than the target texture exists on the left side of the target texture at the storage candidate position and the left side of the target texture has a step, the storage candidate position is NG because the left side of the target texture is not flat.
図5(a)にて第1テクスチャt1がテクスチャアトラス領域の左上に格納される。図5(b)にて第2テクスチャt2の最初の格納候補位置は第1テクスチャt1の右隣である。ただし第2テクスチャt2の高さが第1テクスチャt1の高さより高いため、第2テクスチャt2の左側が平らにならない。したがって最初の格納候補位置はNGである。図5(c)にて第2テクスチャt2の次の格納候補位置は第1テクスチャt1の下である。この格納候補位置では第2テクスチャt2の左側が平らであるため、この格納候補位置はOKである。 In FIG. 5A, the first texture t1 is stored at the upper left of the texture atlas region. In FIG. 5B, the first storage candidate position of the second texture t2 is right next to the first texture t1. However, since the height of the second texture t2 is higher than the height of the first texture t1, the left side of the second texture t2 is not flat. Therefore, the first storage candidate position is NG. In FIG. 5C, the next storage candidate position of the second texture t2 is below the first texture t1. Since the left side of the second texture t2 is flat at this storage candidate position, this storage candidate position is OK.
図6(a)−(d)は、本実施の形態に係るテクスチャ格納アルゴリズムを説明するための具体例2を示す図である。具体例1で説明したルールにしたがい対象テクスチャの格納候補位置を決定していくと対象テクスチャの下部がテクスチャアトラス領域を下方向にはみ出す場合がある。この場合、テクスチャアトラス領域をはみ出さないなよう対象テクスチャを水平方向に複数に分割する。その格納候補位置に格納されない残りの分割テクスチャは非分割のテクスチャと同様に扱い、テクスチャアトラス領域の空き領域に当該分割テクスチャを左上から上優先して詰めていく。 FIGS. 6A to 6D are diagrams showing a specific example 2 for explaining the texture storing algorithm according to the present embodiment. If the target texture storage candidate position is determined according to the rule described in the first specific example, the lower portion of the target texture may protrude the texture atlas region downward. In this case, the target texture is divided into a plurality in the horizontal direction so as not to protrude the texture atlas region. The remaining divided textures that are not stored at the storage candidate positions are handled in the same manner as non-divided textures, and the divided textures are packed in the empty area of the texture atlas area with priority from the top left.
図6(a)にて、まず第1テクスチャt1がテクスチャアトラス領域の左上に格納される。第2テクスチャt2の高さが第1テクスチャt1の高さより高いため、第2テクスチャt2は第1テクスチャt1の右隣に格納されず第1テクスチャt1の下に格納される。第3テクスチャt3の左辺は第1テクスチャt1の右辺と接触できないため、最初の格納候補位置である第1テクスチャの右隣はNGである。 In FIG. 6A, first the first texture t1 is first stored in the upper left of the texture atlas region. Since the height of the second texture t2 is higher than the height of the first texture t1, the second texture t2 is not stored right next to the first texture t1, but is stored below the first texture t1. Since the left side of the third texture t3 cannot contact the right side of the first texture t1, the right adjacent to the first texture that is the first storage candidate position is NG.
図6(b)にて第3テクスチャt3の次の格納候補位置は第2テクスチャt2の右隣である。ただし第3テクスチャt3の高さが第2テクスチャt2の高さよりが高いため、第3テクスチャt3の左側が平らにならない。したがってこの格納候補位置もNGである。 In FIG. 6B, the next storage candidate position of the third texture t3 is right next to the second texture t2. However, since the height of the third texture t3 is higher than the height of the second texture t2, the left side of the third texture t3 is not flat. Therefore, this storage candidate position is also NG.
図6(c)にて第3テクスチャt3の次の格納候補位置は第2テクスチャt2の下である。この格納候補位置では第3テクスチャt3の下側がテクスチャアトラス領域からはみ出す。したがってこの格納候補位置にそのまま格納することはできない。 In FIG. 6C, the next storage candidate position of the third texture t3 is below the second texture t2. At the storage candidate position, the lower side of the third texture t3 protrudes from the texture atlas region. Therefore, it cannot be stored as it is in this storage candidate position.
図6(d)にて第3テクスチャt3は第1分割テクスチャt3aと第2分割テクスチャt3bに分割される。第1分割テクスチャt3aは第2テクスチャt2の下に格納される。第2分割テクスチャt3bは、その最初の格納候補位置である第1テクスチャt1の右隣に格納される。 In FIG. 6D, the third texture t3 is divided into a first divided texture t3a and a second divided texture t3b. The first divided texture t3a is stored under the second texture t2. The second divided texture t3b is stored on the right side of the first texture t1, which is the first storage candidate position.
ここまで対象テクスチャの格納候補位置の検索を1ピクセル単位で実行する例を説明したが、以下、ブロック単位で実行する例を説明する。ブロック単位で実行することにより検索時間を短縮できる。この例ではテクスチャアトラス領域は主走査方向を長手方向および副走査方向を短手方向とするスライス状に、複数のブロックに分割される。格納位置決定部14は、順走査方式にしたがい対象テクスチャの格納候補位置を副走査方向に移動させる際、ブロック単位で移動させる。
The example in which the search for the storage candidate position of the target texture has been executed in units of one pixel has been described so far. Hereinafter, an example in which the search is performed in units of blocks will be described. Search time can be shortened by executing in blocks. In this example, the texture atlas region is divided into a plurality of blocks in a slice shape in which the main scanning direction is the longitudinal direction and the sub-scanning direction is the short direction. The storage
図7は、ブロック分割されたテクスチャアトラス領域を説明するための図である。図7に示すテクスチャアトラス領域は水平方向に8分割されており、本実施の形態ではそれぞれの領域をブロックと呼ぶ。ブロックの高さBHは設計者が設定変更可能なパラメータである。例えば、ブロックの高さBHには、画像データ保持部21に保持されるテクスチャのうち高さが最も低いテクスチャの高さを用いることができる。
FIG. 7 is a diagram for explaining a texture atlas region divided into blocks. The texture atlas region shown in FIG. 7 is divided into eight in the horizontal direction, and each region is called a block in the present embodiment. The block height BH is a parameter whose setting can be changed by the designer. For example, the height of the texture having the lowest height among the textures held in the image
ブロックの高さBHを大きくするほど格納位置の検索時間は短縮するがテクスチャアトラス領域内に隙間ができやすくなる。一方、この高さBHを小さくするほど格納位置の検索時間は長くなるがテクスチャアトラス領域内に隙間ができにくくなる。即ち処理時間とテクスチャアトラス領域の格納効率のトレードオフ関係となる。 As the block height BH is increased, the retrieval time of the storage position is shortened, but a gap is easily formed in the texture atlas region. On the other hand, as the height BH is reduced, the retrieval time for the storage position becomes longer, but it becomes difficult to form a gap in the texture atlas region. That is, there is a trade-off relationship between the processing time and the storage efficiency of the texture atlas region.
テクスチャは単一または連続する複数のブロックに左上から上優先で格納されるため、各ブロックは左側から徐々に空き領域が狭まる。本実施の形態では各ブロックのテクスチャが存在しない矩形領域(格納されたテクスチャの下側の空き領域を除く)を残り領域と呼び、その幅を残り幅RWと呼ぶ。各ブロックの残り幅RWは上のブロックから順に、格納管理情報保持部22に定義される配列に格納され管理される。
Since the texture is stored in a single or a plurality of continuous blocks with top priority from the upper left, each block gradually decreases in free space from the left. In the present embodiment, a rectangular area where the texture of each block does not exist (excluding the empty area below the stored texture) is called a remaining area, and its width is called a remaining width RW. The remaining width RW of each block is stored and managed in an array defined in the storage management
テクスチャを分割してテクスチャアトラス領域に格納する場合、各分割テクスチャの高さがブロックの高さBHの倍数になる位置でテクスチャは分割される。 When the texture is divided and stored in the texture atlas area, the texture is divided at a position where the height of each divided texture is a multiple of the block height BH.
テクスチャの格納位置を検索する際、テクスチャアトラス領域内の上のブロックから順番に格納可能か否か判定する。判定対象のブロックに格納できない場合、テクスチャの左側面の段差が存在する位置の次のブロック以降を判定対象とする。一番下のブロックで格納不能と判定された場合、テクスチャを分割する。格納可能であると判定された場合、その時点で判定を終了する。格納されたテクスチャ(分割テクスチャを含む)の位置は、テクスチャの左上頂点の座標(図7では点で描かれている)、並びにテクスチャの幅および高さによって定義され、テクスチャ管理情報保持部23に登録される。なお、テクスチャの高さがブロックの高さBH以下の場合、テクスチャの左側が平らでなくても格納できるとする。
When searching for the storage position of the texture, it is determined whether or not the texture can be stored in order from the upper block in the texture atlas area. When the block cannot be stored in the determination target block, the subsequent block after the position where the step on the left side of the texture exists is determined as the determination target. If it is determined that the lowermost block cannot be stored, the texture is divided. If it is determined that the data can be stored, the determination ends at that time. The position of the stored texture (including the divided texture) is defined by the coordinates of the upper left vertex of the texture (drawn as a dot in FIG. 7) and the width and height of the texture, and is stored in the texture management
図7に示す例では、まず第1テクスチャt1がブロックB0の左端に格納される。次に第2テクスチャt2が第1テクスチャt1の右隣に格納される。次に第3テクスチャt3は第2テクスチャt2の右隣に格納できないため、第1テクスチャt1の下に格納される。この例ではテクスチャの上辺がブロックの上辺に接するよう格納されるため、第3テクスチャt3の左上頂点がブロックB3の左上隅に位置するように格納される。 In the example shown in FIG. 7, the first texture t1 is first stored at the left end of the block B0. Next, the second texture t2 is stored on the right side of the first texture t1. Next, since the third texture t3 cannot be stored to the right of the second texture t2, it is stored under the first texture t1. In this example, the texture is stored such that the upper side of the texture is in contact with the upper side of the block, so that the upper left vertex of the third texture t3 is stored at the upper left corner of the block B3.
第4テクスチャt4は第1テクスチャt1、第2テクスチャt2および第3テクスチャt3の右隣に格納できないため、第3テクスチャt3の下のブロックB6が格納位置候補となる。しかしながらそのままでは格納できないため分割される。第4テクスチャt4はブロックの高さBHの2倍の位置で分割される。第1分割テクスチャt4aはブロックB6、B7の左端に格納される。残りの第2分割テクスチャt4bは第3テクスチャt3の右隣に格納される。 Since the fourth texture t4 cannot be stored to the right of the first texture t1, the second texture t2, and the third texture t3, the block B6 below the third texture t3 is a storage location candidate. However, since it cannot be stored as it is, it is divided. The fourth texture t4 is divided at a position twice the block height BH. The first divided texture t4a is stored at the left end of the blocks B6 and B7. The remaining second divided texture t4b is stored on the right side of the third texture t3.
図4に戻る。テクスチャ描画部17は、テクスチャ管理情報保持部23に保持されるテクスチャ管理情報を参照して、テクスチャキャッシュ31に格納されたテクスチャをポリゴンにマッピングしてフレームバッファ32に書き込む。フレームバッファ32に書き込まれた画像データは、所定の表示タイミングでディスプレイ310に出力される。
Returning to FIG. The
以下、本発明の実施の形態に係る情報処理装置100の動作について説明する。まずテクスチャキャッシュ31へのテクスチャ格納処理について説明し、次いでテクスチャキャッシュ31に格納されたテクスチャの描画処理について説明する。
Hereinafter, the operation of the
図8は、テクスチャ格納処理の全体動作を示すフローチャートである。テクスチャ格納処理は、格納位置決定処理(S10)、狭義のテクスチャ格納処理(S30)および管理情報更新処理(S40)の3段階に分類される。 FIG. 8 is a flowchart showing the overall operation of the texture storing process. The texture storage process is classified into three stages: a storage position determination process (S10), a narrow-sense texture storage process (S30), and a management information update process (S40).
図9は、格納位置決定処理を示すフローチャートである。まず、格納位置決定部14は対象テクスチャのテクスチャID、幅、高さを取得する(S11)。 格納位置決定部14は格納管理情報保持部22から格納管理情報を取得する(S12)。格納管理情報にはテクスチャアトラス領域を構成する複数のブロックの残り幅RWの配列データが含まれている。
FIG. 9 is a flowchart showing the storage position determination process. First, the storage
格納位置決定部14は格納管理情報を参照し、テクスチャアトラス領域に対象テクスチャを分割せずに格納可能な領域が存在するか否か判定する(S13)。存在する場合(S13のY)、格納位置決定部14は格納可能な領域のうち、上述のルールにしたがい対象テクスチャの格納位置を決定する(S14)。格納位置決定部14はテクスチャIDとその格納位置の座標をテクスチャ管理情報保持部23に登録する(S15)。なお対象テクスチャの幅および高さも登録してもよい。格納位置決定部14はパラメータnに1を代入し(S16)、格納位置決定処理を終了する。
The storage
パラメータn(0以上の整数)はテクスチャの分割数を示すパラメータである。パラメータnの値は次のように定義される。0はテクスチャアトラス領域に格納不可、1は分割なし、2以上は分割テクスチャの数をそれぞれ示す。 Parameter n (an integer greater than or equal to 0) is a parameter indicating the number of texture divisions. The value of parameter n is defined as follows. 0 cannot be stored in the texture atlas area, 1 is not divided, and 2 or more indicates the number of divided textures.
ステップS13にて分割せずに対象テクスチャを格納できない場合(S13のN)、対象テクスチャをブロックの高さBHで短冊状に区分し、その分割数をパラメータj(jは2以上の整数)に代入する(S17)。格納位置決定部14は初期値設定としてパラメータnに0を代入し、パラメータiに0を代入する(S18)。パラメータi(iは0以上j未満の整数)は短冊のインデックスとして使用される。
If the target texture cannot be stored without being divided in step S13 (N in S13), the target texture is divided into strips by the block height BH, and the number of divisions is set to parameter j (j is an integer of 2 or more). Substitute (S17). The storage
格納位置決定部14は各ブロックの残り幅RWを参照して、短冊(i)がいずれかのブロックに格納可能か否か判定する(S19)。格納可能な場合(S19のY)、格納位置決定部14は格納可能な領域のうち、上述のルールにしたがい短冊(i)の格納位置を決定する(S20)。格納位置決定部14はオリジナルテクスチャのテクスチャIDと、その格納位置の座標をテクスチャ管理情報保持部23に登録する(S21)。なお短冊の幅および高さも登録してもよい。なお複数の短冊を、幅が揃った状態で連続して複数のブロックに格納できる場合、その複数の短冊の格納位置をまとめて登録してもよい。例えば一番上の短冊の格納位置を示す座標と連続する短冊数を登録してもよい。格納位置決定部14はパラメータnおよびパラメータiをそれぞれインクリメントする(S22)。
The storage
格納位置決定部14はパラメータjとパラメータiを比較する(S23)。両者が一致しない場合(S23のN)、ステップS19に遷移し、一致する場合(S23のY)、格納位置決定処理を終了する。
The storage
ステップS19にて短冊(i)がいずれのブロックにも格納できない場合(S19のN)、格納位置決定部14は、これまで登録された対象テクスチャのテクスチャIDおよびその座標をテクスチャ管理情報保持部23から破棄する(S24)。格納位置決定部14はパラメータnに0を代入し(S25)、格納位置決定処理を終了する。対象テクスチャが区分された複数の短冊の一つでもテクスチャアトラス領域に格納できない場合、対象テクスチャ全体が格納不可となる。
If the strip (i) cannot be stored in any block in step S19 (N in S19), the storage
図10は、狭義のテクスチャ格納処理を示すフローチャートである。まず、テクスチャ格納部15はパラメータnを参照する(S31)。パラメータnが1の場合(S31のY)、テクスチャ格納部15は画像データ保持部21から読み出された対象テクスチャをテクスチャ管理情報保持部23に登録された格納位置に格納する(S32)。当該格納位置はテクスチャIDをキーとして検索される。
FIG. 10 is a flowchart showing the texture storing process in a narrow sense. First, the
ステップS31にてパラメータnが1以外の場合(S31のN)、テクスチャ分割部16は画像データ保持部21から読み出された対象テクスチャをブロックの高さBH単位でn分割する(S33)。テクスチャ格納部15は分割された各短冊をテクスチャ管理情報保持部23に登録された各格納位置に格納する(S34)。
When the parameter n is other than 1 in step S31 (N in S31), the
図11は、格納管理情報更新処理を示すフローチャートである。格納位置決定部14は対象テクスチャまたは各短冊の格納位置を決定すると、格納されるブロックの残り幅RWから対象テクスチャの幅を減算して当該ブロックの残り幅RWを更新する(S41)。
FIG. 11 is a flowchart showing storage management information update processing. When the storage
図12は、テクスチャの描画処理を示すフローチャートである。テクスチャ描画部17は描画すべき対象テクスチャのテクスチャIDをキーとして、テクスチャ管理情報保持部23から対象テクスチャのテクスチャ管理情報を取得する(S50)。テクスチャ描画部17は当該テクスチャ管理情報を参照してテクスチャキャッシュ31から対象テクスチャを読み出す(S51)。対象テクスチャが分割されて格納されている場合、各短冊を読み出してオリジナルテクスチャを復元する。テクスチャ描画部17は読み出した対象テクスチャをフレームバッファ32の指定位置に出力する。
FIG. 12 is a flowchart showing a texture drawing process. The
以上説明したように本実施の形態によれば、テクスチャアトラスを作成する際、テクスチャの分割を許容することにより、テクスチャアトラスを低負荷で高速に作成できる。テクスチャアトラスが作成されるテクスチャキャッシュに、新たなテクスチャが格納できなくなると、格納されているテクスチャを全て描画した後、テクスチャキャッシュ内のテクスチャアトラスを破棄して、新たなテクスチャを再生成する必要がある。本実施の形態に係るテクスチャの分割を許容するアルゴリズムでは、従来の分割を許容しないアルゴリズムと比較してテクスチャキャッシュに新たなテクスチャが格納できなくなるまでの時間が長くなる。したがって前者は後者よりテクスチャアトラスの破棄および再作成の回数を減らすことができ、前者は後者よりテクスチャアトラスを低負荷で高速に作成できる。 As described above, according to the present embodiment, when a texture atlas is created, the texture atlas can be created at low speed and with high load by allowing the texture to be divided. If a new texture cannot be stored in the texture cache where the texture atlas is created, after drawing all the stored textures, it is necessary to discard the texture atlas in the texture cache and regenerate a new texture. is there. In the algorithm that allows texture division according to the present embodiment, the time until a new texture cannot be stored in the texture cache is longer than in the conventional algorithm that does not allow division. Therefore, the former can reduce the number of times of discarding and recreating the texture atlas than the latter, and the former can create the texture atlas at a lower load and faster than the latter.
またテクスチャアトラス領域を複数のブロックに分割し、ブロック単位でテクスチャまたは分割テクスチャの格納位置を探索することにより、格納位置を決定するまでの時間を短縮できる。したがってテクスチャアトラス領域を複数のブロックに分割することにより、テクスチャアトラスをさらに低負荷で高速に作成できる。 Further, by dividing the texture atlas region into a plurality of blocks and searching for the storage position of the texture or the divided texture in units of blocks, the time until the storage position is determined can be shortened. Therefore, by dividing the texture atlas region into a plurality of blocks, the texture atlas can be created at a lower load and at a higher speed.
本実施の形態に係るテクスチャアトラスの作成および描画方法は、カーナビゲーションシステムのような低スペックな組み込みシステムに適している。特にカーナビゲーションシステムでは、シームレスな画面遷移が望まれる、ハードウェア資源(例えばCPU、GPU、メモリ)のスペックに制約がある、次にどの機能(例えばメニュー、ナビ、オーディオ、デジタルTV、路車間通信)の画面を表示するのか予測が困難、画面意匠が多くメモリ上に全てのテクスチャアトラスを格納するのが困難、等の性質から、テクスチャをリアルタイムに効率よく読み込む必要性が高い。本実施の形態に係るテクスチャアトラスの作成および描画方法をカーナビゲーションシステムに適用すれば、テクスチャアトラスをリアルタイムで高速に作成可能となる。したがって高スペックなハードウェア資源を用いずにシームレスな画面遷移が実現可能なカーナビゲーションシステムを構築できる。 The texture atlas creation and drawing method according to the present embodiment is suitable for a low-spec embedded system such as a car navigation system. Especially in car navigation systems, seamless screen transitions are desired, and there are restrictions on the specifications of hardware resources (for example, CPU, GPU, memory), which function (for example, menu, navigation, audio, digital TV, road-to-vehicle communication) ), It is difficult to predict whether to display a screen, and there are many screen designs, and it is difficult to store all texture atlases in memory. If the texture atlas creation and drawing method according to the present embodiment is applied to a car navigation system, the texture atlas can be created in real time at high speed. Therefore, it is possible to construct a car navigation system capable of seamless screen transition without using high-spec hardware resources.
以上、本発明をいくつかの実施の形態をもとに説明した。これらの実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。 The present invention has been described based on some embodiments. It is understood by those skilled in the art that these embodiments are exemplifications, and that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are also within the scope of the present invention. By the way.
例えば上述の実施の形態ではテクスチャを水平方向に分割したが、垂直方向に分割してもよいし、両方向に分割できるようにしてもよい。またブロックの高さBHをアプリケーションごとに、そのアプリケーションで使用されるテクスチャの特性に合わせて切り替え可能にしてもよい。例えばアプリケーションごとにそのアプリケーションで使用されるテクスチャの最小の高さに、切り替えてもよい。 For example, in the above-described embodiment, the texture is divided in the horizontal direction, but may be divided in the vertical direction or may be divided in both directions. The block height BH may be switched for each application in accordance with the characteristics of the texture used in the application. For example, each application may be switched to the minimum height of the texture used in the application.
1000 カーナビゲーション装置、 100 情報処理装置、 10 処理部、 10a CPU、 10b GPU、 11 操作指示受付部、 12 アプリケーション実行部、 13 画面管理部、 14 格納位置決定部、 15 テクスチャ格納部、 16 テクスチャ分割部、 17 テクスチャ描画部、 20 メインメモリ、 21 画像データ保持部、 22 格納管理情報保持部、 23 テクスチャ管理情報保持部、 30 ビデオメモリ、 31 テクスチャキャッシュ、 32 フレームバッファ、 40 バス、 200 外部記憶装置、 300 ユーザインタフェース、 310 ディスプレイ、 320 タッチパネル。 1000 car navigation device, 100 information processing device, 10 processing unit, 10a CPU, 10b GPU, 11 operation instruction receiving unit, 12 application execution unit, 13 screen management unit, 14 storage location determination unit, 15 texture storage unit, 16 texture division Unit, 17 texture drawing unit, 20 main memory, 21 image data holding unit, 22 storage management information holding unit, 23 texture management information holding unit, 30 video memory, 31 texture cache, 32 frame buffer, 40 bus, 200 external storage device , 300 user interface, 310 display, 320 touch panel.
Claims (7)
前記テクスチャキャッシュメモリ内の格納状態に応じて、前記テクスチャ格納部によって格納されるべきテクスチャを分割するテクスチャ分割部と、
を備えることを特徴とする情報処理装置。 A texture storage unit that sequentially reads and stores a plurality of textures from a main memory in a texture cache memory for integrating and temporarily storing a plurality of textures;
A texture dividing unit that divides a texture to be stored by the texture storage unit according to a storage state in the texture cache memory;
An information processing apparatus comprising:
前記格納管理情報保持部に保持される格納管理情報を参照して、前記テクスチャ格納部によって格納されるべきテクスチャの格納位置を決定する格納位置決定部と、をさらに備え、
前記テクスチャキャッシュメモリは、前記テクスチャを格納する二次元領域を有し、
前記格納位置決定部は、前記二次元領域の水平方向および垂直方向の一方を主走査方向および他方を副走査方向とし、順次走査方式にしたがい前記テクスチャの格納位置を決定し、
前記格納位置決定部は、対象テクスチャの格納位置を決定する際、前記対象テクスチャと主走査方向に隣接する隣接テクスチャとの接触状態を判定し、前記対象テクスチャの前記隣接テクスチャ側の辺に、前記隣接テクスチャと非接触の部分がある場合、前記対象テクスチャの格納候補位置を副走査方向に一単位移動させた状態で順次走査方式にしたがい前記対象テクスチャの次の格納候補位置を決定することを特徴とする請求項1に記載の情報処理装置。 A storage management information holding unit for holding storage management information indicating a texture storage state in the texture cache memory;
A storage position determination unit that determines a storage position of a texture to be stored by the texture storage unit with reference to the storage management information held in the storage management information holding unit;
The texture cache memory has a two-dimensional area for storing the texture;
The storage position determining unit determines one of the horizontal direction and the vertical direction of the two-dimensional region as a main scanning direction and the other as a sub-scanning direction, determines a storage position of the texture according to a sequential scanning method,
When determining the storage position of the target texture, the storage position determination unit determines a contact state between the target texture and an adjacent texture adjacent in the main scanning direction, and the side of the target texture on the side of the adjacent texture When there is a non-contact portion with an adjacent texture, the next storage candidate position of the target texture is determined according to a sequential scanning method with the storage candidate position of the target texture moved by one unit in the sub-scanning direction. The information processing apparatus according to claim 1.
前記格納位置決定部は、順次走査方式にしたがい前記対象テクスチャの格納候補位置を副走査方向に移動させる際、前記ブロック単位で移動させることを特徴とする請求項2または3に記載の情報処理装置。 The two-dimensional region is divided into a plurality of blocks in a slice shape with the main scanning direction as a longitudinal direction,
The information processing apparatus according to claim 2, wherein the storage position determination unit moves the storage candidate position of the target texture in the sub-scanning direction according to a sequential scanning method, in units of blocks. .
前記テクスチャ管理情報保持部に保持されるテクスチャ管理情報を参照して、前記テクスチャキャッシュメモリに格納されたテクスチャを描画するテクスチャ描画部と、
をさらに備えることを特徴とする請求項1から4のいずれかに記載の情報処理装置。 A texture management information holding unit for holding texture management information indicating a storage position of the texture stored in the texture cache memory;
A texture drawing unit that draws the texture stored in the texture cache memory with reference to the texture management information held in the texture management information holding unit;
The information processing apparatus according to claim 1, further comprising:
前記情報処理装置により生成された画像を表示するユーザインタフェースと、
を備えることを特徴とするカーナビゲーション装置。 An information processing apparatus according to any one of claims 1 to 6,
A user interface for displaying an image generated by the information processing apparatus;
A car navigation device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012073967A JP2013206094A (en) | 2012-03-28 | 2012-03-28 | Information processor and car navigation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012073967A JP2013206094A (en) | 2012-03-28 | 2012-03-28 | Information processor and car navigation device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013206094A true JP2013206094A (en) | 2013-10-07 |
Family
ID=49525120
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012073967A Pending JP2013206094A (en) | 2012-03-28 | 2012-03-28 | Information processor and car navigation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013206094A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015146517A1 (en) * | 2014-03-27 | 2015-10-01 | 株式会社ジオ技術研究所 | Image display system |
WO2016046890A1 (en) * | 2014-09-22 | 2016-03-31 | 三菱電機株式会社 | Information display control system and texture atlas creation method |
WO2017158734A1 (en) * | 2016-03-15 | 2017-09-21 | 三菱電機株式会社 | Texture mapping device and texture mapping program |
GB2593206A (en) * | 2020-03-19 | 2021-09-22 | Samsung Electronics Co Ltd | Method, apparatus and computer program for generating or updating a texture atlas |
-
2012
- 2012-03-28 JP JP2012073967A patent/JP2013206094A/en active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015146517A1 (en) * | 2014-03-27 | 2015-10-01 | 株式会社ジオ技術研究所 | Image display system |
JP2015187795A (en) * | 2014-03-27 | 2015-10-29 | 株式会社ジオ技術研究所 | image display system |
WO2016046890A1 (en) * | 2014-09-22 | 2016-03-31 | 三菱電機株式会社 | Information display control system and texture atlas creation method |
JPWO2016046890A1 (en) * | 2014-09-22 | 2017-04-27 | 三菱電機株式会社 | Information display control system and atlas image creation method |
US10109261B2 (en) | 2014-09-22 | 2018-10-23 | Mitsubishi Electric Corporation | Information display control system and method of mapping elemental images into a texture atlas |
WO2017158734A1 (en) * | 2016-03-15 | 2017-09-21 | 三菱電機株式会社 | Texture mapping device and texture mapping program |
JP6271107B1 (en) * | 2016-03-15 | 2018-01-31 | 三菱電機株式会社 | Texture mapping apparatus and texture mapping program |
DE112016006387T5 (en) | 2016-03-15 | 2018-10-18 | Mitsubishi Electric Corporation | TEXTURE-TRAINING DEVICE AND TEXTURE-TRAINING PROGRAM |
GB2593206A (en) * | 2020-03-19 | 2021-09-22 | Samsung Electronics Co Ltd | Method, apparatus and computer program for generating or updating a texture atlas |
US11514619B2 (en) | 2020-03-19 | 2022-11-29 | Samsung Electronics Co., Ltd. | Method, apparatus and computer program for generating or updating a texture atlas |
GB2593206B (en) * | 2020-03-19 | 2023-04-26 | Samsung Electronics Co Ltd | Method, apparatus and computer program for generating or updating a texture atlas |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102419745B1 (en) | Game rendering method, and game resource file creation method, apparatus, and device | |
US8724914B2 (en) | Image file generation device, image processing device, image file generation method, image processing method, and data structure for image files | |
US9373308B2 (en) | Multi-viewport display of multi-resolution hierarchical image | |
JP6709038B2 (en) | Method and computing device for performing a graphics pipeline | |
US8571338B2 (en) | Image file generation device, image processing device, image file generation method, and image processing method | |
JP5634104B2 (en) | Tile-based rendering apparatus and method | |
US8345064B2 (en) | Method and system for tile binning using half-plane edge function | |
CN105247478B (en) | For storing the method and relevant apparatus of order | |
KR20180056316A (en) | Method and apparatus for performing tile-based rendering | |
JP2018522307A (en) | Adaptive memory address scanning based on surface format for graphics processing | |
JP5320334B2 (en) | Image processing apparatus and program | |
JP6170690B2 (en) | Rendering apparatus and method thereof | |
JP2013206094A (en) | Information processor and car navigation device | |
CN105190701A (en) | Primitive-based composition | |
KR20200067222A (en) | Compression and decompression of indexes in the graphics pipeline | |
CN103218135B (en) | Screenshotss method on mobile terminal and device, mobile terminal | |
CN102959947B (en) | Image synthesizing device and picture synthesis method | |
US20130113799A1 (en) | Apparatus and method for tile binning | |
KR102248787B1 (en) | Method and apparatus for power control for GPU resources | |
CN105100862A (en) | Grid movement display processing method and grid movement display processing system | |
US10373286B2 (en) | Method and apparatus for performing tile-based rendering | |
CN116529775A (en) | Method and apparatus for ray tracing merge function call | |
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
CN102446362B (en) | Two-dimensional object packing | |
JP2017005544A (en) | Image information processing method |