タグ付けされた質問 「unity」

Unityは、簡単なアートパイプラインプロセスに焦点を当てたクロスプラットフォームのゲーム作成システムです。ゲームエンジンと統合開発環境で構成されています。ゲームエンジンのスクリプトはMono上に構築されています。

4
Unityの無限3D洞窟
友人と私は、Unityでゲームを作って、無限の3D洞窟を飛んで、あらゆる方向にねじれたり曲がったりできることを望んでいます(ただし、ターンが不可能になるほどで​​はありません)。私たちは、それぞれが一定量曲がるトンネル「ピース」をいくつか作成し、前に来たものの最後にそれぞれを生成することを考えていました。 しかし、1つのトンネルピースの口が常に前のトンネルピースの端と完全に(位置と回転の両方で)整列することを確認する方法はわかりません。これを達成する方法について誰かがアドバイスを提供できますか? 私たちもそれを正しい方法で行っていますか、それとも手続き的に洞窟を生成するより良い方法がありますか?ボーナスポイント:洞窟の直径や形が変わる可能性があれば素晴らしいでしょう。

2
Unityのビルトインフィジックスを使用して、リジッドボディが互いに移動しないようにするにはどうすればよいですか?
オブジェクトをドラッグできるゲームを作ろうとしていますが、物理に問題があります。質量が類似しているリジッドボディを使用すると、ドラッグ時に互いに突き抜けて、不要な動きが発生することがあります。こちらがデモです。 Unity 3Dの組み込みの物理演算のみを使用してこれを実行したいと思います。 デモでは、マウスを使用してオブジェクトをクリックしてドラッグできます。円柱はすべてボックスコライダーと質量10000です。また、向きに応じてさまざまな制約があります(どれも回転できず、すべてxまたはyで制約されます)。球体の質量は1、球体コライダー、およびz拘束です。 球と円柱はうまく相互作用します。ただし、円柱を互いにドラッグすると、交差が発生します。これいらない! 円柱の補間は「補間」に設定され、衝突検出は「連続」に設定されています。'DontGoThroughThings'スクリプトをすべてのシリンダーにスローしましたが、何も実行しないようです。リジッドボディの速度の設定に関しては、以下の両方のラインを使用して、基本的に同じ結果が得られました。 rb.AddForce(speed * diff * Time.deltaTime - rb.velocity, ForceMode.VelocityChange); //rb.velocity = speed * diff * Time.deltaTime; 独自の衝突検出コードを書かなければ、アイデアはありません。簡単な設定や見逃したものはありますか? コンテキストが説明されたので、より正確な質問を次に示します。「デモのシリンダーが互いに移動しないようにするにはどうすればよいですか?」

3
2人のレーシングプレーヤーの同期を保つにはどうすればよいですか?
私は、テンプルランのマルチプレイヤーバージョンのように、Unityモバイルゲームに取り組んでいます。モバイルプラットフォームが原因で、ネットワークのレイテンシが変動している(通常は200〜500ミリ秒)ように見えます。 2人のプレイヤーキャラクターは同じパスに沿って走っているように示され、障害物を通過するために単純なアクション(ジャンプ、スライド、パワーアップなど)を実行する必要があります。 メッセージが遅れると、ゲームはリモートプレイヤーが障害物を通過したと見なします。これは通常はうまく機能しますが、プレイヤーが障害物によって殺された場合、リモートプレイヤーがローカルプレイヤーと同じ障害物/位置で死んでいるように見せたいです。レイテンシが原因で、リモートプレーヤーは、死を告げるメッセージが届く前に障害物を越えたように見えます。 プレーヤーの同期を維持するにはどうすればよいですか? 死のメッセージが届いたらすぐにリモートプレーヤーをローカルプレーヤーの死の位置に戻してみました。視覚的に不自然に見え、他の同期の問題が発生する可能性があります。

4
2Dゲームアセットの作成は通常の2Dアートとどう違うのですか?[閉まっている]
休業。この質問には、より焦点を当てる必要があります。現在、回答を受け付けていません。 この質問を改善してみませんか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てます。 6年前休業。 私は過去にデジタルペインティングやコンセプトスケッチをいくつか行ったことがあり、それらのスキルをゲームの制作に活用することを考えていました。 アーティストの観点から、彼のアートワークを「ゲーム準備」または「ゲームフレンドリー」にするために、彼は別の方法/追加で何をしなければなりませんか? Unityで2Dを使用することに主に関心があります。おそらくアイソメトリックビュー(いわゆる2.5D)を使用します。
8 2d  unity  art  assets  pipeline 

2
BlenderとMecanim間のアニメーションワークフロー
私は最近Unityの学習を始めました。Unityのアプリストアから入手した標準FBXにカスタムアニメーションを追加できないことは、本当に私を遅くしています。Blenderにインポートすると、アニメーションは表示されません。私は3D Studio Maxも購入しましたが、少しは良くなっていますが、それでもまだ学習曲線は急です。 Blenderまたは3D Studio Maxでアニメーションを作成して、既存のMecanimモデルに適用できますか? 基本モデルを手動で作成してリグし、インポートして、そのアニメーションを別のキャラクターに移動する必要がありますか、それとももっと簡単な方法はありますか?

2
テクスチャ画像座標に基づいて球の内側に曲線メッシュを作成する
ブレンダーでは、内部にパノラマテクスチャを持つ球を作成しました。また、別のテクスチャを描画できる内壁に位置する平面メッシュ(球のサイズに一致するように湾曲した)を手動で作成しました。 これは素晴らしいですが、手作業を減らし、スクリプトでこの作業の一部を実行したいと思います。たとえば、パノラマ画像用の変数や、新しいものと置き換えたい写真の領域の座標を持っているようなものですメッシュ。 これを行う際の最も難しい部分は、球の内壁に配置できるコードで曲線メッシュを作成することです。 誰かが私を正しい方向に向けることができますか?

2
Unity3Dはインポートされた.obj頂点数をどのように減らしますか?
Unity3Dが.objファイルのインポートをどのように処理するかについて質問があります。私はこのティーポットをインポートしています:http : //groups.csail.mit.edu/graphics/classes/6.837/F03/models/teapot.obj このティーポットにある頂点の数は3644です。UnityのMeshクラスは、同じ頂点によって共有される各面に対してこれらの頂点を複製する必要があることを知っています。.objからインポートしたキューブでこれを試し、Debug.Log()を使用して頂点の数を出力しました。メッシュの頂点配列には24個の頂点があることがわかりました。 ただし、ティーポットでは元のファイルに3644の頂点があったため、Unityでは頂点の数は18960になります。代わりに、メッシュの頂点配列の長さを出力すると、3260(元のファイルよりも短い)と出力されます。 この最終的な目的は、UnityのWikiからOBJインポータースクリプトを変更して、このスクリプトから生成される頂点の数がUnityのネイティブインポーターと同じになるようにすることです。参照:http ://wiki.unity3d.com/index.php?title=ObjImporter注:このインポーターを使用して頂点数を出力したところ、結果は18960でした。 この頂点の削減がどのように達成されるかについて誰かが知っていますか?
8 unity  geometry  vertex  obj 

1
2.5d視差効果を作成するにはどうすればよいですか?
私は3Dグラフィックスとプログラミングにある程度のバックグラウンドがありますが、ゲーム開発は初めてです。現在、さまざまな可能性を模索しており、RPGゲームを作りたいと思っています。私は古典的な2Dアイソメビューについて考えていましたが、Diablo 2の外観と遊び方が本当に好きです。 私の質問は、-Diablo 2の視差効果をどのようにして実現できるのですか?すべてがベイクされたライトとシャドウで手描きされたように見え、見栄えも素晴らしく見えますが、移動すると遠近感に気づきます。 たとえば、Photoshopで正射投影法(古典的なピクセルアートスタイル、平行線のみ)で列を含む大きなホールを描いたとします。キャラクターが動き回るときに、このシーンに視差効果をどのように与えますか?すべてにカメラに面したスプライトを使用すると、遠くで問題なく見えるかもしれませんが、たとえば、文字が列(円柱)に近づくと、それは本当に偽物になります。 助言がありますか?ブリザードはディアブロ2でどのように視差効果を作りましたか? このスクリーンショットを参照してください:http : //guidesmedia.ign.com/guides/10629/images/act2tombs.jpg
8 2d  unity  graphics  2.5d 

1
OpenGLで頂点を描画する最も効率的な方法
私はOpenGL 3Dゲームを書いています。地形や使用中のオブジェクト用の多数の三角形があります。 私はOpenGL公式ガイドから勉強していて、最初に提示された方法は、描画したい各頂点のglVertex後に関数を呼び出すglBeginことです。 ただし、何千もの三角形を描く必要がある場合、この方法はかなり古くて非効率的です。各フレームで変化しない情報をグラフィックカードのメモリに保存する方法があるので、各フレームをレンダリングすると、その情報はすでにそこにあります。より「不安定な」情報については、おそらくフレームごとに新しい頂点データを送信する必要があるため、別の手法の方が効率的かもしれません。 私の質問に来ます:頂点情報をハードウェアに送信し、レンダリングするための指示を与えるために使用される最も近代的で効率的なOpenGL関数と技術の明確な説明をお願いします。 フレーム中にめったに変化しない頂点データをレンダリングするための順序を送信するための最良の方法とOpenGLツールは何ですか(私は地形とオブジェクトについて考えます)、フレーム中に大きく変化する頂点データを送信するための最良の方法は何ですか?

1
2DスプライトのMipマップにより、上の黒い線が発生します。どうしてこれなの?
Unityは初めてです。私はそれを試し、コード優先のアプローチにFutileを使用していますが、Unityシステムを使用してテクスチャをインポートしています。 私が抱えている問題は、ミップマップを使用して、大きなスプライトをギザギザのエッジなしで小さいサイズに縮小すると、スプライトの上に黒い線のアーティファクトが発生することです。 少し見にくいですが、そこにあります。解像度を下げると、はっきりと見えます。 これらは私のテクスチャ設定です: 私の質問は、なぜこれらの黒い線がここにあるのですか?私が犯した間違いですか?それは単なる一般的な副作用ですか?どうすればこれらを減らすことができますか?また、これが間違ったアプローチである場合、ゲームでスムーズスプライトを使用して、スムーズにスケールアップできるようにする方法を教えてください。 ありがとう!

4
Unity3D Mobileでのスレッドとコルーチンの混合
Unity3Dにコルーチンがあり、サーバーからzipをダウンロードして永続データパスに抽出し、その内容をメモリにロードしました。フローは次のようになります。 IEnumerator LongCoroutine() { yield return StartCoroutine(DownloadZip()); ExtractZip(); yield return StartCoroutine(LoadZipContent()); } しかし、このExtractZip()方法(DotNetZipライブラリを使用)は同期的であり、時間がかかりすぎて、プロセス中に処理する場所がありません。 これにより、大きなzipを抽出しようとすると(モバイルデバイスで)アプリケーションが強制終了されました。これは、メインスレッドが長時間応答しなくなったことが原因と考えられます。 これはモバイルOSが行うことが知られていることですか(フレームに時間がかかりすぎる場合はアプリを終了します)? したがって、別のスレッドでzipを抽出すると問題が解決する可能性があると想定しましたが、うまくいったようです。私はこのクラスを作成しました: public class ThreadedAction { public ThreadedAction(Action action) { var thread = new Thread(() => { if(action != null) action(); _isDone = true; }); thread.Start(); } public IEnumerator WaitForComplete() { while (!_isDone) yield return null; …

2
購入したUnity3Dライセンス(クラックされたアプリではない)でゲームが開発されたかどうかを確認する場所と方法は?
私たちは東部の国から外部チームを雇いました。彼らはUnity3dを使用してモバイルゲームアプリを構築しました。私たちは購入したライセンスのあるソフトウェアのみを使用するように依頼しましたが、クラックされたものは使用しないでください。 これで、公式ストアにアプリを公開する準備が整いました。Unity3dのメンバーは、アプリが購入済みのライセンスによるものか、クラックされたソフトウェアによるものかを常に確認できることをネットで読みました。彼らがそれがクラックされたソフトウェアで作られたことを発見した場合、彼らはそのアプリを禁止し、おそらく私たちを起訴するでしょう。 私たちのソフトウェアが実際に100%ライセンスされたunity3dソフトウェアによって作成されたことを確認するためのそのようなツールはどこにありますか?
8 android  3d  unity  ios 

2
Unity:プログラムによる変更をテレインSplatPrototypeに適用する方法?
テレインオブジェクトを追加するスクリプトがあります(パブリックテレインフィールドにテレインをドラッグアンドドロップします)。 テレインはすでにUnityで2つのPaintTexturesが設定されています。1は正方形(タイルサイズで設定され、市松模様のパターンを形成する)で、2つ目は草の画像です。 また、最初のPaintTextureのターゲット強度が低下しているため、市松模様のパターンによって下にある草の一部も表示されます。 ここで、実行時に、最初のPaintTextureのタイルサイズを変更します。つまり、さまざまな実行時の条件に応じて、チェッカーを増減します。Unityのドキュメントを調べたところ、Terrain.terrainData.SplatPrototypeこれを変更できる配列があることがわかりました。またRefreshPrototypes()、terrainDataオブジェクトのFlush()メソッドとオブジェクトのメソッドがありTerrainます。だから私はこのようなスクリプトを作りました: public class AStarTerrain : MonoBehaviour { public int aStarCellColumns, aStarCellRows; public GameObject aStarCellHighlightPrefab; public GameObject aStarPathMarkerPrefab; public GameObject utilityRobotPrefab; public Terrain aStarTerrain; void Start () { //I've also tried NOT drag and dropping the Terrain on the public field //and instead just using the commented line …

2
Unity3DがVirtualBoxでクラッシュするのはなぜですか?
LinuxのVirtual Boxソフトウェアを使用して、Windowsの仮想インスタンスでUnity3Dを実行しています。DirectXのサポートでゲスト追加をインストールしました。Windows XP SP3 32ビット、およびWindows 7 64ビットを使用してみました。私のホストはUbuntu 12.04 64ビットです。 Unityを両方にインストールして登録しました。正常にロードされ、VirtualBoxインスタンス全体がクラッシュします(警告なしでコンピューターがシャットダウンするのと同じです)。

2
歪みのないビルボードレンダリング?
私はUnity内のビルボードに標準的なアプローチを使用していますが、これは問題ありませんが、理想的ではありません。 transform.LookAt(camera) 問題は、特に視野角が大きくなると、ビューポートのエッジに向かって歪みが発生することです。これは、例えば、あなたが見る完璧なビルボードとは異なります。スクリーンスペースのどこにいるかに関係なく、任意の角度から敵を見ると破滅します。 明らかに、画像をビューポートに直接ブリットして単一の頂点を中心に配置する方法がありますが、シェーダーは苦手です。 誰かがこのアプローチのサンプル(可能な場合はGLSL)を持っているか、それが通常この方法で行われない理由(前述の四角形変換メソッドと比較して)に関する提案はありますか? 編集:私は混乱しました、頭を上げてくれたネイサンに感謝します。もちろん、クワッドにカメラを向けさせても、クワッドがビュープレーンに平行になることはありません-これが必要です。
8 unity  shaders  glsl 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.