HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2025
1025
しまくろねこiOS(iPhone)版でのプログラミングについて(画像ファイル)30未解決


しまくろねこ

リンク

2025/10/25(Sat) 09:24:12|NO.104124

MacBook Air M4とiPhone12 miniを購入しまして、iPhone用のアプリを開発したいと思っているのですが、xcodeのエミュレーター上で画像ファイルが認識されません。
xcode上のAdd FIles to "hsppoj" からPNGファイルをResourceフォルダに追加しているのですが、ビルドすると"Error 13 -->内部エラーが発生しました(13)" が表示されてしまいます。
PNGファイルは24bitで、PNGファイルを使用しなければ正常にビルドされ動作します。

HSP3DishのiPhoneについて解説しているWebサイトが皆無なため開発が進みません。
わかる方ご指導のほどよろしくお願いいたします。

#include "hsp3dish.as" celload "test.png", 1 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 0, 0, 300, 300 pos 0, 0 : celput 1 redraw 1 await 16 loop



この記事に返信する


しまくろねこ

リンク

2025/10/25(Sat) 09:32:39|NO.104125

xcodeは 26.0.1 です。



しまくろねこ

リンク

2025/10/25(Sat) 10:05:20|NO.104126

それから、Dish Helperの「Dihs3/Cソース変換」で入力した、

・プロジェクト名
・Organization
・Identifier

を自分の好きなものに入力しても、

xcode上で確認すると、General > Bundle Identifierが「onionsoftware.hsptv.hspproj」になったままになっています。



しまくろねこ

リンク

2025/10/25(Sat) 10:19:34|NO.104128

すいません。すこし言葉足らずでした。

ビルド自体は成功しているのですが、xcode上で"Error 13 -->内部エラーが発生しました(13)" が表示されています。
内部エラー13は画像ファイルが無いということは分かっています。



zrs90(5さい)

リンク

2025/10/25(Sat) 11:59:50|NO.104130

素人の当てずっぽうですが...
更新履歴にもpngの修正がない様子?

9年前からMacの24ビットPNG画像の件って
直ってないのかな?この方のサイトに
少し気になる記述があったので...
しかしこんな事ってあるんかな

https://pronama.jp/2016/12/14/hsp3dish/



しまくろねこ

リンク

2025/10/25(Sat) 13:18:46|NO.104132

> zrs90(5さい)さん

返信ありがとうございます。
8ビットPNGでも駄目でした。

iOSのPNGファイルについてプログラミングを見直してみたのですが、まちがってないですよね?


「HSP3Dish iOS版プログラミングガイド」より

> 21.iOS版の注意事項、制限
>
> •画像フォーマットについて
>
> celload、picload命令などで読み込まれる画像は、以下のフォーマットが使用できます。iOSでは、PNG形式が推奨されます。
> ◦JPEG baseline (プログレッシブJPEGは非サポート)
> ◦PNG (8bit、24bit、24bit+アルファチャンネル形式に対応)
> ◦TGA (サブセット)
> ◦BMP (白黒、RLE圧縮は非サポート)
> ◦PSD (RGB24bitのみ読み出し)
> ◦GIF
> ◦HDR (radiance rgbE format)
> ◦PIC (Softimage PIC)

ところで「24bit+アルファチャンネル形式に対応」って32ビットPNGファイルの認識であってますよね?



しまくろねこ

リンク

2025/10/25(Sat) 16:14:56|NO.104136

OneDriveにプロジェクトをアップしました。
https://1drv.ms/u/c/f0e0d12f289cef03/ETlvZ4ZslJZHpTWj8WybTwUBv2zOvthdZJD4pFcqAtPKLA?e=nqVbYj

もうしわけないのですが、手動でxcode上のAdd FIles to "hspproj" からPNGファイルをResourceフォルダに追加してください。
追加するファイル名は test.png です。

どなたか検証していただけますと助かります。



しまくろねこ

リンク

2025/10/26(Sun) 07:55:56|NO.104140

基本的な情報が抜けてました。
開発に使用しているHSPは3.7リリース版です。

また過去バージョンのHSP3Dish iOS版プログラミングガイドを見ていて気付いたのですが、過去バージョンでは、HSP3.6フォルダの「iOS」フォルダ内にフォルダが5つあるのに対し、

HSP3.6
> 3.iOSフォルダについて
>  iOSフォルダには、HSP3Dishランタイム及びxcode用の基本プロジェクトが含まれています。
>
> ・iHSP30フォルダ - HSP3Dishランタイム本体
> ・gameplayフォルダ - HGIMG4用ランタイム
> ・extlibフォルダ - HGIMG4用ライブラリ
> ・hspprojフォルダ - HSP3Dish基本プロジェクト
> ・hspproj_gpフォルダ - HGIMG4基本プロジェクト

現在のHSP3.7リリース版ではiOSフォルダは2つしかありません。

HSP3.7
> 3.iOSフォルダについて
>
> iOSフォルダには、HSP3Dishランタイム及びxcode用の基本プロジェクトが含まれています。
> •hspprojフォルダ - HSP3Dish基本プロジェクト
> •hspproj_gpフォルダ - HGIMG4基本プロジェクト
>
> iOS向けのプロジェクトは、基本的にHSP3Dish Helperを使用して作成してください。 ランタイムやライブラリは、必要に応じてコピーする必要があります。

と記述されています。

この

> ランタイムやライブラリは、必要に応じてコピーする必要があります。

というのが分かりません。
どこから、どのフォルダやファイルをコピーするのかが全く不明です。
HSP3.7フォルダ内の「iOS」フォルダには「hspproj」と「hspproj_gp」の2つしかありません。
3.6の内容を包括していると思っていいのでしょうか?

それともそもそもxcodeのエミュレーターには対応していないのでしょうか?



しまくろねこ

リンク

2025/10/27(Mon) 19:45:33|NO.104155

なぜか今日になって Apple Developer Program に登録できてしまい、Webを参考にしながらiPhone実機で簡単な(boxfだけを表示する)ソースをテストできるようになりました。
ですが、やはり画像を読み込むと実機でも内部エラー13になってしまいます。


#include "hsp3dish.as" //celload "test.png", 1 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 200, 200, 300, 300 //pos 0, 0 : celput 1 redraw 1 await 16 loop



しまくろねこ

リンク

2025/10/27(Mon) 20:12:33|NO.104159

dirinfo関数でカレントディレクトリを調べようとしましたが、駄目でした。

ログには、下記が表示されていました。
\"ファイル"com.apple.CoreMotion.plist"を表示するためのアクセス権がないため、開けませんでした。\"

おにたまさんに現象をメールしてありますので、おにたまさんからの返信を待ちたいと思います。
無駄にレスしてもうしわけありません。

#include "hsp3dish.as" a = dirinfo(0) dialog a //celload "test.png", 1 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 200, 200, 300, 300 //pos 0, 0 : celput 1 redraw 1 await 16 loop



しまくろねこ

リンク

2025/10/29(Wed) 18:19:16|NO.104176

そのほかにも bload, noteload も駄目でした。
リソースファイルにアクセスするものは全て駄目なようです。



zakki

リンク

2025/10/29(Wed) 19:17:35|NO.104177

> 画像やサウンドなど追加のデータファイルがある場合は、「Resource」フォルダにコピーして、「File」メニューの「Add Files to "hspproj"...」を選択し、プロジェクトにリソースファイルを登録する必要があります。

このあたりの作業はされてますか?
#Xcodeで試してないので間違ってたら申し訳ないんですが、xcodeprojにtest.pngの記述が無いみたいで。

対応画像の詳細仕様はstb使ってるのでこの辺ですね。
PNGだと1チャンネルあたり1/2/4/8/16ビットに対応してて、読み込み時にstbに8ビット*4チャンネルに変換してもらう。
https://github.com/nothings/stb/blob/master/stb_image.h#L19



しまくろねこ

リンク

2025/10/29(Wed) 20:11:36|NO.104178

> このあたりの作業はされてますか?
> #Xcodeで試してないので間違ってたら申し訳ないんですが、xcodeprojにtest.pngの記述が無いみたいで。

「Resources」フォルダを選択して、File—>Add Files To “hspproj”… —>test.png を選択「Add」ボタンで追加。
で、いいですかね?xcode自体初めてなので、なんだかよく分からなくなってきます。
一応、celload と celput を外せば正常に動作します。

> 対応画像の詳細仕様はstb使ってるのでこの辺ですね。
> PNGだと1チャンネルあたり1/2/4/8/16ビットに対応してて、読み込み時にstbに8ビット*4チャンネルに変換してもらう。
> https://github.com/nothings/stb/blob/master/stb_image.h#L19

すいません。よく分からないのですが、Windows側の標準ペイントや24ビット指定で作ったpngファイルでは駄目なのでしょうか?



しまくろねこ

リンク

2025/10/29(Wed) 21:31:26|NO.104179

「show the issue navigator」の黄色をビックリマークが178個表示されています。
これは関係ありますでしょうか?



しまくろねこ

リンク

2025/10/29(Wed) 21:41:06|NO.104180

「show the issue navigator」の黄色をビックリマークのスクリーンショットです。
https://1drv.ms/i/c/f0e0d12f289cef03/EQGAhNCMPGdOm2ecXwwmCJQBS0l8vSrrF9580pLs4AqGAg?e=fuEirA



しまくろねこ

リンク

2025/10/29(Wed) 23:48:29|NO.104182

他の方は、
https://hsp.tv/play/pforum.php?mode=all&num=104124
のソース正常にpngファイルを表示させられているのでしょうか?
もしかして私の環境だけ?
使用しているのはHSP3.7リリース版です。



しまくろねこ

リンク

2025/10/30(Thu) 07:41:52|NO.104183

Xcodeを完全アンインストールして、再度xcodeをインストールし直しました。
iPhone 12 mini をMacに接続したところ、「show the issue navigator」の黄色をビックリマークが2つにまで減りました。

> /Users/tsutomukomatsu/Desktop/testprogram/hspproj.xcodeproj The iOS deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 10.0, but the range of supported deployment target versions is 12.0 to 26.0.99.

> Traditional headermap style is no longer supported; please migrate to using separate headermaps and set 'ALWAYS_SEARCH_USER_PATHS' to NO.



しまくろねこ

リンク

2025/11/1(Sat) 06:46:45|NO.104197

HSP3.6RC2で試してみましたが、
OBAQlicense.txtで赤色の×がついてしまい、build Failedになってしまいます。

そのときのスクリーンショットです。
https://1drv.ms/i/c/f0e0d12f289cef03/EcJgRSKeF_9Fpt4S4XE1RuMBlNtAoysgXR4NWvaTpuLw_Q?e=sppBof

もうどのHSPバージョンを使っても画像1つ表示するアプリが動作させられません。



zakki

リンク

2025/11/1(Sat) 16:14:29|NO.104198

DPMが新バージョンになったタイミングでiOSでのDPM以外からの読み込みが壊れてるっぽく見えます。
こんな感じのに差し替えるとシミュレーター上ではエラーなくなんか絵が出ます。
Xcodeへのリソースの登録は必要です。

HSP側からは、PCと同じくファイルIOに見えますが内部では、DPMと実ファイルとバンドルとKVストアを
束ねて複雑なのでこれで全部うまく行くかは自信がありません。

https://gist.github.com/zakki/36ce9d822f7ee7af1924ceebeb9f7830



しまくろねこ

リンク

2025/11/1(Sat) 16:58:24|NO.104199

> zakkiさん

ありがとうございます。
GitHubよく分からないのですが、ダウンロードしたzipを展開すると

_hsp37_ios_file.patch
filepack.cpp
hsp3utfcnv.cpp

の3つが展開されましたが、このファイルをどこのフォルダに配置すればよいでしょうか?
HSP3Dishで作られたプロジェクトフォルダでしょうか?
それともHSP3側のどこかのフォルダでしょうか?

初心者過ぎて申し訳ありません。



zakki

リンク

2025/11/1(Sat) 17:59:08|NO.104201

_hsp37_ios_file.patch は変更差分で何のことか分からなければ無視してください。
filepack.cpp と hsp3utfcnv.cpp は、生成されたプロジェクトの hspproj/hsp3 にある同名のファイルを上書きしてください。

hsp37/iOS/hspproj/hspproj/hsp3 を差し替えて hsp3dh を再実行でも行けるかもしれませんが
問題ないこと確認してからのほうがいいしやめといたほうが安全だと思います。

ランタイム側の修正なので、良くわからなければ公式の修正待つか、
誰かiOSに詳しい人の見解待つのも良いかと思います。
私もiPhoneやmacをユーザーとしてやAI実行用プラットフォームとしては使ってますが、
iOSやmacOSプログラミングはあんまりよくわかってません。



しまくろねこ

リンク

2025/11/1(Sat) 18:59:08|NO.104202

> zakkiさん

> _hsp37_ios_file.patch は変更差分で何のことか分からなければ無視してください。
> filepack.cpp と hsp3utfcnv.cpp は、生成されたプロジェクトの hspproj/hsp3 にある同名のファイルを上書きしてください。

ありがとうございます。試してみたいと思います。



しまくろねこ

リンク

2025/11/1(Sat) 20:09:46|NO.104203

以下は3つのプロジェクトは、シミュレータ、iPhone実機両方でテストしました。

まず1つ目は、赤色の●の画像を読み込んで表示するだけのプログラムです。
読み込みは成功。しかし、表示すると青色に表示されてしまう。
画像を黄色の●の画像に変更。
読み込みは成功。しかし、表示すると水色に表示されてしまう。

#include "hsp3dish.as" celload "test.png", 1 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 200, 200, 300, 300 pos 0, 0 : celput 1 redraw 1 await 16 loop
2つ目は、bloadでテキストファイル "0123456789" を読み込んで、ダイアログに読み込んだ内容を表示させるプログラム。
読み込みは成功。ダイアログに "0123456789" と表示もOK。

#include "hsp3dish.as" buff = "" bload "test.txt", buff redraw 0 dialog buff redraw 1 stop
3つ目は、mmloadでmp3を読み込んで再生させるプログラム。
読み込みは・・・?不明。ログには内部エラーは無し。しかし、再生はされず。

#include "hsp3dish.as" mmload "test.mp3", 0, 1 mmplay 0 repeat redraw 0 await 16 redraw 1 loop

3つのプロジェクトのzipファイルです。
https://1drv.ms/u/c/f0e0d12f289cef03/ETSo-4o-GwVAlRTwxwJ_vxIBnEUCYMZPS-4dZYfsot400g?e=j31T68

以上がテスト結果です。



しまくろねこ

リンク

2025/11/1(Sat) 20:26:46|NO.104204

1つ目画像を青色の●の画像に変えて表示するだけのプログラムも試してみました。
読み込みは成功。しかし、表示すると赤色に表示されてしまう。
RGBの値がおかしいようです。
画像はアルファなしの24ビットpngファイルです。

#include "hsp3dish.as" celload "test.png", 1 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 200, 200, 300, 300 pos 0, 0 : celput 1 redraw 1 await 16 loop



しまくろねこ

リンク

2025/11/1(Sat) 20:43:27|NO.104205

試しに picload で黄色の●画像を読み込んで表示させるプログラムを試してみました。
読み込みはOK。しかし表示された●は水色に表示されてしまう。

#include "hsp3dish.as" buffer 1, 100, 100 gsel 1 picload "test.png", 0 gsel 0 gmode 0 repeat redraw 0 color 255, 255, 255 : boxf color 0, 0, 255 : boxf 200, 200, 300, 300 pos 0, 0 : gcopy 1, 0, 0, 100, 100 redraw 1 await 16 loop
とりあえず以上です。



zakki

リンク

2025/11/1(Sat) 22:12:06|NO.104206

https://stackoverflow.com/questions/13596065/png-premultiplied-alpha-ios-simulator-vs-ipad

XcodeがPNGの最適化でビルド時に中味を書き換えるそうです。
リンク先の設定は効きませんでしたが、test.pngのIdentityu and TypeでTypeを
Default PNG ImageからDataに変えたら赤くなりました。。



しまくろねこ

リンク

2025/11/1(Sat) 22:40:12|NO.104208

> zakkiさん

> test.pngのIdentityu and TypeでTypeを
> Default PNG ImageからDataに変えたら赤くなりました。。

お恥ずかしいのですが、Identityu and Typeが見つかりませんでした。
xcodeのどの場所にあるのでしょうか?



zakki

リンク

2025/11/1(Sat) 22:50:56|NO.104209

左のプロジェクトナビゲーターのツリー表示でtest.pngを選択して、
右側に出るインスペクターの設定項目一覧みたいなのの一番上です。



しまくろねこ

リンク

2025/11/1(Sat) 23:00:06|NO.104210

ああ、できました。
ありがとうございます。



おにたま(管理人)

リンク

2025/11/2(Sun) 00:44:10|NO.104212

>しまくろねこ さん
>zakki さん

xcodeのiOS向けビルドの検証と修正ありがとうございます。
xcode 26のインストールに手間取っているのですが、こちらでも確認してみたいと思います。



しまくろねこ

リンク

2025/11/2(Sun) 01:05:09|NO.104213

解決までもう少し待ってください。



記事削除

記事NO.パスワード
(質問が解決したスレッドは他の利用者に活用してもらうため、削除しないようお願いします)

NO.104124への返信

マスコット

好きなマスコットを選んでください。

名前

e-mail
HOME
  1. 初めて利用する方は、HSP3掲示板の使い方をお読みください。
  2. 不要部分の多い長いスクリプトの投稿は ご遠慮ください。
  3. 書き込みは自動改行されません。適度に改行を入れてください。
  4. スクリプトは小文字の<pre>〜</pre>で囲むと見やすく表示できます。

削除用パスワード

解決したら質問者本人がここをチェックしてください。

エラー発生時、再送信すると二重送信になることがあります。
回答が得られたら、お礼書き込み時に[解決]チェックしてください。
SPAM防止のためURLから始まる文章は投稿できません。
SPAM防止のため英文字のみの本文を投稿することはできません。

ONION software Copyright 1997-2025(c) All rights reserved.