問題タブ [tga]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
2725 参照

c++ - C++ OpenGL TGA の読み込みに失敗する

私は、3D オブジェクトのテクスチャとして使用する TGA ファイルのロードに関する基本的な OpenGl チュートリアルに取り組んできました。TGA ヘッダーからデータをロードできましたが、実際の画像データをロードしようとすると失敗します。どこが間違っているのかわかりません。これが私のテクスチャ読み込みクラスです:

ヘッダー ファイル:

cpp のロード TGA 関数は次のとおりです。

いくつかのデータをロードしているようですが、失敗したことを返し続けます。理由についての助けをいただければ幸いです。少し言葉が長くなってしまったら申し訳ありませんが、何が重要で何が重要でないかはわかりません。

更新:そのため、関数を書き直しました。私が使用していた ifsteam が問題の原因のようでした。具体的には、入力したよりもはるかに多くのバイト数のデータをロードしようとします。動作の原因はわかりませんが、機能しているコードを以下にリストしました。ご協力ありがとうございました。

0 投票する
1 に答える
205 参照

c++ - Targa が Photoshop からのものかどうかを確認する方法は?

*.tgaファイル リーダーを書き込もうとしているときに問題が発生しました。32 ビット targas の場合、Photoshop はアルファ チャネルを 255 で埋めます。これはまだ標準であり、動作しますが、16 ビット targas では、photoshop はアルファ ビットをゼロで埋めます。

Targa が Photoshop からのものであることを確認して、アルファ ビットを 1 で埋める方法はありますか?

0 投票する
3 に答える
2486 参照

c++ - Targa ファイル C++ の読み込みに関する問題

タイトルが示すように、.tga ファイルの読み込みに問題がありました。私はこれを参照用に使用してきましたが、私が知る限り(C関数の代わりにC++関数を使用することを除いて)、同じことをしています。テクスチャは得られますが、あるべきものの文字化けしたバージョンであり、その理由がよくわかりません。すべての間違いを許してください、私はそれを機能させようとしているだけです。

ヘッダ:

Cpp:

0 投票する
2 に答える
1371 参照

android - AndroidNDKポインター演算

AndroidNDKにTGAファイルを読み込もうとしています。

AssetManagerを使用してファイルを開き、TGAファイルの内容全体をメモリバッファーに読み込んでから、そこからピクセルデータを抽出しようとします。

ファイルのTGAヘッダー部分を問題なく読み取ることができますが、メモリポインタをTGAヘッダーを超えて進めようとすると、アプリがクラッシュします。メモリポインタを進めようとしないと、クラッシュしません。

Android NDKには、ポインター演算に関する何らかの制限がありますか?

コードは次のとおりです。

この関数はアセットファイルを開きます:

そして、ここで私のテクスチャクラスでそれをロードしようとします:

上記の行を次の行に置き換えると(間違っていても)、明らかにテクスチャが台無しになっていますが、アプリは実行されます。

誰かアイデアはありますか?

ありがとう。

0 投票する
1 に答える
253 参照

direct3d - FrontBuffer にはアルファ値がありますか?

GetFrontBufferData メソッドを使用して .tga 画像を保存しようとしましたが、アルファ値が失われました。それらは完全に 1 つです。RenderTarget または BackBuffer から正しいアルファ値を取得できましたが、rgb 値は正しくありません。シーンが存在してもすぐに表示されます,backbuffer はまだ frontbuffer よりも暗いようです。
Q1: FrontBuffer
にはアルファ値がありますか?
Q2:透明なものをレンダリングしようとすると、バック バッファーとフロント バッファーのデータの違いは何ですか?

0 投票する
0 に答える
344 参照

php - php tga を開いて tga を保存する

TGA (32 ビット) を編集しようとしています。目標は、ファイルを開き、テキストを追加して、TGA (32 ビット) として再度保存することです。

いくつかのスクリプトを使用して TGA ファイルを開くことができましたが、TGA としても保存するには imagick が必要なようです。(しかし、imagickではTGAを開くことができません)。

誰かがtgaファイルを32ビットで保存する例を持っていますか? 開くために、.jpg ファイルから作業することもできます

ありがとう

ウーター

0 投票する
1 に答える
538 参照

c++ - OpenGl で TGA ファイルを読み込んで 3D マウスを作成する

TGA ファイルと、TGA を読み取って使用するために必要なものがすべて含まれているライブラリがあります。

このクラスには、pixels() というメソッドがあり、ピクセルが RGBRGBRGB として格納されているメモリ領域を指すポインターを返します。

私の質問は、どうすればピクセル値を取得できますか?

私がこのようなものを作るとしたら:

適切なアドレスが返されます。

このサイトでこのコードを見つけました:

私にとってはうまくいくと思いますが、プログラムに img から読み取るように指示するにはどうすればよいですか?

0 投票する
1 に答える
1943 参照

c++ - Targa/TGAの表示に関する問題

TargaReaderのごくわずかな問題。1つのピクセルがオフで、2つの余分なピクセルが黒です:S

私がロードしている24ビットのtargaファイルは次のようになります。 ここに画像の説明を入力してください

左上隅の白いピクセルに注目してください。左上の最初のピクセルは白です。

しかし、ファイルのピクセルを24ビットビットマップとして保存すると、次のようになります。 ここに画像の説明を入力してください

白いピクセルが右上にあり、その上に2つの黒いピクセルがあることに注意してください。

私は一生の間、それ以外のすべてが正しい理由を理解することはできません。TGAをロードできるようになるのに非常に近いので、それは私を悩ませています。

以下の私のコードの何が問題になっていますか?Photoshopで作成された16、24、32ビットのTGAファイル用のTGAリーダーを書いています。

0 投票する
2 に答える
1881 参照

c++ - 24ビットTGAをロード

TGAファイルをロードするTGAローダーを作成しました。32ビットのTGAファイルを問題なくロードおよび保存しますが、24ビットのロードおよび保存に関しては混乱します。

PhotoshopのTGA24ビットファイルの例:

ここに画像の説明を入力してください

私の出力:

ここに画像の説明を入力してください

何が悪いのか分かりますか?ビットマップローダーと同じ方法でパディングを実行しましたが、TGAは機能しません。:S以下のコードは、誰かがテストしたい場合に備えて、TGAをコンパイルおよびロードできます。

0 投票する
2 に答える
544 参照

c++ - C ++ tgaの一部の解像度でのerror_color/distortionの解析

.tga ファイル形式の解析に関する問題について、助けを求めたいです。私は長い間使用しているコードを持っています:

ただし、一部の画像解像度(ほとんどの場合、奇数および非 POT 解像度)では失敗し続けます。歪んだ画像(斜めのパターン)または間違った色になります。前回遭遇したときは、奇妙な色を示す 9x9 24bpp の画像でした。

私はWindows上にいます(つまり、リトルエンディアンを意味します)、openglでレンダリングしています(glTexImage2Dで画像データを渡すときに、アルファチャネルの存在を考慮しています)。RLEフラグを設定せずに、Photoshopで画像を保存しています。このコードは、常に正しい画像解像度と色深度を読み取ります。

問題を引き起こす画像の例: http://pastie.org/private/p81wbh5sb6coldspln6mw

問題のある画像を読み込んだ後、このコード:

これを出力します:

だから私はそれが正しいデータを読み取ると思います。それが私たちをopenglに導きます。

テクスチャ圧縮コードは、そのテクスチャに対してアクティブではないため、省略されています。