コミュニティアイコン プチコン 非公式コミュニティ プレイ日記

アバター
あまさとしおん ◆mzDKTVUAtwqE
2025/5/2 13:38
前回の投稿でしれっと書いた「野望」の方はこれです

求:太さのある直線を描画するプログラム

コメント

アバター
あまさとしおん 2025/5/3 23:19 ◆mzDKTVUAtwqE
原因判明。11ms×数十個分が乗っかっていた。バイパスして改善した

OSMビューアーとしてはそろそろ配信を考える(少なくともα版といえば納得される)出来になった
ただ1つの問題は、本来のベクタ画像メーカーとして動くかどうか分からないこと(魔改造しすぎたので)
アバター
あまさとしおん 2025/5/4 19:50 ◆mzDKTVUAtwqE
楽しーーーーい!
(トイレ埋没バグから目を背けながら)
アバター
あまさとしおん 2025/5/4 21:26 ◆mzDKTVUAtwqE
トイレを取り戻した
(草地を建物より先に入れ替える機能を実装)
アバター
あまさとしおん 2025/5/6 14:20 ◆mzDKTVUAtwqE
仮(建物を草地の上にするだけ)の描画順序システムを本来の仕様(layerの値を考慮)に改修する

3バイトの順序値を持ち

下から
種類による優先度
levelの値*
layerの値*

(*は下限-20から8bit範囲、つまり「-20〜235」に丸める)
という感じにする(当初は十進の桁でやる仕様にしていたが、ビット演算が使えないのが不便なので変えるつもり)
アバター
あまさとしおん 2025/5/6 14:21 ◆mzDKTVUAtwqE
種類優先度は
・建物などが+2
・道路などが+5(歩道は+7)
とりあえずこれだけ定める

levelの列挙(エレベーターなどにある「0;1;2」など)は最も右の値を採用する(処理上の便宜、本来は数字が最大のほうがいい)

順序値が同じである地物が重なっている場合、どちらが上に描かれるか、描画する都度入れ替わることも許される(処理上の便宜)
アバター
あまさとしおん 2025/5/6 14:28 ◆mzDKTVUAtwqE
layerを超える優先度を実装する場合、順序値に4バイト目を設けることができる
ただし、今のところ予定なし
アバター
あまさとしおん 2025/5/6 14:32 ◆mzDKTVUAtwqE
あっ
階数は0.5階があり得るので変えよう。3を掛けるか
アバター
あまさとしおん 2025/5/6 16:45 ◆mzDKTVUAtwqE
2進法の描画順序システム完成。
値×2+32を8bit範囲に丸めることにしました。
(中2階はよくある一方で、100階を超える建物はほぼ無いので)

つまり地下16階(level=-16)から中113階(level=111.5)まで対応します。

列挙も対応するが、範囲指定「0-5」は今のところ解釈に失敗します(単項マイナスと区別が面倒なので非対応)
アバター
おちゃめ 2025/5/10 22:59 ◆jH1opV6FnGyx
すでに解決済と思いますが参考としてプチコンmkIIの頃に書いたベクトルの外積を使った衝突判定を置いておきます。
多角形の内包判定は外積を使えば確実に分かるのですが演算量が多いので簡易処理で済ませるのも1つの手ですね。
アバター
おちゃめ 2025/5/10 23:02 ◆jH1opV6FnGyx
画像が縮小されすぎて文字が読めないので私のサイトのプチコン講座「ベクトルの内積・外積を使った衝突判定」から見てください。
http://ochameclub.web.fc2.com/petitcom/lecture.htm
アバター
test 1日前 ◆Ii4lxFzQ4zFd
test

コメントを書く

  • こちらは「プチコン3号」「プチコンBIG」など、プチコンシリーズに関する話題を扱ったコミュニティです
  • プチコンシリーズにまったく関係ない書き込みはご遠慮下さい。削除の対象となります
  • こちらにはその他のゲームや雑談のコミュニティはなく、作る予定もありません (ひとりで管理できないため)。ごめんなさい
  • ユーザー登録なしで書き込みができます
  • 秘密の合い言葉は成りすましの防止 (トリップ機能)、書き込みの編集時の本人認証に使用します
  • 秘密の合い言葉に他人に推測されやすい言葉、他サービスと同じパスワードは入力しないでください。
  • 書き込むと、投稿時に入力したお名前と秘密の暗号が記憶され、ログイン状態になります

- WEB PATIO -