問題タブ [pvrtc]

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 投票する
2 に答える
1869 参照

cocos2d-iphone - Cocos2D: マスク画像の使い方

キャラクター アニメーションにスプライト シートを使用するゲームに cocos2d を使用しています。TexturePacker を使用してこれらの画像を作成しました。現在、何らかの理由でメモリ消費を削減するために PVRTC 4 形式を使用したいと考えています。しかし、PVRTC テクスチャ圧縮の使用ガイドが示唆しているように、適切な結果を得るには、各文字に 4 ピクセルの余分な境界線を追加する必要があります。境界線を追加しても、実行時にこの画像をアルファ画像でマスクして境界線を削除する必要があります。Texture Packer を使用して PVRTC4 形式のスプライト シートを作成し、それに一致するアルファ マスキング イメージを作成しました。幅と高さが同じ 2 つの画像を用意しました。

私の質問は、Cocos2D で PVRTC テクスチャをアルファ イメージでマスクするにはどうすればよいですか?

提供されているソリューションが Batch Nodes で機能する場合は、さらに役立ちます!

解決策をお寄せいただきありがとうございます。

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

iphone - PVR テクスチャを一連のタイルに分割するツールはありますか?

私は 1 つの大きな png テクスチャ 4096x4096 をメモリにロードする必要があります。既に大きな png テクスチャを 16 個の 1024x1024 タイルに分割してから、それらを PVR 圧縮ファイルに変換しました。

問題は、これらのタイルを描画すると、タイル間のエッジが png と同じではないことです。それで、1 つの 4096x4096 PVR テクスチャを生成し、それを 16 個の 1024x1024 PVR タイルに分割するツールがあると思いますか??

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

iphone - PVRtexturetoolビルドフェーズ

私は現在、iPhoneの3Dプログラミングの本を完成させています

この本は、提供されたtexturetoolを実行するために、次のPythonコードをxcodeのビルドフェーズに追加すると述べています。

本の引用

a。シェルは/bin/shのままにします。

b。これをスクリプトボックスに直接入力します。

c。これを入力ファイルに追加します。

これを出力ファイルに追加します。

ただし、これを行うと、次のメッセージが表示されます。

誰かがこれに光を当てることができますか?

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

cocos2d-iphone - Cocos2d ゲームでより多くの PNG を読み込む際の問題。「PNG から Pvr.ccz」への変換に必要な提案

私のゲームでは、2048x2048 の寸法のいくつかのスプライト シート (6-7) と 1024x1024 といくつかの 512x512 を含む 13-15 個の Png を読み込んでいます。

そして今、私は巨大なメモリの警告に直面しています。ゲーム内のスプライト シートの数を減らす方法はありません :(.

そこで、2048x2048 のスプライト シートをすべて png から pvr.ccz 形式に変換することを考えています。

それは最適な解決策ですか、それとも私が完全に見逃している何か他のものがありますか?

どんな助けでも大歓迎です。

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

ios - png画像データをPowerVRに変換するためのOSX「texturetool」にはどのような代替手段がありますか

PNG画像をPowerVR圧縮画像に変換するためのXCodeに付属しているコマンドラインプログラムtexturetoolの代替手段について知りたいのですが。

何らかの理由で、 texturetoolは、作業中の画像の一部を変換するのに約50秒かかります。約1.3mioの画像を圧縮すると、数か月かかります。

今、私はLinuxまたはOSXのいずれかで実行されている他のツールを探しています。イメージは手続き的に生成されるため、メモリ内のC++ライブラリが最も望ましいです。

答えを得たいです。

ありがとう。

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

ios - 画像を PVRTC 形式に変換する方法

ターミナルを使用してjpgleft という名前の画像をpvrtcフォーマットに変換すると、次のようになります。

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

c++ - Qt と OpenGL で PVR をレンダリングする方法

PVR のレンダリング方法に関していくつかの問題があります。

PVR から画面にデータを取得する方法について混乱しています。絵を描く準備ができているウィンドウがあり、少し行き詰まっています。テクスチャを描画できるようにするには、PVR からパラメーターとして何を取得する必要がありますか? ローカルで jpeg と png を使用すると、ディレクトリから画像をロードするだけで済みますが、PVR ではどのように同じことが起こるのでしょうか?

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

ios - NPOT PVR テクスチャを iOS 内で POT に変換

iOS に NPOT PVR テクスチャを手動でロードしたいと思います (テクスチャを OpenGL メモリにロードするという意味ではありません。キャンバスを拡大して再度保存するために画像データにアクセスできるカスタム データ構造にロードすることを意味します)。新しい PVR)。

多くの背景テクスチャ (非 Retina ディスプレイでは 480 x 320) を持つ OpenGL iOS アプリケーションを実装しているため、私はこれを求めています。このテクスチャを NPOT PVR ファイルとして保存する予定であるため、3GS+ iPhone でメモリを節約できます。

3G- iPhone は、非 OpenGL メモリに NPOT PVR テクスチャをロードできません。私の意図は、すべての NPOT PVR テクスチャを POT PVR に変換し、アプリのキャッシュ フォルダーに保存する 3G デバイス用の前処理ステップを実装することです。

この方法で PVR を読み込んで処理することは可能ですか? たとえば、TexturePacker によって生成された PVR です。

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

opengl-es - 透明な領域のPVRテクスチャがcocos2dに白をロード

iOSアプリのcocos2dに多数のPVRテクスチャを読み込んでいますが、PVRテクスチャの透明な領域が白で読み込まれています。

コマンドを使用してテクスチャを作成しましたtexturetool -e PVRTC -o $file.pvr -f PVR $file

TexturePackerアプリで表示すると、テクスチャは透明度を示しているように見えます。

これらを機能させるためにcocos2dに設定する必要があるものはありますか?または、異なるフラグを使用してtexturetoolを実行する必要がありますか?

TexturePackerで表示されるテクスチャ

アプリ内で表示されるテクスチャ

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

ios - テクスチャの「二乗」によって引き起こされるテクスチャの歪み、およびミップマッピングとの相互作用にどのように対処しますか?

自然に正方形ではないテクスチャ(たとえば、アスペクト比が4:1の写真のテクスチャ)があるとします。そして、PVRTC圧縮を使用して、このテクスチャをiOSデバイスに表示したいとします。これには、テクスチャが正方形である必要があります。圧縮時にテクスチャが正方形になるように拡大すると、テクスチャを遠くから見たときに非常にぼやけた画像になります。

これはミップマッピングが原因だと思います。ミップマップフィルターは新しいより大きな引き伸ばされた寸法を認識するため、それを使用して低いミップレベルを選択しますが、これらのピクセルはちょうどそのサイズに引き伸ばされているため、実際には正しくありません。他の次元を見ると、より高い解像度のmipレベルが選択されます。

この理論は、正方形である必要のない形式でテクスチャを残すと、ミップマップバージョンがちょうどダンディに見えるという観察によって(ある程度)確認されています。

LODバイアスパラメータがありますが、ドキュメントにはそれが両方の次元に適用されると書かれています。求められているのは、LODにバイアスをかける方法のようですが、1つの次元にのみバイアスをかけます(つまり、スケールアップされたテクスチャの次元でより高い解像度にバイアスをかける)。

元のテクスチャの正方形のサブセットを使用できるようにジオメトリを切り刻む以外に(これは実行不可能であり、本番パイプラインを提供します)、この問題に対処するために使用した巧妙なハックはありますか?