問題タブ [skcropnode]
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.
swift - SKSpriteNode を別の SKSpriteNode でマスクできますか
タイトルが尋ねるだけで、これが可能かどうか疑問に思っています。SKCropNode のほとんどの例では、テクスチャまたは形状を使用しています。私が達成したいのは、カスタム形状のマスクです。方法があれば教えてください!
swift - Private Boolean:SwiftでSKCropNodeに設定する方法は?
SKCropNode
ソースイメージでカバーされていない、影響を受けるノードからすべてのものを削除することで機能します。これはマスキングの 1 つのタイプであり、もう 1 つはこのロジックを逆にして、ソース イメージでカバーされていないすべてのものを明らかにすることです。
SKCropNode
と呼ばれるこの状態を設定するためのブールスイッチがあり、invertMask
十分に賢明です。
厄介なのは、一見プライベートなことです。
すべてのアプリ ストアの承認プロセス、プライベート API の危険性などを脇に置き、テストするのが興味深いものであることを受け入れる場合...これはテストの目的のみです...
invertMask
Swiftでこれをtrueに設定するにはどうすればよいですか?
アップデート:
接線的に類似した質問に対する他の回答があります。
Swift で iOS プライベート API にアクセスするには?
しかし、それは私を助けませんし、Swiftでこの特定の質問でブール値、この特定のものを設定する方法に対する直接の答えでもありません。
ここでセレクターについて質問しましたが、その目標を達成するためにセレクターを使用または理解する必要がないことを示す回答を受け入れました: SKAction のセレクターとは: perform(_:onTarget:)
しかし、Swift でこのブール値を設定するには、セレクターを使用するために必要な正確な構文を理解する必要があるようです。それが何であるか、またはそれを行う方法もわかりません。
しかし、このブール値を (Swift で) 設定する他の方法は確かに問題ありません。
swift - SpriteKit のマスキングと物理演算
SKCropNode
SpriteKit で使用する場合、マスキングはノードの物理に影響しますか? (例: スプライトの半分を切り取ると、ボールは画像のマスクされた部分を通過しますか?) この場合、SKCropNode を作成して、どこに触れても切り取られるようにするにはどうすればよいでしょうか?
乾杯
ios - Swift SpriteKit インバース マスキングはデバイスでは機能しませんが、シミュレーターでは機能します
これを実現するコードは非常に簡単です。
同じコード、同じ iOS、異なる結果 = ブエノなし
ios - SpriteKit SKCropNode が間違った領域を切り取る
私はSpriteKit
グラフを描くために使用しています(ズームインとパンが可能です)。
を使用しSKCropNode
てグラフのグリッドをトリミングすると、目的の領域がトリミングされません。長方形SKShapeNode
またはSKSpriteNode
(画像付き)をとして使用しても、トリミングは少なくなり.maskNode
ます。
これが私のコードです:
私が言いたいことを説明するための2つのスクリーンショットを次に示します。
これは maskNode が設定されたグラフです。lightGray 領域は実際のものrectangularNode
であり、グリッドは必要以上にカットされていません。
シーンは拡大縮小されているため、ピクセル化せずにズームインできます。ズームを無効にすると (シーンのサイズをビューのサイズに設定)、バグは消えます。残念ながら、ピクセルアーティファクトなしでズームする必要があります。
誰かがこの問題を解決する方法を知っているかもしれません。SpriteKit のバグの可能性もあります。