Archiverse Internet Archive
たんじぇ zmxtan
日本
誕生日非公開
ゲームの腕前上級者
利用したゲーム機Wii U/ニンテンドー3DS
フレンド-/100
フォロー-
フォロワー-
投稿数9
そうだね数51
取得日時

ゲームじゃないプログラムの設計や開発のお仕事してます。 最近はDQXかゼルダで遊んでます。

投稿のみ 投稿と返信
前のページ(最近)
1 2 3 4 5 6 7 8 9 10 1113
次のページ(過去)
返信[33]
親投稿
ツイッターだと社長と話せたりmiiverseのように盛り上がってたりするのでオススメ! スクリーンショットの機能やプチコンへの自分の思う意見もツイッターの #petitcom タグ話せるので、プチコンで今作っている作品の途中経過や話題などを書いてもらえれば社長にも届くかも。 質問トピックで回答をしてたけど、ツイッターだとトピック形式じゃないので、なんとか回答をいろいろ頑張りたいところ。
1そうだね
プレイ済み
返信[9]
親投稿
プチコンだと結果的にタッチパネルの座標とスクリーン座標が同じなのでわかりづらくなるけど、 いちおう「タッチパネルから取得した座標」と「自作ソフトの画像データ操作の座標」と「画像を書くためのスクリーン座標」は別の世界というのが考え方です。(スクリーンもGOFSしたらタッチパネルとは位置が違う) 座標系が同じところがあるので、絶対座標でなんやかんやしたほうがコード量少なくなったり処理軽くできるというのがBASIC世界だけど、どこで考え方が別世界になっているかも意識すると楽しくなります。 ※相対座標と絶対座標の変換処理が早い遅いは、どうせ1回のタッチ処理で1回しか実行しないならそこまで速さ影響しないので、連続で何度も実行するならというのも。(人間がペンをタッチ・動かす・離す速度のほうが時間がかかるので)
0そうだね
プレイ済み
返信[27]
親投稿
ちなみに本体改造すれば3DSでもネット配信ができる、みたいなのがあったりするけど、あれは直接3DS本体の映像データの配線から映像ケーブルに出せるように変換しているというもの。 改造までしちゃうと全然簡単に画像キャプチャできないのであんまり意味が無いけど(もちろん修理対象外になるし、知識無くてやるとまず壊す) ※PSPは映像出力できるけど3DSができないのは、わざと出来なくしているというのもあるのも。 TVに映すようなゲーム機なら映像ケーブルから映像・画像キャプチャするのもあるけど3DSは画像データを外だし出来る端子が無いので、3DS本体やプチコンで画像キャプチャ機能が無いとなると、簡単なのは3DS画面の写真撮影あたり。 BIGに持って行ってBIGからWiiU画像投稿ツールでtwitterってのも公式としては可能な方法。
2そうだね
プレイ済み
返信[26]
親投稿
人間が見てるのは3DSの液晶のデータなので、3DS本体では最終的に液晶に映し出すデータをどこかに持っていて、それを管理しているのは3DS側の見えないところ。 プチコンがMiiverseに投稿できるのはMiiverseが任天堂のソフトで、ホームボタンを押した時点の液晶に映るデータも任天堂の3DSのOSなので、内部でそういう処理してるのです。 社長が言ってたのはプチコンが液晶に映すデータを3DSに渡す直前のデータを保存する機能で、これはSmileBASICで触れないところで、プチコンのソフトでなんとかしてもらうしかないけど、プチコン3号の今のメモリの使い方や残量じゃできないという話。(FREEMEM減ってもいいなら実現可能ってのもその理由) BIGなら画像投稿ツールのためにHOMEボタン時点での液晶データは公開できるけど、3号だとHOMEボタンで液晶データ保存が対応してないという感じ。
2そうだね
プレイ済み
返信[7]
親投稿
絶対座標+相対座標なのか、絶対座標+絶対座標なのかの違いはあるので、 最初に点を決めてどのくらいの量を指定する場合はW,Hで、2つ点を決めるなら S,E なのかなというのも。 ペンで四角を引くなら、開始位置と終了位置がどちらもタッチパネルの絶対座標なのでS,Eのほうが書きやすいけど、 タイルパターンをカーソルで開始位置を選択して、終了位置まで移動して決定するなら開始位置とマイナスあり移動距離なW.H指定というのも。 画像関連だと画像データで幅と高さを扱うので W,H指定のほうがやりやすい感じです。 (保存するときに始点絶対座標から保存したい幅高さを加算して終点絶対座標を求める流れが多いはず)
0そうだね
プレイ済み
返信[9]
親投稿
twitterはとりあえずアカウント作っておくのが良い感じ。 #petitcom タグでいろいろとプチコンの話が出ているので、そこから本格的な避難先に行くというのもできるので。 3DSからしか見れない人だとちょっと大変かも。
0そうだね
プレイ済み
返信[28]
親投稿
READとDATAには、実は「読み込むDATAの位置」というのが内部でこっそり存在しています。 READ は 1回実行するごとに、「読み込むDATAの位置」にある DATAの値を1つ読み込んで、「読み込むDATAの位置」を次のDATAの値にします これによって次のREADは次のDATAの値が読めます(「次のDATA」ではなく「次のDATAの値」です) ちなみに「読み込むDATAの位置」は起動時は最初のDATAの値で、RESTORE 命令でラベル位置に変更できます コレを踏まえて、配列と組み合わせるとこんなことが出来ます。 READ N DIM A[N] FOR I=0 TO N-1 READ A[I] NEXT DATA 10 '個数 DATA 9,8,7,6,5 DATA 4,3,2,1,0
0そうだね
プレイ済み
返信[27]
親投稿
配列は「 DIM 配列変数名[個数] 」で定義することができて 「 配列変数名[番号] 」を変数名として使えるのです。 DIM A[10] と定義すると A[0] を変数名として使えます カッコがあるけどそれが変数名として使えます このカッコの中の数値は別の変数にしても使えるので DIM A[10] I=3 A[I]=999 という感じでも使えます VAR A0: VAR A1 とどんどん書いて行くのが大変なのと、番号に別の変数が使えるという理由で DIM A[2] として配列にしたほうが便利なのです。
0そうだね
プレイ済み
返信[35]
親投稿
書いたソフトは全部20世紀のだったりも! 十字キーメインだと普通のお絵かきソフトには無い現在位置のカーソルが必要で、 ボタンでお絵かき操作とパレット操作の切り替えをして、お絵かき状態でもスポイトがあって、パレット操作でボタン押すとRGB変更モードって感じです。 (DS時代のマリオカートのエンブレム編集も同じ感じだった記憶) 3号でパレットindexのエディタだと、パレット変更したときに全体の色を変えるしくみがものすごく大変なので(ちゃんとしくみを考えないといけない)今のGRPエディタでも全然問題ないと思うのです。 (リソース使う側で全ドット見て色を変換すればパレット変更は一応できるし) レイヤーは、透明色だけが透過なのか、色を合成するのかで違ってきそうな感じ。 パレットでレイヤー色合成しちゃうと、新しいパレットを作るか作らないかとかレイヤーごと保存どう管理するか悩みそうな感じです。
1そうだね
プレイ済み
返信[30]
親投稿
お絵かきツールにはみんなが使い慣れてるお絵かきの操作系だけど、 ドット作成ツールはパレットindex操作を基本とするので、どうしても両立は難しい感じも。 (個人的なドット操作のイメージはPC-98時代のマルチペイントとか、windowsのD-pixedとか、デザエモン(FC,SFC)で十字キーコントローラ操作あたりな EDGEの前の時代な感じ) 3号だとパレットindexで画像を扱うのはたいへんだし、パレットで混色というとどうしてもタイルパターンかグラデーション分のパレット生成になってしまうし、「お絵かき」と「ドット」の両立はどっちの特性も考えないといけないのも。 個人的にはプチコンのドットエディタは多くないのでドット特化するとうれしいなぁとも。
2そうだね
プレイ済み
返信[27]
親投稿
ツール系はもう作る人も使う人もそれぞれだから、作る人の設計思想とどうやって操作してほしいかを慣れていくしかないのかなーと。 多機能だけど操作方法分からないと使う人としては機能が無いのと同じなので、操作方法を分からすためにはヘルプや操作説明は絶対必要なところで、起動時にヘルプをもっと推してもいいのかなーって感じでした。 (BIG出た頃に3号ちゃんとさわり初めていろんな公開キーソフト試してたときに初回起動時にヘルプがどこか悩んだ記憶)
2そうだね
プレイ済み
返信[4]
親投稿
数学の式はドットのサイズは気にしてないけど、実際にコンピュータで書くときはドット単位なので、 今書いたドットの隣(たとえば横)が、数学の式より内側かどうかを判定して、内側なら縦移動無し、外側なら縦に移動して隣を書く っていめーじです。 線の場合は単純な式で、円の場合は円の式を1/8の範囲(必ず横移動はする範囲)で全方位を符号反転させて書くってイメージ。 楕円は必ず横に移動する範囲が1/8の位置じゃないので、1/4の範囲で必ず横移動できる範囲(接線45度)まで横移動で書いて、残りは縦移動で書くいめーじです。 太い線は線の幅で外側と内側書いて、その内部を直線で描画(外側から線の太さ位置までなら1回、それ以外なら上下の2回描画)ってのをみかけた記憶も。
4そうだね
プレイ済み
返信[32]
親投稿
いちおう、数学の上が+Yの座標系が先にあって、プチコン(やコンピュータ系)の下が+Yの座標系が後になって作られているので、 座標系を理解するには本当は先に中学の数学で習うグラフの知識があった方が良いです。 (おちゃめさんの図もちゃんとY軸は下向きに矢印が向いているので、下方向にYが増えるという図になってます) SPROTが12時基点時計回りだったり、XとY入れ替えるとこんな動きするので短縮すればプチコンではこう書けたりとか、 かなりプチコン独特や、Y座標が下向きのコンピュータ系の書き方がいろいろあって悩むところなのです。 そして、「タッチした方向に回転させる」という簡単そうに見えることでも、ちゃんと理解しようとするとこれだけの細かい知識や考え方が必要だったりするので、 いろんなプログラムをできるようになるのは、ほんとうにコツコツと細かい事を知って行く必要があるのです。
0そうだね
プレイ済み
返信[31]
親投稿
角度というのは、中心があって、何時を基準として時計回り・反時計回りにどれだけ進んだかの値です。 数学では、時計の真ん中を中心として、3時の位置(中心から右方向)を基準として反時計回りに角度を数えます。 時計の真ん中を中心として、中心から右方向を基準として、1時の角度は、中心の右方向(3時)から +60度です。 1時の場所を中心として、1時から右方向を基準として、時計の真ん中の角度は、1時の右方向から -120度です (180度先の7時の角度を求めるのと同じ) 中心と求める位置と基準があって角度が求まりますが、中心と求める位置の場所を逆にするとちょうど180度の差があります。 画面を中心にタッチ位置の角度を求めていましたが、 タッチ位置を中心に画面中心の角度を求めると180度の差があるので、180度の計算をしなくてよいというのが、 おちゃめさんの言っている180度のしくみです。
0そうだね
プレイ済み
返信[30]
親投稿
ATANにプチコン座標を渡すと3時基準で時計回りに角度が増えるけど、 プチコン座標のXとYを入れ替えてATANに渡すと、6時基準で反時計回りに角度が増えます 角度にマイナスを付ければ反時計回りが時計回りとして扱えるので、 XY入れ替えたATANの角度の値にマイナスを付ければ 6時基準で時計回りになります タッチした位置をATANに渡すと3時基準で時計回りに角度が増えて タッチした位置をXY入れ替えてATANに渡した角度をマイナス扱いにすると、6時基準で時計回りに角度が増えます SPROTは 12時基準で時計回りの角度指定で、 XY入れ替えたATANの角度のマイナスの値は 6時基準で時計回りに角度の値が増える SPROTの12時基準と180度の差になるので、 XY入れ替えたATANの値(をラジアンから度に変換した値)に 180度を加算した値をSPROTに渡すと、期待通り動きます。
0そうだね
プレイ済み
返信[29]
親投稿
中学高校数学でも座標でXとYを入れ替えるってほとんどしないのでわかりづらいけど、 XとYを入れ替えた場合、3時の位置から12時の位置に向かって動く場合、12時から3時に動くようになります。 3時の位置から6時まで動く場合、12時から 9時まで動きます。 (2時が X=0.8, Y=0.5としたら X=0.5, Y=0.8は 1時、 11時が X=-0.5, Y=0,8としたら X=0.8, Y=-0.5 は4時) Xをマイナスすると Y軸で反転、 Yをマイナスにすると X軸で反転、 XとYを入れ替えると、グラフX=Y の軸(数学では右上斜めの軸)で反転した位置になります プチコンの座標は Yの向きが逆で、XとYを入れ替えた場合、グラフX=Yの軸(右下斜め)で反転します プチコンの 6時の位置は、XY反転で 3時として扱われて、 プチコンの 5時の位置は、XY反転で 4時として扱われます
0そうだね
プレイ済み
返信[28]
親投稿
プチコンの座標は Yの向きが逆なので、 プチコンの 6時の位置は数学関数では 12時として扱われて、 プチコンの 5時の位置は数学関数では 1時として扱われます ATANは数学座標を渡すなら 3時から12時に向かって角度の値は反時計回りで増えるけど プチコン座標を渡すなら 3時から6時に向かって角度の値は時計回りで増えます ※プチコンの4時は数学では2時なので30度と返ります。プチコンの6時は数学では12時なので90度と返ります。 SPROTも、ATANにプチコン座標を渡したのも、時計回りになって、 ATANが 3時基準、SPROTが 12時基準なので、ATANの結果に(ラジアンなので度に変換して)90度を足した値を SPROTに渡せばそのとおりになるのです。 ※おちゃめさんの画像付き説明のところ
0そうだね
プレイ済み
返信[27]
親投稿
数学の座標を基準にしてのお話。(書いたら長くなった) ATANは数学関数なので、上が+Y、下が-Y、右が+X、左が-Xの座標。 数学の角度は時計の3時方向から12時方向に向かって増えていく(反時計回りで、値はラジアン) プチコンの座標は上が-Y、下が+Y、右が+X、左が-Xの座標。 SPROTでの角度は時計の12時方向から3時に向かって増えていく(時計回りで、値は度) プチコンでラジアンから度に変換するのは DEG 関数 数学の座標とプチコンの座標でY軸が上と下でプラスとマイナスが逆なのと、 数学の角度とSPROTの角度の向きが逆なので、角度や座標にマイナスが入ったりしてるので、ちょっとややこしいのです。 ※おちゃめさんのは全てプチコン座標で書いてあるので数学とは上下が逆になってます
0そうだね
プレイ済み
返信[44]
親投稿
MIKIみなつCP期待! 入試系テキストみたいなのでこんな感じの問題を見た記憶だけど、もう20世紀のお話(ピーターフランクルさんとか秋山仁さんとかの時代) ああいうの受ける人は事前に入試対策で解法教えてもらってるんじゃないかなーって思ってるのです。
0そうだね
プレイ済み
返信[13]
親投稿
スプライトって3DSの広い画面の上に、場所指定された16x16のちっちゃい画面が GRPの一部を切り出して表示してくれる仕組みなので、 管理番号ごとに16x16の画面が作られて、その16x16の画面の画像の内容や位置を指定する、ってのが 512個まで使えるのです (定義番号は、この16x16の画面に指定する まとまった情報が定義されているので、SPSET(初期化)/SPCHR(再設定) で情報が更新される) なので、SPVARはこの16x16の画面に対して制御するための情報を持たせておいて、 管理番号のループやSPFUNCなどで、SPVARの値を元にスプライトを制御してあげるのがきれいなやり方なのです。 ゲーム的な作りだと、敵の種別やXY座標や状態やアニメパターンの何番目などを持たせておいて、スプライト操作ループで、情報を更新して敵を動かしたり倒された判定したりな感じがスマートです。
0そうだね
プレイ済み