HSP3DishアプリをiOS版へ変換するときのおぼえがき

 

更新 2025年11月1日

HSP3Dish バージョン3.7 とそのサンプルを使用して、iOS版アプリ変換テストをしたときにメモをのこしておきます


前提条件:

HSP3Dishで作成したアプリのiOS版変換を行うには、
WindowsパソコンとMac パソコンの両方を持っている必要があります。

Windowsパソコン上で、変換プログラム『 HSP3Dish Helper 』を実行する必要があります。
Macパソコン上で、『 XCode 』を起動してコンパイル(ビルド)と、
iPhone実機端末(またはシミュレータ)へインストールを行う必要があります。

また、事前に Apple の開発者登録を行っておく必要があります
→ 公式 Apple Developer Program


HSP3公式の手順説明

⭐️ HSP3Dish iOS版プログラミングガイド
  正式 3.7バージョン対応 2025年版 


私(用賀じゅんちゃんおじさん)が書いた掲示板スレッド

⭐️ HSP公式掲示板 書き込み
↑ 変換時のヒントになることが書かれています


<この部分は作成途中です…>

とりあえずヒントや手がかりになるキャプチャ画像とメモを置いておきます

・XCode でビルド実行するには、画面左上の ▶️ 再生ボタンのような右向き三角形アイコンを押します。 ↓

・↑ エラーが存在してビルドできないと、赤い色のマークが表示されます。その赤色の丸をクリックすると、エラーが発生していて修正する必要のある箇所を含む編集画面が表示されます

・iOSアプリ変換と直接関係はないのですが、最初にエラーがでる可能性が高いのは、Signing&Capabilities の項目

・↑ Apple の開発者登録が完了していれば、
「 Automatically manage signing 」✅
 のチェックボックスをオンにすることで大丈夫だと思います。

 とりあえず自分のiPhone(またはiPad)にインストールするだけなら、Bundle Identifier は何でも大丈夫(空欄でも起動できた)だと思います。
いちおう、

net.onionsoft.block3

jp.jboysoft.test01

みたいな文字列が妥当


・Macの画面に「codesignがキーチェーンに含まれる◯◯へアクセスしようとしています」というアラートが表示されたら「許可」を押します。



・ 実機端末へ開発中アプリをインストールできないときは:

 MacとiPhone(またはiPad)をケーブルでつなげているのになぜか認識しなくて「接続していない」と表示される場合は、WiFi経由で MacとiPhone を接続して、開発中アプリを実機端末へインストールすることも可能です。

参考になりそうな記事:
XcodeでiPhoneをワイヤレスでデバッグする


開発対象となる iOS のバージョン

・XCode の画面左のフォルダ構成一番上のプロジェクトアイコンを選ぶと、右画面に表示される「Info」設定画面で「Deployment Target」が選べます。
いま開発中のプログラムの対象 iOSバージョンが選べます。

いま現在(例・2025年現在)いちばん多くのユーザーが使っている iOSのバージョンが含まれるようにすると、たくさんのユーザーにそのアプリが使ってもらえます。

ユーザーは、そのターゲットに指定したバージョン以上の新しいiOSがはいっている端末で、そのアプリが使用できます。

ターゲットのバージョンが古すぎると、エラーがたくさんでます。
また、そのバージョンよりも後年に登場したiOSの新機能は使えません。
また、むかしは iOS に搭載されていたけれども廃止になった当時の特定の機能を呼び出していたりすると、その部分のプログラムの修正が必要になります。

ターゲットのバージョンが新すぎると、最新の端末以外のユーザーはそのアプリが使用できません。


・XCode のバージョンによってはこの説明画面とすこし異なる部分があると思います


iOS版インストール実験結果

HSP3.7正式版フルセットに含まれているサンプル
block3.hsp (ブロック崩しゲーム)
をWindowsマシン上で変換して、
Mac へもっていって、そこから XCode を使って、
iPad へインストールし、動作することが確認できました。

※ ただしいくつか問題点あり

検証テスト継続中です 10月30日現在

iOS版アプリ化 問題点 不具合

2025年10月 現在

⭐️ 文字メッセージ(mes)がiOSアプリ画面上で表示されない
 ↓
 エラーにはならず。文字が見えない?
 関連情報と現時点での解決策
 HSP3公式掲示板の話題:スレッド
 『 HSP3Dish(HSP3.6)(iOS)Xcode12.4でビルドしたアプリの文字が消えます』

HSP3.7公式版でも発生する

⭐️ 外部ファイル(画像など)の読み込みがうまくいかない?
  確認中
 ↓
 ビルドは成功するが、
 Error 13–>内部エラーが発生しました(13)
 が表示される

👇

⭐️ 「 mes命令の文字が表示されない問題 」も、
「 画像ファイルが見つからない問題 」も、
変換後の hspsource.cpp の
PushStr で、文字列リテラルを直接 char型 に変換しようとしてるのが
非推奨になってる(deprecatedされてる)のが原因なのかも…??

変換に失敗して なかみが Null になる。nil ではないので XCode のビルド自体は成功するけど、
メッセージ文章も外部ファイル名も Null なので なにも表示されないし、読み込みたいファイルも名称が合ってないので読めていない
みたいな…?



十分な検証をしていないので、確信はありません。

開発に使用している XCode のバージョン
ターゲットにしている iOS の バージョン
使用している 端末実機の世代と
そこにインストールされているiOSのバージョン
使用している Mac のプロセッサ

などの組み合わせも、関係している可能性が高いです。


Mac本体のチップが
ふるい Intel
新しいARM系Apple Silicon(Mシリーズ)
の問題の可能性も。(当方特有の環境問題の可能性)


使用している HSP は 3.7正式版です。
2025年9月に公開された 3.7正式版も今後マイナーアップデート・バージョンアップがあるはずなので、試す時は最新版を使用したほうが良いです。
HSP3本体だけでなく、 変換ツール HSP3Dish Helper もアップデートされる可能性があります。


この記事はのちほど、修正、追記する予定です


開発のヒント

2025年現在、iOSアプリ開発の標準は Swift という言語になっています。
XCode で開発するときも、 Swift で開発するときと、それ以外の言語のときと、プロジェクトのファイル構成など一見したみためからして異なります。

HSP3Dish から変換したプログラムで iOSアプリ開発するときは、
「 Objective-C をつかったiOSアプリ開発 」に近いスタイルになります。

開発ヒントになる参考サイトや、ふるいアプリ開発書籍をさがすときは
「 Objective-C iOSアプリ開発 」という言葉でさがすと良いかもしれません。
Objective-C での開発には 「 C言語 」をまぜて使うこともできます。
( Objective-C と Swift が混在したプログラミングも可能です。)

Objective-C時代の開発 や UIKit について知りたい場合は、10年くらいまえの書籍やサイトを参考にすると良いと思います。

例:
 ◆ iPhoneアプリ開発の虎の巻

 ◆ 意図せずObjective-C を読まなければいけなくなった Swift エンジニアへ贈る Objective-C読み方まとめ


実際のところ:

HSP3Dishで作成したアプリのiOS版変換を行うのは、実際のところ、iOSアプリの開発経験( XCode の使用経験 )がまったく無いと、難易度が高いです。

現実的には、
まず、ご自身のMacに XCode をインストールして、
「iOSアプリ開発」
で検索してでてきたいちばん簡単な入門書籍を読むか、
いちばん簡単な初心者用サイトを見ながら、
もっともシンプルなiOSアプリを作ってみて、 XCode の概要を知って慣れてから、
HSP3Dish製のiOS版変換に挑戦するとスムーズにすすめることができると思います


実際に HSP3Dish は iOS上で動くのか?

⭐️ HSP3公式サイトの HSP3Dish 紹介ページ

↑ 公式サイトの写真を見れば一目瞭然で、
昔は「ブロック崩し block3.hsp 」は iPhone 実機上で正しく動作していて、メッセージテキスト「GAME OVER」も表示されているのが見えます。
( 30ピンドックコネクタなので iPhone 4 くらいの時代。2011年頃?
 実際、 Arue さん開発の iPhoneゲームアプリ も Apple公式 App Store で配信され人気になっている実績があります)

⭐️ HSP3公式掲示板でも、以前のバージョンで iOS 上で正しく動作している報告があります

2021年10月22日 Shige さんの投稿

同じことをHSP3.5+macOS:High Sierra 10.13.6+xcode:9.2でやると、問題なく
動いて、文字も消えません。


そのほか iOS版アプリ公開方法

iOS版アプリの公開(不特定多数への一般公開)の手段はこれまでは
Apple公式ストア「 App Store 」の審査を経て公開するのが唯一の方法(例外あり)でしたが、
今後は日本でも「代替ストア」とよばれるサービスが開始されるようです。

iPhone向け代替アプリストア「AltStore PAL」が日本・オーストラリア・ブラジルで2025年後半にサービス開始予定 2025年10月報道

サードパーティーiOSアプリストア「AltStore PAL」はどのようにして生まれたのか? 2024年5月報道

AltStore PALでアプリを配信してみる

追記 2025年11月:
ゲーム業界は「スマホ新法」でどう変わる? アプリの課金方式が変わるかもしれない2025年12月以降の動向を,弁護士に解説してもらった


このほか、開発者が自分自身で XCode から iPhoneなど開発登録された端末に開発中アプリ(未審査)をインストールして、学校の教室や文化祭、イベントやプレゼンテーションで公開したりすることは可能です。(ただし一定期間するとアプリが起動しなくなります)

そのほか、企業が社内の社員やスタッフ限定で使うアプリなどは、別途ビジネス系の契約をすることで独自アプリの小規模な限定配信を行うこともできます。

自分自身が開発したプログラム(ソースコード)を受け渡したり、公開することは可能です。
HSP3Dish で 開発したスクリプト。または、変換後の hspsource.cpp


Android版アプリは、いわゆる「野良アプリ」と呼ばれる、開発者が自由に開発したアプリを、ユーザーが自由に端末にインストールすることが可能ですが、
iOS版アプリは、これが不可能です。これをするためには Apple が公式には認めていない「 脱獄」(ジェイルブレイク)とよばれる端末改造が必要になるため、通常はおすすめできません。


HSP3DishアプリをiOS版へ変換するときのおぼえがき