点群OBJアップロード後に裏面が消える仕組み
点群から作成したOBJをアップロードしたあと、モデルを回転させると地表面や壁面が突然見えなくなることがあります。正面からは正常に表示されているのに、下側や内側へ視点を移すと透明になったように消える場合、必ずしもOBJファイルが破損しているわけではありません。代表的な原因として、面の表側だけを描画し、裏側を描画対象から外す表示処理が挙げられます。
3Dモデルを構成する面には表側と裏側があります。一般的なポリゴン描画では、どちらを表側として扱うかは、画面へ投影された頂点の並び順を基準に判定されます。法線は面に対して垂直な方向情報で、主に照明、陰影、反射などへ影響します。編集ソフトでは面の反転と法線の反転が連動することもありますが、背面カリングの判定と法線の役割は分けて考える必要があります。
表示環境が表側の面だけを描く設定になっていると、視点に対して裏向きと判定された面は画面に表示されません。この処理は背面カリングと呼ばれます。背面カリングは、閉じた立体を効率よく描画するために利用される一般的な仕組みです。
箱型の構造物を外側から見る場合、反対側にある面や内部へ向いた面は通常見えません。そのような面を描画しないことで、表示に必要な処理を抑えられる場合があります。形状が閉じており、面の頂点順序が一貫していて、陰影用の法線も適切であれば、背面カリングが有効でも大きな問題は生じにくいと考えられます。
一方、測量点群から作成したメッシュは、地表や壁の表面だけを一枚の薄い面として表していることがあります。現実の地面や構造物には厚みがありますが、OBJ内のポリゴン自体には厚みがありません。地表面を下から見上げると、面が裏向きと判定され、モデル全体が消えることがあります。
道路面、法面、造成面、屋根面、擁壁、トンネル内面、建物の外壁なども同様です。表面だけをメッシュ化したデータは、通常想定している方向からは見えても、反対側からは見えない場合があります。断面確認や内部確認のために視点を移動した際、突然面が消える場合は、表裏判定やカリング設定が関係している可能性があります。
ただし、モデル全体ではなく一部の三角形だけが消える場合は、単純な背面カリングだけが原因とは限りません。頂点の並び順が部分的に反転している、陰影用の法線が不統一で暗く見えている、同じ位置に面が重なっている、アップロード時の変換や最適化で面が削除されたといった可能性もあります。
点群 OBJ アップロード後の表示不具合を解決するには、最初から両面表示だけに頼るのではなく、症状を観察して表示設定と元データの問題を分けて考えることが重要です。モデル全体が反対側から一様に消える場合は両面表示を確認し、まだら状に消える場合は面の向き、法線、接続状態を確認するという順序で進めると、原因を絞り込みやすくなります。
点群とメッシュを区別して原因を絞り込む
実務では、点群から変換したOBJをまとめて点群OBJと呼ぶことがあります。しかし、OBJファイルに記録されている内容は一様ではありません。頂点、点要素、線、三角形や四角形などの面を記録できるため、同じ拡張子でもデータ構造が異なることがあります。
裏面が消える現象を調べる前に、アップロードしたOBJが点として表示されるデータなのか、面を持つメッシュなのかを確認する必要があります。面の表裏や背面カリングが直接関係するのは、主にポリゴン面を含むメッシュデータです。点だけで構成されるデータには、ポリゴン面の表側と裏側という考え方はありません。
OBJには点を表す要素もありますが、すべてのアップロード先や閲覧環境が点要素を同じように表示できるとは限りません。頂点だけが記録されたOBJを点群として扱う環境もあれば、面がないため表示対象として扱わない環境もあります。純粋な点群OBJを利用する場合は、アップロード先が点表示へ対応しているかも確認します。
点群が視点や距離によって見えにくくなる場合は、背面カリング以外の設定が関係している可能性があります。点の表示サイズが小さすぎる、視点から離れた点が間引かれている、表示点数に上限がある、描画範囲から外れている、階層表示で低密度になっている、透明度が高いといった原因を確認します。
一方、点群から表面生成を行ったOBJには、多数の面が含まれています。画面上では点が密集しているように見えても、実際には小さな三角形が連続したメッシュである場合があります。このようなデータでは、面の頂点順序と表示側のカリング設定が結果へ直接影響します。
OBJの内容を確認できる環境では、頂点数だけでなく面数や点要素の有無も確認します。面数がゼロであれば、ポリゴンの背面カリングが直接の原因である可能性は低くなります。多数の面が含まれていれば、両面表示、面の向き、法線、材質、変換処理を順番に確認します。
元の点群をメッシュ化する際には、地表の上面だけを生成する方法と、外周面や底面を追加して閉じた立体を作る方法があります。上面だけのメッシュは比較的軽量で、上空から地形を確認する用途に向いています。ただし、地表の下側や外周の外側から見ると面が消えることがあります。
外周面と底面を追加した閉じたモデルは、外側から見たときの表示が安定しやすく、一般的なメッシュ体積計算にも利用しやすくなります。その一方で、面数やデータ容量が増える可能性があります。また、外周形状や底面高を適切に設定しなければ、実際には存在しない面を追加することになるため、用途を明確にする必要があります。
閲覧や現場共有が中心で、薄い地形面を上下両側から確認したい場合は、両面表示が有効です。体積計算、閉鎖性確認、干渉判定など、立体としての整合性が必要な場合は、表面だけを両面表示するのではなく、形状を閉じる処理や穴の修復が必要になることがあります。
最初にデータの種類を確認しておけば、点データに対して面法線を修正しようとしたり、メッシュの裏面消失を点密度だけで解決しようとしたりする無駄を避けられます。
設定1 背面カリングを無効にして両面表示へ切り替える
モデル全体が反対側から一様に消える場合、最初に確認したいのが背面カリングの設定です。アップロード先や閲覧環境によって名称は異なりますが、両面表示、両側表示、背面描画、カリングなし、背面カリング無効などの項目として用意されていることがあります。
両面表示を有効にすると、一枚の面を表側と裏側の両方向から描画できます。地表面や壁面のように厚みを持たないメッシュを、下側や内側からも確認したい場合に適しています。表示設定だけで切り替えられる環境であれば、元のOBJを作り直す前に試しやすい方法です。
両面表示の設定場所は、環境によって異なります。モデル全体の描画設定として用意されている場合もあれば、材質ごとに設定する場合もあります。アップロード時の変換画面、モデルのプロパティ、材質の編集画面、閲覧時の表示設定など、複数の場所に分かれていることもあります。
モデル全体へ両面表示を適用したつもりでも、一部の面だけが消える場合は、材質ごとの設定や変換後の表示設定が優先されていないかを確認します。OBJ内で地表、壁、屋根、構造物などに異なる材質が割り当てられていると、両面表示が有効な部分と片面表示の部分が混在することがあります。
設定変更後は、正面だけで判断せず、モデルの下側、内側、真横、斜め後方などへ視点を移動します。反対側からも面が見えるようになれば、主な原因が背面カリングだったと判断しやすくなります。
ただし、両面表示を有効にしても、裏側が表側と同じ明るさや色で表示されるとは限りません。照明計算が法線方向を基準に行われる場合、裏側が暗く表示されることがあります。面自体は描かれていても背景と近い色になると、消えているように見える場合があります。
形状を確認する段階では、陰影を弱めた表示や不透明な単色表示へ切り替えると、面の有無を判断しやすくなります。両面表示を有効にした状態で単色表示では見えるものの、通常の材質表示では見えにくい場合は、法線、照明、透明度なども確認します。
また、両面表示は欠けた面を復元する機能ではありません。面そのものがOBJ内に存在しない場合や、アップロード処理で削除された場合は、両面表示を有効にしても穴は埋まりません。一部だけが不規則に欠ける場合は、面の向きや最適化処理へ確認を進めます。
両面表示は、薄い面を閲覧するための実用的な設定ですが、常に最適とは限りません。閉じた立体で面方向が正常な場合は、片面表示のほうが不要な描画を抑えられることがあります。地形面だけを両面にし、閉じた構造物は片面のままにするなど、形状ごとに使い分けると効率的です。
設定2 面法線の向きを外側へ統一する
両面表示に切り替えると面は見えるものの、陰影が不自然になる場合や、面ごとに明るさが大きく異なる場合は、法線の向きを確認します。法線は、面や頂点に対して設定される垂直方向の情報で、主に照明や陰影の計算へ使われます。
背面カリングによる表裏判定は、一般には頂点の並び順を基準に行われます。したがって、法線だけを反転しても、表示環境によってはカリング結果が変わらず、陰影だけが反転することがあります。ただし、編集ソフトの面反転機能では、頂点順序と法線が同時に反転することがあり、その場合は裏面消失と陰影の両方へ影響します。
閉じた立体では、通常は面の向きと法線を外側へそろえます。地形のような開いたメッシュでは、主に閲覧する方向へ面の向きと法線をそろえます。上空から確認する地形面であれば、上側から見える向きへ統一することで、片面表示でも見えやすくなります。
点群からメッシュを自動生成すると、面の接続状態や点の配置に基づいて面が作られます。地表のように連続した形状であれば比較的そろいやすいものの、急斜面、垂直壁、張り出し、穴、複雑な折り返しがある場所では、一部の面方向や法線が周囲と不整合になることがあります。
頂点順序が反転した面は、片面表示で周囲と反対側から見えるため、まだら状の穴として現れることがあります。法線だけが反転した面は、存在していても暗く見えたり、照明が裏返ったように見えたりします。両者を見分けるには、背面カリングを一時的に無効にし、陰影を切った単色表示でも確認します。
編集環境で面の向きや法線を線や色として表示できる場合は、周囲と不整合な部分を確認します。地形面では主な閲覧側、建物や構造物では外側、トンネル内面では通行空間側など、用途に合った方向へそろえます。
法線の再計算機能を使う場合は、ツールによって処理内容が異なることに注意します。面の向きをそろえたうえで法線を再計算する機能もあれば、既存の面方向を変えずに陰影用法線だけを作り直す機能もあります。処理後は、面の表裏と陰影の両方を確認します。
完全に閉じたモデルであれば、内外を判定して外側へそろえる処理が有効な場合があります。一方、穴のあるメッシュや地表だけの開いたメッシュでは、内側と外側を自動判定しにくく、意図と異なる方向へそろうことがあります。
開いた地形面では、正しい面を起点に隣接面へ向きを伝える方法や、想定する閲覧方向を基準に面を反転する方法を検討します。急斜面や張り出しを含む地形では、すべてを単純に上向きへ変更すると、本来横向きまたは下向きとなる部分の陰影が不自然になることがあります。
面法線と頂点法線の違いにも注意が必要です。面法線は各面の幾何学的な向きを示します。頂点法線は、隣接面の陰影を滑らかにつなぐために利用されます。頂点法線が乱れていると、面が存在していても暗く見えたり、折れたような陰影になったりすることがあります。
OBJを書き出す際には、法線情報を含めるかどうかを確認します。編集環境で陰影用法線を修正しても、法線を書き出さなければ、アップロード先で再計算される場合があります。再計算方法が異なると、編集時と異なる陰影になる可能性があります。
反対に、元データの法線が不正な場合は、既存法線を使わず、アップロード先で再計算したほうが改善することもあります。既存法線を保持するか再計算するかは、元データの状態とアップロード先の仕様を比較して判断します。
両面表示を利用する場合でも、面の向きと法線を整えることには意味があります。照明や陰影が自然になり、選択処理、断面表示、別形式への変換などでも安定した結果を得やすくなるためです。
設定3 面を構成する頂点の並び順をそろえる
OBJの面は、複数の頂点番号を順番に指定することで構成されます。三角形であれば三つの頂点が指定され、どの順番で頂点をたどるかによって面の向きが決まります。頂点の並び順が逆になると、一般的な描画では表側と裏側の判定も反対になります。
点群から面を生成する処理では、近接する点を結びながら三角形を作ります。通常は面の向きが連続するように生成されますが、点の密度が不均一な場所、複数の点群を結合した境界、欠測部の周囲、垂直に近い形状などでは、頂点順序が混在する場合があります。
頂点順序が混在すると、隣り合う三角形の一方は表向き、もう一方は裏向きとなることがあります。背面カリングが有効な状態では、片方だけが消えるため、表面に細かな穴が開いたように見えます。
編集環境には、隣接面の向きをそろえる機能が用意されていることがあります。ただし、面同士が正しく接続されていなければ、隣接関係を利用した処理が働かない場合があります。
見た目ではつながっている面でも、同じ座標に別々の頂点が存在している場合があります。点群の重複部分や複数データの結合部では、位置が同じでも頂点番号が異なることがあります。この状態では、面が連続した一枚のメッシュとして認識されず、領域ごとに異なる方向へ処理される可能性があります。
必要に応じて、近接する重複頂点を統合します。ただし、統合時の許容範囲を大きくしすぎると、近くにある別の形状まで結合されます。地面と縁石、壁と配管、上下に重なる床、薄い板の表裏などを誤って一体化すると、形状が崩れることがあります。
頂点統合の許容値は、座標単位と点の間隔を考慮して設定します。同じ数値でも、座標がメートル単位かミリメートル単位かによって影響が大きく異なります。処理後は、境界や薄い形状がつぶれていないかを確認します。
四角形やそれ以上の頂点を持つ面が含まれている場合は、アップロード先で三角形へ分割されることがあります。面が完全な平面でない場合や凹形状の場合は、どの対角線で分割するかによって見え方が変わります。
編集環境とアップロード先で三角化の方法が異なると、編集時には正常だった面が、アップロード後に異なる形状や陰影になる場合があります。出力前に三角形へ統一し、その状態で面の向きと法線を確認すると、変換時の差を抑えやすくなります。
三角化を行っただけでは、すでに反転している面が必ず直るわけではありません。三角化後に面方向を統一し、必要に応じて法線を再計算する工程が必要です。
視点を動かすと面が細かく点滅する場合は、同じ場所に複数の面が重なっている可能性もあります。表向きと裏向きの面が同じ位置に存在すると、表示環境がどちらを手前として描くか安定しません。両面表示を有効にすると重複面の両方が描画されるため、ちらつきが目立つことがあります。
この場合は、両面表示の設定を変更するだけでは解決しません。重複面を削除し、残した面の頂点順序と法線方向を確認します。重複面の削除後に、表側が意図した方向へ向いているかを確認することが重要です。
設定4 材質ごとの両面描画設定を確認する
OBJの形状情報と、色や画像などの材質情報は、別々に管理されることがあります。OBJ本体が材質ファイルを参照し、材質側が画像ファイルなどを参照する構成です。
編集環境で両面表示に設定していても、その設定がOBJと材質ファイルを通じて同じ状態のまま引き継がれるとは限りません。OBJと一般的な材質ファイルは形状、色、画像、照明特性などを受け渡せますが、両面描画の扱いは閲覧環境や変換形式の実装に左右されます。
アップロード後に片面表示へ戻る場合は、アップロード先の材質設定やモデル設定を確認します。両面描画に関する指定が独自の設定として管理され、アップロード後に改めて指定する必要がある場合があります。
複数の材質が割り当てられているモデルでは、材質ごとに両面表示の有無が異なることがあります。地表は見えるものの壁面だけが消える、構造物の一部だけが裏側から見えないといった場合は、異なる材質や表示グループが使われていないかを確認します。
一つのOBJに複数の測区や構造物をまとめた場合、元データごとの材質が残っていることがあります。見た目が同じ色でも、内部では別の材質として登録されている可能性があります。代表的な材質だけを両面表示にしても、ほかの材質へ設定が反映されないことがあります。
両面表示を確実に確認したい段階では、材質を一つの不透明な単色へ仮置き換えする方法があります。単純な材質で裏面が表示されるなら、形状よりも元の材質設定や透明描画に原因がある可能性が高まります。
透明度を含む材質では、背面カリングとは別の問題が重なることがあります。透明な面は、奥行きや描画順序によって見え方が変わります。両面表示を有効にすると、表側と裏側の両方が透明描画の対象となり、モデル内部が暗くなったり、輪郭が重なって見えたりすることがあります。
裏面が本当に描画されていないのか、透明度によって見えにくいだけなのかを判断するため、一時的に不透明な材質へ変更します。不透明な状態で両面が見えるなら、透明度、画像の透過情報、描画順序の設定を見直します。
画像を利用する材質では、画像の透過情報も確認が必要です。画像の一部が透明になっていると、面そのものが存在していても欠けたように見えることがあります。背景を透過した画像や、不要部分を透明にした画像を貼り付けている場合は特に注意します。
OBJと一緒に必要な材質ファイルや画像ファイルがアップロードされていない場合、既定の材質へ置き換えられることがあります。その既定材質や変換後のモデル設定が片面表示であれば、元の環境では見えていた裏面が消える可能性があります。
関連ファイルをまとめる場合は、参照先が正しく解決できる構成にします。ファイル名の変更やフォルダー構成の変更によって参照が切れると、材質が正しく読み込まれない場合があります。ただし、関連ファイルをそろえても、両面設定そのものが引き継がれない環境はあります。その場合はアップロード後に両面設定を行います。
表示品質を下げた軽量表示では、通常の材質とは異なる簡易材質へ置き換えられることがあります。通常表示では両面が見えるのに、軽量表示だけで裏面が消える場合は、簡易表示側の材質やカリング設定を確認します。
設定5 アップロード時の最適化と面削除を見直す
OBJをアップロードすると、そのまま表示されるのではなく、閲覧用の形式へ変換されることがあります。この変換では、面数削減、頂点統合、重複面削除、小面積面の削除、法線再計算、材質統合などが実行される場合があります。
大規模な点群OBJを軽くするには有効な処理ですが、設定によっては必要な面まで削除される可能性があります。元の編集環境では正常なのに、アップロード後だけ穴が開く場合や、特定方向から面が見えなくなる場合は、変換時の設定を確認します。
面数削減は、形状を近似しながら三角形の数を減らす処理です。平坦な地表では見た目への影響が小さいことがありますが、段差、縁石、法肩、法尻、薄い壁、溝、配管周辺などでは、重要な形状が失われる可能性があります。
削減率を一度に大きくすると、どの段階で問題が発生したのか分かりにくくなります。最初は削減を行わないか、弱い設定でアップロードし、正常に表示できることを確認します。その後、段階的に削減を強めて、形状が維持できる範囲を探します。
小さな面を削除する設定にも注意が必要です。点群から生成した高密度メッシュは、小さな三角形の集合です。一定面積より小さい面を不要として削除すると、細部だけでなく、点密度の高い範囲全体が影響を受けることがあります。
小面積面の削除は、独立した微小な破片を取り除く目的では役立ちます。しかし、面積だけで一律に判定すると、細い部材や地形の境界まで削除されます。独立成分の大きさ、周囲との接続状態、面積などを組み合わせて判断できる場合は、必要な面を残しやすくなります。
内側面を削除する機能は、閉じた立体内部に残った不要面を取り除くために使われることがあります。ただし、地表面や一枚の壁のような開いたメッシュでは、どちらが内側なのかを適切に判定できない場合があります。
薄い面の片側を内側とみなして必要な面が削除される可能性があるため、開いたメッシュをアップロードする場合は、内側面削除を無効にするか、処理後の形状を慎重に確認します。
重複面削除では、同じ位置にある複数の面を一つへ整理します。重複によるちらつきを防げる一方、表向きと裏向きの面が重なっている場合に、どちらが残るかによって表示結果が変わることがあります。
重複面を削除したあと、残った面が意図した方向を向いているかを確認します。必要に応じて面方向をそろえ、法線を再計算します。
頂点統合も表示結果へ影響します。近接する頂点をまとめることでデータを整理できますが、許容範囲が大きすぎると薄い形状の表裏が結合され、面がつぶれる可能性があります。上下に近接する地形や床、壁と設備、細い隙間なども一体化することがあります。
アップロード時に法線を再計算する設定がある場合は、既存法線を利用する設定と比較します。元の法線が正しい場合は保持したほうが編集時の陰影を再現しやすく、元の法線が乱れている場合は再計算が有効です。
ただし、開いた地形面や複雑な内面形状では、自動処理によって意図と異なる面方向や陰影になることがあります。既存法線を保持した版と、再計算した版を別々に作成し、表示結果を比較すると判断しやすくなります。
アップロード前後の頂点数や面数を確認できる場合は、その差も原因判断に役立ちます。軽量化による減少はあり得ますが、面数が大幅に減っている場合は、両面表示だけでなく変換処理によって形状が失われている可能性があります。
両面表示でも直らない症状の確認方法
両面表示を有効にしても問題が残る場合は、症状の出方を細かく確認します。すべての不具合を裏面表示の問題として扱うと、原因に合わない設定変更を繰り返すことになります。
モデル全体が反対側から見えるようになったものの、一部に穴が残る場合は、その場所に面が存在するかを確認します。面が存在しなければ、両面表示では復元できません。元の点群に欠測がある、表面生成時に面を作れなかった、最適化で削除されたといった可能性があります。
三角形が交互に暗く見える場合は、法線や頂点法線が不統一になっている可能性があります。背面カリングを無効にし、単色で陰影を弱めると面が見える場合は、形状の欠落よりも照明計算の問題が考えられます。
視点を反対側へ移すと、消えていた三角形だけが見え、周囲が消える場合は、頂点順序が部分的に反転している可能性があります。この症状は、法線だけの問題と区別して確認します。
視点を動かしたときに細かくちらつく場合は、重複面を疑います。同一位置に複数の面があると、どちらを手前として表示するかが不安定になります。両面表示によって両方が描かれると、ちらつきが強くなることがあります。
特定の距離まで近づくと面が消える場合は、視点近くの描画範囲や断面表示の設定が関係する可能性があります。視点のすぐ近くを描画しない設定になっていると、モデル内部へ入った際に手前の面が切り取られます。
遠ざかると細部が消える場合は、距離に応じた簡略化や表示密度の調整を確認します。両面表示とは別に、遠距離用の簡略モデルで小さな面が省かれている可能性があります。
材質を外すと正常に見える場合は、透明度、画像の透過情報、材質ごとのカリング設定などを確認します。形状確認用の不透明な単色材質を用意しておくと、材質と形状の問題を分けやすくなります。
編集環境では正常で、アップロード後だけ問題が起こる場合は、アップロード時の変換条件を重点的に確認します。編集環境でも同じ不具合が見える場合は、元のOBJまたはメッシュ生成工程に原因がある可能性が高くなります。
一度に複数の設定を変えると、どの変更が有効だったか分からなくなります。両面表示、面の向きと法線、頂点順序、材質、最適化という順に一項目ずつ変更し、表示結果を記録します。
地形や構造物の種類に合わせた修正方針
裏面が消える問題への適切な対応は、OBJが表している対象によって異なります。すべてのモデルを一律に両面表示へ変更するのではなく、用途と形状に合わせて判断します。
造成地や道路の地表面は、上空側から見ることが中心であれば、面の向きと法線を上側へそろえた片面表示でも運用できます。断面確認や地下側からの確認を行う場合は、両面表示が便利です。
法面は傾斜が大きく、場所によっては垂直に近くなります。単純にすべての法線を上向きへ設定すると、急斜面の陰影が不自然になることがあります。隣接面との連続性を保ちながら面方向と法線をそろえる方法が適しています。
擁壁や建物外壁を一枚の面として作成している場合は、外側から見る用途なら外向きの片面表示で対応できます。裏側や内部からも確認する場合は、両面表示にするか、壁へ厚みを付けます。
トンネルや地下空間では、一般的な閉じた立体の外側ではなく、人が通行する内部空間側から見える向きへ面をそろえる必要がある場合があります。モデル全体の外側だけを基準にすると、トンネル内から面が見えなくなることがあります。
薄い板や標識など、実物には厚みがあるものを一枚の面で表現した場合も、両面表示が有効です。ただし、側面形状や厚みを確認する用途では、一枚面では情報が不足します。必要に応じて厚みを持つ立体として作成します。
体積計算を目的とする場合は、両面表示だけでは不十分です。一枚の地表面を両面から見えるようにしても、閉じた立体になるわけではありません。一般的なメッシュ体積計算を行う場合は、外周面と底面を作り、穴、自己交差、重複面、面方向などを確認して、閉じたメッシュにする必要があります。
現場共有用の見た目を優先するデータと、数量算出や解析に使うデータを分ける方法もあります。閲覧用は適度に軽量化して必要な部分を両面表示にし、解析用は面接続や閉鎖性を優先して保持すると、目的ごとの調整がしやすくなります。
大容量の点群OBJで表示負荷を抑える方法
両面表示では、片面表示で除外されていた裏向きの面も描画処理の対象になるため、大規模な点群から作成した高密度メッシュでは表示負荷が増える場合があります。ただし、負荷の増え方は面数、画面上の占有範囲、材質、透明度、表示範囲、端末性能などによって異なります。
モデル全体を両面表示にする必要がない場合は、薄い地形面や壁面だけに適用します。閉じた構造物まで両面描画にすると、通常は見えない内部側も処理対象になることがあります。
広範囲の地形を一つのOBJへまとめている場合は、工区や測区などの単位で分割する方法があります。必要な範囲だけ読み込めれば、両面表示を利用しても処理対象を抑えやすくなります。
ただし、細かく分割しすぎると、ファイル管理や位置合わせが複雑になります。境界で隙間や重複が発生しないよう、共通の座標基準を維持します。
平坦な部分の面数を減らし、段差や構造物周辺の密度を残す方法も有効です。全体を同じ割合で削減すると、重要な細部まで失われることがあります。地形変化の大きさに応じて密度を調整できる場合は、形状を維持しながら軽量化しやすくなります。
透明材質と両面表示の組み合わせは、描画順序の処理を複雑にすることがあります。内部確認が必要なときだけ透明表示へ切り替える運用にすると、通常時の負荷や表示の乱れを抑えられる可能性があります。
現場で利用する端末では、作成用のパソコンより表示性能や利用可能なメモリーが限られる場合があります。アップロードできたことだけで完了とせず、実際に使用する環境で読み込み時間、視点移動、拡大縮小、両面表示を確認します。
点群OBJアップロード前後の確認手順
点群OBJの裏面消失を繰り返さないためには、アップロード前後の確認手順を決めておくことが有効です。
最初に、OBJが点として扱うデータか、面を持つメッシュかを確認します。メッシュの場合は、頂点数、面数、法線の有無、材質数、開いた形状か閉じた形状かを把握します。点データの場合は、アップロード先がOBJの点要素や頂点のみの表示に対応しているかも確認します。
次に、編集環境でモデルを複数方向から確認します。上空側だけでなく、下側、内側、横方向からも表示し、面が消える場所を探します。正面では気づかない反転面や穴を発見しやすくなります。
一部の面だけが消える場合は、面の向きと法線を表示して状態を確認します。必要に応じて重複頂点を統合し、面の接続関係を整えたうえで、頂点順序と法線を用途に合わせてそろえます。
四角形以上の面を含む場合は、出力前に三角形へ統一することを検討します。三角化後に形状、面方向、法線を再確認し、意図しない分割がないかを確認します。
材質を使用する場合は、材質ファイルや画像ファイルがそろっているかを確認します。両面表示をアップロード後に設定する運用であれば、対象となる材質やモデル部分を記録しておきます。
アップロード時は、最初から強い面数削減や小面積面削除を適用せず、元形状に近い条件で確認します。正常に表示できたあとで最適化を段階的に強めます。
アップロード後は、編集環境と同じ視点から比較します。正面、裏面、斜め下、モデル内部などから確認し、両面表示が反映されているかを確認します。
問題が発生した場合は、最初に両面表示だけを変更して再確認します。それでも直らなければ、面の向きと法線、頂点順序、材質、最適化の順に確認します。一度に複数の設定を変えず、結果を記録することが重要です。
ファイル名、作成日、元データ、面数、三角化の有無、法線処理、材質設定、アップロード条件などを記録すると、同じ種類のデータを扱う際に再利用できます。修正前のOBJへ上書きせず、設定ごとに別名で保存しておけば、形状変化も比較しやすくなります。
まとめ
点群OBJをアップロードしたあとに裏面が消える代表的な理由は、面の裏側を描画しない背面カリングです。地表面や壁面のように厚みを持たないメッシュを反対側から確認する場合は、背面カリングを無効にし、両面表示へ切り替えることで改善する可能性があります。
ただし、一部の三角形だけが消える場合や、両面表示後も陰影が乱れる場合は、頂点順序の反転、法線の不統一、重複面、材質設定、アップロード時の最適化なども確認する必要があります。表裏判定は主に頂点の並び順、陰影は主に法線が関係するため、両者を分けて確認することが重要です。
実務では、まずOBJが点として扱うデータなのか、面を持つメッシュなのかを区別します。そのうえで、背面カリング、面の向きと法線、頂点順序、材質、最適化という5つの設定を順番に確認すると、原因を絞り込みやすくなります。
閲覧を目的とする薄いメッシュであれば、両面表示は効率的な対処方法です。一方、体積計算や形状解析に使う場合は、両面表示だけで済ませず、メッシュの穴、接続状態、自己交差、閉鎖性まで確認することが重要です。
点群の取得、OBJへの変換、アップロード、表示確認を一連の手順として標準化すれば、現場でモデルを開いたあとに面が消えるトラブルを減らせます。点群の取得から共有までの工程を見直し、利用する出力形式と閲覧環境の仕様をあらかじめ確認しておくことが大切です。