2022.05.25
Developer Lv1
目次 解答パターン生成(後半) ソルバーとユニーク解チェック 解答パターン生成(後半) 以下に、gen_ans_sub(ix, line_used) の実装コードを示す。 第1引数の ix は次に数字を入れる場所を示し、第2引数の line_used は現在行で使用済み数字のビット列を持つ。 最初に …More Read
2022.05.25
Developer Lv1
目次 はじめに 問題自動生成アルゴリズム概要 解答パターン生成(前半) はじめに 本稿では、「さくさくナンプレ」において、 ナンプレ(数独)基本問題を自動生成するための使用したアルゴリズムについて、 具体的なソースコードを示して詳しく解説する。 ※ 「数独」は 株式会社ニコリ の登録商標です。 ナン …More Read
2022.05.13
Developer Lv1
目次 クリア時イフェクト さいごに クリア時イフェクト 下図に問題クリア時にシェーダによって表示されるショックウェーブのスクショを示す。 この画像だけでは分かりづらいかもしれないが、波紋が中心から発生し徐々に外側に広がっていくようになっている。 以下に、ショックウェーブのためのシェーダの設定・コード …More Read
2022.05.13
Developer Lv1
目次 問題パネル 描画処理 プロパティ設定関数 クリック処理 問題パネル ■描画処理 問題パネルにはサムネイル、難易度、タイトルなどが表示され、押下することでその問題を解くことができる。 QuestPanel はそのためのシーンだ。 ノードツリーは下図のようになっている。 QuestPanel のク …More Read
2022.05.13
Developer Lv1
目次 レベル画面 背景・タイトル 問題一覧 ドラッグスクロール処理 進捗を消す 問題を作る レベル画面 下図にレベル画面のスクショを示す。 レベル画面は、アプリを起動すると最初に表示される画面だ。 上部にはタイトル等が表示され、中央部には縦スクロール可能な問題一覧が表示される。 そして下部には2つの …More Read
2021.12.21
Developer Lv1
目次 ヒント機能 ■ヒント機能 本アプリの目玉機能のひとつが上図のヒント機能だ。 確定する黒またはバツがどこにあるのかわからず、途中で詰まってしまった場合にヒントアイコンを押すとよい。 他のアプリでは、ヒントと称して答えの一部を示すものもあるが、答えとヒントは似て非なるものだ。 本アプリのヒントは上 …More Read
2021.12.21
Developer Lv1
目次 使いきった手がかり数字強調 間違った手がかり数字強調 クリア判定 ■使いきった手がかり数字強調 本アプリは、下図の様に使い切った手がかり数字の背景をグレイにすることで強調する。 どの手がかり数字を使い切ったかがすぐにわかり、とても便利だ。 どれが使い切った手がかり数字なのかは自明ではないので、 …More Read
2021.12.21
Developer Lv1
目次 問題を解く 問題設定 問題を解く 前回までで、お絵かきパズルの画面作成、パズル問題作成機能を実装した。 今回からは、指定された問題を表示し、それをユーザが解けるようにする機能を実装していく。 ユーザがクリックしたセルに黒またはバツを入れる処理は問題作成の章ですでに示したので、 ここでは問題設定 …More Read
2021.12.20
Developer Lv1
目次 ソルバー 適切チェック ■ソルバー 事前に計算した辞書により、手がかり数字から可能パターンリストを取得できる。 ので、そのパターンすべての and と or を取ると、黒が確定する位置とバツが確定する位置を得ることができる。 例えば、手がかり数字が14の場合、可能パターンリストは [0b011 …More Read
2021.12.20
Developer Lv1
目次 ソルバー ラインソルバー ソルバー 問題を解くプログラムを「ソルバー」と呼ぶ。本アプリには、問題を入力し解答を提示する機能は実装していないのだが、 ユーザが問題を作成することが出来、作られた問題が解をひとつだけ持っている適切な問題かどうかをチェックする必要があり、 そのためにソルバーを使用する …More Read